Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. Πληροφοριακά Συστήματα και Βάσεις Δεδομένων. Δρ. Κωνσταντίνος Χ.

Σχετικά έγγραφα
Βάσεις Δεδομένων ΙΙ. Διάλεξη 1 η Επεξεργασία Δοσοληψιών. Σύστημα Επεξεργασίας Δοσοληψιών

Επεξεργασία οσοληψιών

Βάσεις Δεδομένων 2. Φροντιστήριο Δοσοληψίες Τεχνικές ελέγχου συνδρομικότητας. Ημερ: 05/5/2009 Ακ.Έτος

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ. Επεξεργασία οσοληψιών. το πώς βλέπει το Σ Β τα προγράµµατα των χρηστών. οσοληψία (transaction)

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ. Σχετικά µε το µάθηµα: Αξιολόγηση. Σχετικά µε το µάθηµα:faq ΟΧΙ ΝΑΙ. Λιγότερος! (ας πούµε το 1/3-1/4)

Επεξεργασία οσοληψιών

Επεξεργασία οσοληψιών

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI

Βάσεις Δεδομένων ΙΙ Ενότητα 1

Επεξεργασία οσοληψιών

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης

Επεξεργασία οσοληψιών (συνέχεια)

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης

Δοσοληψίες Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης

Έλεγχος Ταυτοχρονισμού

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

Έλεγχος Ταυτοχρονισμού

Διαχείριση Δοσοληψιών

Προχωρημένα Θέματα Βάσεων Δεδομένων

Συναλλαγές. Εαρινό Εξάμηνο Τμήμα Μηχανικών Η/Υ και Πληροϕορικής Πολυτεχνική Σχολή, Πανεπιστήμιο Πατρών. Συναλλαγές. Βάσεις Δεδομένων ΙΙ

ΚΕΦΑΛΑΙΟ 1 ΣΥΝΑΛΛΑΓΕΣ ΚΑΙ ΕΛΕΓΧΟΣ ΤΑΥΤΟΧΡΟΝΙΣΜΟΥ

Έλεγχος συγχρονικότητας Μέρος 1 Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη

ΗΥ360 Αρχεία και Βάσεις εδοµένων

Βάσεις Δεδομένων ΙΙ. Διάλεξη 2 η Tεχνικές Ελέγχου Συνδρομικότητας

Θεµατολόγιο. Πώς ελέγχουµε σειριοποιησιµότητα στην πράξη;

Δοσοληψίες. Κατανεμημένα Συστήματα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙI

Επαναληπτικές ασκήσεις

Σηµειώσεις Βάσεων εδοµένων. ιαχείριση οσοληψιών. Γιάννης Θεοδωρίδης. Τµήµα Πληροφορικής, Πανεπιστήµιο Πειραιά.

Έλεγχος συγχρονικότητας Μέρος 2 Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη

Τεχνικές Ελέγχου Συνδροµικότητας

Επανάκτηση δεδομένων. (εμπλουτισμένο υλικό)

Δοσοληψίες. Κατανεμημένα Συστήματα

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. Πληροφοριακά Συστήματα και Βάσεις Δεδομένων. Δρ. Κωνσταντίνος Χ.

ΙΑΧΕΙΡΙΣΗ ΟΣΟΛΗΨΙΩΝ Να θυµηθούµε:

Βάσεις Δεδομένων ΙΙ. Διάλεξη 3 η Tεχνικές Aνάκαμψης. Ιδιότητες Δοσοληψιών

Κεφάλαιο 13 Δοσοληψίες

Βάσεις Δεδομένων ΙΙ Ενότητα 2

Βάσεις Δεδομένων ΙΙ Ενότητα 2

Σημεία ελέγχου (Checkpoints)

Επεξεργασία οσοληψιών (συνέχεια)

Transactions Management. (Διαχείριση Δοσοληψιών)

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

Πλειάδες φαντάσματα (phantoms)

Χρονοδιάγραμμα/Χρονοπρόγραμμα

Μάθημα Βάσεις Δεδομένων ΙΙ - Ασκήσεις Επανάληψης. 01 Εκφώνηση

ΕΥΧΑΡΙΣΤΙΕΣ. της εφαρµογής που υλοποιήσαµε, αλλά και προτάσεις για µελλοντικές εφαρµογές µε βάση την τεχνογνωσία που αποκτήσαµε.

Θεωρία Γραφημάτων και Εφαρμογές - Διακριτά Μαθηματικά ΙΙ Φεβρουάριος 2017

Γιατί υϖάρχει τέτοια καθολική κατάσταση;

Θεµατολόγιο. Α) Πρακτικά Θέµατα στον Έλεγχο Ταυτοχρονισµού

Έλεγχος Συγχρονικότητας. (Concurrency Control)

Έλεγχος Ταυτοχρονισμού

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

Προχωρημένα Θέματα Βάσεων Δεδομένων

Τεχνικές Ανάκαµψης. Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε

ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

Αποκατάσταση συστήματος Βάσεις Δεδομένων

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Μάθημα 5: Χαρακτηριστικά της Κ.Μ.Ε.

Ας δούμε λίγο την θεωρία με την οποία ασχοληθήκαμε μέχρι τώρα.

A. Να γράψετε τον αριθμό της κάθε μιας από τις παρακάτω προτάσεις και δίπλα. το γράμμα Σ, εάν είναι σωστή, ή το γράμμα Λ, εάν είναι λανθασμένη.

Μαθηματική Εισαγωγή Συναρτήσεις

9. Κόκκινα-Μαύρα Δέντρα

Συνδετικότητα γραφήματος (graph connectivity)

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. ii) Πόσες φορές θα εκτελεστεί η εντολή ΔΙΑΒΑΣΕ Α[μ,λ] στον αλγόριθμο της προηγούμενης ερώτησης; α) 35 β) 12 γ) 20

Τεχνικές Ανάκαµψης. Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ ΤΕΛΟΣ 1ΗΣ ΣΕΛΙΔΑΣ

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. ii) Πόσες φορές θα εκτελεστεί η εντολή ΔΙΑΒΑΣΕ Α[μ,λ] στον αλγόριθμο της προηγούμενης ερώτησης; α) 35 β) 12 γ) 20

Τομές Γραφήματος. Γράφημα (μη κατευθυνόμενο) Συνάρτηση βάρους ακμών. Τομή : Διαμέριση του συνόλου των κόμβων σε δύο μη κενά σύνολα

Θέματα Υλοποίησης Σχεσιακών ΣΔΒΔ

Κεφάλαιο 4 : Λογική και Κυκλώματα

Επίλυση 1 ης Εργασίας. Παραδόθηκαν: 11/12 15%

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας

ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI

Θεωρία Γραφημάτων και Εφαρμογές - Διακριτά Μαθηματικά ΙΙ Σεπτέμβριος 2017

Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας

Αριθμητική Ανάλυση. Ενότητα 1: Εισαγωγή Βασικές Έννοιες. Φραγκίσκος Κουτελιέρης Πολυτεχνική Σχολή Τμήμα Χημικών Μηχανικών

Ημερομηνία: 1/03/15 Διάρκεια διαγωνίσματος: 180 Εξεταζόμενο μάθημα: Προγραμματισμός (Δομή Επανάληψης) Υπεύθυνος καθηγητής: Παπαδόπουλος Πέτρος

Γ ε ν ι κ ό Λ ύ κ ε ι ο Ε λ ε υ θ ε ρ ο ύ π ο λ η ς. Α λ γ ό ρ ι θ μ ο ι

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Γ ΛΥΚΕΙΟΥ

Ειδικά Θζματα Βάςεων Δεδομζνων

Αναδρομικός αλγόριθμος

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. Εξετάσεις Προσομοίωσης 24/04/2019

Κεφάλαιο 9 : Βασικές εντολές

ΕΞΕΤΑΣΤΙΚΗ ΠΕΡΙΟΔΟΣ ΑΠΡΙΛΙΟΥ 2011 Γ ΤΑΞΗΣ ΛΥΚΕΙΟΥ ΘΕΤΙΚΗΣ-ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤ/ΝΣΗΣ Μ

ΦΥΣΙΚΗ ΘΕΤΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

9. Συστολικές Συστοιχίες Επεξεργαστών

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 3: ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ - ΓΡΑΦΗΜΑΤΑ

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόγχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός

Μαθηματική Εισαγωγή Συναρτήσεις

Δώστε έναν επαγωγικό ορισμό για το παραπάνω σύνολο παραστάσεων.

ΛΥΣΕΙΣ ΕΞΕΤΑΣΗΣ ΣΤΟ ΜΑΘΗΜΑ «ΗΛΕΚΤΡΟΝΙΚΑ ΙΙ» ΗΜΕΡΟΜΗΝΙΑ: 12/09/2013

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΣΠΟΥΔΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΕΝΟΤΗΤΑ 3: ΦΘΙΝΟΥΣΕΣ ΜΗΧΑΝΙΚΕΣ ΤΑΛΑΝΤΩΣΕΙΣ ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΑΝΕΛΛΑΔΙΚΩΝ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

Transcript:

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας Πληροφοριακά Συστήματα και Βάσεις Δεδομένων Δρ. Κωνσταντίνος Χ. Γιωτόπουλος

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΑ και ΔΥΝΑΤΟΤΗΤΑ ΑΝΑΚΑΜΨΗΣ Όταν οι δοσοληψίες εκτελούνται συνδρομικά με διαπεπλεγμένο τρόπο, η διάταξη εκτέλεσης των πράξεων των διαφόρων δοσοληψιών σχηματίζει μια ακολουθία γνωστή ως χρονοπρόγραμμα (ή χρονικό) δοσοληψιών. Χρονοπρόγραμμα S των δοσοληψιών T1, T2,, Tn είναι μια διάταξη των πράξεων των δοσοληψιών η οποία υπόκειται στον περιορισμό ότι για κάθε δοσοληψία Τi που συμμετέχει στο S, οι πράξεις της Ti πρέπει να εμφανισθούν στο S με την ίδια σειρά που εμφανίζονται στην Ti. Σύμβολα: r, w, c, a (read, write, commit, abort) Sa : r1(x); r2(x); w1(x); r1(y); w2(x); c2; w1(y); c1; Sb : r1(x); w1(x); r2(x); w2(x); c2; r1(y); a1;

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΑ και ΔΥΝΑΤΟΤΗΤΑ ΑΝΑΚΑΜΨΗΣ (2) Συγκρουόμενες ή αντιτιθέμενες πράξεις στο S αν ανήκουν σε διαφορετικές δοσοληψίες και προσπελαύνουν το ίδιο στοιχείο Χ και τουλάχιστον μια από τις δύο είναι write. Χρονοπρόγραμμα καλείται πλήρες αν: Οι πράξεις στο S είναι όλες οι πράξεις των Τ και a, c για κάθε Τ στο τέλος της. Για κάθε ζεύγος πράξεων από Τi η σειρά εμφάνισής τους στο S είναι ίδια με το Τ Για κάθε ζεύγος συγκρουόμενων πράξεων μια από τις δύο πρέπει να βρίσκεται πριν από την άλλη στο S. Πλήρες χρονοδιάγραμμα δεν περιέχει ενεργές Τ στο τέλος του. Συνεχώς μπαίνουν νέες Τ τότε μιλάμε για επικυρωμένη προβολή C(S) ενός S.

ΧΑΡΑΚΤΗΡΙΣΜΟΣ ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΩΝ ΜΕ ΒΑΣΗ ΤΗ ΔΥΝΑΤΟΤΗΤΑ ΑΝΑΚΑΜΨΗΣ Χρονοπρογράμματα με δυνατότητα ανάκαμψης. H Δοσοληψία Τ αν επικυρωθεί δεν πρόκειται ποτέ να ανακληθεί. Kαμία δοσοληψία Τ στο S δεν επικυρώνεται αν όλες οι δοσοληψίες Τ δεν επικυρωθούν που τροποποιούν ένα στοιχείο που διαβάζει η Τ Sγ: r1(x); w1(x); r2(x); r1(y); w2(x); c2; a1; To a1 έπεται του c2 και έτσι η τιμή στο r2(x) είναι λανθασμένη. Άρα δεν έχει δυνατότητα ανάκαμψης. Σε S με δυνατότητα ανάκαμψης δεν παρουσιάζεται η ανάγκη ανάκλησης επικυρωμένης δοσοληψίας. Υπάρχει το φαινόμενο όμως της διαδιδόμενης ανάκλησης όπου μια μη επικυρωμένη δοσοληψία πρέπει να ανακληθεί διότι διάβασε στοιχείο από δοσοληψία που απέτυχε. Η διαδιδόμενη ανάκληση μπορεί να είναι χρονοβόρα. Ένα S αποφεύγει τη διάδοση ανακλήσεων αν κάθε δοσοληψία διαβάζει από επικυρωμένες δοσοληψίες. Αυστηρό χρονοπρόγραμμα: οι δοσοληψίες δεν μπορούν να διαβάσουν και να γράψουν στοιχείο έως ότου επικυρωθεί η τελευταία δοσοληψία που το έγραψε.

ΣΕΙΡΙΟΠΟΙΗΣΙΜΟΤΗΤΑ ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΩΝ Έστω Τ1 και Τ2 δύο δοσοληψίες που υποβάλλουν δύο χρήστες. Αν δεν επιτρέπεται διαπλοκή δύο τρόποι εκτέλεσης υπάρχουν: Πρώτα Τ1 και μετά Τ2 Αντίστροφα Αν επιτρέπεται διαπλοκή των πράξεων πάρα πολλές περιπτώσεις υπάρχουν Ένας σημαντικός τομέας ελέγχου συνδρομικότητας, που ονομάζεται θεωρία σειριοποιησιμότητας, προσπαθεί να προσδιορίσει ποια χρονοπρογράμματα είναι σωστά και ποιά όχι, και να αναπτύξει τεχνικές που διαμορφώνουν σωστά χρονοπρογράμματα

ΣΕΙΡΙΟΠΟΙΗΣΙΜΟΤΗΤΑ ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΩΝ (2) Σειριακά χρονοπρογράμματα: για κάθε δοσοληψία Τ που συμμετέχει στο S όλες οι πράξεις της εκτελούνται διαδοχικά. Αν όχι το χρονοπρόγραμμα είναι μη σειριακό. Υπόθεση: οι δοσοληψίες είναι ανεξάρτητες. Το πρόβλημα με τα σειριακά είναι ότι σπαταλούμε χρόνο. Αν υπάρχει πράξη εισόδου / εξόδου δεν μπορούμε να πάμε στην ΚΜΕ και να εκτελέσουμε κάποια άλλη πράξη άλλης δοσοληψίας. Μη σειριακά χρονοπρογράμματα, επιλύουν το πρόβλημα της αξιοποίησης της ΚΜΕ και μειώνουμε το χρόνο εκτέλεσης. Κάποια μη σειριακά δίνουν σωστό αποτέλεσμα και κάποια μπορεί να οδηγήσουν σε λάθη. Εξαρτάται από σειρά εκτέλεσης των διαφόρων πράξεων των δοσοληψιών.

Παράδειγμα

ΣΕΙΡΙΟΠΟΙΗΣΙΜΟΤΗΤΑ ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΩΝ (3) Έστω Χ=90, Υ=90 και Ν=3 και Μ=2 Μετά το πέρας των Τ1 και Τ2 σε α και β παράδειγμα έχουμε: Χ=89 και Υ=93 Για τις περιπτώσεις όμως των γ και δ, έχουμε: Περίπτωση γ): Χ=92 και Υ=93 (λάθος) Περίπτωση δ): Χ=89 και Υ=93 (σωστό) Θέλουμε να διαχωρίσουμε ποια από τα μη σειριακά χρονοπρογράμματα δίδουν σωστά αποτελέσματα και ποια όχι. Εισάγουμε την έννοια της σειριοποιησιμότητας.

ΣΕΙΡΙΟΠΟΙΗΣΙΜΟΤΗΤΑ ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΩΝ (4) Ένα χρονοπρόγραμμα S από n δοσοληψίες είναι σειριοποιήσιμο αν είναι ισοδύναμο με κάποιο σειριακό χρονοπρόγραμμα των n δοσοληψιών. Σημείωση: για n δοσοληψίες υπάρχουν n! πιθανά σειριακά χρονοπρογράμματα και πολύ περισσότερα μη σειριακά χρονοπρογράμματα. Αν κάθε σειριακό χρονοπρόγραμμα είναι σωστό τότε αν ένα μη σειριακό είναι ισοδύναμο με ένα σειριακό τότε είναι και αυτό σωστό. Ισοδύναμα χρονοπρογράμματα. Πολλοί τρόποι ορισμού. Απλός τρόπος όχι ικανοποιητικός: Σύγκριση επίδρασης στη ΒΔ. Δύο χρονικά καλούνται ισοδύναμου αποτελέσματος αν παράγουν την ίδια τελική κατάσταση της ΒΔ. Μπορεί όμως αυτό να είναι τυχαίο

ΣΕΙΡΙΟΠΟΙΗΣΙΜΟΤΗΤΑ ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΩΝ (5) Παράδειγμα Αν Χ= 100 αρχική τιμή τυχαία οδηγούμαστε στην ίδια κατάσταση. Άρα η ισοδυναμία αποτελέσματος δεν χρησιμοποιείται για τον ορισμό ισοδυναμίας χρονοπρογραμμάτων. S1 read (X); X:=X+10; write(x); S2 read(x); X:=X*1.1; write(x); Ασφαλέστερη προσέγγιση. Καμία υπόθεση για τους τύπους των πράξεων. Για να είναι ισοδύναμα, πρέπει οι πράξεις που εφαρμόζονται σε κάθε στοιχειώδες δεδομένο να γίνονται με την ίδια σειρά και στα δύο χρονοπρογράμματα. Δύο ορισμούς ισοδυναμία συγκρούσεων και ισοδυναμία όψεων. Ισοδυναμία συγκρούσεων ή αντιθέσεων. Η διάταξη κάθε ζεύγους συγκρουόμενων ή αντιτιθέμενων πράξεων είναι ίδια και στα δύο χρονοπρογράμματα. (2 πράξεις είναι συγκρουόμενες αν ανήκουν σε διαφορετικές δοσοληψίες, προσπελαύνουν το ίδιο στοιχειώδες δεδομένο και μία είναι εγγραφή). Ένα S είναι σειριοποιήσιμο βάση συγκρούσεων αν είναι ισοδύναμο (βάση συγκρούσεων) με κάποιο σειριακό S. Αυτό πρακτικά σημαίνει ότι μπορούμε να αναδιατάξουμε τις μη συγκρουόμενες πράξεις στο S μέχρι να σχηματίσουμε το S. (Χρονοπρόγραμμα Δ ισοδύναμο με Χρονοπρόγραμμα Α στο σχήμα)

Έλεγχος ενός Χρονοπρογράμματος για Σειριοποιησιμότητα βάσει αντιθέσεων Απλός αλγόριθμος. Στην πράξη οι περισσότερες μέθοδοι ελέγχου συνδρομικότητας δεν ελέγχουν τη σειριοποιησιμότητα. Αντί ελέγχου αναπτύσσονται πρωτόκολλα ή κανόνες που εγγυώνται ότι ένα S θα είναι σειριοποιήσιμο. Ο αλγόριθμος θεωρεί μόνον τις πράξεις read και write και κατασκευάζει ένα γράφο προήγησης (precedence graph) ή γράφο σειριοποίησης (serialization graph). Ο γράφος είναι κατευθυνόμενος G=(N,E) με κόμβους το σύνολο N = {T1, T2,, Tn} και ένα σύνολο ακμών Ε = {α1, α2,..., αm}. Υπάρχει ένας κόμβος στο γράφο για κάθε δοσοληψία Τi του S. Κάθε ακμή αi στο γράφο έχει τη μορφή (Τj -> Tk), 1<=j<=n, 1<=k<=n, Tj αρχικός κόμβος και Τk τελικός κόμβος της ακμής. Η ύπαρξη μιας ακμής στο γράφο (Τj -> Tk) σημαίνει ότι μια από τις πράξεις της Τj εμφανίζεται στο S πριν από κάποια πράξη της Tk με την οποία συγκρούεται ή αντιτίθεται.

Αλγόριθμος Σειριοποίησης 1. Για κάθε Τi του S δημιούργησε έναν κόμβο Τi στο γράφο προτεραιοτήτων. 2. για κάθε περίπτωση στο S όπου η Τj εκτελεί read(x) μετά από μια write(x) της Τi δημιούργησε μια ακμή (Τi -> Tj) 3. για κάθε περίπτωση στο S όπου η Τj εκτελεί write(x) μετά από μια read(x) της Τi δημιούργησε μια ακμή (Τi -> Tj) 4. για κάθε περίπτωση στο S όπου η Τj εκτελεί write(x) μετά από μια write(x) της Τi δημιούργησε μια ακμή (Τi -> Tj) 5. To S είναι σειριοποιήσιμο αν και μόνο αν ο γράφος προήγησης δεν έχει κυκλώματα. Κύκλωμα σε ένα κατευθυνόμενο γράφο είναι μια ακολουθία ακμών C = ((Τj -> Tk), (Τk -> Tp),, (Τi -> Tj)) με την ιδιότητα ότι ο αρχικός κόμβος κάθε ακμής εκτός της πρώτης είναι ίδιος με το τελικό κόμβο της προηγούμενης ακμής και ο αρχικός κόμβος της πρώτης ακμής είναι ο ίδιος με το τελικό κόμβο της τελευταίας ακμής.

Κατασκευή γράφων προήγησης για το παράδειγμα των χρονοπρογραμμάτων Α, Β, Γ και Δ Χ Χ Τ 1 Τ 2 (α) Τ 1 Τ 2 (β) Χ Τ 1 Τ 2 Χ (γ) Χ Τ 1 Τ 2 (δ)

Νέο Παράδειγμα

Κατασκευή γράφων προήγησης για τα χρονοπρογράμματ Ε και ΣΤ Υ Τ 1 Τ 2 Χ Υ Τ 3 Υ, Ζ Γράφος Προήγησης για το Χρονοπρόγραμμα Ε Ισοδύναμα Σειριακά: Κανένα Αιτία Κύκλωμα Χ(Τ 1 ->Τ 2 ), Υ(Τ 2 ->Τ 1 ) Κύκλωμα Χ(Τ 1 ->Τ 2 ), ΥΖ(Τ 2 ->Τ 3 ), Υ(Τ 3 ->Τ 1 ) Τ 1 Χ,Υ Τ 2 Υ Υ, Ζ Γράφος Προήγησης για το Χρονοπρόγραμμα ΣΤ Ισοδύναμα Σειριακά: Τ 3 -> Τ 1 -> Τ 2 Τ 3 Τ 1 Τ 2 Γράφος Προήγησης με 2 ισοδύναμα σειριακά: Τ 3 -> Τ 1 -> Τ 2 Τ 3 -> Τ 2 -> Τ 1 Τ 3