Ενότητα 3 (Κεφάλαιο 4) Νήματα και Μικροπυρήνες

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Ενότητα 3 (Κεφάλαιο 4) Νήματα και Μικροπυρήνες"

Transcript

1 ΕΠΛ222: Λειτουργικά Συστήματα (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Operating Systems: Internals and Design Principles, 8/E, William Stallings) Ενότητα 3 (Κεφάλαιο 4) Νήματα και Μικροπυρήνες Οι διαφάνειες αυτές έχουν συμπληρωματικό και επεξηγηματικό χαρακτήρα και σε καμία περίπτωση δεν υποκαθιστούν το βιβλίο Γιώργος Α. Παπαδόπουλος Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου Περιεχόμενα Νήματα. Μικροπυρήνας. Υποστήριξη διεργασιών, νημάτων και πυρήνων στα Λ.Σ.: Windows. Solaris. Linux. Android. Mac OS X. 2 Διεργασίες και Νήματα Οι διεργασίες έχουν δύο χαρακτηριστικά: Κατοχή πόρων όπως αυτή καθορίζεται από τις πληροφορίες που υπάρχουν στο είδωλο της διεργασίας. Χρονοδρομολόγηση/Εκτέλεση μέσω της χρήσης της ΚΜΕ εναλλάξ με άλλες διεργασίες. Αυτά τα δύο χαρακτηριστικά είναι ανεξάρτητα το ένα από το άλλο. Σε κάποια Λ.Σ. η μονάδα εκτέλεσης κώδικα στην ΚΜΕ λέγεται νήμα ή υποδιεργασία (thread, lightweight process). Η μονάδα κατοχής πόρων λέγεται διεργασία ή δραστηριότητα (task). 3 1

2 Πολυνημάτωση Πολυνημάτωση (multithreading) είναι η δυνατότητα ενός Λ.Σ. να υποστηρίξει πολλαπλές ταυτόχρονες εκτελέσεις κώδικα, μέσα σε μία διεργασία. 4 1 διεργασία 1 νήμα Στο MS-DOS ο κάθε χρήστης είναι μία διεργασία που δεν μπορεί να διασπασθεί σε νήματα. Σε μερικά συστήματα UNIX, ο κάθε χρήστης μπορεί να δημιουργήσει περισσότερες από μία διεργασίες, αλλά η κάθε διεργασία και πάλι δεν μπορεί να διασπασθεί παραπέρα σε νήματα. 5 Πολυνημάτωση Το περιβάλλον της Java είναι ουσιαστικά μία διεργασία που διασπάται σε νήματα. Η υποστήριξη πολλαπλών διεργασιών και νημάτων υπάρχει στα Windows, Solaris και σε μερικά συστήματα τύπου UNIX. 6 2

3 Ορισμός της διεργασίας σε ένα πολυνηματικό περιβάλλον Είναι ένας ιδεατός χώρος μνήμης που αποθηκεύει το είδωλο της διεργασίας. Επίσης, είναι η οντότητα που διαφυλάττει την πρόσβαση σε: Επεξεργαστές. Άλλες διεργασίες. Αρχεία. Πόρους Εισόδου/Εξόδου. Με άλλα λόγια είναι η μονάδα προστασίας και διαμοίρασης πόρων, αλλά όχι και εκτέλεσης εντολών σε ένα πρόγραμμα. 7 Συστατικά ενός νήματος Το κάθε νήμα αποτελείται από τα εξής στοιχεία: Κατάσταση στην οποία βρίσκεται (εκτελούμενη, υπό αναστολή, κλπ.). Στοίβα με τιμές του περιβάλλοντός του. Μνήμη για τοπικές μεταβλητές. Δικαίωμα προσπέλασης και χρήσης στη μνήμη και πόρους αντίστοιχα της διεργασίας στην οποία ανήκει. 8 Νήματα vs. διεργασίες 9 3

4 Πλεονεκτήματα της χρήσης νημάτων Το κόστος δημιουργίας ενός νήματος είναι χαμηλότερο από αυτό της δημιουργίας μίας διεργασίας. Το κόστος τερματισμού ενός νήματος είναι χαμηλότερο από αυτό του τερματισμού μίας διεργασίας. Η μεταγωγή περιβάλλοντος έχει χαμηλότερο κόστος από αυτό της εναλλαγής διεργασιών. Τα νήματα μπορούν να επικοινωνούν μεταξύ τους χωρίς να απασχολούν τον πυρήνα. Όπου είναι δυνατόν, είναι προτιμότερο να υλοποιείται μία εφαρμογή ή εκτελέσιμη εργασία ως μία ομάδα από νήματα αντί ως μία ομάδα από διεργασίες. 10 Χρήση νημάτων σε Λ.Σ. ενός χρήστη Σε λειτουργίες προσκηνίου και παρασκηνίου, π.χ. σε ένα λογιστικό φύλλο ένα νήμα παρουσιάζει τα αποτελέσματα στην οθόνη ενώ ένα άλλο εκτελεί τις μαθηματικές πράξεις. Σε ασύγχρονη εκτέλεση, π.χ. ένα νήμα σε έναν επεξεργαστή κειμένου περιοδικά αποθηκεύει τα περιεχόμενα της κύριας μνήμης στο δίσκο. Για καλύτερη απόδοση, π.χ. ένα νήμα διαβάζει μία ομάδα δεδομένων από κάποια συσκευή εισόδου ενώ ταυτόχρονα ένα άλλο νήμα επεξεργάζεται μία άλλη ομάδα δεδομένων που έχει ήδη διαβασθεί. Για καλύτερη αρθρωτή δόμηση των προγραμμάτων, διότι τα νήματα διευκολύνουν τον σπονδυλωτό σχεδιασμό ενός προγράμματος που να αποτελείται από μία ομάδα από συστατικά, το καθένα από αυτά με ξεχωριστή αρμοδιότητα στην εκτέλεση των εντολών ενός προγράμματος. 11 Διαχείριση νημάτων από το Λ.Σ. Σε ένα Λ.Σ. που υποστηρίζει νήματα, η χρονοδρομολόγηση και χρήση της ΚΜΕ γίνεται σε επίπεδο νημάτων. Μερικές άλλες εργασίες όμως που επηρεάζουν όλα τα νήματα μίας διεργασίας γίνονται στο επίπεδο της διεργασίας. Παραδείγματα: Αν τεθεί υπό αναστολή μία διεργασία, τίθενται υπό αναστολή όλα τα νήματα της διεργασίας αυτής. Ο τερματισμός μίας διεργασίας τερματίζει αυτόματα όλα τα νήματα της διεργασίας αυτής. 12 4

5 Παρόμοια συμπεριφορά νημάτων και διεργασιών Τα νήματα έχουν δύο κοινά σημεία με τις διεργασίες: Καταστάσεις. Συγχρονισμό μεταξύ τους. 13 Καταστάσεις νημάτων Δημιουργία ενός νήματος (από κάποιο άλλο). Αναστολή (οδηγεί αυτό στην αναστολή άλλων νημάτων της διεργασίας ή και της ίδιας της διεργασίας;). Επανεργοποίηση. Τερματισμός. 14 Παράδειγμα: RPC (Remote Procedure Call) Ένα πρόγραμμα χρησιμοποιεί το πρωτόκολλο επικοινωνίας RPC για να καλέσει δύο διαφορετικούς προσδέκτες (hosts) από τους οποίους θα παραλάβει ένα συνδυασμένο αποτέλεσμα. 15 5

6 Υλοποίηση RPC με χρήση ενός νήματος 16 Υλοποίηση RPC με χρήση ενός νήματος ανά εξυπηρετητή 17 Πολυνημάτωση σε συστήματα ενός επεξεργαστή 18 6

7 Τρόποι υλοποίησης νημάτων Στο επίπεδο του χρήστη. Στο επίπεδο του πυρήνα. 19 Υλοποίηση νημάτων στο επίπεδο του χρήστη Η διαχείριση των νημάτων γίνεται από την εφαρμογή και ο πυρήνας δεν γνωρίζει για την ύπαρξή τους. 20 Συσχέτιση μεταξύ νημάτων στο επίπεδο του χρήστη και διεργασιών 21 7

8 Πλεονεκτήματα υλοποίησης των νημάτων στο επίπεδο του χρήστη Η μεταγωγή περιβάλλοντος δεν χρειάζεται προνομιούχα δικαιώματα χρήσης του πυρήνα (το οποίο επιφέρει κόστος). Η χρονοδρομολόγηση των νημάτων μπορεί να αντιμετωπίσει τυχόν ιδιαιτερότητες της εφαρμογής στην οποία ανήκουν τα νήματα. Η πολυνημάτωση μπορεί να υποστηριχθεί από οποιοδήποτε Λ.Σ. 22 Μειονεκτήματα υλοποίησης των νημάτων στο επίπεδο του χρήστη Επειδή συνήθως σε ένα Λ.Σ. οι κλήσεις σε συναρτήσεις του συστήματος θέτουν τη διεργασία που έκανε την κλήση υπό αναστολή, αν ένα νήμα εκτελέσει μία τέτοια κλήση τότε όλα τα νήματα της διεργασίας τίθενται υπό αναστολή. Αν ο Η/Υ έχει πολλούς επεξεργαστές, δεν υποστηρίζεται η παράλληλη επεξεργασία μεταξύ των νημάτων μίας διεργασίας. 23 Υλοποίηση νημάτων στο επίπεδο του πυρήνα Ο πυρήνας διατηρεί πληροφορίες για το περιβάλλον και των διεργασιών και των νημάτων που υπάρχουν στις διεργασίες. Η διαχείριση των νημάτων δεν γίνεται από την εφαρμογή. Η χρονοδρομολόγηση γίνεται σε επίπεδο νημάτων. 24 8

9 Πλεονεκτήματα υλοποίησης των νημάτων στο επίπεδο του πυρήνα Αν το σύστημα υποστηρίζει πολλούς επεξεργαστές, τότε μπορούν να εκτελούνται παράλληλα πολλαπλά νήματα της ίδιας διεργασίας. Αν τεθεί υπό αναστολή ένα νήμα κάποιας διεργασίας, αυτό δεν εμποδίζει την εκτέλεση άλλων νημάτων της διεργασίας αυτής. Η τεχνική της πολυνημάτωσης μπορεί να εφαρμοσθεί στις ρουτίνες του ίδιου του πυρήνα. 25 Μειονεκτήματα υλοποίησης των νημάτων στο επίπεδο του πυρήνα Η μεταφορά του ελέγχου από ένα νήμα σε κάποιο άλλο στην ίδια διεργασία συνεπάγεται τη μεταφορά του ελέγχου από το επίπεδο της εφαρμογής στο επίπεδο του πυρήνα, κάτι το οποίο έχει κόστος. 26 Συνδυαστική προσέγγιση Η δημιουργία των νημάτων γίνεται στο επίπεδο του χρήστη. Η χρονοδρομολόγηση και ο συγχρονισμός των νημάτων γίνεται στο επίπεδο της εφαρμογής. Τα πολλαπλά νήματα μίας εφαρμογής απεικονίζονται στο επίπεδο του πυρήνα με ένα μικρότερο ή ίδιο αριθμό νημάτων. 27 9

10 Σχέση μεταξύ νημάτων και διεργασιών 28 Περιεχόμενα Νήματα. Μικροπυρήνας. Υποστήριξη διεργασιών, νημάτων και πυρήνων στα Λ.Σ.: Windows. Solaris. Linux. Android. Mac OS X. 29 Η έννοια του Μικροπυρήνα Σε πολλά μοντέρνα λειτουργικά συστήματα έχει αρχίσει να αναπτύσσεται ή έννοια του μικροπυρήνα (microkernel). H ιδέα εδώ είναι ότι ο πυρήνας του Λ.Σ. αποτελείται μόνο από την άκρως απαραίτητη λειτουργικότητα που χρειάζεται ένα Λ.Σ. Όλα τα υπόλοιπα υλοποιούνται με βάση τον πυρήνα αυτόν, αλλά εκτός αυτού ως διαφορετικά προγράμματα. Αυτό επιτρέπει την πιο εύκολη υποστήριξη ενός Λ.Σ. από πολλές πλατφόρμες (portability) αφού μόνο ο (σχετικά μικρός) πυρήνας χρειάζεται να τροποποιηθεί ανάλογα με τις απαιτήσεις της κάθε αρχιτεκτονικής. Το ερώτημα είναι πόσο μικρός πρέπει να είναι ένας πυρήνας για να θεωρείται μικροπυρήνας. Π.χ., οι οδηγοί συσκευών υλοποιούνται σε αυτό το επίπεδο ή το επίπεδο του χρήστη; 30 10

11 Αρχιτεκτονική μικροπυρήνα vs. πυρήνα 31 Σχεδιασμός μικροπυρήνα: διαχείριση μνήμης Οι περισσότερες δραστηριότητες για τη διαχείριση της μνήμης γίνονται στο επίπεδο του χρήστη. Ο μικροπυρήνας είναι υπεύθυνος μόνο για την μετατροπή των ιδεατών διευθύνσεων μνήμης σε φυσικές. 32 Σχεδιασμός μικροπυρήνα: επικοινωνία μεταξύ των διεργασιών Η επικοινωνία μεταξύ διεργασιών ή νημάτων γίνεται μέσω μηνυμάτων. Ένα μήνυμα αποτελείται από την κεφαλή που καθορίζει τον αποστολέα και παραλήπτη του μηνύματος και από το κυρίως μέρος που αποτελείται από τα δεδομένα του μηνύματος, πληροφορίες ελέγχου, κλπ

12 Σχεδιασμός μικροπυρήνα: διαχείριση πράξεων Ε/Ε και διακοπτών Οι διακόπτες υλοποιούνται ως μηνύματα. Ο μικροπυρήνας αναγνωρίζει ένα διακόπτη αλλά δεν το χειρίζεται ο ίδιος: δημιουργεί ένα μήνυμα και το στέλνει στη διεργασία που χειρίζεται το διακόπτη στο επίπεδο του χρήστη. Η διαχείριση πράξεων Ε/Ε γίνεται με την εισαγωγή θυρών Ε/Ε στο χώρο μνήμης. 34 Πλεονεκτήματα της χρήσης μικροπυρήνα Ομοιόμορφη αντιμετώπιση μέσω μηνυμάτων όλων των διαφορετικών αιτήσεων μίας διεργασίας, έτσι ώστε οι διεργασίες να μην χρειάζεται να διαφοροποιήσουν τις αιτήσεις στο επίπεδο του χρήστη από αυτές στο επίπεδο του πυρήνα. Επεκτασιμότητα με νέες υπηρεσίες γίνεται πιο εύκολα γιατί επηρεάζεται ένα σχετικά μικρό μέρος του Λ.Σ. Ευελιξία στη δυνατότητα αφαίρεσης μη χρήσιμων υπηρεσιών οι οποίες καθίστανται πλέον επιλέξιμες και όχι αναγκαίες και το εναπομείναν σύστημα γίνεται πιο αποδεκτό σε περισσότερους χρήστες. Πιο εύκολη μεταφερσιμότητα (portability), λόγω του ότι ο κώδικας που σχετίζεται με την αρχιτεκτονική του κάθε επεξεργαστή είναι περιορισμένος μέσα στον μικροπυρήνα. Μεγαλύτερη αξιοπιστία, προερχόμενη από την πιο εύκολη αποσφαλμάτωση του κώδικα του μικροπυρήνα, λόγω του μικρού του σχετικά μεγέθους. Πιο εύκολη υποστήριξη κατανεμημένων συστημάτων (λόγω χρήσης μηνυμάτων) και αντικειμενοστρεφών τεχνικών. 35 Περιεχόμενα Νήματα. Μικροπυρήνας. Υποστήριξη διεργασιών, νημάτων και πυρήνων στα Λ.Σ.: Windows. Solaris. Linux. Android. Mac OS X

13 Διαφορετικές προσεγγίσεις Οι διαφορετικές προσεγγίσεις μεταξύ των Λ.Σ. εστιάζονται στα εξής σημεία: Ονοματολογία των διεργασιών. Υποστήριξη ή όχι νημάτων. Απεικόνιση των διεργασιών. Προστασία των πόρων των διεργασιών. Μηχανισμοί επικοινωνίας και συγχρονισμού μεταξύ των διεργασιών. Συσχέτιση μεταξύ των διεργασιών. 37 Διεργασίες στα Windows Οι διεργασίες και οι υπηρεσίες που παρέχει ο πυρήνας είναι σχετικά απλού τύπου και γενικής χρήσης. Υλοποιούνται ως αντικείμενα (objects). Μία διεργασία μπορεί να περιέχει ένα ή περισσότερα νήματα. Οι διεργασίες και τα νήματα έχουν ενσωματωμένους μηχανισμούς συντονισμού. Οι διεργασίες αντιστοιχούν σε εργασίες του χρήστη ή εφαρμογές και κατέχουν πόρους. Τα νήματα είναι αυτόνομα μέρη κώδικα τα οποία εκτελούνται σειριακά και η εκτέλεσή τους μπορεί να διακοπεί. 38 Σχέση μεταξύ διεργασιών και των πόρων τους στα Windows 39 13

14 Αλλαγές στα Windows 8 Τροποποιείται ο παραδοσιακός τρόπος εκτέλεσης διεργασιών και εφαρμογών. Ο δημιουργός μίας εφαρμογής (και όχι ο χρήστης) είναι τώρα υπεύθυνος για τη διαχείριση της κατάστασης της εφαρμογής του. Στις προηγούμενες εκδόσεις των Windows, ο χρήστης έχει πλήρη έλεγχο μίας εφαρμογής και είναι υπεύθυνος για το κλείσιμό της. Στο καινούργιο σύστημα διεπαφής Metro, τα Windows 8 αναλαμβάνουν αυτόν το ρόλο και μέσω της λειτουργικότητας Live Tiles δίνεται η εντύπωση ότι οι εφαρμογές εκτελούνται συνέχεια, αν και αυτό δεν ισχύει και δεν καταναλώνονται πόροι του συστήματος. 40 Η διεπαφή Metro Η εφαρμογή που τρέχει στο σύστημα έχει πρόσβαση στους πόρους (επεξεργαστή, δίκτυο και δίσκο) που είναι διαθέσιμοι για τον χρήστη. Όλες οι άλλες εφαρμογές βρίσκονται υπό αναστολή και δεν έχουν πρόσβαση σε αυτούς τους πόρους. Όταν μία εφαρμογή τίθεται υπό αναστολή, η κατάσταση της εφαρμογής πρέπει να αποθηκευθεί. Αυτό είναι ευθύνη του δημιουργού της εφαρμογής. Τα Windows 8 δύναται να τερματίσουν μία διεργασία που βρίσκεται υπό αναστολή. Γι αυτό και η κατάσταση της διεργασίας πρέπει να αποθηκευθεί. Όταν η διεργασία ενεργοποιηθεί πάλι, η κατάστασή της θα αποκατασταθεί. 41 Η δομή μίας διεργασίας στα Windows 42 14

15 Η δομή ενός νήματος στα Windows 43 Οι ιδιότητες μίας διεργασίας στα Windows Process ID Security descriptor Base priority Default processor affinity Quota limits Execution time I/O counters VM operation counters A unique value that identifies the process to the operating system. Describes who created an object, who can gain access to or use the object, and who is denied access to the object. A baseline execution priority for the process's threads. The default set of processors on which the process's threads can run. The maximum amount of paged and nonpaged system memory, paging file space, and processor time a user's processes can use. The total amount of time all threads in the process have executed. Variables that record the number and type of I/O operations that the process's threads have performed. Variables that record the number and types of virtual memory operations that the process's threads have performed. Exception/debugging ports Interprocess communication channels to which the process manager sends a message when one of the process's threads causes an exception. Normally, these are connected to environment subsystem and debugger processes, respectively. Exit status The reason for a process's termination. 44 Οι ιδιότητες ενός νήματος στα Windows Thread ID A unique value that identifies a thread when it calls a server. Thread context Dynamic priority Base priority Thread processor affinity Thread execution time Alert status Suspension count Impersonation token Termination port Thread exit status The set of register values and other volatile data that defines the execution state of a thread. The thread's execution priority at any given moment. The lower limit of the thread's dynamic priority. The set of processors on which the thread can run, which is a subset or all of the processor affinity of the thread's process. The cumulative amount of time a thread has executed in user mode and in kernel mode. A flag that indicates whether a waiting thread may execute an asynchronous procedure call. The number of times the thread's execution has been suspended without being resumed. A temporary access token allowing a thread to perform operations on behalf of another process (used by subsystems). An interprocess communication channel to which the process manager sends a message when the thread terminates (used by subsystems). The reason for a thread's termination

16 Πολυνηματικές διεργασίες στα Windows Επιτρέπουν την ταυτόχρονη εκτέλεση εργασιών χωρίς το κόστος της εναλλαγής διεργασιών. Τα νήματα σε μία διεργασία μπορούν να ανταλλάξουν πληροφορίες μέσω του κοινού χώρου μνήμης της διεργασίας και έχουν πρόσβαση στους κοινούς πόρους της διεργασίας. Νήματα που ανήκουν σε διαφορετικές διεργασίες μπορούν επίσης να ανταλλάξουν πληροφορίες μέσω κοινού χώρου μνήμης που έχει δημιουργηθεί μεταξύ αυτών των διεργασιών. 46 Runnable Καταστάσεις νημάτων στα Windows Pick to Run Standby Switch Ready Preempted Running Resource Available Unblock/Resume Resource Available Block/ Suspend Terminate Transition Unblock Waiting Resource Not Available Not Runnable Terminated Figure 4.11 Windows Thread States 47 Διεργασίες στο Solaris Το Λ.Σ. Solaris υποστηρίζει νήματα μέσω της συνδυαστικής προσέγγισης για να έχει ευελιξία στη διαχείριση των επεξεργαστών. Οι διεργασίες εμπεριέχουν το χώρο μνήμης του χρήστη, στοίβες και περιγραφέα της διεργασίας. Σε επίπεδο χρήστη, τα νήματα υλοποιούνται μέσω βιβλιοθήκης στο χώρο μνήμης μίας διεργασίας (αόρατα για το Λ.Σ.). Αυτά τα νήματα απεικονίζονται στο επίπεδο του πυρήνα ένα προς ένα και τα νήματα του πυρήνα εκτελούνται στους επεξεργαστές του συστήματος

17 Σχέση μεταξύ διεργασιών και νημάτων στο Solaris Process user thread user thread syscal l ( ) Lightweight process (LWP) Lightweight process (LWP) syscal l ( ) Kernel thread Kernel thread System calls Kernel Hardware Figure 4.12 Processes and Threads in Solaris 49 Παραδοσιακό Unix vs. Solaris UNIX Process Structure Solaris Process Structur e Pr ocess I D User IDs Process I D User IDs Signal Dispatch Table Signal Dispatch Table Memory Map Memory Map Priority Signal M ask Registers STACK File Descriptors File Descriptors Processor State Μία διεργασία αντικαθίσταται με μία ομάδα από νήματα LWP 2 LWP I D Priority Signal M ask Registers STACK LWP 1 LWP I D Priority Signal M ask Registers STACK 50 Figure 4.13 Process Structure in Traditional UNIX and Solaris [LEWI96] Η δομή ενός νήματος στο Solaris Ταυτότητα. Προτεραιότητα. Λίστα με τα σήματα που δέχεται. Τιμές καταχωρητών (όταν δεν εκτελείται). Στοίβες. Πληροφορίες για χρήση πόρων. Δείκτη στη διεργασία του νήματος

18 Καταστάσεις νημάτων στο Solaris IDLE PI NNED t hr ead_cr eat e( ) i nt r ( ) RUN swt ch( ) ONPROC syscal l ( ) SLEEP pr eempt ( ) wakeup( ) STOP ZOMBIE FREE pr un( ) pst op( ) exi t ( ) r eap( ) Figure 4.14 Solaris Thread States 52 Διεργασίες στο Linux Μία διεργασία στο Linux αναπαρίσταται με τη δομή δεδομένων task_struct. Αυτή περιλαμβάνει (μεταξύ άλλων) πληροφορίες για: Την τρέχουσα κατάσταση στην οποία βρίσκεται. Χρονοδρομολόγηση. Επικοινωνία με άλλες διεργασίες. 53 Σχέση και καταστάσεις μεταξύ διεργασιών και νημάτων στο Linux Stopped signal signal creation Ready Running State scheduling Executing termination Zombie signal or event event Uninterruptible I nterruptible Figure 4.15 Linux Process/Thread M odel 54 18

19 Νήματα στο Linux Στο Linux δεν υπάρχει ουσιαστική διαφοροποίηση μεταξύ διεργασιών και νημάτων. Τα νήματα στο επίπεδο του χρήστη απεικονίζονται σε διεργασίες στο επίπεδο του πυρήνα. Μία νέα διεργασία δημιουργείται με την αντιγραφή των ιδιοτήτων της τρέχουσας διεργασίας. Η καινούργια διεργασία μπορεί να κλωνοποιηθεί για να διαμοιρασθεί πόρους. Η εντολή clone() δημιουργεί διαφορετικούς χώρους στοιβών για κάθε διεργασία, αντικαθιστά την παραδοσιακή εντολή fork() του Unix και έχει ένα αριθμό από παραμέτρους. 55 Παράμετροι της εντολής clone CLONE_CLEARID Clear the task ID. CLONE_DETACHED The parent does not want a SIGCHLD signal sent on exit. CLONE_FILES CLONE_FS Shares the table that identifies the open files. Shares the table that identifies the root directory and the current working directory, as well as the value of the bit mask used to mask the initial file permissions of a new file. CLONE_IDLETASK Set PID to zero, which refers to an idle task. The idle task is employed when all available tasks are blocked waiting for resources. CLONE_NEWNS CLONE_PARENT CLONE_PTRACE CLONE_SETTID CLONE_SETTLS CLONE_SIGHAND CLONE_SYSVSEM CLONE_THREAD CLONE_VFORK CLONE_VM Create a new namespace for the child. Caller and new task share the same parent process. If the parent process is being traced, the child process will also be traced. Write the TID back to user space. Create a new TLS for the child. Shares the table that identifies the signal handlers. Shares System V SEM_UNDO semantics. Inserts this process into the same thread group of the parent. If this flag is true, it implicitly enforces CLONE_PARENT. If set, the parent does not get scheduled for execution until the child invokes the execve() system call. Shares the address space (memory descriptor and all page tables). 56 Διαχείριση διεργασιών και νημάτων στο Android Μία εφαρμογή Android είναι το λογισμικό που υλοποιεί ένα app. Αποτελείται από ένα ή περισσότερα στιγμιότυπα ενός ή περισσοτέρων από τα ακόλουθα είδη συστατικών εφαρμογών: Δραστηριότητες (activities), που αντιστοιχούν σε διαφορετικές οθόνες (π.χ. μία εφαρμογή για μπορεί να έχει μία δραστηριότητα που δείχνει τη λίστα με καινούργια s, άλλη δραστηριότητα για τη δημιουργία ενός , κλπ.). Υπηρεσίες, που συνήθως εκτελούν στο background λειτουργίες που χρειάζονται πολύ χρόνο (π.χ. μία υπηρεσία που παίζει μουσική στο background την ίδια ώρα που ο χρήστης ασχολείται με κάτι άλλο). Παροχείς περιεχομένου, που λειτουργούν ως διεπαφές μεταξύ εφαρμογών και δεδομένων που χρησιμοποιούν αυτές οι εφαρμογές (π.χ. μία εφαρμογή NotePad χρησιμοποιεί ένα παροχέα για να αποθηκεύσει σημειώσεις). Δέκτες εκπομπών, που ανταποκρίνονται σε μηνύματα που στέλνει το σύστημα ή άλλες εφαρμογές (π.χ. η μπαταρία του συστήματος έχει σχεδόν αδειάσει)

20 Η δομή μίας εφαρμογής Android Dedicated Process Broadcast Receiver Application Content Provider Activity Service Dedicated Virtual Machine 58 Figure 4.16 Android Application Καταστάσεις των δραστηριοτήτων στο Android Activity launched oncreate() User navigates to the activity App process killed Apps with higher priority need memory Entire Lifetime onstart() Visible Lifetime onresume() Foreground Lifetime Resumed User returns to the activity onrestart() onpause() Paused User navigates to the activity onstop() Stopped ondestroy() Activity shut down 59 Figure 4.17 Activity State Transition Diagram Διεργασίες και νήματα στο Mac OS X (10.6 και πάνω) Υποστηρίζονται από το μηχανισμό Grand Central Dispatch (GCD). Ο προγραμματιστής δηλώνει τα μέρη του προγράμματός του τα οποία μπορούν να εκτελεστούν παράλληλα, τα οποία ονομάζονται blocks. Ένα block είναι μία αυτόνομη μονάδα εργασίας, με τον κώδικά της και τα δεδομένα της. Π.χ. x=^{printf( hello world\n );} Το GCD θα δημιουργήσει μία ομάδα από νήματα τα οποία θα εκτελεστούν σε διαφορετικούς επεξεργαστές του Mac

Ενότητα 2 (Κεφάλαιο 3) Περιγραφή και Έλεγχος Διεργασιών. Περιεχόμενα. Ανάγκη ύπαρξης διεργασιών 1

Ενότητα 2 (Κεφάλαιο 3) Περιγραφή και Έλεγχος Διεργασιών. Περιεχόμενα. Ανάγκη ύπαρξης διεργασιών 1 ΕΠΛ222: Λειτουργικά Συστήματα (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Operating Systems: Internals and Design Principles, 8/E, William Stallings) Ενότητα 2 (Κεφάλαιο 3) Περιγραφή και Έλεγχος

Διαβάστε περισσότερα

ιεργασίες και νήµατα Προγραµµατισµός ΙΙΙ 1 lalis@inf.uth.gr

ιεργασίες και νήµατα Προγραµµατισµός ΙΙΙ 1 lalis@inf.uth.gr ιεργασίες και νήµατα Προγραµµατισµός ΙΙΙ 1 lalis@inf.uth.gr Η έννοια της διεργασίας ιεργασία (process) είναι ο µηχανισµός εκτέλεσης ενός προγράµµατος σε ένα λειτουργικό σύστηµα. Η διεργασία είναι µια ενεργή

Διαβάστε περισσότερα

1. Εισαγωγή. Λειτουργικά Συστήματα Η/Υ. Διεργασίες. Ορισμός ΚΕΦΑΛΑΙΟ 3 - ΔΙΕΡΓΑΣΙΕΣ. Κεφάλαιο 3 «Διεργασίες»

1. Εισαγωγή. Λειτουργικά Συστήματα Η/Υ. Διεργασίες. Ορισμός ΚΕΦΑΛΑΙΟ 3 - ΔΙΕΡΓΑΣΙΕΣ. Κεφάλαιο 3 «Διεργασίες» 1. Εισαγωγή Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 3 «Διεργασίες» Διδάσκων: Δ Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας Η έννοια της διεργασίας (process) είναι θεμελιώδης για την κατανόηση του τρόπου με τον οποίο

Διαβάστε περισσότερα

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Λειτουργικά Συστήματα Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Λειτουργικά Συστήματα», 2015-2016 Κεφάλαιο 4: Διεργασίες Πρόγραμμα Πρόγραμμα 1 Πρόγραμμα

Διαβάστε περισσότερα

Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, μνήμης και Ε/Ε)

Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, μνήμης και Ε/Ε) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, και Ε/Ε) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα

Τι είναι ένα λειτουργικό σύστημα (ΛΣ); Μια άλλη απεικόνιση. Το Λειτουργικό Σύστημα ως μέρος του υπολογιστή

Τι είναι ένα λειτουργικό σύστημα (ΛΣ); Μια άλλη απεικόνιση. Το Λειτουργικό Σύστημα ως μέρος του υπολογιστή Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, και Ε/Ε) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Λειτουργικά Συστήματα Ενότητα 4 : Αρχιτεκτονικές ΛΣ Δημήτριος Λιαροκάπης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Βασικές Έννοιες Πρ Ταο υγρ τόα χ μ ρ μ ο α ν τισμ ος Π ό ρ ςο ΙΙΙ γραμματισμός 1

Βασικές Έννοιες Πρ Ταο υγρ τόα χ μ ρ μ ο α ν τισμ ος Π ό ρ ςο ΙΙΙ γραμματισμός 1 Βασικές Έννοιες ΙΙΙ 1 lalis@inf.uth.gr Μονονηματική / πολυνηματική εκτέλεση Μονονηματικό μοντέλο εκτέλεσης (συμβατικό) Οι εντολές του κώδικα εκτελούνται σειριακά Ένα μοναδικό νήμα εκτέλεσης (execution

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία Λειτουργικά Συστήματα Ι Καθηγήτρια Παπαδάκη Αναστασία 2013 1 Ηλεκτρονικός Υπολογιστής αποτελείται: 1. Από Υλικό Hardware (CPUs, RAM, Δίσκοι), & 2. Λογισμικό - Software Και μπορεί να εκτελέσει διάφορες

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Λειτουργικά Συστήματα Ενότητα 2β: Αθηνά Βακάλη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Ε-85: Ειδικά Θέµατα Λογισµικού

Ε-85: Ειδικά Θέµατα Λογισµικού Ε-85: Ειδικά Θέµατα Λογισµικού Προγραµµατισµός Συστηµάτων Υψηλών Επιδόσεων Χειµερινό Εξάµηνο 2009-10 «ιεργασίες και Νήµατα» Παναγιώτης Χατζηδούκας (Π.Δ. 407/80) E-85: Ε.Θ.Λ: Προγραµµατισµός Συστηµάτων

Διαβάστε περισσότερα

Κεφάλαιο 1ο. 1.1.5 Πολυπρογραμματισμός 1.1.6 Πολυδιεργασία 1.2.2. Κατηγορίες Λειτουργικών Συστημάτων

Κεφάλαιο 1ο. 1.1.5 Πολυπρογραμματισμός 1.1.6 Πολυδιεργασία 1.2.2. Κατηγορίες Λειτουργικών Συστημάτων Κεφάλαιο 1ο 1.1.5 Πολυπρογραμματισμός 1.1.6 Πολυδιεργασία 1.2.2. Κατηγορίες Λειτουργικών Συστημάτων http://leitourgika-systhmata-epal-b.ggia.info Creative Commons License 3.0 Share-Alike Πολυπρογραμματισμός

Διαβάστε περισσότερα

Μάθημα 3 ο ΔΙΕΡΓΑΣΙΕΣ (PROCESSES)

Μάθημα 3 ο ΔΙΕΡΓΑΣΙΕΣ (PROCESSES) Μάθημα 3 ο ΔΙΕΡΓΑΣΙΕΣ (PROCESSES) Εισαγωγή H κεντρική μονάδα επεξεργασίας (ΚΜΕ) και η κύρια μνήμη αποτελούν τα βασικά δομικά στοιχεία ενός υπολογιστικού συστήματος. Η πρώτη εκτελεί εντολές χειρισμού δεδομένων

Διαβάστε περισσότερα

Παράλληλη Επεξεργασία

Παράλληλη Επεξεργασία Παράλληλη Επεξεργασία Φροντιστήριο: Εισαγωγή στα Πολυεπεξεργαστικά Συστήματα Διερασίες και Νήματα σε Πολυεπεξεργαστικά Συστήματα Εργαστήριο Πληροφοριακών Συστημάτων Υψηλής Επίδοσης Parallel and Distributed

Διαβάστε περισσότερα

Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα

Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα ΝΗΜΑΤΑ ΣΤΗ JAVA (1) Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα πρόγραµµα. Αιτία Η δυνατότητα αποµόνωσης (ή αυτονόµησης) κάποιων

Διαβάστε περισσότερα

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

Εισαγωγή στα Λειτουργικά Συστήματα Εισαγωγή στα Λειτουργικά Συστήματα Ενότητα 3: Διεργασίες Ι Γεώργιος Φ. Φραγκούλης Τμήμα Ηλεκτρολόγων Μηχανικών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

Διαβάστε περισσότερα

Θοδωρής Ανδρόνικος Τμήμα Πληροφορικής, Ιόνιο Πανεπιστήμιο

Θοδωρής Ανδρόνικος Τμήμα Πληροφορικής, Ιόνιο Πανεπιστήμιο Θοδωρής Ανδρόνικος Τμήμα Πληροφορικής, Ιόνιο Πανεπιστήμιο Για το μάθημα «Διαχείριση Λειτουργικών Συστημάτων» του ακαδημαϊκού έτους 2015 2016, το προτεινόμενο σύγγραμμα είναι το: Operating Systems: Internals

Διαβάστε περισσότερα

2. Σκοποί και Λειτουργίες των ΛΣ. Λειτουργικά Συστήματα Η/Υ. Περίληψη. Ι. Προστασία Υλικού ΚΕΦΑΛΑΙΟ 2 - ΕΞΕΛΙΞΗ ΚΑΙ ΣΚΟΠΟΙ ΛΣ

2. Σκοποί και Λειτουργίες των ΛΣ. Λειτουργικά Συστήματα Η/Υ. Περίληψη. Ι. Προστασία Υλικού ΚΕΦΑΛΑΙΟ 2 - ΕΞΕΛΙΞΗ ΚΑΙ ΣΚΟΠΟΙ ΛΣ 2. Σκοποί και Λειτουργίες των ΛΣ Λειτουργικά Συστήματα Η/Υ I. Προστασία του υλικού II. Επικοινωνία με τον χρήστη III. Διαχείριση, αξιοποίηση και έλεγχος πόρων IV. Ικανότητα και ευκολία εξέλιξης Κεφάλαιο

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Λειτουργικά Συστήματα Ενότητα 3 : Διεργασίες Δημήτριος Λιαροκάπης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Εισαγωγή εκτελέσιμου κώδικα σε διεργασίες

Εισαγωγή εκτελέσιμου κώδικα σε διεργασίες 0x375 - Thessaloniki Tech Talks Sessions Event 0x2 19 Μαρτίου 2010 Περιεχόμενα 1 Εισαγωγή 2 Η κλήση συστήματος ptrace 3 Νήματα 4 Το πρόγραμμα εισαγωγής κώδικα prez 5 Επίλογος Γιατί; Πολλές φορές θέλουμε

Διαβάστε περισσότερα

Η Υλοποίηση της Επικοινωνίας. Κατανεµηµένα Συστήµατα

Η Υλοποίηση της Επικοινωνίας. Κατανεµηµένα Συστήµατα Η Υλοποίηση της Επικοινωνίας στα Κατανεµηµένα Συστήµατα ιαφάνειες στα πλαίσια του µαθήµατος: Κατανεµηµένα Συστήµατα Ε Εξάµηνο, Τµήµα Πληροφορικής και Τεχνολογίας Υπολογιστών, ΤΕΙ Λαµίας Πέτρος Λάµψας 2002

Διαβάστε περισσότερα

Κεφάλαιο 4 Λογισμικό συστήματος. Εφαρμογές Πληροφορικής Κεφ.4 Καραμαούνας Πολύκαρπος 1

Κεφάλαιο 4 Λογισμικό συστήματος. Εφαρμογές Πληροφορικής Κεφ.4 Καραμαούνας Πολύκαρπος 1 Κεφάλαιο 4 Λογισμικό συστήματος Καραμαούνας Πολύκαρπος 1 4.1 Λογισμικό συστήματος (application software) Καραμαούνας Πολύκαρπος 2 Λογισμικό εφαρμογών (application software): προγράμματα για την αντιμετώπιση

Διαβάστε περισσότερα

Κεφάλαιο 4: Λογισμικό Συστήματος

Κεφάλαιο 4: Λογισμικό Συστήματος Κεφάλαιο 4: Λογισμικό Συστήματος Ερωτήσεις 1. Να αναφέρετε συνοπτικά τις κατηγορίες στις οποίες διακρίνεται το λογισμικό συστήματος. Σε ποια ευρύτερη κατηγορία εντάσσεται αυτό; Το λογισμικό συστήματος

Διαβάστε περισσότερα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Διαχείριση μνήμης III

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Διαχείριση μνήμης III ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Διαχείριση μνήμης III Υλικό από: Tanenbaum, Modern Operating Systems,Structured Computer Organization Stallings, Operating Systems: Internals and Design Principles. Silberschatz,

Διαβάστε περισσότερα

Κεφάλαιο 3.1: Λειτουργικά Συστήματα. Επιστήμη ΗΥ Κεφ. 3.1 Καραμαούνας Πολύκαρπος

Κεφάλαιο 3.1: Λειτουργικά Συστήματα. Επιστήμη ΗΥ Κεφ. 3.1 Καραμαούνας Πολύκαρπος Κεφάλαιο 3.1: Λειτουργικά Συστήματα 1 3.1.1 Λογισμικό και Υπολογιστικό Σύστημα Ένα σύγχρονο υπολογιστικό σύστημα αποτελείται από: το υλικό: τα ηλεκτρονικά μέρη του υπολογιστή και το λογισμικό: το σύνολο

Διαβάστε περισσότερα

MIPS Interactive Learning Environment. MILE Simulator. Version 1.0. User's Manual

MIPS Interactive Learning Environment. MILE Simulator. Version 1.0. User's Manual MILE Simulator Version 1.0 User's Manual Νοέμβριος, 2011 Περιεχόμενα 1. Εισαγωγή στον προσομοιωτή...2 1.1 Εγκατάσταση...2 1.2 Βοήθεια Διευκρινήσεις...2 2. Ξεκινώντας με τον προσομοιωτή...3 2.1 Το memory

Διαβάστε περισσότερα

Ανάπτυξη Διεπαφών Χρήστη σε Λειτουργικά Συστήματα Κινητών Συσκευών

Ανάπτυξη Διεπαφών Χρήστη σε Λειτουργικά Συστήματα Κινητών Συσκευών Βιβλιογραφία: Ανάπτυξη Διεπαφών Χρήστη σε Λειτουργικά Συστήματα Κινητών Συσκευών Προγραμματισμός Android Ian Clifton. AndroidTM User Interface Design, Addison-Wesley, 2013 P. Deitel. H. Deitel, A. Deitel.

Διαβάστε περισσότερα

Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ

Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ http://leitourgika-systhmata-epal-b.ggia.info/ Σύγχρονο Λειτουργικό Σύστημα - ΛΣ Λειτουργικό Σύστημα:

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Λειτουργικά Συστήματα Ενότητα 3: Διεργασίες. Καταστάσεις Διεργασιών. PCB. Νήματα. Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Σκοπός Μαθήματος. Λειτουργικά Συστήματα Η/Υ. Γενικές Πληροφορίες. Στόχοι Μαθήματος ΚΕΦΑΛΑΙΟ 1 - ΕΙΣΑΓΩΓΗ. Θεωρία: Εργαστήριο: Κεφάλαιο 1 «Εισαγωγή»

Σκοπός Μαθήματος. Λειτουργικά Συστήματα Η/Υ. Γενικές Πληροφορίες. Στόχοι Μαθήματος ΚΕΦΑΛΑΙΟ 1 - ΕΙΣΑΓΩΓΗ. Θεωρία: Εργαστήριο: Κεφάλαιο 1 «Εισαγωγή» Σκοπός Μαθήματος Λειτουργικά Συστήματα Η/Υ Θεωρία: Βασικές έννοιες των λειτουργικών συστημάτων Βασικές αρχές σχεδιασμού τους Κεφάλαιο 1 «Εισαγωγή» Εργαστήριο: Πρακτική εξάσκηση στη χρήση των λειτουργικών

Διαβάστε περισσότερα

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι Λειτουργικά Συστήματα 1 Λογισμικό του Υπολογιστή Για να λειτουργήσει ένας Η/Υ εκτός από το υλικό του, είναι απαραίτητο και το λογισμικό Το σύνολο των προγραμμάτων που συντονίζουν τις λειτουργίες του υλικού

Διαβάστε περισσότερα

Εργαστήριο Λειτουργικών Συστημάτων. Minix Overview

Εργαστήριο Λειτουργικών Συστημάτων. Minix Overview Εργαστήριο Λειτουργικών Συστημάτων Minix Overview Σύνοψη 5ης ιάλεξης Λειτουργικό Σύστημα Minix Οργάνωση του Λειτουργικού Συστήματος Οργάνωση πηγαίου κώδικα Minix recompilation Σύνοψη Μαθήματος Σύνοψη Μαθήματος

Διαβάστε περισσότερα

Λειτουργικά Συστήματα 1.1 Τι είναι Λειτουργικό Σύστημα (Operating System)

Λειτουργικά Συστήματα 1.1 Τι είναι Λειτουργικό Σύστημα (Operating System) Υλικό Hardware Λογισμικό Software... κώδικας ΥΛΙΚΟ Κάθε ηλεκτρονικό, ηλεκτρικό και μηχανικό μέρος του Η/Υ. ΛΟΓΙΣΜΙΚΟ Προγράμματα,δηλαδή οδηγίες γιατοτιπρέπεινακάνειοη/υ. Λειτουργικό Σύστημα Είναι ένα βασικό

Διαβάστε περισσότερα

Υλοποίηση ενός προγραμματιστικού κελύφους εργασίας

Υλοποίηση ενός προγραμματιστικού κελύφους εργασίας Τ.Ε.Ι ΗΠΕΙΡΟΥ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ & ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΤΗΛΕΠΛΗΡΟΦΟΡΙΚΗΣ & ΔΙΟΙΚΗΣΗΣ Υλοποίηση ενός προγραμματιστικού κελύφους εργασίας Πτυχιακή εργασία του φοιτητή Γιαννακίδη Αποστόλη Επιβλέπων καθηγητής Τσούλος

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Ι. Κεφάλαιο 1 Βασικές Έννοιες Λειτουργικών Συστημάτων

Λειτουργικά Συστήματα Ι. Κεφάλαιο 1 Βασικές Έννοιες Λειτουργικών Συστημάτων Λειτουργικά Συστήματα Ι Κεφάλαιο 1 Βασικές Έννοιες Λειτουργικών Συστημάτων Δομή Η/Υ Ο Η/Υ αποτελείται από δυο βασικά στοιχεία: Υλικό (το ηλεκτρονικό-μηχανικό μέρος πχ συσκευές, πλακέτες κλπ) Λογισμικό

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα

ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα 3.1 Η εξέλιξη των λειτουργικών συστηµάτων 3.2 Αρχιτεκτονική λειτουργικών συστηµάτων 3.3 Συντονισµός των δραστηριοτήτων του υπολογιστή 3.4 Χειρισµός ανταγωνισµού µεταξύ

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Υποσύστημα μνήμης Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

Το μάθημα. Λειτουργικά Συστήματα Πραγματικού Χρόνου Βασικές Έννοιες 6. Ενσωματωμένα Συστήματα (embedded systems) Παραδείγματα

Το μάθημα. Λειτουργικά Συστήματα Πραγματικού Χρόνου Βασικές Έννοιες 6. Ενσωματωμένα Συστήματα (embedded systems) Παραδείγματα Λειτουργικά Συστήματα Πραγματικού Χρόνου 2006-07 Λειτουργικά Συστήματα Πραγματικού Χρόνου Βασικές Έννοιες Το μάθημα ΛΣ Πραγματικού Χρόνου Θεωρητικό υπόβαθρο Αρχές Προγραμματισμού Παραδείγματα ΛΣ Εργασίες

Διαβάστε περισσότερα

Ενότητα 6 (Κεφάλαιο 9) Χρονοδρομολόγηση

Ενότητα 6 (Κεφάλαιο 9) Χρονοδρομολόγηση ΕΠΛ222: Λειτουργικά Συστήματα (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Operating Systems: Internals and Design Principles, 8/E, William Stallings) Ενότητα 6 (Κεφάλαιο 9) Χρονοδρομολόγηση Οι διαφάνειες

Διαβάστε περισσότερα

1. ΑΡΧΕΣ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

1. ΑΡΧΕΣ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 12 Σχεδιασμός Ανάπτυξη Λειτουργία Π.Σ. 1. ΑΡΧΕΣ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 1.1 Δυνατότητες Λειτουργικών Συστημάτων 1.1.1 Εισαγωγή Ο όρος Λειτουργικό Σύστημα (Operating System), εκφράζει το σύνολο των προγραμμάτων

Διαβάστε περισσότερα

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade Για να ελέγξετε το λογισμικό που έχει τώρα η συσκευή κάντε κλικ Menu > Options > Device > About Device Versions. Στο πιο κάτω παράδειγμα η συσκευή έχει έκδοση λογισμικού 6.0.0.546 με πλατφόρμα 6.6.0.207.

Διαβάστε περισσότερα

Μάθημα 1 ο ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

Μάθημα 1 ο ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Μάθημα 1 ο ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Τι είναι Λειτουργικό Σύστημα Κάθε Η/Υ αποτελείται από το Υλικό (Hardware) και το Λογισμικό (Software). Το Υλικό είναι το ηλεκτρικό, ηλεκτρονικό και

Διαβάστε περισσότερα

Αξιοποίηση της Τεχνολογίας των Εικονικών Μηχανών στην Επαγγελματική Εκπαίδευση και την Κατάρτιση Πληροφορικής. Βασιλάκης Βασίλειος Τζανάκης Δημήτριος

Αξιοποίηση της Τεχνολογίας των Εικονικών Μηχανών στην Επαγγελματική Εκπαίδευση και την Κατάρτιση Πληροφορικής. Βασιλάκης Βασίλειος Τζανάκης Δημήτριος Αξιοποίηση της Τεχνολογίας των Εικονικών Μηχανών στην Επαγγελματική Εκπαίδευση και την Κατάρτιση Πληροφορικής Βασιλάκης Βασίλειος Τζανάκης Δημήτριος Εισαγωγή Σκοπός Να παρουσιαστούν προτάσεις αξιοποίησης

Διαβάστε περισσότερα

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

Εισαγωγή στα Λειτουργικά Συστήματα Εισαγωγή στα Λειτουργικά Συστήματα Ενότητα 2: Δομή λειτουργικών συστημάτων Γεώργιος Φ. Φραγκούλης Τμήμα Ηλεκτρολόγων Μηχανικών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Λειτουργικά Συστήματα Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Λειτουργικά Συστήματα», 2015-2016 Κεφάλαιο 1: Βασικές Έννοιες Λειτουργικών Συστημάτων

Διαβάστε περισσότερα

Προγραμματισμός ΙΙ (Java) 10. Πολυνηματικές εφαρμογές

Προγραμματισμός ΙΙ (Java) 10. Πολυνηματικές εφαρμογές Προγραμματισμός ΙΙ (Java) 10. Πολυνηματικές εφαρμογές Multithreading Μulti-processing Πολλές διεργασίες ταυτόχρονα Κάθε διεργασία έχει το δικό της χώρο μνήμης ή ενδέχεται όλες να μοιράζονται και κάποιο

Διαβάστε περισσότερα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ II. Υφαντόπουλος Νικόλαος Υποψήφιος Διδάκτορας Contact:

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ II. Υφαντόπουλος Νικόλαος Υποψήφιος Διδάκτορας Contact: ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ II Υφαντόπουλος Νικόλαος Υποψήφιος Διδάκτορας Contact: nifantop@unipi.gr Περιεχόμενα ενότητας Διεργασίες Κλήσεις δημιουργίας και τερματισμού διεργασιών Επικοινωνία διεργασιών μέσω

Διαβάστε περισσότερα

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems)

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems) Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems) Μαθηµα 2 ηµήτρης Λιούπης 1 Intel SA-1110 µc StrongARM core. System-on-Chip. Εξέλιξη των SA-110 και SA-1100. 2 ARM cores ARM: IP (intellectual

Διαβάστε περισσότερα

Οντοκεντρικός Προγραμματισμός

Οντοκεντρικός Προγραμματισμός Οντοκεντρικός Προγραμματισμός Ενότητα 3: JAVA: ΕΞΑΙΡΕΣΕΙΣ, ΕΙΣΟΔΟΣ-ΕΞΟΔΟΣ, ΝΗΜΑΤΑ Νήματα ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής ΝΗΜΑΤΑ

Διαβάστε περισσότερα

Εισαγωγή στην Πληροφορική

Εισαγωγή στην Πληροφορική Εισαγωγή στην Πληροφορική Λογισμικό Συστήματος & Εφαρμογών ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Συντήρησης Πολιτισμικής Κληρονομιάς Γενική Δομή Υπολογιστών Λειτουργικό σύστημα Υπολογιστής

Διαβάστε περισσότερα

1. ΕΙΣΑΓΩΓΗ ΣΤΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Στέφανος Γκρίτζαλης Αναπληρωτής Καθηγητής Κωνσταντίνος Καραφασούλης ιδάσκων (Π 407) 1.1 ΤΙ ΕΙΝΑΙ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ Ένα Υπολογιστικό Σύστηµα αποτελείται: Υλικό» Επεξεργαστές»

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Η/Υ

Λειτουργικά Συστήματα Η/Υ Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 8 «Ιδεατή Μνήμη» Διδάσκων: Δ. Λιαροκαπης Διαφάνειες: Π. Χατζηδούκας Ιδεατή Μνήμη Οργάνωση. Εισαγωγή. Ιδεατές και πραγματικές διευθύνσεις. Λογική οργάνωση. Τμηματοποίηση

Διαβάστε περισσότερα

Παράλληλη Επεξεργασία

Παράλληλη Επεξεργασία Παράλληλη Επεξεργασία Φροντιστήριο: Εισαγωγή στο OpenMP Εργαστήριο Πληροφοριακών Συστημάτων Υψηλής Επίδοσης Parallel and Distributed Systems Group Τι είναι το OpenMP Πρότυπο Επέκταση στη C/C++ και τη Fortran

Διαβάστε περισσότερα

ΗΜΥ 313: Τεχνολογία Λειτουργικών Συστηµάτων

ΗΜΥ 313: Τεχνολογία Λειτουργικών Συστηµάτων ΗΜΥ 313: Τεχνολογία Λειτουργικών Συστηµάτων ιδάσκων: Χρίστος Παναγιώτου Υπολογιστικό Σύστηµα Ένα υπολογιστικό σύστηµα αποτελείται από Πώς καταφέρνουν και λειτουργούν όπως αναµένει ο χρήστης; 1 Τι είναι

Διαβάστε περισσότερα

Καρακασίδης Αλέξανδρος Καστίδου Γεωργία Παπαφώτη Μαρία Πέτσιος Κων/νος Στέφανος Σαλτέας Καλογεράς Παναγιώτης. Threads in Java ΝΗΜΑΤΑ ΣΤΗ JAVA

Καρακασίδης Αλέξανδρος Καστίδου Γεωργία Παπαφώτη Μαρία Πέτσιος Κων/νος Στέφανος Σαλτέας Καλογεράς Παναγιώτης. Threads in Java ΝΗΜΑΤΑ ΣΤΗ JAVA Καρακασίδης Αλέξανδρος Καστίδου Γεωργία Παπαφώτη Μαρία Πέτσιος Κων/νος Στέφανος Σαλτέας Καλογεράς Παναγιώτης Threads in Java ΝΗΜΑΤΑ ΣΤΗ JAVA 1. Εισαγωγή Τι είναι Νήµα; Κάθε νήµα εκτέλεσης είναι ουσιαστικά

Διαβάστε περισσότερα

Πανεπιστήμιο Θεσσαλίας Τμήμα Πληροφορικής

Πανεπιστήμιο Θεσσαλίας Τμήμα Πληροφορικής Πανεπιστήμιο Θεσσαλίας Τμήμα Πληροφορικής ΕΥ311-Διαδικτυακός και Ταυτόχρονος Προγραμματισμός Εργαστήριο: Παραδείγματα δημιουργίας διεργασιών στο Linux Ένα πρόγραμμα (το στιγμιότυπο της εκτέλεσης του οποίου

Διαβάστε περισσότερα

Επίπεδο δικτύου IP Forwading κτλ

Επίπεδο δικτύου IP Forwading κτλ Επίπεδο δικτύου IP Forwading κτλ (IP για που το έβαλες) Εργαστήριο Δικτύων Υπολογιστών 2014-2015 Τμήμα Μηχανικών Η/Υ και Πληροφορικής Επίπεδο δικτύου (Network layer) Επίπεδο εφαρμογής (Application layer):

Διαβάστε περισσότερα

ΑΣΦΑΛΕΙΑ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ (Μηχανισμοί Ελέγχου Προσπέλασης)

ΑΣΦΑΛΕΙΑ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ (Μηχανισμοί Ελέγχου Προσπέλασης) ΑΣΦΑΛΕΙΑ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ (Μηχανισμοί Ελέγχου Προσπέλασης) Καλλονιάτης Χρήστος Επίκουρος Καθηγητής Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας, Πανεπιστήμιο Αιγαίου http://www.ct.aegean.gr/people/kalloniatis

Διαβάστε περισσότερα

ΜΑΘΗΜΑ 3 MULTIPLE CHOICE

ΜΑΘΗΜΑ 3 MULTIPLE CHOICE ΜΑΘΗΜΑ 3 MULTIPLE CHOICE 1. Ποιa από τις πιο κάτω εργασίες είναι λειτουργία του Λειτουργικού Συστήματος; a) Προσθήκη δεδομένων σε ένα υπολογιστικό φύλλο b) Εκπόνηση έκθεσης βάσης δεδομένων c) Διαχείριση

Διαβάστε περισσότερα

Στο εστιατόριο «ToDokimasesPrinToBgaleisStonKosmo?» έξω από τους δακτυλίους του Κρόνου, οι παραγγελίες γίνονται ηλεκτρονικά.

Στο εστιατόριο «ToDokimasesPrinToBgaleisStonKosmo?» έξω από τους δακτυλίους του Κρόνου, οι παραγγελίες γίνονται ηλεκτρονικά. Διαστημικό εστιατόριο του (Μ)ΑστροΈκτορα Στο εστιατόριο «ToDokimasesPrinToBgaleisStonKosmo?» έξω από τους δακτυλίους του Κρόνου, οι παραγγελίες γίνονται ηλεκτρονικά. Μόλις μια παρέα πελατών κάτσει σε ένα

Διαβάστε περισσότερα

Χαράλαμπος Καραγιαννίδης

Χαράλαμπος Καραγιαννίδης Διάλεξη 4 Λειτουργικό Σύστημα & Λογισμικό Εφαρμογών H/Y Εισαγωγή στις Εφαρμογές ΤΠΕ Χαράλαμπος Καραγιαννίδης karagian@uth.gr Διάλεξη 4: Λειτουργικό Σύστημα & Εφαρμογές 1/41 20/10/2015 Σύνοψη Μαθήματος

Διαβάστε περισσότερα

Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 2

Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 2 Λειτουργικά Συστήματα & Γλώσσες Προγραμματισμού Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 2 1 Λειτουργικά Συστήματα & Γλώσσες Προγραμματισμού Διαφάνειες σύμφωνα με

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 4 : Κρυφή Μνήμη Καρβούνης Ευάγγελος Δευτέρα, 30/11/2015 Χαρακτηριστικά Θέση Χωρητικότητα Μονάδα Μεταφοράς

Διαβάστε περισσότερα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι. Λειτουργικά Συστήματα Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Επ. Καθ. Κ. Λαμπρινουδάκης

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι. Λειτουργικά Συστήματα Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Επ. Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθημα: Λειτουργικά Συστήματα Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ Διδάσκων: Επ. Καθ. Κ. Λαμπρινουδάκης clam@unipi.gr 1 ΕΙΣΑΓΩΓΗ Μνήμη : Πόρος ζωτικής σημασίας του οποίου η διαχείριση απαιτεί ιδιαίτερη

Διαβάστε περισσότερα

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006 Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Ολοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα είναι μικρότεροι το 1000 εκτός αν ορίζεται διαφορετικά στη διατύπωση του προβλήματος. Διάρκεια: 3,5 ώρες Καλή

Διαβάστε περισσότερα

(C) 2010 Pearson Education, Inc. All rights reserved.

(C) 2010 Pearson Education, Inc. All rights reserved. Connectionless transmission with datagrams. Connection-oriented transmission is like the telephone system You dial and are given a connection to the telephone of fthe person with whom you wish to communicate.

Διαβάστε περισσότερα

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

Εισαγωγή στα Λειτουργικά Συστήματα Εισαγωγή στα Λειτουργικά Συστήματα Ενότητα 4: Διεργασίες ΙΙ Γεώργιος Φ. Φραγκούλης Τμήμα Ηλεκτρολόγων Μηχανικών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

Διαβάστε περισσότερα

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Τι εννοούμε με τον όρο υπολογιστικό σύστημα και τι με τον όρο μικροϋπολογιστικό σύστημα; Υπολογιστικό

Διαβάστε περισσότερα

Ανάλυση Επιδόσεων Συστημάτων Πραγματικού Χρόνου

Ανάλυση Επιδόσεων Συστημάτων Πραγματικού Χρόνου ΣΥΣΤΗΜΑΤΑ ΠΡΑΓΜΑΤΙΚΟΥ ΧΡΟΝΟΥ Μάθημα Επιλογής Ανάλυση Επιδόσεων Συστημάτων Πραγματικού Χρόνου Δρ. Γεώργιος Κεραμίδας e-mail: gkeramidas@teimes.gr 1 Διεργασίες: Κατάσταση Εκτέλεσης (3-σταδίων) Κατάσταση

Διαβάστε περισσότερα

Εργαστήριο Λειτουργικών Συστημάτων 8o εξάμηνο, Ροή Υ, ΗΜΜΥ

Εργαστήριο Λειτουργικών Συστημάτων 8o εξάμηνο, Ροή Υ, ΗΜΜΥ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εργαστήριο Λειτουργικών Συστημάτων 8o εξάμηνο, Ροή Υ, ΗΜΜΥ Σχεδιασμός και υλοποίηση υποδομής σημείωσης διεργασιών στον

Διαβάστε περισσότερα

Μάθημα 8: Διαχείριση Μνήμης

Μάθημα 8: Διαχείριση Μνήμης Μάθημα 8: Διαχείριση Μνήμης 8.1 Κύρια και δευτερεύουσα μνήμη Κάθε μονάδα ενός υπολογιστή που χρησιμεύει για τη μόνιμη ή προσωρινή αποθήκευση δεδομένων ανήκει στην μνήμη (memory) του υπολογιστή. Οι μνήμες

Διαβάστε περισσότερα

Distributed Systems. Βάνα Καλογεράκη Τµήµα Πληροφορικής Οικονοµικό Πανεπιστήµιο Αθηνών. Lecture 3: Threads (Νήµατα) Distributed Systems

Distributed Systems. Βάνα Καλογεράκη Τµήµα Πληροφορικής Οικονοµικό Πανεπιστήµιο Αθηνών. Lecture 3: Threads (Νήµατα) Distributed Systems Βάνα Καλογεράκη Τµήµα Πληροφορικής Οικονοµικό Πανεπιστήµιο Αθηνών 1 Lecture 3: Threads (Νήµατα) The Case for Cooperating Processes Independent process: cannot affect or be affected by the execution of

Διαβάστε περισσότερα

Σύστηµα Αρχείων και Καταλόγων

Σύστηµα Αρχείων και Καταλόγων ΕΠΛ 003 ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Σύστηµα Αρχείων και Καταλόγων ιάλεξη 7 (Κεφάλαιο 11 του βιβλίου) Στόχοι Κεφαλαίου Περιγραφή της έννοιας του αρχείου, συστήµατος

Διαβάστε περισσότερα

Ενότητα 7 (Κεφάλαιο 7) Διαχείριση Μνήμης. Περιεχόμενα. Ανάγκη για διαχείριση μνήμης. Βασικές αρχές διαχείρισης μνήμης.

Ενότητα 7 (Κεφάλαιο 7) Διαχείριση Μνήμης. Περιεχόμενα. Ανάγκη για διαχείριση μνήμης. Βασικές αρχές διαχείρισης μνήμης. ΕΠΛ222: Λειτουργικά Συστήματα (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Operating Systems: Internals and Design Principles, 8/E, William Stallings) Ενότητα 7 (Κεφάλαιο 7) Διαχείριση Μνήμης Οι

Διαβάστε περισσότερα

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ (Τμήματα Υπολογιστή) ΕΚΠΑΙΔΕΥΤΗΣ:ΠΟΖΟΥΚΙΔΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΤΜΗΜΑΤΑ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ Κάθε ηλεκτρονικός υπολογιστής αποτελείται

Διαβάστε περισσότερα

CYTA Cloud Server Set Up Instructions

CYTA Cloud Server Set Up Instructions CYTA Cloud Server Set Up Instructions ΕΛΛΗΝΙΚΑ ENGLISH Initial Set-up Cloud Server To proceed with the initial setup of your Cloud Server first login to the Cyta CloudMarketPlace on https://cloudmarketplace.cyta.com.cy

Διαβάστε περισσότερα

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Παρακάτω δίνονται μερικοί από τους ακροδέκτες που συναντάμε στην πλειοψηφία των μικροεπεξεργαστών. Φτιάξτε έναν πίνακα που να

Διαβάστε περισσότερα

TaxiCounter Android App. Περδίκης Ανδρέας ME10069

TaxiCounter Android App. Περδίκης Ανδρέας ME10069 TaxiCounter Android App Περδίκης Ανδρέας ME10069 Content Android Operating System Development Tools Taxi Counter Algorithm Design Development Process Android Operating System Android is a Linux-based operating

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:09 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

3.1 Λειτουργικό Σύστηµα. Λειτουργικό Σύστηµα (2) ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα. Ο υπολογιστής σαν σκέτο hardware έχει περιορισµένη χρησιµότητα

3.1 Λειτουργικό Σύστηµα. Λειτουργικό Σύστηµα (2) ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα. Ο υπολογιστής σαν σκέτο hardware έχει περιορισµένη χρησιµότητα ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα 3. Λειτουργικό Σύστηµα 3. Η εξέλιξη των λειτουργικών συστηµάτων 3.2 Αρχιτεκτονική λειτουργικών συστηµάτων 3.3 Συντονισµός των δραστηριοτήτων του υπολογιστή 3.4 Χειρισµός

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System)

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System) 2.1.1 Εισαγωγή στη διαχείριση αρχείων Οι Η/Υ αποθηκεύουν τα δεδομένα και τα επεξεργάζονται. Εφαρμογή Προγράμματος C:\Documents and Settings\user\Τα έγγραφά μου\leitourgika.doc Λ.Σ. File System Γι αυτό

Διαβάστε περισσότερα

Εικονική Μνήμη (virtual memory)

Εικονική Μνήμη (virtual memory) Εικονική Μνήμη (virtual memory) Πολλά προγράμματα εκτελούνται ταυτόχρονα σε ένα υπολογιστή Η συνολική μνήμη που απαιτείται είναι μεγαλύτερη από το μέγεθος της RAM Αρχή τοπικότητας (η μνήμη χρησιμοποιείται

Διαβάστε περισσότερα

Δίκτυα Επικοινωνιών ΙΙ: OSPF Configuration

Δίκτυα Επικοινωνιών ΙΙ: OSPF Configuration Δίκτυα Επικοινωνιών ΙΙ: OSPF Configuration Δρ. Απόστολος Γκάμας Διδάσκων 407/80 gkamas@uop.gr Δίκτυα Επικοινωνιών ΙΙ Διαφάνεια 1 1 Dynamic Routing Configuration Router (config) # router protocol [ keyword

Διαβάστε περισσότερα

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

Λειτουργικά Συστήµατα Λειτουργικά Συστήµατα Κεφάλαιο 2 Τι είναι ένα Λειτουργικό Σύστηµα(Λ.Σ.) Είναι µια επεκταµένη µηχανή Κρύβει τις λεπτοµέρειες που πραγµατοποιούνται κατά την εκτέλεση Προσφέρει στο χρήστη µια απλούστερη εικονική

Διαβάστε περισσότερα

Προηγμένοι Μικροεπεξεργαστές. Παρουσίαση Εργασιών

Προηγμένοι Μικροεπεξεργαστές. Παρουσίαση Εργασιών Προηγμένοι Μικροεπεξεργαστές Παρουσίαση Εργασιών Γενικά 2 Projects για ένα άτομο 5 Projects για δύο άτομα 4 Project για ένα έως δύο άτομα Γενικά Προθεσμία: Τέλος Εξεταστικής (Hard Deadline) Τυπικός απαιτούμενος

Διαβάστε περισσότερα

Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής

Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής Να γραφεί πρόγραμμα το οποίο δέχεται ως είσοδο μια ακολουθία S από n (n 40) ακέραιους αριθμούς και επιστρέφει ως έξοδο δύο ακολουθίες από θετικούς ακέραιους

Διαβάστε περισσότερα

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΕΦΑΛΑΙΟ 7ο ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Γενικό διάγραμμα υπολογιστικού συστήματος Γενικό διάγραμμα υπολογιστικού συστήματος - Κεντρική Μονάδα Επεξεργασίας ονομάζουμε

Διαβάστε περισσότερα

3. Σελιδοποίηση μνήμης 4. Τμηματοποίηση χώρου διευθύνσεων

3. Σελιδοποίηση μνήμης 4. Τμηματοποίηση χώρου διευθύνσεων ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ MHXANIKOI Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΙΠΕ Ο ΜΗΧΑΝΗΣ ΛΕΙΤΟΥΡΓΙΚΟΥ ΣΥΣΤΗΜΑΤΟΣ Γ. Τσιατούχας 6 ο Κεφάλαιο 1. Επίπεδο OSM 2. Εικονική μνήμη ιάρθρωση 3. Σελιδοποίηση μνήμης 4. Τμηματοποίηση

Διαβάστε περισσότερα

Μάθημα 2 ο ΟΡΓΑΝΩΣΗ ΣΥΣΤΗΜΑΤΟΣ ΑΡΧΕΙΩΝ

Μάθημα 2 ο ΟΡΓΑΝΩΣΗ ΣΥΣΤΗΜΑΤΟΣ ΑΡΧΕΙΩΝ Μάθημα 2 ο ΟΡΓΑΝΩΣΗ ΣΥΣΤΗΜΑΤΟΣ ΑΡΧΕΙΩΝ Εισαγωγή στη Διαχείριση Αρχείων Οι Η/Υ θα ήταν άχρηστοι, αν δεν μπορούσαν να αποθηκεύσουν τα δεδομένα που επεξεργάζονται για μελλοντική χρήση. Τα δεδομένα αποθηκεύονται

Διαβάστε περισσότερα

Εισαγωγή στα Λειτουργικά

Εισαγωγή στα Λειτουργικά Εισαγωγή στα Λειτουργικά Συστήματα Ενότητα 6: Διαχείριση Μνήμης Ι Γεώργιος Φ. Φραγκούλης Τμήμα Ηλεκτρολόγων Μηχανικών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σεάδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2011-12 Εικονική (και ο ρόλος της στην ιεραρχία μνήμης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης Ιεραρχία η νέα τάση: [2011]

Διαβάστε περισσότερα

Εισαγωγή Middleware. Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης. Κατανεμημένα Συστήματα (Ε) Εισαγωγή: Θέματα S/W 1

Εισαγωγή Middleware. Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης. Κατανεμημένα Συστήματα (Ε) Εισαγωγή: Θέματα S/W 1 Εισαγωγή Middleware Χάρης Μανιφάβας Τμήμα Εφ. Πληροφορικής & Πολυμέσων ΤΕΙ Κρήτης Εισαγωγή: Θέματα S/W 1 ΚΛΣ - ΛΣΔ Στην πράξη επιτυχία γνώρισαν τα ΛΣ που ουσιαστικά αντικατέστησαν πλήρως τα απλά συστήματα

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Λειτουργικά Συστήματα Ενότητα 2: Βασικές Έννοιες ΛΣ. POSIX. Κλήσεις Συστήματος. Δομές ΛΣ. Kernel/Device Drivers. Bootstrap. Δρ. Μηνάς Δασυγένης mdasyg@ieee.org

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Υποσύστημα μνήμης Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

Διεργασίες και Νήματα (1/2)

Διεργασίες και Νήματα (1/2) Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων Διεργασίες και Νήματα (1/2) Λειτουργικά Συστήματα Υπολογιστών 7ο Εξάμηνο, 2016-2017 Διεργασίες

Διαβάστε περισσότερα

ΜΕΤΑΦΟΡΑ ΑΡΧΕΙΩΝ FTP

ΜΕΤΑΦΟΡΑ ΑΡΧΕΙΩΝ FTP ΜΕΤΑΦΟΡΑ ΑΡΧΕΙΩΝ FTP Το FTP (File Transfer Protocol) είναι το εξειδικευμένο πρωτόκολλο μεταφοράς αρχείων στα σύγχρονα δίκτυα δεδομένων όπως το Διαδίκτυο. Δίνει τη δυνατότητα μεταφοράς αρχείων από τον υπολογιστή

Διαβάστε περισσότερα

Ενότητα 1 (Κεφάλαιο 2) Εισαγωγικές Έννοιες. Περιεχόμενα. Λειτουργικό Σύστημα. Στόχοι και λειτουργίες του Λ.Σ.

Ενότητα 1 (Κεφάλαιο 2) Εισαγωγικές Έννοιες. Περιεχόμενα. Λειτουργικό Σύστημα. Στόχοι και λειτουργίες του Λ.Σ. ΕΠΛ222: Λειτουργικά Συστήματα (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Operating Systems: Internals and Design Principles, 8/E, William Stallings) Ενότητα 1 (Κεφάλαιο 2) Εισαγωγικές Έννοιες Οι

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Λειτουργικά Συστήματα Ενότητα 9 : Ιδεατή Μνήμη 1/2 Δημήτριος Λιαροκάπης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Πολυπύρηνοι επεξεργαστές Multicore processors

Πολυπύρηνοι επεξεργαστές Multicore processors Πολυπύρηνοι επεξεργαστές Multicore processors 1 Μετάβαση στους πολυπύρηνους(1) Απόδοση των µονοεπεξεργαστών 25% ετήσια βελτίωση της απόδοσης από το 1978 έως το 1986 Κυρίως από την εξέλιξη της τεχνολογίας

Διαβάστε περισσότερα

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι)

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα

Διαβάστε περισσότερα