Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός. Ενότητα # 8: Ταυτοχρονισμός και νήματα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

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

Download "Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός. Ενότητα # 8: Ταυτοχρονισμός και νήματα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής"

Transcript

1 Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός Ενότητα # 8: Ταυτοχρονισμός και νήματα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

2 Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Οικονομικό Πανεπιστήμιο Αθηνών» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 2

3 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Οι εικόνες προέρχονται από το βιβλίο «Κατανεμημένα Συστήματα με Java», Ι. Κάβουρας, Ι. Μήλης, Γ. Ξυλωμένος, Α. Ρουκουνάκη, 3 η έκδοση, 2011, Εκδόσεις Κλειδάριθμος. 3

4 Σκοποί ενότητας Εξοικείωση με την έννοια των νημάτων και εξήγηση της σχέσης τους με τις διεργασίες. Εισαγωγή στους μηχανισμούς διαχείρισης και συγχρονισμού νημάτων της Java. 4

5 Περιεχόμενα ενότητας Διεργασίες και νήματα Υλοποίηση νημάτων Αξιοποίηση των νημάτων Νήματα στην Java Συγχρονισμός νημάτων 5

6 Διεργασίες και νήματα Μάθημα: Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός, Ενότητα # 8: Ταυτοχρονισμός και νήματα Διδάσκων: Γιώργος Ξυλωμένος, Τμήμα: Πληροφορικής

7 Διεργασίες Διεργασία 1 Διεργασία 2 Διεργασία n Μνήμη Μνήμη... Μνήμη Στοίβα Περιβάλλον Στοίβα Περιβάλλον Στοίβα Περιβάλλον Δεδομένα Δεδομένα Δεδομένα Λειτουργικό Σύστημα Διεργασία: εκτελούμενο πρόγραμμα Κώδικας + κατάσταση (καταχωρητές + μνήμη) Ψευδοταυτόχρονη/παράλληλη εκτέλεση διεργασιών Απομόνωση διεργασιών για λόγους ασφάλειας Κόστος δημιουργίας/μεταγωγής συμφραζομένων 7

8 Νήματα Νήμα 1 Νήμα 2 Νήμα n Μνήμη Στοίβα Περιβάλλον Στοίβα Περιβάλλον Δεδομένα... Στοίβα Περιβάλλον Λειτουργικό Σύστημα Νήμα: μια ροή ελέγχου σε μια διεργασία Επιτρέπονται πολλά νήματα ανά διεργασία Όλα τα νήματα μοιράζονται την ίδια μνήμη Χωριστή στοίβα, καταχωρητές, μετρητής Ψευδοταυτόχρονη/παράλληλη εκτέλεση νημάτων 8

9 Γιατί νήματα; Κοινός χώρος διευθύνσεων σε μία διεργασία Δεν υπάρχει μηχανισμός προστασίας Συνεργασία νημάτων μέσω κοινής μνήμης Πολύ γρήγορη επικοινωνία μέσω της μνήμης Χαμηλό κόστος μεταγωγής συμφραζομένων Μόνο οι καταχωρητές αλλάζουν Η εικονική μνήμη παραμένει ίδια 9

10 Χρήσεις νημάτων Παράλληλη εκτέλεση πολλών βημάτων Χωριστά νήματα για κλήσεις εισόδου/εξόδου Επικοινωνία με χρήστη και επεξεργασία Αξιοποίηση παραλληλισμού εφαρμογής Χρήση όλων των διαθέσιμων επεξεργαστών Μικρό κόστος μεταγωγής από νήμα σε νήμα Γρήγορη επικοινωνία μέσω κοινής μνήμης Πολύ μικρότερη επιβάρυνση από τις διεργασίες 10

11 Υλοποίηση νημάτων Μάθημα: Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός, Ενότητα # 8: Ταυτοχρονισμός και νήματα Διδάσκων: Γιώργος Ξυλωμένος, Τμήμα: Πληροφορικής

12 Νήματα επιπέδου χρήστη Διεργασία 1 Διεργασία n Πακέτο νημάτων Πακέτο νημάτων Λειτουργικό Σύστημα Πακέτο νημάτων Δημιουργία και καταστροφή νημάτων Διαχείριση συνθηκών (conditions) Πακέτα νημάτων επιπέδου χρήστη (μοντέλο N:1) Οικονομική υλοποίηση λειτουργιών και μεταγωγής Ο εμποδισμός ισχύει για ολόκληρη τη διεργασία 12

13 Νήματα επιπέδου πυρήνα Διεργασία 1 Διεργασία n Πακέτο νημάτων Λειτουργικό Σύστημα Πακέτα νημάτων επιπέδου πυρήνα (μοντέλο 1:1) Ακριβή υλοποίηση λειτουργιών και μεταγωγή Ο εμποδισμός ισχύει μόνο για το νήμα Απαιτεί τροποποίηση του λειτουργικού συστήματος Επίπεδο χρήστη ή επίπεδο πυρήνα; 13

14 Ελαφριές διεργασίες (1 από 4) Διεργασία 1 Διεργασία n Πακέτο νημάτων Πακέτο νημάτων Ελαφριά διεργασία Ελαφριά διεργασία Ελαφριά διεργασία Λειτουργικό Σύστημα Υβριδική λύση (μοντέλο N:M) Μεταβαλλόμενη απεικόνιση νημάτων σε διεργασίες Βασική υποστήριξη νημάτων από πυρήνα Πακέτο νημάτων επιπέδου χρήστη 14

15 Ελαφριές διεργασίες (2 από 4) Επίπεδο πυρήνα Πολλές ελαφριές διεργασίες σε μία κανονική (Κατά)μερισμός του ενιαίου χώρου διευθύνσεων Επίπεδο χρήστη Δημιουργία, διαγραφή, συγχρονισμός νημάτων Ένα νήμα εκτελείται από μία ελαφριά διεργασία Η συσχέτιση μεταξύ τους δεν είναι μόνιμη Εξαρτάται από την πορεία εκτέλεσης 15

16 Ελαφριές διεργασίες (3 από 4) Μεταγωγή συμφραζομένων: επίπεδο χρήστη Εμποδισμός νήματος πάνω σε συνθήκη Κλήση χρονοπρογραμματιστή επιπέδου χρήστη Ανάθεση νέου νήματος από χρονοπρογραμματιστή Μεταγωγή συμφραζομένων: επίπεδο πυρήνα Κλήση πυρήνα που προκαλεί εμποδισμό Ο πυρήνας δίνει τον έλεγχο σε άλλη διεργασία Δε χρειάζεται κάποια ειδική μεταχείριση Αρκετές ελαφριές διεργασίες για παραλληλισμό 16

17 Ελαφριές διεργασίες (4 από 4) Ιδιότητες ελαφριών διεργασιών Δεν συνδέονται μόνιμα με ένα νήμα Ο χρονοπρογραμματιστής τους αναθέτει νήματα δυναμικά Εμποδισμός σε συνθήκες σε επίπεδο χρήστη Πλεονεκτήματα ελαφριών διεργασιών Όλες οι λειτουργίες νημάτων σε επίπεδο χρήστη Ο πυρήνας παρεμβαίνει μόνο στις κλήσεις του Ο χρονοπρογραμματιστής μπορεί να αλλάξει 17

18 Αξιοποίηση των νημάτων Μάθημα: Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός, Ενότητα # 8: Ταυτοχρονισμός και νήματα Διδάσκων: Γιώργος Ξυλωμένος, Τμήμα: Πληροφορικής

19 Εφαρμογές νημάτων Αξιοποίηση στους πελάτες Απόκρυψη καθυστερήσεων του δικτύου Παράδειγμα: φυλλομετρητής ιστοσελίδων Αξιοποίηση στους εξυπηρετητές Διαχείριση πολλών πελατών Αξιοποίηση πολλών επεξεργαστών Παράδειγμα: εξυπηρετητής αρχείων Πολλά νήματα για εξυπηρέτηση αιτήσεων (Κατά)μερισμός κρυφής μνήμης ενταμιευτών 19

20 Μοντέλα οργάνωσης Διεργασία Διεργασία Διανομέας (α) Μοντέλο διανομέα/εργατών: εξυπηρετητής αρχείων Όλα τα νήματα-εργάτες είναι παρόμοια Εξυπηρέτηση αιτήσεων από οποιοδήποτε νήμα Μοντέλο σωλήνωσης: εκτέλεση εργασίας σε στάδια Κάθε νήμα είναι διαφορετικό Ιδανικά, όλα τα νήματα απαιτούν τον ίδιο χρόνο (β) 20

21 Νήματα στην Java Μάθημα: Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός, Ενότητα # 8: Ταυτοχρονισμός και νήματα Διδάσκων: Γιώργος Ξυλωμένος, Τμήμα: Πληροφορικής

22 Οργάνωση νημάτων Τα νήματα είναι μονάδες εκτέλεσης Κάθε διεργασία (πρόγραμμα) έχει νήματα Κάθε νήμα εκτελείται ανεξάρτητα Όλα τα νήματα μοιράζονται την ίδια μνήμη Κώδικα και όλα τα δεδομένα Κάθε εφαρμογή ξεκινά με ένα νήμα Εκτελεί τη μέθοδο main της εφαρμογής Το νήμα αυτό μπορεί να δημιουργήσει άλλα 22

23 Καταστάσεις νημάτων (1 από 2) γεννηθείσα Object.notify Object.notifyAll έτοιμη Thread.start ολοκλήρωση εισόδου/εξόδου εκπνοή διαστήματος ύπνου κοιμώμενη εκπνοή κβάντου Thread.yield διακοπή διανομή Thread.sleep εκτελούμενη σε αναμονή Object.wait ολοκλήρωση εκτέλεσης νεκρή αίτηση για είσοδο/έξοδο εμποδισμένη Καταστάσεις νημάτων Έτοιμη/εκτελούμενη ανάλογα με χρονοπρογραμματιστή Κοιμώμενη/εμποδισμένη/σε αναμονή ανάλογα με εντολές 23

24 Καταστάσεις νημάτων (2 από 2) Διάφοροι τρόποι διακοπής εκτέλεσης Αναμονή εισόδου / εξόδου -> εμποδισμένη Αναμονή χρονομέτρου (sleep) -> κοιμώμενη Αναμονή γεγονότος (wait) -> σε αναμονή Προτεραιότητες νημάτων Προτεραιότητα 1 (χαμηλή) έως 10 (υψηλή) Η προτεραιότητα κληρονομείται από τον γονέα Χρονοπρογραμματισμός με βάση προτεραιότητα Διακοπτόμενος ή μη χρονοπρογραμματισμός Εξαρτάται από την πλατφόρμα της Java 24

25 Μέθοδοι νημάτων (1 από 6) Νήματα: Τάξη Thread Thread (String όνομα_νήματος) Κατασκευάζει νήμα με συγκεκριμένο όνομα Thread () Κατασκευάζει νήμα με όνομα "Thread-#" void start() Ξεκινά την εκτέλεση νήματος (μέθοδος run()) Τα δύο νήματα εκτελούνται παράλληλα 25

26 Μέθοδοι νημάτων (2 από 6) void run () Περιέχει τον κώδικα του νήματος Κάθε υποτάξη ορίζει τη δική της run() void setname (String όνομα) void String getname () Θέτει/επιστρέφει το όνομα του νήματος void sleep (int millis) Αποκοιμίζει το νήμα για διάστημα msec 26

27 Μέθοδοι νημάτων (3 από 6) void yield () Παραχωρεί τον επεξεργαστή σε άλλα νήματα void interrupt () Στέλνει στο νήμα ένα σήμα διακοπής Αν είναι κοιμισμένο ή σε αναμονή ξυπνάει boolean isinterrupted () Επιστρέφει true αν το νήμα έχει διακοπεί 27

28 Μέθοδοι νημάτων (4 από 6) static boolean interrupted () Τrue αν το εκτελούμενο έχει διακοπεί Καθαρίζει (reset) την κατάσταση διακοπής boolean isalive () Επιστρέφει true το νήμα εκτελείται void setpriority (int προτεραιότητα) int getpriority () Θέτει/επιστρέφει προτεραιότητα νήματος 28

29 Μέθοδοι νημάτων (5 από 6) void join (long millis) Περιμένει τερματισμό νήματος για millis ms Αν το διάστημα είναι 0, αναμονή για πάντα void join (): Ισοδύναμη με join(0) void checkaccess () Εξετάζει αν έχουμε πρόσβαση στο νήμα Εξαίρεση αν δεν έχουμε Επιστροφή αν έχουμε 29

30 Μέθοδοι νημάτων (6 από 6) ThreadGroup getthreadgroup () Επιστρέφει την ομάδα του νήματος Thread.State getstate () Επιστρέφει τρέχουσα κατάσταση νήματος: NEW, RUNNABLE, BLOCKED WAITING, TIMED_WAITING, TERMINATED static Thread currentthread () Επιστρέφει αναφορά προς εκτελούμενο νήμα 30

31 Αντικείμενα εκτέλεσης (1 από 2) Δημιουργία νημάτων Επέκταση της τάξης Thread Δεν γίνεται αν επεκτείνει άλλη τάξη Διεπαφή Runnable Υλοποίηση από εκτελέσιμα αντικείμενα (νήματα) Μπορεί να επεκτείνει οποιαδήποτε τάξη Περιέχει μόνο την (αφηρημένη) μέθοδο run() Περνάμε το νήμα σε κατασκευαστή της τάξης Thread Εκκίνηση νήματος με τη μέθοδο start() 31

32 Αντικείμενα εκτέλεσης (2 από 2) Thread (Runnable αντικείμενο, String όνομα_νήματος) Δημιουργεί επώνυμο νήμα για το αντικείμενο Thread (Runnable αντικείμενο) Δημιουργεί νήμα "Thread-#" για το αντικείμενο Η τεχνική της διεπαφής είναι πιο γενική Μπορούμε να υλοποιούμε πολλές διεπαφές Υποκαθιστά την πολλαπλή κληρονομικότητα 32

33 Νήματα δαίμονες (1 από 2) Νήματα χρήστη και νήματα δαίμονες Κάθε νήμα είναι είτε χρήστη είτε δαίμονας Η μέθοδος main εκτελείται από νήμα χρήστη Οι δαίμονες εκτελούνται στο παρασκήνιο Η εφαρμογή δημιουργεί όποια νήματα θέλει Η εφαρμογή τερματίζεται με τα νήματα χρήστη Τα νήματα δαίμονες θανατώνονται αυτόματα 33

34 Νήματα δαίμονες (2 από 2) Ορισμός τύπου νήματος Τα νέα νήματα κληρονομούν τύπο δημιουργού void setdaemon (boolean είναι_δαίμων) Σημειώνει νήμα ως νήμα δαίμονα ή χρήστη Επιτρέπεται μόνο από το δημιουργό του Και μόνο πριν την εκκίνηση του νήματος boolean isdaemon () Επιστρέφει true αν το νήμα είναι δαίμων 34

35 Ομάδες νημάτων (1 από 8) Ομάδες νημάτων: Τάξη ThreadGroup Ενιαία διαχείριση και προστασία νημάτων Ιεραρχική οργάνωση ομάδων νημάτων Ρίζα η ομάδα main που δημιουργείται αυτόματα Ένταξη νημάτων σε ομάδες Κάθε νήμα προστίθεται σε ομάδα δημιουργού Ο δημιουργός μπορεί να ορίσει άλλη ομάδα Ο διαχειριστής ασφαλείας μπορεί να ορίσει άλλη 35

36 Ομάδες νημάτων (2 από 8) Ομάδες νημάτων δαίμονες Καταστρέφονται αυτόματα Όταν δεν περιέχουν άλλα ενεργά νήματα Μπορεί να περιέχουν νήματα δαίμονες ή χρήστη ThreadGroup (String ομάδα) Δημιουργεί ομάδα με γονέα την τρέχουσα ThreadGroup (ThreadGroup γονέας, String ομάδα) Η ομάδα γονέας ορίζεται ρητά 36

37 Ομάδες νημάτων (3 από 8) Σχετικοί κατασκευαστές νημάτων Thread (ThreadGroup ομάδα, String όνομα) Δημιουργεί ένα νήμα και το εντάσσει σε ομάδα Thread (ThreadGroup ομάδα, Runnable αντικείμενο) Χρησιμοποιεί επιπλέον ένα αντικείμενο Runnable Thread (ThreadGroup ομάδα, Runnable αντικείμενο, String όνομα) Ορίζει επιπλέον και το όνομα του νήματος 37

38 Ομάδες νημάτων (4 από 8) String getname () Επιστρέφει το όνομα αυτής της ομάδας νημάτων ThreadGroup getparent () Επιστρέφει την πατρική ομάδα νημάτων void setdaemon(boolean δαίμονας) boolean isdaemon() Θέτει / επιστρέφει τον τύπο της ομάδας 38

39 Ομάδες νημάτων (5 από 8) void setmaxpriority (int μέγιστη) int getmaxpriority () Θέτει / επιστρέφει τη μέγιστη προτεραιότητα Δεν αλλάζει προτεραιότητα ενεργών νημάτων boolean parentof (ThreadGroup g) Επιστρέφει true αν η ομάδα είναι γονέας της g void checkaccess() True αν το τρέχον νήμα έχει πρόσβαση στην ομάδα 39

40 Ομάδες νημάτων (6 από 8) int activecount () Πλήθος ενεργών νημάτων ομάδας και υποομάδων int activegroupcount () Πλήθος ενεργών υποομάδων της ομάδας int enumerate (Thread[] πίνακας, boolean αναδρ) Αντιγράφει κάθε ενεργό νήμα σε πίνακα Αν αναδρ == true περιλαμβάνει τις ομάδες παιδιά 40

41 Ομάδες νημάτων (7 από 8) int enumerate (Thread[] πίνακας) Ισοδύναμη με int enumerate (Thread[] πίνακας, true) int enumerate (ThreadGroup[] πίνακας, boolean αναδρ) Αντιγράφει ενεργές ομάδες της ομάδας σε πίνακα int enumerate (ThreadGroup[] πίνακας) Ίδιο με int enumerate (ThreadGroup[] πίνακας, true) 41

42 Ομάδες νημάτων (8 από 8) void interrupt() Διακόπτει όλα τα νήματα ομάδας και υποομάδων void destroy() Καταστρέφει την ομάδα και τις υποομάδες της Η ομάδα πρέπει να είναι κενή! uncaughtexception (Thread νήμα, Throwable εξαίρεση) Καλείται όταν ένα νήμα πεθάνει Λόγω άγνωστης εξαίρεσης 42

43 Συγχρονισμός νημάτων Μάθημα: Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός, Ενότητα # 8: Ταυτοχρονισμός και νήματα Διδάσκων: Γιώργος Ξυλωμένος, Τμήμα: Πληροφορικής

44 Συγχρονισμός Συγχρονισμός και επικοινωνία νημάτων Η Java παρέχει διάφορες σχετικές τεχνικές Κάθε εφαρμογή επιλέγει τον πιο κατάλληλο Αφορούν την κοινή μνήμη των νημάτων Μοντέλο μνήμης της Java Ο βασικός μηχανισμός είναι το monitor Αρκετά περιορισμένο στη βασική του μορφή Έχει επεκταθεί αρκετά στην πορεία 44

45 Πτητικά πεδία Πτητικά πεδία Παρακολουθούνται από όλα τα νήματα Κάθε αλλαγή γίνεται άμεσα αντιληπτή Σε όλα τα νήματα της εφαρμογής Η αλλαγή γίνεται στην κοινή μνήμη Όχι μόνο σε καταχωρητές Όχι μόνο σε μία κρυφή μνήμη Αρκεί να χρησιμοποιηθεί η λέξη κλειδί volatile 45

46 Συγχρονισμένες μέθοδοι (1 από 5) Κάθε αντικείμενο έχει μια κλειδαριά (lock) Μία κλειδαριά ανά υπόσταση (αντικείμενο) Δεν ορίζεται ρητά, υπάρχει πάντα Η κλειδαριά μπορεί να δεσμεύεται από ένα νήμα Απόκτηση κλειδαριάς πριν από κρίσιμη περιοχή Απελευθέρωση κλειδαριάς μετά από κρίσιμη περιοχή Χρήση synchronized μεθόδων και εντολών Αυτόματος έλεγχος κλειδαριάς 46

47 Συγχρονισμένες μέθοδοι (2 από 5) Παρακολουθητής (monitor) αντικειμένου Ελέγχει την κλειδαριά του αντικειμένου Επιτρέπει σε ένα νήμα την απόκτηση της κλειδαριάς Εμποδίζει όλα τα άλλα νήματα Υλοποίηση με synchronized μεθόδους / εντολές Απόκτηση κλειδαριάς για εκτέλεση synchronized μεθόδου Επιτρέπονται πολλές synchronized μέθοδοι ανά αντικείμενο Αμοιβαίος αποκλεισμός όλων των synchronized μεθόδων Οι άλλες μέθοδοι δεν επηρεάζονται 47

48 Συγχρονισμένες μέθοδοι (3 από 5) Προστασία δεδομένων αντικειμένου Τα δημόσια δεδομένα δεν προστατεύονται Ιδιοκτησία κλειδαριάς αντικειμένου Η κλειδαριά καλύπτει όλο το αντικείμενο Το νήμα μπορεί να κάνει πολλές κλήσεις Περιλαμβάνονται και άλλες κλήσεις synchronized Στατικές μέθοδοι synchronized Το αντικείμενο τάξης έχει τη δική του κλειδαριά Ανεξάρτητη από τις κλειδαριές των υποστάσεων 48

49 Συγχρονισμένες μέθοδοι (4 από 5) Synchronized εντολές Synchronized (παράσταση) { εντολές } Αρχικά υπολογίζεται η παράσταση Πρέπει να καταλήγει σε αναφορά αντικειμένου Αποκτάται η κλειδαριά του αντικειμένου Οι εντολές εκτελούνται με αμοιβαίο αποκλεισμό 49

50 Συγχρονισμένες μέθοδοι (5 από 5) Γιατί synchronized εντολές; Μικρότερες κρίσιμες περιοχές Συγχρονισμός πάνω σε οποιοδήποτε αντικείμενο Συγχρονισμός πάνω σε κλειδαριά αντικειμένου τάξης Γιατί synchronized μέθοδοι; Συγχρονισμός από την πλευρά του εξυπηρετητή Το αντικείμενο αποφασίζει για το συγχρονισμό του 50

51 Αναμονή - ειδοποίηση (1 από 6) Συγχρονισμός με βάση συνθήκες Παράδειγμα: πρόβλημα παραγωγού-καταναλωτή Πεπερασμένο σύνολο ενταμιευτών Ο παραγωγός περιμένει για κενές θέσεις Ο καταναλωτής περιμένει για γεμάτες θέσεις Αναμονή μέχρι να ισχύσει κάποια συνθήκη Χειρισμός μέσα σε αντικείμενο synchronized 51

52 Αναμονή - ειδοποίηση (2 από 6) void wait (long tim): εμποδισμός νήματος Απελευθέρωση κλειδαριάς αντικειμένου Το νήμα εμποδίζεται μέχρι: 1. Να κληθεί η μέθοδος notify και να επιλεγεί το νήμα 2. Να κληθεί η μέθοδος notifyall 3. Να περάσουν tim msec 4. Να κληθεί η interrupt για την αποστολή διακοπής void wait (): ισοδύναμη με wait (0) Αναμονή χωρίς εκπνοή χρονικού διαστηματος 52

53 Αναμονή - ειδοποίηση (3 από 6) void notifyall (): απελευθέρωση όλων των νημάτων Μπορεί να άλλαξε κάποια συνθήκη αναμονής Ένα μόνο νήμα αποκτά την κλειδαριά Τα υπόλοιπα εμποδίζονται ξανά στην κλειδαριά void notify(): απελευθέρωση ενός νήματος Δεν επιλέγουμε νήμα προς απελευθέρωση Χρήσιμη όταν δεν μας ενδιαφέρει το νήμα Κατάλληλη όταν έχουμε μία συνθήκη ή ένα νήμα 53

54 Αναμονή - ειδοποίηση (4 από 6) Σχέση wait και notify/notifyall Οι γνωστοποιήσεις δεν αποθηκεύονται Το wait πρέπει να ακολουθείται από notify/notifyall Χρήση timeout για αποφυγή αδιεξόδων Χρήση wait και notify/notifyall Επικοινωνία μόνο μέσω synchronized μεθόδων Ελευθερώνουν/δεσμεύουν αυτόματα την κλειδαριά Δεν μπορούν να κληθούν μέσα σε άλλες μεθόδους 54

55 Αναμονή - ειδοποίηση (5 από 6) Σημασιολογία εντολής wait Εμποδισμός νήματος πάνω στο αντικείμενο Απελευθέρωση κλειδαριάς αντικειμένου Η απελευθέρωση θα γίνει μέσω notify/notifyall Όταν εκτελεστεί, το νήμα θα κατέχει την κλειδαριά Χρήση εντολής wait Όταν εκτελεστεί το νήμα, ισχύει η συνθήκη του; Κλήση wait μέσα σε βρόχο while (όχι εντολή if) Ο βρόχος ελέγχει την επιθυμητή συνθήκη Αν δεν ισχύει το νήμα εμποδίζεται 55

56 Αναμονή - ειδοποίηση (6 από 6) Σημασιολογία εντολής notifyall Απελευθέρωση όλων των νημάτων που έκαναν wait Κάθε νήμα αποκτά την κλειδαριά με τη σειρά Τα νήματα ελέγχουν τη συνθήκη αναμονής Αν δεν ικανοποιείται, εμποδίζονται ξανά Σημασιολογία εντολής notify Απελευθερώνει ένα μόνο νήμα Πότε αξίζει η notify; Όλα τα νήματα πρέπει να περιμένουν την ίδια συνθήκη Mόνο ένα πρέπει να επωφελείται από τη συνθήκη 56

57 Άλλοι μηχανισμοί (1 από 2) Παράλληλη εκτέλεση από δεξαμενή νημάτων Τάξη ThreadPoolExecutor Ουρές που εμπεριέχουν το συγχρονισμό Διεπαφή BlockingQueue Ταυτόχρονες εκδόσεις συλλογών Τάξη ConcurrentHashMap 57

58 Άλλοι μηχανισμοί (2 από 2) Κλασικά εργαλεία συγχρονισμού Τάξη Semaphore Διάφορες υλοποιήσεις κλειδαριών Διεπαφή ReadWriteLock Ατομικοί τύποι μεταβλητών Τάξη AtomicBoolean και AtomicLong 58

59 Τέλος Ενότητας # 8 Μάθημα: Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός, Ενότητα # 8: Ταυτοχρονισμός και νήματα Διδάσκων: Γιώργος Ξυλωμένος, Τμήμα: Πληροφορικής

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

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

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

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

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

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

Τ.Ε.Ι. Μεσολογγίου, Τµήµα τηλεπικοινωνιακών Συστημάτων & Δικτύων

Τ.Ε.Ι. Μεσολογγίου, Τµήµα τηλεπικοινωνιακών Συστημάτων & Δικτύων Εργαστήριο Java Lab09 Αντικείμενο: Πολυνηματικές εφαρμογές Η χρήση περισσότερων από μιας ροής εντολών μέσα σε ένα πρόγραμμα είναι γνωστή ως multithreading. H κάθε μια ροή εντολών μέσα στο πρόγραμμα ονομάζεται

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

Κινητά και Διάχυτα Συστήματα. Ενότητα # 4: Απομακρυσμένα αντικείμενα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Κινητά και Διάχυτα Συστήματα. Ενότητα # 4: Απομακρυσμένα αντικείμενα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Κινητά και Διάχυτα Συστήματα Ενότητα # 4: Απομακρυσμένα αντικείμενα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού

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

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

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

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

13. Νήματα. 13.1 Νήματα και χρήση νημάτων στη Java. 13.1.1. Τι είναι τα νήματα; 13.1.2. Τρία μέρη ενός νήματος

13. Νήματα. 13.1 Νήματα και χρήση νημάτων στη Java. 13.1.1. Τι είναι τα νήματα; 13.1.2. Τρία μέρη ενός νήματος 13. Νήματα Ολοκληρώνοντας αυτό το κεφάλαιο θα μπορείτε Να κατανοείτε την έννοια του νήματος (thread) Να δημιουργείτε διακριτά νήματα στη Java, που θα ελέγχουν τον κώδικα και τα δεδομένα που χρησιμοποιούνται

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

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

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

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

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Β ) Λειτουργικό Σύστημα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

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

Dr. Garmpis Aristogiannis - EPDO TEI Messolonghi

Dr. Garmpis Aristogiannis - EPDO TEI Messolonghi Προϋποθέσεις για Αµοιβαίο Αποκλεισµό Μόνο µία διεργασία σε κρίσιµο τµήµασεκοινό πόρο Μία διεργασία που σταµατά σε µη κρίσιµο σηµείο δεν πρέπει να επιρεάζει τις υπόλοιπες διεργασίες εν πρέπει να υπάρχει

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

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών

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

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

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

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

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

Αποµακρυσµένη κλήση διαδικασιών

Αποµακρυσµένη κλήση διαδικασιών Αποµακρυσµένηκλήση διαδικασιών Τοπική κλήση διαδικασιών Αποµακρυσµένη κλήση διαδικασιών Μεταβίβαση παραµέτρων Πρωτόκολλα επικοινωνίας Αντιγραφή µηνυµάτων Προδιαγραφές διαδικασιών RPC στο σύστηµα DCE Κατανεµηµένα

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

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

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

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

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 4: Τύποι Δεδομένων και τελεστές Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

Δομές Δεδομένων. Ενότητα 7: Άλλες παραλλαγές Συνδεδεμένων Λιστών-Παράσταση Αραιού Πολυωνύμου με Συνδεδεμένη Λίστα. Καθηγήτρια Μαρία Σατρατζέμη

Δομές Δεδομένων. Ενότητα 7: Άλλες παραλλαγές Συνδεδεμένων Λιστών-Παράσταση Αραιού Πολυωνύμου με Συνδεδεμένη Λίστα. Καθηγήτρια Μαρία Σατρατζέμη Ενότητα 7: Άλλες παραλλαγές Συνδεδεμένων Λιστών-Παράσταση Αραιού Πολυωνύμου με Συνδεδεμένη Λίστα Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

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

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

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

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

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

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

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

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

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

Συγχρονισµός: Αδιέξοδο & Παρατεταµένη Στέρηση

Συγχρονισµός: Αδιέξοδο & Παρατεταµένη Στέρηση Συγχρονισµός: Αδιέξοδο & Παρατεταµένη Στέρηση Κεφάλαιο 6 Αδιέξοδο Μόνιµη αναµονή ενός συνόλου διεργασιών οι οποίες ανταγωνίζονται για πόρους του συστήµατος ή για να επικοινωνήσουν µεταξύ τους εν υπάρχει

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

Προγραμματισμός H/Y Ενότητα 6: Δομές (structures) Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Προγραμματισμός H/Y Ενότητα 6: Δομές (structures) Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Προγραμματισμός H/Y Ενότητα 6: Δομές (structures) Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Ιστορία της μετάφρασης

Ιστορία της μετάφρασης ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 6: Μεταφραστές και πρωτότυπα. Ελένη Κασάπη ΤΜΗΜΑ ΑΓΓΛΙΚΗΣ ΓΛΩΣΣΑΣ ΚΑΙ ΦΙΛΟΛΟΓΙΑΣ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 2 Επιμέλεια: Βασίλης Παλιουράς, Αναπληρωτής Καθηγητής Ευάγγελος Δερματάς, Αναπληρωτής Καθηγητής Σταύρος Νούσιας, Βοηθός Ερευνητή Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών

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

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

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

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

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

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

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

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

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

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

ΟΙΚΟΝΟΜΕΤΡΙΑ. Ενότητα 3: Πολλαπλή Παλινδρόμηση. Αναπλ. Καθηγητής Νικόλαος Σαριαννίδης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

ΟΙΚΟΝΟΜΕΤΡΙΑ. Ενότητα 3: Πολλαπλή Παλινδρόμηση. Αναπλ. Καθηγητής Νικόλαος Σαριαννίδης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) ΟΙΚΟΝΟΜΕΤΡΙΑ Ενότητα 3: Πολλαπλή Παλινδρόμηση. Αναπλ. Καθηγητής Νικόλαος Σαριαννίδης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

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

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

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

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1 Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1 Ενότητα 3: Άλγεβρα Βοole και Λογικές Πράξεις Δρ. Φραγκούλης Γεώργιος Τμήμα Ηλεκτρολογίας Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων Εισαγωγή στην Διοίκηση Επιχειρήσεων Ενότητα 7: ΑΣΚΗΣΕΙΣ ΜΕΓΕΘΟΥΣ ΕΠΙΧΕΙΡΗΣΗΣ Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

Ενδεικτικές λύσεις ασκήσεων διαγραμμάτων δραστηριοτήτων

Ενδεικτικές λύσεις ασκήσεων διαγραμμάτων δραστηριοτήτων Ενδεικτικές λύσεις ασκήσεων διαγραμμάτων δραστηριοτήτων 1 Περιεχόμενα 1 η Άσκηση... 4 2 η Άσκηση... 5 3 η Άσκηση... 7 4 η Άσκηση... 8 5 η Άσκηση... 10 6 η Άσκηση... 12 7 η Άσκηση... 13 Χρηματοδότηση...

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

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 11: ΠΡΟΒΛΗΜΑ ΔΙΑΤΡΕΞΗΣ ΓΡΑΦΗΜΑΤΟΣ

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 11: ΠΡΟΒΛΗΜΑ ΔΙΑΤΡΕΞΗΣ ΓΡΑΦΗΜΑΤΟΣ Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 11: ΠΡΟΒΛΗΜΑ ΔΙΑΤΡΕΞΗΣ ΓΡΑΦΗΜΑΤΟΣ Δημήτριος Κουκόπουλος Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος και Νέων Τεχνολογιών

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

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

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 1 : Οργάνωση και Αρχιτεκτονική υπολογιστών Φώτης Βαρζιώτης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα Τμήμα Μηχανικών

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

Οργάνωση Υπολογιστών

Οργάνωση Υπολογιστών Οργάνωση Υπολογιστών Επιμέλεια: Γεώργιος Θεοδωρίδης, Επίκουρος Καθηγητής Ανδρέας Εμερετλής, Υποψήφιος Διδάκτορας Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών 1 Άδειες Χρήσης Το παρόν υλικό

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

Προγραμματισμός Διαδικτύου

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

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

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 1: Εισαγωγή στη C - Αλγόριθμοι Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε

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

Υπολογιστικά Συστήματα

Υπολογιστικά Συστήματα Υπολογιστικά Συστήματα Ενότητα 4: Visual Basic for Applications (VBA) Δομές Επανάληψης και Επιλογής Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

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

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

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

Διαφήμιση και Δημόσιες Σχέσεις Ενότητα 9: Σχέσεις διαφημιστή-διαφημιζόμενου

Διαφήμιση και Δημόσιες Σχέσεις Ενότητα 9: Σχέσεις διαφημιστή-διαφημιζόμενου Διαφήμιση και Δημόσιες Σχέσεις Ενότητα 9: Σχέσεις διαφημιστή-διαφημιζόμενου Θεοδωρίδης Προκόπης Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης Επιχειρήσεων Αγροτικών Προϊόντων & Τροφίμων (Δ.Ε.Α.Π.Τ.)

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

Πολυνηµατικές εφαρµογές σε Java

Πολυνηµατικές εφαρµογές σε Java Πολυνηµατικές εφαρµογές σε Java Σταύρος Πολυβίου Τί είναι ένα νήµα (thread); Ας ορίσουµε πρώτα το τί είναι µία διεργασία (process): Ένα αυτοδύναµο περιβάλλον εκτέλεσης (selfcontained execution environment).

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

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

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

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

Διδάσκων: Παναγιώτης Ανδρέου

Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 22: Συγχρονισμός (Concurrency) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Διεργασίες (processes) και Νήματα (threads) - Συγχρονισμός Νημάτων, Προβλήματα, Λύσεις - Οι τροποποιητές

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

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

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

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

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

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

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

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

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

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

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων Εισαγωγή στην Διοίκηση Επιχειρήσεων Ενότητα 11: Θεωρία Οργάνωσης & Διοίκησης Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

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

Υπολογιστικά Συστήματα

Υπολογιστικά Συστήματα Υπολογιστικά Συστήματα Ενότητα 3: Βασικά στοιχεία της γλώσσας προγραμματισμού Visual Basic for Applications (VBA) Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Χρονοπρογραμματισμός Εργαστηριακές Ασκήσεις

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Χρονοπρογραμματισμός Εργαστηριακές Ασκήσεις ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Χρονοπρογραμματισμός Εργαστηριακές Ασκήσεις Υλικό από: Κ Διαμαντάρας, Λειτουργικά Συστήματα, Τμήμα Πληροφορικής ΤΕΙΘ Σύνθεση Κ.Γ. Μαργαρίτης, Τμήμα Εφαρμοσμένης Πληροφορικής, Πανεπιστήμιο

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

Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 8: ΟΡΓΑΝΩΣΗ ΤΗΣ ΔΥΝΑΜΗΣ ΠΩΛΗΤΩΝ

Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 8: ΟΡΓΑΝΩΣΗ ΤΗΣ ΔΥΝΑΜΗΣ ΠΩΛΗΤΩΝ Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 8: ΟΡΓΑΝΩΣΗ ΤΗΣ ΔΥΝΑΜΗΣ ΠΩΛΗΤΩΝ Αθανασιάδης Αναστάσιος Τμήμα Εφαρμογών Πληροφορικής στη Διοίκηση και Οικονομία Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων. Αθανάσιος Σπυριδάκος Διοίκηση Επιχειρήσεων

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

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

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ.

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ. ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ)

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ) ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ) Ενότητα 9: ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ ΔΙΔΑΣΚΩΝ: ΚΩΝΣΤΑΝΤΙΝΟΣ ΧΕΙΛΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

Τεχνολογία Πολυμέσων. Ενότητα # 4: Ήχος Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τεχνολογία Πολυμέσων. Ενότητα # 4: Ήχος Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Τεχνολογία Πολυμέσων Ενότητα # 4: Ήχος Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το

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

Δομές Δεδομένων. Ενότητα 4: Ο ΑΤΔ Λίστα & Υλοποίηση Λίστας με σειριακή αποθήκευση- Ο ΑΤΔ Συνδεδεμένη Λίστα- Υλοποίηση ΑΤΔ Συνδεδεμένη Λίστα με πίνακα

Δομές Δεδομένων. Ενότητα 4: Ο ΑΤΔ Λίστα & Υλοποίηση Λίστας με σειριακή αποθήκευση- Ο ΑΤΔ Συνδεδεμένη Λίστα- Υλοποίηση ΑΤΔ Συνδεδεμένη Λίστα με πίνακα Ενότητα 4: Ο ΑΤΔ Λίστα & Υλοποίηση Λίστας με σειριακή αποθήκευση- Ο ΑΤΔ Συνδεδεμένη Λίστα- Υλοποίηση ΑΤΔ Συνδεδεμένη Λίστα με πίνακα Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008 Παράδειγμα: Μηχανή για Εισιτήρια 2 Ορισμός Κλάσεων Σύνταξη κλάσης: πεδία, κατασκευαστές, μέθοδοι Ένας αυτόματος εκδότης εισιτηρίων είναι μια μηχανή που δέχεται χρήματα και εκδίδει ένα εισιτήριο. Εκδίδει

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

Συστήματα Αναμονής. Ενότητα 10: Ουρά Μ/Μ/s. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Συστήματα Αναμονής. Ενότητα 10: Ουρά Μ/Μ/s. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Συστήματα Αναμονής Ενότητα 10: Ουρά Μ/Μ/s Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

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

Εκπαιδευτική Διαδικασία και Μάθηση στο Νηπιαγωγείο Ενότητα 9: Η συνεργατική διδασκαλία & μάθηση

Εκπαιδευτική Διαδικασία και Μάθηση στο Νηπιαγωγείο Ενότητα 9: Η συνεργατική διδασκαλία & μάθηση Εκπαιδευτική Διαδικασία και Μάθηση στο Νηπιαγωγείο Ενότητα 9: Η συνεργατική διδασκαλία & μάθηση Διδάσκουσα: Μαρία Καμπεζά Τμήμα Επιστημών της Εκπαίδευσης και της Αγωγής στην Προσχολική Ηλικία Σκοποί ενότητας

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

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

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

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

Το πρόγραμμα HelloWorld.java. HelloWorld. Κλάσεις και Αντικείμενα (2) Ορισμός μιας Κλάσης (1) Παύλος Εφραιμίδης pefraimi ee.duth.

Το πρόγραμμα HelloWorld.java. HelloWorld. Κλάσεις και Αντικείμενα (2) Ορισμός μιας Κλάσης (1) Παύλος Εφραιμίδης pefraimi <at> ee.duth. Το πρόγραμμα HelloWorld.java Σχόλια στη Java HelloWorld Παύλος Εφραιμίδης pefraimi ee.duth.gr Java Το πρόγραμμα HelloWorld 1 Java Το πρόγραμμα HelloWorld 2 Σχόλια στη Java ΗγλώσσαJava υποστηρίζει

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

Ενσωματωμένα Συστήματα

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

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

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

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

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

ΕΠΙΧΕΙΡΗΜΑΤΙΚΑ ΣΧΕΔΙΑ

ΕΠΙΧΕΙΡΗΜΑΤΙΚΑ ΣΧΕΔΙΑ ΕΠΙΧΕΙΡΗΜΑΤΙΚΑ ΣΧΕΔΙΑ Ενότητα 7η: ΕΠΙΧΕΙΡΗΜΑΤΙΚΕΣ ΣΤΡΑΤΗΓΙΚΕΣ ΑΛΕΞΑΝΔΡΙΔΗΣ ΑΝΑΣΤΑΣΙΟΣ Τμήμα Διοίκησης Επιχειρήσεων (Κοζάνη) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Μάθηση σε νέα τεχνολογικά περιβάλλοντα

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

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

Οργάνωση και Διοίκηση Πωλήσεων

Οργάνωση και Διοίκηση Πωλήσεων Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 4: Η ΠΡΟΒΛΕΨΗ ΠΩΛΗΣΕΩΝ Αθανασιάδης Αναστάσιος Τμήμα Εφαρμογών Πληροφορικής στη Διοίκηση και Οικονομία Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ηλεκτρονική Υγεία. Ενότητα: Μηχανοργάνωση Νοσοκομείου

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ηλεκτρονική Υγεία. Ενότητα: Μηχανοργάνωση Νοσοκομείου Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Ηλεκτρονική Υγεία Ενότητα: Μηχανοργάνωση Νοσοκομείου Αν. καθηγητής Αγγελίδης Παντελής e-mail: paggelidis@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #4 2 Γενικά Στο Τετράδιο #4 του Εργαστηρίου θα αναφερθούμε σε θέματα διαχείρισης πινάκων

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

Εισαγωγή. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο 2005-06. Κατανεµηµένα συστήµατα αρχείων. Μέρη κατανεµηµένου συστήµατος αρχείων

Εισαγωγή. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο 2005-06. Κατανεµηµένα συστήµατα αρχείων. Μέρη κατανεµηµένου συστήµατος αρχείων Εισαγωγή Ε-03: Λειτουργικά Συστήµατα ΙΙ Εαρινό Εξάµηνο 2005-06 «Κατανεµηµένα Συστήµατα Αρχείων (1/2)» ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Σύστηµα αρχείων Αποθήκευση, προσπέλαση και διαχείριση δεδοµένων

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

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

Εισαγωγή στην πληροφορική Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στην πληροφορική Ενότητα 2: Βασικές αρχές λειτουργίας και χρήσης του υπολογιστή Αγγελίδης Παντελής Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

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

Μάρκετινγκ Επιχειρήσεων Λιανικής Πώλησης

Μάρκετινγκ Επιχειρήσεων Λιανικής Πώλησης Μάρκετινγκ Επιχειρήσεων Λιανικής Πώλησης Ενότητα 2: Διανομή Θεοδωρίδης Προκόπης Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης Επιχειρήσεων Αγροτικών Προϊόντων & Τροφίμων (Δ.Ε.Α.Π.Τ.) Σκοποί

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

Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 1: Ο ΡΟΛΟΣ ΤΩΝ ΠΩΛΗΣΕΩΝ ΣΤΟ ΠΛΑΙΣΙΟ ΤΗΣ ΣΤΡΑΤΗΓΙΚΗΣ ΜΑΡΚΕΤΙΝΓΚ

Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 1: Ο ΡΟΛΟΣ ΤΩΝ ΠΩΛΗΣΕΩΝ ΣΤΟ ΠΛΑΙΣΙΟ ΤΗΣ ΣΤΡΑΤΗΓΙΚΗΣ ΜΑΡΚΕΤΙΝΓΚ Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 1: Ο ΡΟΛΟΣ ΤΩΝ ΠΩΛΗΣΕΩΝ ΣΤΟ ΠΛΑΙΣΙΟ ΤΗΣ ΣΤΡΑΤΗΓΙΚΗΣ ΜΑΡΚΕΤΙΝΓΚ Αθανασιάδης Αναστάσιος Τμήμα Εφαρμογών Πληροφορικής στη Διοίκηση και Οικονομία Άδειες Χρήσης Το παρόν

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

Εγγυημένη ποιότητα υπηρεσίας

Εγγυημένη ποιότητα υπηρεσίας Εγγυημένη ποιότητα υπηρεσίας Απαιτήσεις ποιότητας υπηρεσίας Μηχανισμοί κατηγοριοποίησης Χρονοπρογραμματισμός Μηχανισμοί αστυνόμευσης Ενοποιημένες υπηρεσίες Διαφοροποιημένες υπηρεσίες Τεχνολογία Πολυμέσων

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

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

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

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

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη Ενότητα 3: Κλασικά Υποδείγματα της Διεθνούς Οικονομικής Θεωρίας (Heckscher-Ohlin model) Γρηγόριος

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

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 10ο μάθημα: Ορια παραλληλίας επιπέδου εντολής και πολυνηματικοί επεξεργαστές Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Ορια

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

Οδηγίες Οργάνωσης Μαθήματος στην Ιδρυματική πλατφόρμα του open e class. Σύνταξη: MY-AOC

Οδηγίες Οργάνωσης Μαθήματος στην Ιδρυματική πλατφόρμα του open e class. Σύνταξη: MY-AOC Οδηγίες Οργάνωσης Μαθήματος στην Ιδρυματική πλατφόρμα του open e class Σύνταξη: MY-AOC Άδεια Χρήσης Το παρόν υλικό υπόκειται σε άδειες χρήσης Creative Commons. Οργάνωση Μαθήματος 3 Η πλήρης οργάνωση ενός

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

ΜΑΘΗΜΑ: ΗΛΕΚΤΡΟΤΕΧΝΙΑ-ΗΛΕΚΤΡΟΝΙΚΗ ΕΡΓΑΣΤΗΡΙΟ

ΜΑΘΗΜΑ: ΗΛΕΚΤΡΟΤΕΧΝΙΑ-ΗΛΕΚΤΡΟΝΙΚΗ ΕΡΓΑΣΤΗΡΙΟ ΜΑΘΗΜΑ: ΗΛΕΚΤΡΟΤΕΧΝΙΑ-ΗΛΕΚΤΡΟΝΙΚΗ ΕΡΓΑΣΤΗΡΙΟ ΔΙΔΑΣΚΩΝ: ΑΡΙΣΤΕΙΔΗΣ Νικ. ΠΑΥΛΙΔΗΣ ΤΜΗΜΑ: ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΒΙΟΜΗΧΑΝΙΚΟΥ ΣΧΕΔΙΑΣΜΟΥ Τ.Ε. 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

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

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

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

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

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

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

Θέτοντας και επιστρέφοντας την τιµή της προτεραιότητας διεργασίας

Θέτοντας και επιστρέφοντας την τιµή της προτεραιότητας διεργασίας Θέτοντας και επιστρέφοντας την τιµή της προτεραιότητας διεργασίας Το επίπεδο προτεραιότητας µιας διεργασίας µπορεί να αλλάξει µε χρήση της συνάρτησης nice. Κάθε διεργασία διαθέτει µια τιµή που καλείται

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

ΕΠΙΧΕΙΡΗΜΑΤΙΚΑ ΣΧΕΔΙΑ

ΕΠΙΧΕΙΡΗΜΑΤΙΚΑ ΣΧΕΔΙΑ ΕΠΙΧΕΙΡΗΜΑΤΙΚΑ ΣΧΕΔΙΑ Ενότητα 11η: ΣΤΡΑΤΗΓΙΚΕΣ ΤΙΜΟΛΟΓΗΣΗΣ ΑΛΕΞΑΝΔΡΙΔΗΣ ΑΝΑΣΤΑΣΙΟΣ Τμήμα Διοίκησης Επιχειρήσεων (Κοζάνη) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ Ενότητα # 8: Πιθανότητες ΙΙ Εβελίνα Κοσσιέρη Τμήμα Λογιστικής και Χρηματοοικονομικής ΑΔΕΙΕΣ ΧΡΗΣΗΣ Το

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

Δυναμική Ηλεκτρικών Μηχανών

Δυναμική Ηλεκτρικών Μηχανών Δυναμική Ηλεκτρικών Μηχανών Ενότητα 1: Εισαγωγή Βασικές Αρχές Επ. Καθηγήτρια Τζόγια Χ. Καππάτου Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

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

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

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

Εφαρμοσμένη Στατιστική

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

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

Εισαγωγή στον Προγ/μό Η/Υ

Εισαγωγή στον Προγ/μό Η/Υ Εισαγωγή στον Προγ/μό Η/Υ Ενότητα 7 2ο μέρος: Επιπλέον έννοιες σχετικά με αντικείμενα Διδάσκων: Μιχάλης Τίτσιας Περιεχόμενα Τι μπορεί να περιέχει μια τάξη Μέθοδοι τάξης και σταθερές τάξης Πολυμορφισμός

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

Λογιστικές Εφαρμογές Εργαστήριο

Λογιστικές Εφαρμογές Εργαστήριο ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Λογιστικές Εφαρμογές Εργαστήριο Ενότητα #5: Αναλυτικά Καθολικά Μαρία Ροδοσθένους Τμήμα Λογιστικής και Χρηματοοικονομικής ΑΔΕΙΕΣ

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 10β: Αλγόριθμοι Γραφημάτων-Γραφήματα- Αναπαράσταση Γραφημάτων- Διερεύνηση Πρώτα σε Πλάτος (BFS) Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το

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

Ενότητα 7(κεφάλαιο 20) Ενσωματωμένα Συστήματα

Ενότητα 7(κεφάλαιο 20) Ενσωματωμένα Συστήματα ΕΠΛ362: Τεχνολογία Λογισμικού ΙΙ (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Software Engineering, 9/E, Ian Sommerville, 2011) Ενότητα 7(κεφάλαιο 20) Ενσωματωμένα Συστήματα Οι διαφάνειες αυτές έχουν

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

Προχωρημένα Θέματα Προγραμματισμού Δικτύων

Προχωρημένα Θέματα Προγραμματισμού Δικτύων 1 Ελληνική ημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Προχωρημένα Θέματα Προγραμματισμού Δικτύων Ενότητα 1: Εισαγωγή στον Προγραμματισμό Πόρων Δικτύων(ΠΠΔ) Φώτης Βαρζιώτης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα

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

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Α ) Ενσωματωμένα Συστήματα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

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

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 10: ΤΕΧΝΙΚΕΣ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΑΝΑΛΥΣΗΣ ΑΛΓΟΡΙΘΜΩΝ ΓΙΑ ΠΡΟΒΛΗΜΑΤΑ ΜΕ ΑΠΑΓΟΡΕΥΤΙΚΟ ΑΡΙΘΜΟ ΠΕΡΙΠΤΩΣΕΩΝ

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

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

Δίκτυα Υπολογιστών Ενότητα 10: Ethernet και ARP

Δίκτυα Υπολογιστών Ενότητα 10: Ethernet και ARP Δίκτυα Υπολογιστών Ενότητα 10: Ethernet και ARP Μιχάλας Άγγελος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό,

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

Λογιστική Κόστους Ενότητα 10: Ασκήσεις Προτύπου Κόστους Αποκλίσεων.

Λογιστική Κόστους Ενότητα 10: Ασκήσεις Προτύπου Κόστους Αποκλίσεων. Λογιστική Κόστους Ενότητα 10: Ασκήσεις Προτύπου Κόστους Αποκλίσεων. Μαυρίδης Δημήτριος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

Προγραμματισμός Ι. Κλάσεις και Αντικείμενα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Κλάσεις και Αντικείμενα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Κλάσεις και Αντικείμενα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Κλάσεις Η γενική μορφή μιας κλάσης είναι η εξής: class class-name { private data and

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

13 η Διάλεξη. Ενδεικτικές λύσεις ασκήσεων

13 η Διάλεξη. Ενδεικτικές λύσεις ασκήσεων 13 η Διάλεξη Ενδεικτικές λύσεις ασκήσεων 1 Περιεχόμενα 1 η Άσκηση ΠΣ εταιρίας ενοικίασης αυτοκινήτων... 4 2 η Άσκηση ΠΣ ταχυδρομείου... 6 3 η Άσκηση ΒΔ εταιρίας... 9 Χρηματοδότηση... 12 Σημείωμα Αναφοράς...

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

Προγραμματισμός Διαδικτύου

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

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

Κατανεμημένα Συστήματα με Java. Ενότητα # 14: Κατανεμημένα συστήματα αποθήκευσης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Κατανεμημένα Συστήματα με Java. Ενότητα # 14: Κατανεμημένα συστήματα αποθήκευσης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Κατανεμημένα Συστήματα με Java Ενότητα # 14: Κατανεμημένα συστήματα αποθήκευσης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του

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

Βιοϊατρική τεχνολογία

Βιοϊατρική τεχνολογία Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Βιοϊατρική τεχνολογία Ενότητα 5: Οξύμετρο (OxyPro Project) Αν. καθηγητής Αγγελίδης Παντελής e-mail: paggelidis@uowm.gr ΕΕΔΙΠ Μπέλλου Σοφία e-mail: sbellou@uowm.gr

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

Ενσωματωμένα Συστήματα

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

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

Ηλεκτρονικό Εμπόριο. Ενότητα 7: Διαχείριση Εφοδιαστικής Αλυσίδας Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Ηλεκτρονικό Εμπόριο. Ενότητα 7: Διαχείριση Εφοδιαστικής Αλυσίδας Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Ηλεκτρονικό Εμπόριο Ενότητα 7: Διαχείριση Εφοδιαστικής Αλυσίδας Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Τεχνικό Σχέδιο

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Τεχνικό Σχέδιο ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Τεχνικό Σχέδιο Ενότητα 4.1: Μεθοδολογία Παράστασης Τομών Επιφανειών Στερεών Σωμάτων (Συμπαγών και μη Συμπαγών) Σταματίνα Γ. Μαλικούτη

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