Λειτουργικά Συστήματα Ι

Καλώς  ήρθατε στην εκπαιδευτική ενότητα , Λειτουργικά συστήματα Ι που αποτελείται από οκτώ μαθήματα . Για μια καλύτερη γνώση των λειτουργικών συστημάτων συνιστάται και η ανάγνωση της εκπαιδευτικής ενότητας  Λειτουργικά συστήματα ΙΙ.

Στο πρώτο μάθημα, Εισαγωγή, εισάγει το λειτουργικό σύστημα (OS) ως ένα θεμελιώδες σύνολο λογισμικού που διαχειρίζεται τους πόρους υλικού ενός υπολογιστή και παρέχει βασικές υπηρεσίες για τις εφαρμογές. Αναδεικνύει τον ρόλο του OS ως κρίσιμης διεπαφής μεταξύ χρήστη και υλικού, απαριθμώντας δημοφιλή παραδείγματα. Στη συνέχεια, περιγράφει τις σημαντικές λειτουργίες ενός OS, όπως η διαχείριση μνήμης, επεξεργαστή, συσκευών και αρχείων, καθώς και η ασφάλεια, ο έλεγχος απόδοσης, η ανίχνευση σφαλμάτων και ο συντονισμός λογισμικού. Επιπλέον, αναλύει τις βασικές δραστηριότητες που εκτελεί ένα OS σε αυτούς τους τομείς, εστιάζοντας στον τρόπο με τον οποίο το λειτουργικό σύστημα παρακολουθεί, εκχωρεί και αποδεσμεύει τους πόρους του συστήματος για την αποτελεσματική λειτουργία του υπολογιστή.

Στο δεύτερο μάθημα, Τύποι Λειτουργικών Συστημάτων, περιγράφει τους κυριότερους τύπους λειτουργικών συστημάτων: τα συστήματα παρτίδας για ομαδοποιημένη εκτέλεση εργασιών χωρίς άμεση αλληλεπίδραση, τα συστήματα χρονοδιαμοιρασμού που επιτρέπουν σε πολλούς χρήστες να αλληλεπιδρούν ταυτόχρονα, τα κατανεμημένα συστήματα που χρησιμοποιούν πολλούς επεξεργαστές, τα λειτουργικά συστήματα δικτύου για διαχείριση δικτύων και κοινή χρήση πόρων, και τα λειτουργικά συστήματα πραγματικού χρόνου για εφαρμογές με αυστηρές χρονικές απαιτήσεις (αυστηρά και μη αυστηρά).

Στο τρίτο μάθημα, Υπηρεσίες, εξηγεί ότι το λειτουργικό σύστημα παρέχει βασικές υπηρεσίες σε χρήστες και προγράμματα, όπως εκτέλεση προγράμματος, διαχείριση εισόδου/εξόδου και αρχείων, επικοινωνία διεργασιών, ανίχνευση σφαλμάτων, κατανομή πόρων και προστασία συστήματος. Διευκολύνει την εκτέλεση προγραμμάτων, την αλληλεπίδραση με συσκευές, την οργάνωση αρχείων, την επικοινωνία μεταξύ διεργασιών (είτε τοπικά είτε δικτυακά), τον εντοπισμό και χειρισμό σφαλμάτων, την δίκαιη κατανομή των πόρων και την προστασία των δεδομένων και των διεργασιών από μη εξουσιοδοτημένη πρόσβαση.

Στο τέταρτο μάθημα, Ιδιότητες, περιγράφει τις λειτουργίες: batch processing (ομαδοποιημένη εκτέλεση), multitasking (ταυτόχρονη εναλλαγή εργασιών), πολυπρογραμματισμός (πολλά προγράμματα στη μνήμη για αξιοποίηση CPU), διαδραστικότητα (αλληλεπίδραση χρήστη), συστήματα πραγματικού χρόνου (άμεση απόκριση), κατανεμημένο περιβάλλον (πολλοί επεξεργαστές) και spooling (διαχείριση I/O μέσω buffers).

Στο πέμπτο μάθημα, Διεργασίες, εξηγεί ότι μια διεργασία είναι ένα πρόγραμμα σε εκτέλεση, η βασική μονάδα εργασίας σε ένα σύστημα. Όταν ένα πρόγραμμα φορτώνεται στη μνήμη ως διεργασία, χωρίζεται σε τμήματα: στοίβα (προσωρινά δεδομένα), σωρός (δυναμική μνήμη), κείμενο (εντολές) και δεδομένα (καθολικές/στατικές μεταβλητές). Περιγράφεται ο κύκλος ζωής μιας διεργασίας (έναρξη, έτοιμη, εκτέλεση, αναμονή, τερματισμός) και η δομή δεδομένων Μπλοκ Ελέγχου Διεργασίας (PCB), η οποία διατηρεί όλες τις απαραίτητες πληροφορίες για τη διαχείριση κάθε διεργασίας από το λειτουργικό σύστημα (κατάσταση, προνόμια, PID, μετρητής προγράμματος, καταχωρητές, πληροφορίες προγραμματισμού και μνήμης, λογιστικά στοιχεία, κατάσταση I/O). Το PCB δημιουργείται κατά την έναρξη και καταστρέφεται κατά τον τερματισμό της διεργασίας.

Στο έκτο μάθημα, Προγραμματισμός Διαδικασιών (Process Scheduling), εξηγεί ότι ο  προγραμματισμός διεργασιών σε συστήματα πολλαπλού προγραμματισμού επιτρέπει σε πολλές διεργασίες να μοιράζονται την CPU. Το λειτουργικό σύστημα χρησιμοποιεί ουρές διεργασιών και διαφορετικούς τύπους προγραμματιστών για να αποφασίσει ποια διεργασία θα εκτελεστεί. Η εναλλαγή διεργασίας (context switch) είναι η διαδικασία αποθήκευσης και επαναφοράς της κατάστασης των διεργασιών.

Στο έβδομο μάθημα, Αλγόριθμοι προγραμματισμού (Scheduling Algorithms), περιγράφει τους αλγορίθμους προγραμματισμού διεργασιών που χρησιμοποιούνται σε ένα λειτουργικό σύστημα για να αποφασίσουν ποια διεργασία θα εκτελεστεί από την CPU σε μια δεδομένη στιγμή.

Στο τελευταίο μάθημα, Πολλά νήματα (Multithread), περιγράφει διεξοδικά την έννοια των νημάτων (threads) στην επιστήμη των υπολογιστών και τα λειτουργικά συστήματα.


Τελευταία τροποποίηση: Κυριακή, 6 Απριλίου 2025, 8:22 πμ