Μετάβαση στο περιεχόμενο

Λειτουργικά Συστήματα — Σεπτέμβριος 2025

Μεταγραφή από τις φωτογραφίες IMG_7168.jpg (σελ. 1/2) και IMG_7167.jpg (σελ. 2/2).

IMG_7168.jpg

Πολυτεχνική Σχολή
Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών & Πληροφορικής

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ 2024-2025
ΓΡΑΠΤΕΣ ΕΞΕΤΑΣΕΙΣ ΣΕΠΤΕΜΒΡΙΟΥ 2025
ΔΙΔΑΣΚΟΝΤΕΣ: Σ. ΣΙΟΥΤΑΣ, Χ. ΜΑΚΡΗΣ, Π. ΧΑΤΖΗΔΟΥΚΑΣ, Α. ΗΛΙΑΣ
3 ώρες – δύο σελίδες

ΘΕΜΑ 1 [2.5Μ]. Έστω τρεις διεργασίες, \(\Delta1\), \(\Delta2\) και \(\Delta3\), που εκτελούνται «παράλληλα», δηλ. εκτελούνται σύμφωνα με το σχήμα εκτέλεσης "cobegin \(\Delta1\); \(\Delta2\); \(\Delta3\); coend". Η διεργασία \(\Delta1\) εκτυπώνει αρχικά το γράμμα "Β" και μετά το γράμμα "Γ". Η διεργασία \(\Delta2\) εκτυπώνει αρχικά το γράμμα "Α" και μετά το γράμμα "Ζ". Η διεργασία \(\Delta3\) εκτυπώνει αρχικά το γράμμα "Δ" και μετά το γράμμα "Ε".
Ζητείται να χρησιμοποιήσετε τρεις (3) δυαδικούς σημαφόρους, τους \(\text{S1}\), \(\text{S2}\) και \(\text{S3}\) (που πρέπει να τους αρχικοποιήσετε στις κατάλληλες τιμές) και να συμπληρώσετε τον κώδικα των διεργασιών με κατάλληλες εντολές P (ή wait ή down) / V (ή signal ή up) στους σημαφόρους \(\text{S1}\), \(\text{S2}\) και \(\text{S3}\), ώστε να εξασφαλίζεται ότι μετά το πέρας της παράλληλης εκτέλεσης των διεργασιών θα εκτυπωθούν όλα τα γράμματα με αλφαβητική διάταξη, δηλαδή ότι τελικά θα εκτυπωθεί:

"ΑΒΓΔΕΖ"

binary semaphore S1, S2, S3;
S1 = ?;
S2 = ?;
S3 = ?;

Διεργασία Δ1 Διεργασία Δ2 Διεργασία Δ3
begin begin begin
?? ?? ??
print("Β"); print("Α"); print("Δ");
?? ?? ??
print("Γ"); print("Ζ"); print("Ε");
?? ?? ??
end end end

Σημείωση: Να συμπληρώσετε τον παραπάνω κώδικα των τριών διεργασιών δίνοντας, στα σημεία όπου εμφανίζονται '??', εντολές P (ή wait ή down) και V (ή signal ή up) στους σημαφόρους \(\text{S1}\), \(\text{S2}\) και \(\text{S3}\), ώστε μετά το πέρας της παράλληλης εκτέλεσης των διεργασιών να εκτυπωθεί "ΑΒΓΔΕΖ". Είναι δυνατό σε κάποια σημεία με '??' να μη χρειαστεί να δώσετε εντολές στους σημαφόρους. Τους σημαφόρους \(\text{S1}\), \(\text{S2}\) και \(\text{S3}\) πρέπει να τους αρχικοποιήσετε στις κατάλληλες τιμές (στα σημεία όπου εμφανίζονται '?').

ΘΕΜΑ 2 [2.5Μ]. Πέντε διεργασίες εισέρχονται σε ένα υπολογιστικό σύστημα με χρόνους άφιξης και εκτέλεσης οι οποίοι παρατίθενται στον ακόλουθο πίνακα (σε msec):

Διεργασία Χρόνος Άφιξης Χρόνος Εκτέλεσης
\(\text{P}_1\) 0 25
\(\text{P}_2\) 4 12
\(\text{P}_3\) 7 8
\(\text{P}_4\) 10 15
\(\text{P}_5\) 12 10

(i) Έστω ότι χρησιμοποιείται ο αλγόριθμος RR (Round Robin) με κβάντο χρόνου 8ms. Σχεδιάστε το διάγραμμα Gantt που αντιστοιχεί στην εκτέλεση των ανωτέρω διεργασιών στην ΚΜΕ και υπολογίστε το Χρόνο Αναμονής (ΧΑ) για τη διεργασία \(\text{P}_5\).

(ii) Σχεδιάστε ξανά το διάγραμμα Gantt για την εκτέλεση των ανωτέρω διεργασιών, υποθέτοντας τώρα ότι χρησιμοποιείται ο αλγόριθμος SRTF (Shortest Remaining Time First), και υπολογίστε εκ νέου το Χρόνο Αναμονής (ΧΑ) για τη διεργασία \(\text{P}_5\).

1

IMG_7167.jpg

Πολυτεχνική Σχολή
Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών & Πληροφορικής

Σημείωση: Και για τους δύο αλγόριθμους θεωρήστε πως ο χρόνος εναλλαγής είναι αμελητέος.

ΘΕΜΑ 3 [2.5M]. Θεωρείστε ένα σύστημα διαχείρισης μνήμης με Σελιδοποίηση (Paging), στο οποίο κάθε διεργασία μπορεί να έχει 32 σελίδες λογικής μνήμης. Μια διεργασία που εκτελείται στο σύστημα διαθέτει τον παρακάτω πίνακα σελίδων (όλοι οι αριθμοί είναι εκφρασμένοι στο δεκαδικό σύστημα):

Αριθμός Σελίδας Αριθμός Πλαισίου Έγκυρο/ Άκυρο bit
0 4 0
... ... ...
7 15 1
... ... ...
15 9 1
... ... ...
31 15 0

Γνωρίζοντας πως το μέγεθος σελίδας στο παραπάνω σύστημα είναι 1024 bytes, ποια από τις παρακάτω προτάσεις είναι σωστή;

  • [ ] (Α) Με 14 bits καλύπτεται το εύρος των λογικών διευθύνσεων της συγκεκριμένης διεργασίας.
  • [ ] (Β) Η λογική διεύθυνση \(\text{FFFF}_{16}\) (στο δεκαεξαδικό σύστημα) είναι μια έγκυρη λογική διεύθυνση της συγκεκριμένης διεργασίας, σύμφωνα με τα ανωτέρω δεδομένα.
  • [ ] (Γ) Η λογική διεύθυνση \(\text{3CCC}_{16}\) (στο δεκαεξαδικό σύστημα) της συγκεκριμένης διεργασίας αντιστοιχεί στη φυσική διεύθυνση \(\text{9CCC}_{16}\) (στο δεκαεξαδικό σύστημα).
  • [ ] (Δ) Η λογική διεύθυνση \(\text{7CCC}_{16}\) (στο δεκαεξαδικό σύστημα) αναφέρεται σε μία σελίδα της συγκεκριμένης διεργασίας, η οποία δεν είναι φορτωμένη στη φυσική μνήμη του συστήματος.

Σημείωση: Για κάθε πρόταση τεκμηριώστε!!!

ΘΕΜΑ 4 [2.5M]. (α)Ποια είναι τα επίπεδα (layers) οργάνωσης ενός συστήματος αρχείων (file system); (β)Περιγράψτε συνοπτικά τις βασικές πράξεις που εκτελεί κάθε ένα από τα παραπάνω επίπεδα.

2

Επιπλέον πηγές χωρίς μεταγραφή εδώ (λύσεις → 2025-09.solutions.md, ή διπλότυπες φωτογραφίες της ίδιας σελίδας): IMG_7449.png

Λύσεις (⚪ AI, μη επαληθευμένο)

Κατάσταση: ⚪ AI, μη επαληθευμένο Πηγή: λύσεις AI (gemini-3.7-flash, sonnet), ανεξάρτητη επανάληψη και αντιπαραβολή· καμία δεν έχει ελεγχθεί από άνθρωπο

Προσοχή

Λύση από AI — ελέγξτε την· δεν έχει επαληθευτεί από άνθρωπο. Η ένδειξη «δύο λύσεις συμφωνούν» δεν σημαίνει ότι η απάντηση είναι σωστή.

AI λύσεις — 2025-09

Οι λύσεις γράφτηκαν από μοντέλα AI και δεν έχουν ελεγχθεί από άνθρωπο. Η αρίθμηση ακολουθεί το αρχείο θεμάτων.

Θέμα 1

Αξιοπιστία: δύο ανεξάρτητες λύσεις συμφωνούν · εμπιστοσύνη λύτη: υψηλή

Η επιθυμητή σειρά εκτύπωσης είναι Α(Δ2), Β(Δ1), Γ(Δ1), Δ(Δ3), Ε(Δ3), Ζ(Δ2). Άρα: Δ2 → Δ1 → Δ3 → Δ2. Τρεις ακμές, τρεις σημαφόροι, όλοι αρχικά 0: S1 (Α πριν Β), S2 (Γ πριν Δ), S3 (Ε πριν Ζ).

S1 = 0; S2 = 0; S3 = 0;

Δ1             Δ2             Δ3
P(S1);         (τίποτα)       P(S2);
print("Β");    print("Α");    print("Δ");
(τίποτα)       V(S1);         (τίποτα)
print("Γ");    P(S3);         print("Ε");
V(S2);         print("Ζ");    V(S3);
(τίποτα)       (τίποτα)       (τίποτα)

Δηλαδή στη θέση «??» της Δ2 μεταξύ Α και Ζ μπαίνουν και οι δύο εντολές V(S1); P(S3). Έλεγχος με εξαντλητική εξέταση όλων των διαδοχών εκτέλεσης: η μόνη δυνατή έξοδος είναι ΑΒΓΔΕΖ και δεν υπάρχει αδιέξοδο. S1=S2=S3=0, και η έξοδος είναι πάντα ΑΒΓΔΕΖ.

Θέμα 2

Αξιοπιστία: δύο ανεξάρτητες λύσεις συμφωνούν · εμπιστοσύνη λύτη: υψηλή

(i) RR, κβάντο 8. Ουρά (η νέα άφιξη μπαίνει πριν από τη διεργασία που προεκχωρείται όταν συμπίπτουν· εδώ το αποτέλεσμα είναι ίδιο και με τις δύο συμβάσεις):

Gantt: | P1 0–8 | P2 8–16 | P3 16–24 | P1 24–32 | P4 32–40 | P5 40–48 | P2 48–52 | P1 52–60 | P4 60–67 | P5 67–69 | P1 69–70 |

P5 φτάνει στο 12 και τελειώνει στο 69: ΧΑ \(=69-12-10=\) 47 ms (αναμονές 12→40 = 28 και 48→67 = 19).

(ii) SRTF. 0–4 P1 (στο 4 έρχεται η P2 με 12 < 21 υπόλοιπο P1)· P2 4–7 (στο 7 έρχεται P3 με 8 < 9)· P3 7–15 (η P4 με 15 και η P5 με 10 δεν την προεκχωρούν)· τότε έτοιμες P2(9), P4(15), P5(10), P1(21) → P2 15–24, P5 24–34, P4 34–49, P1 49–70.

Gantt: | P1 0–4 | P2 4–7 | P3 7–15 | P2 15–24 | P5 24–34 | P4 34–49 | P1 49–70 |

ΧΑ(P5) \(=24-12=\) 12 ms.

Θέμα 3

Αξιοπιστία: δύο ανεξάρτητες λύσεις συμφωνούν · εμπιστοσύνη λύτη: υψηλή

32 σελίδες → 5 bits σελίδας· σελίδα 1024 B → 10 bits μετατόπιση· λογική διεύθυνση = 15 bits (εύρος 0 έως \(\text{7FFF}_{16}\)).

  • (Α) Χρειάζονται 15 bits, όχι 14 → λάθος.
  • (Β) \(\text{FFFF}_{16}=65535>32767\)· ανήκει στη σελίδα 63, ενώ υπάρχουν μόνο 32 σελίδες → λάθος (μη έγκυρη).
  • (Γ) \(\text{3CCC}_{16}\): σελίδα \(=\lfloor 15564/1024\rfloor=15\), μετατόπιση \(=\text{0CC}_{16}\). Η σελίδα 15 έχει πλαίσιο 9 και V=1 → φυσική \(=9\cdot1024+\text{0CC}_{16}=\text{24CC}_{16}\), όχι \(\text{9CCC}_{16}\) → λάθος.
  • (Δ) \(\text{7CCC}_{16}\): σελίδα \(=31\) (υπάρχει στη διεργασία), μετατόπιση \(\text{0CC}\). Η σελίδα 31 έχει V=0 → δεν είναι φορτωμένη στη μνήμη (σφάλμα σελίδας) → σωστό.

Σωστή η (Δ).

Θέμα 4

Αξιοπιστία: δύο ανεξάρτητες λύσεις συμφωνούν

(α) Επίπεδα (από πάνω προς τα κάτω): προγράμματα εφαρμογών → λογικό σύστημα αρχείων (logical file system) → μονάδα οργάνωσης αρχείων (file-organization module) → βασικό σύστημα αρχείων (basic file system) → έλεγχος E/E (I/O control) → συσκευές.

(β) Βασικές πράξεις: - Έλεγχος E/E: οδηγοί συσκευών (device drivers) και χειριστές διακοπών· μεταφράζουν εντολές υψηλού επιπέδου («διάβασε block») σε εντολές καταχωρητών της συσκευής. - Βασικό σύστημα αρχείων: εκδίδει γενικές εντολές προς τον οδηγό (ανάγνωση/εγγραφή φυσικού block με διεύθυνση π.χ. drive, κυλίνδρος, κεφαλή, τομέας)· διαχειρίζεται buffers και cache μνήμης. - Μονάδα οργάνωσης αρχείων: γνωρίζει τα αρχεία και τα λογικά block τους· μεταφράζει λογικό block αρχείου σε φυσικό block και διαχειρίζεται τον ελεύθερο χώρο (κατανομή blocks). - Λογικό σύστημα αρχείων: διαχειρίζεται τα μεταδεδομένα (δομή καταλόγων, FCB/inode με δικαιώματα, ιδιοκτήτη, μέγεθος, δείκτες σε blocks), την προστασία και την ασφάλεια, και μεταφράζει το όνομα του αρχείου σε FCB. - Προγράμματα εφαρμογών: χρησιμοποιούν τις κλήσεις συστήματος open/read/write/close.

✔ Επιβεβαίωσε · ✖ Βρήκα λάθος


✖ Βρήκα λάθος στη μεταγραφή