GR20180200121U - Διαχειριση εξαιρεσεων σε συναλλαγες - Google Patents

Διαχειριση εξαιρεσεων σε συναλλαγες Download PDF

Info

Publication number
GR20180200121U
GR20180200121U GR20180200121U GR20180200121U GR20180200121U GR 20180200121 U GR20180200121 U GR 20180200121U GR 20180200121 U GR20180200121 U GR 20180200121U GR 20180200121 U GR20180200121 U GR 20180200121U GR 20180200121 U GR20180200121 U GR 20180200121U
Authority
GR
Greece
Prior art keywords
exception
transaction
data processing
circuit
enumeration
Prior art date
Application number
GR20180200121U
Other languages
English (en)
Inventor
Stephan Diestelhorst
Matthew Jones Horsnell
Grigorios Magklis
Original Assignee
Arm Limited
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Arm Limited filed Critical Arm Limited
Priority to GR20180200121U priority Critical patent/GR20180200121U/el
Publication of GR20180200121U publication Critical patent/GR20180200121U/el

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

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

Description

ΔΙΑΧΕΙΡΙΣΗ ΕΞΑΙΡΕΣΕΩΝ ΣΕ ΣΥΝΑΛΛΑΓΕΣ
ΤΕΧΝΙΚΟ ΠΕΔΙΟ
Η παρούσα δημοσιοποίηση σχετίζεται με την επεξεργασία δεδομένων. Πιο συγκεκριμένα σχετίζεται με τη διαχείριση εξαιρέσεων.
ΥΠΟΒΑΘΡΟ
Μια διάταξη επεξεργασίας δεδομένων η οποία πραγματοποιεί λειτουργίες επεξεργασίας δεδομένων σε απόκριση εντολών μπορεί να έχει την ικανότητα πραγματοποίησης των λειτουργιών επεξεργασίας δεδομένων που σχετίζονται με μια ή περισσότερες εντολές ως μια “συναλλαγή”, ώστε η εντολή ή αυτές οι εντολές να πραγματοποιούνται ατομικά σε σχέση με άλλες λειτουργίες που εκτελούνται από τη διάταξη. Δηλαδή πραγματοποιούνται ως σύνολο και πλήρως ή καθόλου, ώστε καμία κατάσταση “πραγματοποίησης κατά το ήμισυ” να μην είναι ποτέ αντιληπτή στο υπόλοιπο σύστημα. Μια τέτοια συναλλαγή για παράδειγμα μπορεί να ορίζεται από μια εντολή έναρξης συναλλαγής που προηγείται του συνόλου εντολών συναλλαγών και τερματίζεται από μια εντολή τέλους συναλλαγής. Μια διάταξη επεξεργασίας δεδομένων μπορεί επίσης να διατάσσεται ώστε να αποκρίνεται σε μια σύγχρονη εξαίρεση (δηλ. μια που προκύπτει από την εκτέλεση εντολών) εκτελώντας μια προκαθορισμένη απόκριση εξαίρεσης. Μια συνέπεια της εμφάνισης μιας εξαίρεσης στα πλαίσια μιας διάταξης η οποία μπορεί να διαχειρίζεται την προαναφερθείσα εκτέλεση εντολών συναλλαγών είναι ότι όταν είναι σε εξέλιξη εκείνη τη στιγμή μια συναλλαγή η συναλλαγή διακόπτεται, με αυτό να διαχειρίζεται συνήθως σε επίπεδο υλικού ώστε το λειτουργικό σύστημα να μην αντιλαμβάνεται ότι μια σύγχρονη εξαίρεση προκάλεσε μια διακοπή συναλλαγής.
ΠΕΡΙΛΗΨΗ
Σε ένα τουλάχιστον παράδειγμα υλοποίησης υπάρχει μια διάταξη που περιλαμβάνει: ένα κύκλωμα επεξεργασίας δεδομένων για την πραγματοποίηση λειτουργιών επεξεργασίας δεδομένων σε απόκριση εντολών επεξεργασίας δεδομένων, όπου το κύκλωμα επεξεργασίας δεδομένων περιλαμβάνει ένα κύκλωμα υποστήριξης συναλλαγών το οποίο αποκρίνεται σε μια ακολουθία εντολών που ορίζουν μια συναλλαγή και προκαλεί την ατομική πραγματοποίηση ενός συναλλακτικού συνόλου λειτουργιών επεξεργασίας δεδομένων που ορίζεται από την ακολουθία εντολών σε σχέση με άλλες λειτουργίες επεξεργασίας δεδομένων που πραγματοποιούνται από το κύκλωμα επεξεργασίας δεδομένων και ένα κύκλωμα διαχείρισης εξαιρέσεων το οποίο αποκρίνεται σε μια εμφάνιση μιας σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή και εξαναγκάζει το κύκλωμα υποστήριξης συναλλαγών να διακόπτει τη συναλλαγή ώστε το συναλλακτικό σύνολο λειτουργιών επεξεργασίας δεδομένων να μην εκτελούνται, όπου το κύκλωμα διαχείρισης εξαιρέσεων περιλαμβάνει ένα κύκλωμα απαρίθμησης εξαιρέσεων το οποίο αποκρίνεται στην εμφάνιση της σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή για την αύξηση μιας απαρίθμησης που συγκρατείται από το κύκλωμα απαρίθμησης ενώ το κύκλωμα διαχείρισης εξαιρέσεων αποκρίνεται όταν η απαρίθμηση φτάνει μια τιμή κατωφλιού για τη δημιουργία ενός σήματος αποτυχίας συναλλαγής.
Σε ένα τουλάχιστον παράδειγμα υλοποίησης υπάρχει μια μέθοδος λειτουργίας μιας διάταξης επεξεργασίας δεδομένων η οποία περιλαμβάνει τα εξής βήματα: πραγματοποίηση λειτουργιών επεξεργασίας δεδομένων σε απόκριση εντολών επεξεργασίας δεδομένων, σε απόκριση μιας ακολουθίας εντολών που ορίζουν μια συναλλαγή, προκαλώντας την πραγματοποίηση ενός συναλλακτικού συνόλου λειτουργιών επεξεργασίας δεδομένων που ορίζεται από την ακολουθία εντολών προς ατομική πραγματοποίηση σε σχέση με άλλες λειτουργίες επεξεργασίας δεδομένων, σε απόκριση της εμφάνισης μιας σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή, διακόπτοντας τη συναλλαγή ώστε το συναλλακτικό σύνολο λειτουργιών επεξεργασίας δεδομένων να μην εκτελείται, σε απόκριση της εμφάνισης της σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή, αυξάνοντας μια απαρίθμηση και σε απόκριση όταν η απαρίθμηση φτάνει μια τιμή κατωφλιού, δημιουργώντας ένα σήμα αποτυχίας συναλλαγής.
Σε ένα τουλάχιστον παράδειγμα υλοποίησης υπάρχει ένα πρόγραμμα υπολογιστή για τον έλεγχο μιας κεντρικής διάταξης επεξεργασίας δεδομένων για την παροχή ενός περιβάλλοντος εκτέλεσης εντολών για την εκτέλεση εντολών ενός στοχευόμενου κώδικα προγράμματος, το οποίο περιλαμβάνει:
λογική επεξεργασίας δεδομένων για την πραγματοποίηση λειτουργιών επεξεργασίας δεδομένων σε απόκριση εντολών επεξεργασίας δεδομένων, όπου η λογική επεξεργασίας δεδομένων περιλαμβάνει λογική υποστήριξης συναλλαγών η οποία αποκρίνεται σε μια ακολουθία εντολών που ορίζουν μια συναλλαγή και προκαλούν την ατομική πραγματοποίηση ενός συναλλακτικού συνόλου λειτουργιών επεξεργασίας δεδομένων που ορίζεται από την ακολουθία εντολών σε σχέση με άλλες λειτουργίες επεξεργασίας δεδομένων που πραγματοποιούνται από τη λογική επεξεργασίας δεδομένων, και
λογική διαχείρισης εξαιρέσεων η οποία αποκρίνεται στην εμφάνιση μιας σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή και προκαλεί τη διακοπή της συναλλαγής από τη λογική υποστήριξης συναλλαγών ώστε το συναλλακτικό σύνολο λειτουργιών επεξεργασίας δεδομένων να μην εκτελείται,
όπου η λογική διαχείρισης εξαιρέσεων περιλαμβάνει μια λογική απαρίθμησης εξαιρέσεων η οποία αποκρίνεται στην εμφάνιση της σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή και αυξάνει μια απαρίθμηση που συγκρατείται από τη λογική απαρίθμησης ενώ η λογική διαχείρισης εξαιρέσεων αποκρίνεται όταν η απαρίθμηση φτάνει μια τιμή κατωφλιού για τη δημιουργία ενός σήματος αποτυχίας συναλλαγής.
Ένα μέσο αποθήκευσης μπορεί να αποθηκεύει το πρόγραμμα υπολογιστή που περιγράφεται παραπάνω. Το μέσο αποθήκευσης μπορεί να είναι ένα μη προσωρινό μέσο αποθήκευσης.
ΣΥΝΤΟΜΗ ΠΕΡΙΓΡΑΦΗ ΤΩΝ ΣΧΕΔΙΑΓΡΑΜΜΑΤΩΝ
Οι παρούσες τεχνικές θα περιγραφούν περαιτέρω, μόνο μέσω παραδειγμάτων, αναφορικά με υλοποιήσεις αυτών όπως εικονίζονται στα συνοδευτικά σχεδιαγράμματα, στα οποία:
Το Σχήμα 1 απεικονίζει σχηματικά μια διάταξη σε ένα παράδειγμα υλοποίησης,
Το Σχήμα 2 απεικονίζει σχηματικά ένα κύκλωμα διαχείρισης εξαιρέσεων σε ένα παράδειγμα υλοποίησης,
Το Σχήμα 3 απεικονίζει σχηματικά ένα κύκλωμα διαχείρισης εξαιρέσεων σε ένα παράδειγμα υλοποίησης,
Το Σχήμα 4 απεικονίζει σχηματικά ένα κύκλωμα διαχείρισης εξαιρέσεων σε ένα παράδειγμα υλοποίησης,
Το Σχήμα 5 είναι ένα διάγραμμα ροής που δείχνει μια μέθοδο διαχείρισης εξαιρέσεων σε ένα παράδειγμα υλοποίησης, και
Το Σχήμα 6 δείχνει ένα παράδειγμα ενός προσομοιωτή που υποστηρίζει τη λογική επεξεργασίας δεδομένων και τη λογική διαχείρισης εξαιρέσεων.
ΠΕΡΙΓΡΑΦΗ ΤΩΝ ΥΛΟΠΟΙΗΣΕΩΝ
Τουλάχιστον ορισμένες υλοποιήσεις παρέχουν μια διάταξη η οποία περιλαμβάνει: ένα κύκλωμα επεξεργασίας δεδομένων για την πραγματοποίηση λειτουργιών επεξεργασίας δεδομένων σε απόκριση εντολών επεξεργασίας δεδομένων, όπου το κύκλωμα επεξεργασίας δεδομένων περιλαμβάνει ένα κύκλωμα υποστήριξης συναλλαγών το οποίο αποκρίνεται σε μια ακολουθία εντολών που ορίζουν μια συναλλαγή και προκαλεί την ατομική πραγματοποίηση ενός συναλλακτικού συνόλου λειτουργιών επεξεργασίας δεδομένων που ορίζονται από την ακολουθία εντολών σε σχέση με άλλες λειτουργίες επεξεργασίας δεδομένων που πραγματοποιούνται από το κύκλωμα επεξεργασίας δεδομένων και ένα κύκλωμα διαχείρισης εξαιρέσεων το οποίο αποκρίνεται στην εμφάνιση μιας σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή και προκαλούν τη διακοπή της συναλλαγής από το κύκλωμα υποστήριξης συναλλαγών ώστε να μην εκτελείται το συναλλακτικό σύνολο λειτουργιών επεξεργασίας δεδομένων, όπου το κύκλωμα διαχείρισης εξαιρέσεων περιλαμβάνει ένα κύκλωμα απαρίθμησης εξαιρέσεων το οποίο αποκρίνεται στην εμφάνιση της σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή για την αύξηση μιας απαρίθμησης που συγκρατείται από το κύκλωμα απαρίθμησης ενώ το κύκλωμα διαχείρισης εξαιρέσεων αποκρίνεται όταν η απαρίθμηση φτάνει μια τιμή κατωφλιού για τη δημιουργία ενός σήματος αποτυχίας συναλλαγής.
Σε μια διάταξη η οποία πραγματοποιεί λειτουργίες επεξεργασίας δεδομένων σε απόκριση εντολών επεξεργασίας δεδομένων και υποστηρίζει “συναλλαγές” σύμφωνα με τις οποίες πραγματοποιείται ατομικά ένα συναλλακτικό σύνολο εντολών επεξεργασίας δεδομένων σε σχέση με άλλες λειτουργίες επεξεργασίας δεδομένων, μια προσέγγιση στην εμφάνιση μιας εξαίρεσης είναι ότι η σύγχρονη εξαίρεση καταστέλλεται (δηλ. δεν καλείται η συνήθης ρουτίνα διαχείρισης εξαιρέσεων η οποία θα είχε κληθεί διαφορετικά) και η συναλλαγή απλά αποτυγχάνει και επαναφέρει την κατάσταση σε μια κατάσταση προ της συναλλαγής. Ως αποτέλεσμα το λειτουργικό σύστημα δεν αντιλαμβάνεται ότι έχει συμβεί η εξαίρεση και ότι η συναλλαγή έχει αποτύχει. Μολονότι αυτή η προσέγγιση εκλαμβάνεται σε γενικές γραμμές ως ευεργετική, εφόσον αποτρέπει την όχληση του λειτουργικού συστήματος όταν συμβαίνει μια σύγχρονη εξαίρεση και αποτυγχάνει μια συναλλαγή, η οποία διαφορετικά θα μπορούσε να ήταν σχετικά συχνή κι επομένως ενοχλητική, οι παρούσες τεχνικές αναγνωρίζουν ότι μπορεί να υπάρχουν περιπτώσεις στις οποίες είναι προτιμότερο όταν συμβαίνει μια σύγχρονη εξαίρεση και αποτυγχάνει μια συναλλαγή ως αποτέλεσμα θα πρέπει να ειδοποιείται με κάποιο τρόπο. Ανάλογα οι παρούσες τεχνικές προτείνουν μια προσέγγιση στην οποία παρέχεται ένα κύκλωμα διαχείρισης εξαιρέσεων το οποίο, μολονότι προκαλεί τον τερματισμό μιας συναλλαγής σε περίπτωση διακοπής της από μια σύγχρονη εξαίρεση, εν τούτοις διατηρεί μια απαρίθμηση τέτοιων εμφανίσεων (δηλ. σύγχρονων εξαιρέσεων κατά τις συναλλαγές) και εάν αυτή η απαρίθμηση φτάσει μια τιμή κατωφλιού παράγει ένα σήμα αποτυχίας συναλλαγής. Αυτό το σήμα αποτυχίας συναλλαγής μπορεί να χρησιμοποιείται με έναν αριθμό τρόπων, όμως συγκεκριμένα μπορεί να ειδοποιεί το λειτουργικό σύστημα ότι έχει συμβεί ο αριθμός κατωφλιού των εξαιρέσεων σε συναλλαγές και, για παράδειγμα, εάν το λειτουργικό σύστημα προσδιορίσει ότι αυτό θα μπορούσε να είναι ενδεικτικό ειδεχθούς δραστηριότητας (από κακόβουλο λογισμικό) τότε μπορούν να ληφθούν μέτρα αντιμετώπισης αυτής της δραστηριότητας. Για παράδειγμα, οι παρούσες τεχνικές αναγνωρίζουν ότι ένα πρόγραμμα χώρου χρηστών μπορεί να προσπαθεί ειδεχθή σχήματα πρόσβασης στη μνήμη στα πλαίσια μιας συναλλαγής χωρίς να έχει γνώση το λειτουργικό σύστημα. Οι παρούσες τεχνικές το αντιμετωπίζουν αυτό. Ανάλογα προνομιακός κώδικας μπορεί (περιστασιακά) να παρατηρεί δραστηριότητα σύγχρονων εξαιρέσεων, ανάλογα την επιλογή του συνόλου τιμών κατωφλιού για τον απαριθμητή. Στα πλαίσια των επιπέδων προνομίων σε μια διάταξη επεξεργασίας δεδομένων, ο ορισμός της τιμής κατωφλιού μπορεί να ορίζεται από ένα προνομιακό επίπεδο και οι σύγχρονες εξαιρέσεις να αποκόπτονται (δηλ. καταστέλλονται) μέχρι αυτό το ορισμένο αριθμητικό όριο, προτού η εμφάνιση αυτών των εξαιρέσεων να αναβαθμιστεί στη συνέχεια από το επίπεδο χρήστη στο προνομιακό επίπεδο.
Η τιμή κατωφλιού μπορεί να προκαθορίζεται για τη διάταξη ή σε ορισμένες υλοποιήσεις μπορεί να είναι μια προγραμματιζόμενη τιμή που συγκρατείται από το κύκλωμα απαρίθμησης εξαιρέσεων. Αυτό επιτρέπει ευελιξία στη διαμόρφωση της διάταξης, ανάλογα το πλαίσιο στο οποίο εκτελεί τις λειτουργίες επεξεργασίας δεδομένων της. Ως μέτρο ασφαλείας προτείνεται η προγραμματιζόμενη τιμή να μπορεί να ορίζεται μόνο από ένα προνομιακό επίπεδο στη διάταξη, ώστε ένα μη προνομιακό επίπεδο (π.χ. επίπεδο χρήστη) να μην μπορεί να την τροποποιήσει.
Το κύκλωμα απαρίθμησης εξαιρέσεων μπορεί να απαριθμεί όλες τις εξαιρέσεις, για παράδειγμα να απαριθμεί όλες τις εξαιρέσεις με ένα μόνο απαριθμητή, όμως σε ορισμένες υλοποιήσεις το κύκλωμα απαρίθμησης εξαιρέσεων αποκρίνεται στην εμφάνιση της σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας των εντολών που ορίζουν τη συναλλαγή για την αύξηση της απαρίθμησης που συγκρατείται από το κύκλωμα απαρίθμησης σε εξάρτηση από έναν τύπο της σύγχρονης εξαίρεσης. Για παράδειγμα το κύκλωμα απαρίθμησης εξαιρέσεων μπορεί να διατάσσεται ώστε να αυξάνει την απαρίθμηση μόνο (και επομένως να παράγει τελικά το σήμα αποτυχίας συναλλαγής) για έναν ορισμένο τύπο (ή τύπους) εξαίρεσης, εάν προσδιοριστεί ότι αυτός ο τύπος (ή οι τύποι) εξαίρεσης αξίζει τη δημιουργία της αποτυχίας συναλλαγής, ενώ οι άλλοι συνεχίζουν να καταστέλλονται πλήρως χωρίς κάποιο πιθανό σήμα αποτυχίας συναλλαγής.
Πράγματι το κύκλωμα απαρίθμησης εξαιρέσεων μπορεί να διατάσσεται ώστε να αγνοεί ορισμένους τύπους εξαιρέσεων και συνεπώς σε ορισμένες υλοποιήσεις το κύκλωμα απαρίθμησης εξαιρέσεων περιλαμβάνει μια μάσκα τύπων εξαιρέσεων διαμορφωμένη ώστε να φιλτράρει σύμφωνα με τον τύπο εξαίρεσης εισερχόμενα σήματα ενδεικτικά της εμφάνισης σύγχρονων εξαιρέσεων. Αυτή η μάσκα τύπων εξαιρέσεων, η οποία μπορεί να είναι προγραμματιζόμενη, μπορεί επομένως να χρησιμοποιείται για τη διαμόρφωση του τρόπου με τον οποίο το κύκλωμα απαρίθμησης εξαιρέσεων απαριθμεί τόπους εξαιρέσεων οι οποίες συμβαίνουν σε συναλλαγές.
Το κύκλωμα απαρίθμησης εξαιρέσεων μπορεί (όπως προαναφέρθηκε) να περιλαμβάνει μόνο έναν απαριθμητή ο οποίος χρησιμοποιείται για την απαρίθμηση των εμφανίσεων ενός ή περισσότερων τύπων εξαιρέσεων οι οποίες συνέβησαν κατά τις συναλλαγές, αλλά σε ορισμένες υλοποιήσεις το κύκλωμα απαρίθμησης εξαιρέσεων περιλαμβάνει πολλαπλούς απαριθμητές και το κύκλωμα απαρίθμησης εξαιρέσεων διατάσσεται ώστε να αυξάνει έναν επιλεγμένο απαριθμητή από τους πολλαπλούς απαριθμητές σε εξάρτηση από τον τύπο της σύγχρονης εξαίρεσης. Ανάλογα, το κύκλωμα απαρίθμησης εξαιρέσεων μπορεί επομένως να διατηρεί μεμονωμένους απαριθμητές για διαφορετικούς τύπους (ή σύνολα τύπων) σύγχρονων εξαιρέσεων που συμβαίνουν κατά τις συναλλαγές.
Το σήμα αποτυχίας συναλλαγής μπορεί απλά να υποδεικνύει ότι ένας αριθμός αποτυχιών συναλλαγών ως αποτέλεσμα των σύγχρονων εξαιρέσεων έχει τώρα φτάσει την τιμή κατωφλιού χωρίς διάκριση ανάμεσα στους τύπους σύγχρονων εξαιρέσεων, όμως σε ορισμένες υλοποιήσεις το κύκλωμα διαχείρισης εξαιρέσεων αποκρίνεται όταν η απαρίθμηση φτάνει την τιμή κατωφλιού για τη δημιουργία ενός σήματος τύπου εξαίρεσης αποτυχίας συναλλαγής ενδεικτικό του τύπου της σύγχρονης εξαίρεσης η οποία εξανάγκασε την απαρίθμηση να φτάσει στην τιμή κατωφλιού. Ανάλογα, στην περίπτωση στην οποία το κύκλωμα διαχείρισης εξαιρέσεων μπορεί να διακρίνει ανάμεσα στους διάφορους τύπους σύγχρονων εξαιρέσεων, μπορεί επίσης να παράγει ένα σήμα τύπου εξαίρεσης αποτυχίας συναλλαγής το οποίο παρέχει στον παραλήπτη πληροφορίες για τον τύπο της σύγχρονης εξαίρεσης η οποία εξανάγκασε μια απαρίθμηση να φτάσει μια τιμή κατωφλιού. Αυτό για παράδειγμα μπορεί να παρέχει στο λειτουργικό σύστημα μια πιο καθαρή εικόνα του τύπου ειδεχθούς δραστηριότητας που μπορεί να είναι σε εξέλιξη.
Περαιτέρω, μπορούν να παρέχονται πρόσθετες πληροφορίες σε συνδυασμό με το σήμα αποτυχίας συναλλαγής και το σήμα τύπου εξαίρεσης αποτυχίας συναλλαγής το οποίο σε ορισμένες υλοποιήσεις παίρνει τη μορφή ενός προφίλ εξαιρέσεων αποτυχίας συναλλαγής. Σε τέτοιες υλοποιήσεις το κύκλωμα διαχείρισης εξαιρέσεων αποκρίνεται όταν η απαρίθμηση φτάνει την τιμή κατωφλιού για την εξαγωγή ενός προφίλ εξαιρέσεων αποτυχίας συναλλαγής ενδεικτικό τουλάχιστον ενός από τα εξής: ένας αριθμός εξαιρέσεων, ένας αριθμός τύπων εξαιρέσεων και ένας αριθμός εξαιρέσεων από κάθε σύνολο τύπων εξαιρέσεων, οι οποίες εξανάγκασαν την απαρίθμηση να φτάσει την τιμή κατωφλιού. Με άλλα λόγια μπορούν να εξάγονται περαιτέρω πληροφορίες από το κύκλωμα διαχείρισης εξαιρέσεων ώστε να είναι δυνατή μια λεπτομερέστερη κατανόηση από τον παραλήπτη του λόγου που εξανάγκασε την απαρίθμηση ή τους απαριθμητές να φτάσουν την τιμή κατωφλιού (ή τις τιμές). Όπως προαναφέρθηκε ένας λόγος για την καταστολή της ειδοποίησης για την αποτυχία συναλλαγής σε απόκριση μιας εξαίρεσης είναι η αποφυγή υπερφόρτωσης του παραλήπτη με αυτή την πληροφορία (π.χ. ειδοποίηση του λειτουργικού συστήματος πολύ συχνά) και ανάλογα σε ορισμένες υλοποιήσεις το κύκλωμα απαρίθμησης εξαιρέσεων περιλαμβάνει ένα κύκλωμα χρονισμού για τη μέτρηση μιας προκαθορισμένης χρονικής περιόδου ενώ το κύκλωμα απαρίθμησης αποκρίνεται στο κύκλωμα χρονισμού το οποίο υποδηλώνει την παρέλευση της προκαθορισμένης χρονικής περιόδου για την επαναφορά της απαρίθμησης που διατηρείται από το κύκλωμα απαρίθμησης. Αυτή η προσέγγιση αναγνωρίζει ότι εκτός της επίτευξης μιας τιμής κατωφλιού από έναν απαριθμητή μπορεί να είναι χρήσιμο για τον παραλήπτη να γνωρίζει ότι αυτή η απαρίθμηση έφτασε την τιμή κατωφλιού εντός μιας προκαθορισμένης χρονικής περιόδου και το κύκλωμα χρονισμού κάνει κάτι τέτοιο δυνατό, με επανεκκίνηση σε ένα προκαθορισμένο χρονικό διάστημα, ώστε μόνο οι απαριθμήσεις που φτάνουν ένα κατώφλι εντός αυτής της περιόδου θα κοινοποιούνται στον παραλήπτη του σήματος αποτυχίας συναλλαγής.
Σε γενικές γραμμές η διακοπή μιας συναλλαγής μπορεί να σημαίνει ότι τα άλλα μέρη της διάταξης γνωρίζουν μόνο ότι η συναλλαγή απέτυχε, χωρίς να γνωρίζουν ακριβώς το λόγο πρόκλησης της αποτυχίας στη συναλλαγή, εφόσον είναι ένα χαρακτηριστικό των συναλλαγών όταν αποτυγχάνουν η κατάσταση επανέρχεται σε ότι ήταν πριν την έναρξη της συναλλαγής και οι παρούσες τεχνικές αναγνωρίζουν ότι οι περαιτέρω πληροφορίες που σχετίζονται με την αιτία της αποτυχίας της συναλλαγής ως αποτέλεσμα της σύγχρονης εξαίρεσης μπορεί να είναι επωφελείς. Ανάλογα σε ορισμένες υλοποιήσεις το κύκλωμα διαχείρισης εξαιρέσεων περιλαμβάνει έναν αποθηκευτικό χώρο απαριθμητή προγράμματος εξαιρέσεων για την αποθήκευση μιας τιμής απαριθμητή προγράμματος που σχετίζεται με την εμφάνιση της σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή και το κύκλωμα διαχείρισης εξαιρέσεων αποκρίνεται όταν η απαρίθμηση φτάνει στην τιμή κατωφλιού για εξαγωγή της τιμής απαριθμητή προγράμματος. Ο παραλήπτης μπορεί στη συνέχεια να κάνει χρήση της τιμής απαριθμητή προγράμματος για τον ακριβέστερο προσδιορισμό της πηγής της σύγχρονης εξαίρεσης και συνεπώς της αποτυχίας της συναλλαγής.
Τουλάχιστον ορισμένες υλοποιήσεις παρέχουν μια μέθοδο λειτουργίας μιας διάταξης επεξεργασίας δεδομένων η οποία περιλαμβάνει τα εξής βήματα: πραγματοποίηση λειτουργιών επεξεργασίας δεδομένων σε απόκριση εντολών επεξεργασίας δεδομένων, σε απόκριση μιας ακολουθίας εντολών που ορίζουν μια συναλλαγή, προκαλώντας την ατομική πραγματοποίηση ενός συναλλακτικού συνόλου λειτουργιών επεξεργασίας δεδομένων που ορίζονται από την ακολουθία εντολών σε σχέση με άλλες λειτουργίες επεξεργασίας δεδομένων, σε απόκριση της εμφάνισης μιας σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή, διακόπτοντας τη συναλλαγή ώστε το συναλλακτικό σύνολο λειτουργιών επεξεργασίας δεδομένων να μην εκτελείται, σε απόκριση της εμφάνισης της σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή, αυξάνοντας μια απαρίθμηση και σε απόκριση όταν η απαρίθμηση φτάνει μια τιμή κατωφλιού, παράγοντας ένα σήμα αποτυχίας συναλλαγής.
Τουλάχιστον ορισμένες υλοποιήσεις παρέχουν ένα πρόγραμμα υπολογιστή για τον έλεγχο μιας κεντρικής διάταξης επεξεργασίας δεδομένων για την παροχή ενός περιβάλλοντος εκτέλεσης εντολών για την εκτέλεση των εντολών του στοχευόμενου κώδικα προγράμματος, το οποίο περιλαμβάνει:
λογική επεξεργασίας δεδομένων για την πραγματοποίηση λειτουργιών επεξεργασίας δεδομένων σε απόκριση εντολών επεξεργασίας δεδομένων, όπου η λογική επεξεργασίας δεδομένων περιλαμβάνει λογική υποστήριξης συναλλαγών που αποκρίνεται σε μια ακολουθία εντολών που ορίζουν μια συναλλαγή ώστε να προκαλεί την ατομική πραγματοποίηση ενός συναλλακτικού συνόλου λειτουργιών επεξεργασίας δεδομένων που ορίζονται από την ακολουθία εντολών σε σχέση με άλλες λειτουργίες επεξεργασίας δεδομένων που πραγματοποιούνται από τη λογική επεξεργασίας δεδομένων, και
λογική διαχείρισης εξαιρέσεων σε απόκριση της εμφάνισης μιας σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή ώστε να προκαλεί τη διακοπή της συναλλαγής από τη λογική υποστήριξης συναλλαγών ώστε το συναλλακτικό σύνολο λειτουργιών επεξεργασίας δεδομένων να μην εκτελείται,
όπου η λογική διαχείρισης εξαιρέσεων περιλαμβάνει λογική απαρίθμησης εξαιρέσεων που αποκρίνεται στην εμφάνιση της σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας των εντολών που ορίζουν τη συναλλαγή για την αύξηση της απαρίθμησης που διατηρείται από τη λογική απαρίθμησης ενώ η λογική διαχείρισης εξαιρέσεων αποκρίνεται όταν η απαρίθμηση φτάνει σε μια τιμή κατωφλιού για τη δημιουργία ενός σήματος αποτυχίας συναλλαγής.
Τουλάχιστον ορισμένες υλοποιήσεις παρέχουν ένα μέσο αποθήκευσης που μπορεί να αποθηκεύει το πρόγραμμα υπολογιστή που περιγράφεται παραπάνω. Το μέσο αποθήκευσης μπορεί να είναι ένα μη προσωρινό μέσο αποθήκευσης.
Ορισμένες συγκεκριμένες υλοποιήσεις περιγράφονται τώρα αναφορικά με τα σχήματα.
Το Σχήμα 1 απεικονίζει σχηματικά μια διάταξη 10 σε ένα παράδειγμα υλοποίησης. Η διάταξη 10 περιλαμβάνει ένα κύκλωμα επεξεργασίας δεδομένων 12, το οποίο για παράδειγμα μπορεί να έχει τη μορφή μιας ακολουθίας σταδίων με σωληναγωγό (με κατεύθυνση από αριστερά προς τα δεξιά στο σχήμα). Το κύκλωμα επεξεργασίας δεδομένων 12 πραγματοποιεί λειτουργίες επεξεργασίας δεδομένων σε απόκριση εντολών οι οποίες ανακτώνται από τη μνήμη 14 και αποθηκεύονται προσωρινά στην κρυφή μνήμη εντολών 16. Οι λειτουργίες επεξεργασίας δεδομένων μπορούν να προκαλούν την ανάκτηση στοιχείων δεδομένων από τη μνήμη 14 τα οποία αποθηκεύονται προσωρινά στην κρυφή μνήμη δεδομένων 18. Οι λειτουργίες επεξεργασίας δεδομένων τις οποίες εκτελεί το κύκλωμα επεξεργασίας δεδομένων 12 μπορεί να παραπέμπουν και να τροποποιούν τις τιμές που διατηρούνται στους καταχωρητές 20. Το κύκλωμα επεξεργασίας δεδομένων 12 δείχνεται να περιλαμβάνει ένα κύκλωμα διαχείρισης συναλλαγών 22 το οποίο επιτρέπει στο κύκλωμα επεξεργασίας δεδομένων να υποστηρίζει τις λειτουργίες συναλλαγών σύμφωνα με τις οποίες μια συναλλαγή, η οποία καθορίζεται από ένα προσδιορισμένο σύνολο εντολών (π.χ. ξεκινώντας με μια εντολή “έναρξης συναλλαγής” και τελειώνοντας με μια εντολή “τέλους συναλλαγής”) πραγματοποιείται ατομικά σε σχέση με άλλες λειτουργίες επεξεργασίας δεδομένων. Όταν η συναλλαγή πραγματοποιείται ατομικά, εάν αποτύχει η κατάσταση πρέπει να επαναφέρεται στην αρχή της συναλλαγής και ένα στιγμιότυπο του περιεχομένου των σχετικών καταχωρητών στο σύνολο των καταχωρητών 20 χρησιμοποιείται για αυτό το σκοπό, ώστε εάν μια συναλλαγή διακοπεί το στιγμιότυπο των καταχωρητών που δημιουργήθηκε στην αρχή της συναλλαγής χρησιμοποιείται για την “αναίρεση” όποιων τροποποιήσεων πραγματοποιήθηκαν σε αυτούς τους καταχωρητές κατά την απόπειρα της συναλλαγής. Η διάταξη 10 περαιτέρω περιλαμβάνει ένα κύκλωμα ελέγχου εξαιρέσεων 24 το οποίο λαμβάνει σήματα που σχετίζονται με διάφορες λειτουργίες που πραγματοποιούνται στη διάταξη 10 και μπορούν να παράγουν ένα σήμα εξαίρεσης σε απόκριση, το οποίο σε γενικές γραμμές προκαλεί συνήθως την εκτέλεση μιας προκαθορισμένη ρουτίνας διαχείρισης εξαιρέσεων. Επιπλέον το κύκλωμα ελέγχου εξαιρέσεων 24 λαμβάνει σήματα από το κύκλωμα διαχείρισης συναλλαγών τα οποία υποδεικνύουν πότε μια συναλλαγή είναι σε εξέλιξη και αυτό τροποποιεί τη συμπεριφορά του κυκλώματος ελέγχου εξαιρέσεων 24 όπως θα περιγράφει λεπτομερέστερα παρακάτω αναφορικά με τα ακόλουθα σχήματα, όμως συγκεκριμένα το κύκλωμα ελέγχου εξαιρέσεων 24 μπορεί, αντί να προκαλεί την εκτέλεση μιας ρουτίνας διαχείρισης εξαιρέσεων σε απόκριση μιας εξαίρεσης, να καταστέλλει αυτή την εξαίρεση εάν συμβεί κατά τη διάρκεια μιας συναλλαγής και η συναλλαγή διακόπτεται. Περαιτέρω εάν μια απαρίθμηση των φορών που έχει συμβεί αυτό έχει φτάσει τώρα ένα κατώφλι, προκαλεί τη δημιουργία ενός σήματος αποτυχίας συναλλαγής.
Το Σχήμα 2 απεικονίζει σχηματικά ένα κύκλωμα διαχείρισης εξαιρέσεων 30 σε ένα παράδειγμα υλοποίησης. Το κύκλωμα διαχείρισης εξαιρέσεων 30 δείχνεται να περιλαμβάνει ένα κύκλωμα εξαιρέσεων 32 και ένα κύκλωμα απαρίθμησης εξαιρέσεων 34. Το κύκλωμα εξαιρέσεων 32, το οποίο λαμβάνει τα πολλαπλά σήματα από διάφορα τμήματα της διάταξης και σε απόκριση αυτών των σημάτων μπορεί να παράγει μια εξαίρεση, μπορεί να θεωρείται ότι πραγματοποιεί με έναν τρόπο με τον οποίο είναι εξοικειωμένα τα έμπειρα άτομα για τη δημιουργία εξαιρέσεων σε μια διάταξη επεξεργασίας δεδομένων. Ωστόσο, το κύκλωμα απαρίθμησης εξαιρέσεων 34 το οποίο προτείνεται από τις παρούσες τεχνικές μπορεί να θεωρείται ως ένας αριθμός φίλτρων στο σήμα εξαιρέσεων, όσον αφορά στο γεγονός ότι υπό ορισμένες συνθήκες το σήμα εξαιρέσεων μπορεί να μεταδίδεται ανεπηρέαστο από το κύκλωμα απαρίθμησης εξαιρέσεων 36 και συνεπώς από το κύκλωμα διαχείρισης εξαιρέσεων 30, όμως υπό άλλες συνθήκες μπορεί να παράγεται αντίθετα ένα σήμα αποτυχίας συναλλαγής. Για το σκοπό αυτό το κύκλωμα απαρίθμησης εξαιρέσεων περιλαμβάνει έναν απαριθμητή εξαιρέσεων 36, ένα χώρο αποθήκευσης της τιμής κατωφλιού 38, ένα κύκλωμα σύγκρισης 40 και ένα κύκλωμα 42 που προσδιορίζει πότε λαμβάνεται μια εξαίρεση όταν δεν ήταν σε εξέλιξη μια συναλλαγή. Το κύκλωμα διαχείρισης εξαιρέσεων 30 λαμβάνει ένα σήμα που υποδεικνύει πότε είναι σε εξέλιξη μια συναλλαγή (δηλ. για παράδειγμα από το κύκλωμα διαχείρισης συναλλαγών 22 που δείχνεται στο παράδειγμα του Σχήματος 1). Αυτό συγκεκριμένα λαμβάνεται από τον απαριθμητή εξαιρέσεων 36 ο οποίος διατάσσεται ώστε να αυξάνει μόνο εάν παράγεται μια εξαίρεση από το κύκλωμα εξαιρέσεων 32 όσο είναι σε εξέλιξη μια συναλλαγή. Η τιμή που υποδεικνύεται από τον απαριθμητή εξαιρέσεων 36 συγκρίνεται από το κύκλωμα σύγκρισης 40 με μια αποθηκευμένη τιμή κατωφλιού 38. Η τιμή κατωφλιού μπορεί να είναι προγραμματιζόμενη (από έναν παράγοντα στο σύστημα ο οποίος έχει κατάλληλο επίπεδο προνομίων, για παράδειγμα μέσω κώδικα προνομιακού επιπέδου), με αυτή την παραλλαγή να υποδεικνύεται από τη διακεκομμένη γραμμή στο Σχήμα 2. Όταν το κύκλωμα σύγκρισης 40 προσδιορίσει ότι ο απαριθμητής εξαιρέσεων έχει φτάσει την τιμή κατωφλιού παράγεται το σήμα αποτυχίας συναλλαγής. Αυτό μπορεί για παράδειγμα να λαμβάνεται από έναν παράγονται στο προνομιακό επίπεδο (π.χ. στο επίπεδο λειτουργικού συστήματος, για απόκριση, για παράδειγμα με αμυντικό τρόπο, εάν κριθεί κατάλληλο). Διαφορετικά, εάν έχει ληφθεί μια εξαίρεση ενώ είναι σε εξέλιξη μια συναλλαγή, αλλά ο απαριθμητή εξαιρέσεων δεν έχει φτάσει ακόμη μια τιμή κατωφλιού, τότε η εξαίρεση απλά καταστέλλεται και η συναλλαγή εξαναγκάζεται να διακοπεί από το σήμα που παράγεται από την εξαίρεση στο κύκλωμα συναλλαγών 44. Ωστόσο, αντίθετα εάν ληφθεί μια εξαίρεση ενώ δεν είναι σε εξέλιξη μια συναλλαγή τότε το κύκλωμα 44 διαμορφωμένο να αναγνωρίζει κάτι τέτοιο προκαλεί τη δημιουργία του σήματος εξαιρέσεων (δηλ. στην πράξη αυτό το σήμα εξαιρέσεων διέρχεται ανεπηρέαστο μέσω του κυκλώματος απαρίθμησης εξαιρέσεων 34). Μια ρουτίνα διαχείρισης εξαιρέσεων που ορίζεται για αυτή την εξαίρεση μπορεί να εκτελείται ως αποτέλεσμα.
Το Σχήμα 3 απεικονίζει σχηματικά ένα κύκλωμα διαχείρισης εξαιρέσεων σε ένα παράδειγμα υλοποίησης. Το κύκλωμα εξαιρέσεων 50 λαμβάνει σήματα από διάφορα τμήματα του συστήματος όπως προαναφέρθηκε και μπορεί να παράγει ένα σήμα εξαίρεσης σε απόκριση σε αυτό. Επιπλέον, ωστόσο όπως δείχνεται στο παράδειγμα του Σχήματος 3, μπορεί να παράγει περαιτέρω μια ένδειξη του τύπου εξαιρέσεων. Το σήμα εξαίρεσης και η ένδειξη του τύπου εξαιρέσεων λαμβάνονται από το κύκλωμα επεξεργασίας εξαιρέσεων 52 εντός του κυκλώματος επεξεργασίας εξαιρέσεων 52. Το σήμα εξαιρέσεων και το σήμα τύπων εξαιρέσεων λαμβάνονται από μια μάσκα 54, η οποία μπορεί να είναι προγραμματιζόμενη και με αυτό τον τρόπο δρα ως φίλτρο στα σήματα εξαιρέσεων που λαμβάνονται. Ας σημειωθεί ωστόσο, ότι η διακεκομμένη γραμμή στο σχήμα η οποία ξεκινάει από τη μάσκα 54 υποδηλώνει ότι το σήμα εξαιρέσεων επίσης μεταβιβάζεται απευθείας παρακάμπτοντας τη μάσκα 54 στο κύκλωμα 56 το οποίο μπορεί να προσδιορίζει πότε λαμβάνεται μια εξαίρεση όταν δεν είναι σε εξέλιξη μια συναλλαγή και επομένως μεταβιβάζει το σήμα εξαιρέσεων “αφιλτράριστο” μέσω του κυκλώματος επεξεργασίας εξαιρέσεων 52. Το σήμα εξαιρέσεων λαμβάνεται επίσης από τη λογική AND 58, η οποία όπως η άλλη είσοδός της λαμβάνει το σήμα συναλλαγής σε εξέλιξη. Ως αποτέλεσμα, όταν λαμβάνεται μια εξαίρεση ενώ είναι σε εξέλιξη μια συναλλαγή, παράγεται το σήμα διακοπής συναλλαγής. Τα σήματα εξαιρέσεων που διέρχονται από τη μάσκα, σε εξάρτηση από τον τύπο του σήματος εξαιρέσεων μεταβιβάζονται σε έναν από τους δύο απαριθμητές 60, 62 οι οποίοι τηρούν τις αντίστοιχες απαριθμήσεις για διαφορετικούς τύπους εξαιρέσεων. Αυτοί οι απαριθμητές μπορούν να τηρούν απαριθμήσεις μόνο για ένα συγκεκριμένο τύπο εξαίρεσης ή οποιοσδήποτε ή και οι δύο απαριθμητές μπορούν να συνδυάζουν τις απαριθμήσεις εξαιρέσεων για περισσότερους από έναν τύπο εξαίρεσης. Περαιτέρω, σε άλλα παραδείγματα υλοποίησης μπορεί να παρέχονται περισσότεροι από δύο απαριθμητές, όμως μόνο δύο απεικονίζονται στο Σχήμα 3 για λόγους απλότητας. Κάθε απαριθμητής έχει μια συσχετισμένη τιμή κατωφλιού 64, 66 και όταν το συσχετισμένο κύκλωμα σύγκρισης 68, 70 προσδιορίζει ότι ο αντίστοιχος απαριθμητής έχει φτάσει την αντίστοιχη τιμή κατωφλιού του τότε παράγεται ένα σήμα αποτυχίας συναλλαγής, το οποίο υποδηλώνει τον τύπο. Στο παράδειγμα του Σχήματος 3 μπορούν να παράγονται δύο τύποι σημάτων αποτυχίας συναλλαγής. Ο αριθμός σημάτων αποτυχίας συναλλαγής τα οποία μπορούν να παράγονται φυσικά εξαρτάται από τον αριθμό των απαριθμητών οι οποίοι παρέχονται. Ας σημειωθεί ότι οι απαριθμητές λαμβάνουν το σήμα συναλλαγής σε εξέλιξη ώστε οι απαριθμητές να υλοποιούνται μόνο εάν λαμβάνεται μια εξαίρεση του σχετικού τύπου ενώ είναι σε εξέλιξη μια συναλλαγή.
Το Σχήμα 4 απεικονίζει σχηματικά ένα κύκλωμα διαχείρισης εξαιρέσεων σε ένα παράδειγμα υλοποίησης. Το κύκλωμα εξαιρέσεων 80, με τον ίδιο τρόπο όπως το κύκλωμα εξαιρέσεων 50 του Σχήματος 3, λαμβάνει διάφορα σήματα από διάφορα τμήματα της διάταξης και ως αποτέλεσμα μπορεί να παράγει ένα σήμα εξαίρεσης και μια ένδειξη του τύπου της εξαίρεσης. Αυτά λαμβάνονται από το κύκλωμα επεξεργασίας εξαιρέσεων 82 και συγκεκριμένα από ένα φίλτρο 84 που παρέχεται μέσα σε αυτό, το οποίο, με τον τρόπο της μάσκας 54 του Σχήματος 3, μπορεί να διαμορφώνεται ώστε να φιλτράρει ορισμένες εξαιρέσεις ή τύπους εξαιρέσεων και περαιτέρω μεταβιβάζει μια ένδειξη των ληφθέντων σημάτων εξαίρεσης του αντίστοιχου τύπου σε έναν από τους απαριθμητές 86, 88, 90. Οι τιμές που τηρούνται από κάθε έναν από αυτούς τους αντίστοιχους απαριθμητές λαμβάνονται από το κύκλωμα ελέγχου 92 το οποίο παρέχει έναν αριθμό λειτουργιών ελέγχου για το κύκλωμα επεξεργασίας εξαιρέσεων 82 και τηρεί μια καθορισμένη τιμή κατωφλιού για κάθε έναν από τους απαριθμητές. Όταν ένας από τους απαριθμητές φτάνει την τιμή κατωφλιού του το κύκλωμα ελέγχου 92 μπορεί να παράγει το σήμα αποτυχίας συναλλαγής. Επιπλέον, ανεξάρτητα εάν κάποιος απαριθμητής φτάσει την τιμή κατωφλιού του, το κύκλωμα ελέγχου 92 παράγει το σήμα διακοπής συναλλαγής όταν ληφθεί κάποια εξαίρεση από το κύκλωμα εξαιρέσεων 80 ενώ είναι σε εξέλιξη μια συναλλαγή. Αντίθετα, όταν λαμβάνεται μια εξαίρεση όταν δεν είναι σε εξέλιξη μια συναλλαγή (το σήμα ελέγχου που λαμβάνει το σήμα συναλλαγής σε εξέλιξη από το κύκλωμα διαχείρισης συναλλαγών της διάταξης) το σήμα ελέγχου παράγει ένα σήμα εξαίρεσης (δηλ. ουσιαστικά το σήμα εξαίρεσης που παράγεται από το κύκλωμα εξαιρέσεων 80 διέρχεται αμετάβλητο μέσα από το κύκλωμα επεξεργασίας εξαιρέσεων 82). Επιπλέον της δημιουργίας ενός σήματος αποτυχίας συναλλαγής όταν κάποιος απαριθμητής φτάσει την τιμή κατωφλιού του, το κύκλωμα ελέγχου 92 παράγει επίσης ένα σήμα προφίλ αποτυχίας το οποίο παρέχει επιπλέον πληροφορίες που σχετίζονται με την αποτυχία της συναλλαγής. Αυτές μπορεί να είναι για παράδειγμα ένα στιγμιότυπο των τρεχουσών τιμών κάθε ενός από τους απαριθμητές 86, 88, 90, μπορεί να υποδεικνύουν έναν αριθμό ορισμένων τύπων εξαιρέσεων οι οποίες έχουν ληφθεί και συγκεκριμένα μπορεί να υποδεικνύουν έναν αριθμό ενός ορισμένου τύπου εξαιρέσεων οι οποίες εξανάγκασαν το δεδομένο απαριθμητή να φτάσει την τιμή κατωφλιού του. Επιπλέον το κύκλωμα ελέγχου 92 λαμβάνει μια ένδειξη μιας τρέχουσας τιμής PC 94 ώστε στην περίπτωση στην οποία δημιουργηθεί το σήμα αποτυχίας συναλλαγής και το συσχετισμένο προφίλ αποτυχίας, το κύκλωμα ελέγχου 92 εναλλακτικά ή επιπλέον μπορεί να εξάγει μια ένδειξη της τρέχουσας τιμής PC 94 ώστε ο παραλήπτης του σήματος αποτυχίας συναλλαγής να γνωρίζει ποια εντολή εντός της συναλλαγής προκάλεσε τη σύγχρονη εξαίρεση η οποία εξανάγκασε το σχετικό απαριθμητή να φτάσει την τιμή κατωφλιού του. Διαφορετικά, στην περίπτωση στην οποία η συναλλαγή απλά διακοπεί, ο παραλήπτης του σήματος αποτυχίας συναλλαγής μπορεί να μην είχε καμία ένδειξη για την εντολή από το σύνολο των εντολών που ορίζουν το σύνολο της συναλλαγής η οποία προκάλεσε τη σύγχρονη εξαίρεση και συνεπώς τη διακοπή της συναλλαγής. Τέλος, το κύκλωμα επεξεργασίας εξαιρέσεων 82 περιλαμβάνει επίσης ένα χρονοδιακόπτη 96 ο οποίος διατάσσεται ώστε να αποστέλλει ένα σήμα στο κύκλωμα ελέγχου 92 σε προκαθορισμένα χρονικά διαστήματα. Σε απόκριση της λήψης αυτού του σήματος χρονισμού, το κύκλωμα ελέγχου 92 προκαλεί το μηδενισμό κάθε ενός από τους απαριθμητές 86, 88, 90 ώστε μόνο όταν ληφθεί ο αριθμός κατωφλιού εξαιρέσεων εντός αυτής της προκαθορισμένης χρονικής περιόδου, μπορεί να παραχθεί το σήμα αποτυχίας συναλλαγής και ούτω καθεξής. Αυτό σημαίνει ότι ο παραλήπτης του σήματος αποτυχίας συναλλαγής δε θα ενοχλείται πολύ συχνά από το σήμα αποτυχίας συναλλαγής εάν προσδιοριστεί ότι οι εξαιρέσεις που προκαλούν διακοπή συναλλαγών είναι αποδεκτές εάν συμβούν κάτω από μια ορισμένη συχνότητα. Σε γενικές γραμμές θα πρέπει να σημειωθεί ότι τα διάφορα υπο-τμήματα των υλοποιήσεων του κυκλώματος διαχείρισης εξαιρέσεων που δείχνονται στα Σχήματα 2, 3 και 4 δε θα πρέπει να θεωρείται ότι παρέχονται αποκλειστικά στα πλαίσια αυτών των υλοποιήσεων ενώ διάφοροι συνδυασμοί αυτών των χαρακτηριστικών είναι δυνατοί σε άλλα παραδείγματα υλοποιήσεων στα πλαίσια του αντικειμένου των υφιστάμενων τεχνικών. Αντίθετα ο συνδυασμός των τμημάτων που δείχνονται σε κάθε ένα από τα Σχήματα 2, 3 και 4 μεμονωμένα δε θα πρέπει να θεωρείται ότι παρέχονται απαραίτητα το ένα σε σχέση με το άλλο, για παράδειγμα στο Σχήμα 2 το οποίο δείχνει μια υλοποίηση με ένα μόνο απαριθμητή εξαιρέσεων και το Σχήμα 4 το οποίο δείχνει ένα παράδειγμα με πολλαπλούς απαριθμητές εξαιρέσεων και με περισσότερα προαιρετικά χαρακτηριστικά όπως ο απαριθμητής προγράμματος και ο χρονοδιακόπτης μηδενισμού δε θα πρέπει να συ μπε ραίνεται ότι ο απαριθμητής προγράμματος και ο χρονοδιακόπτης μηδενισμού μπορούν να παρέχονται μόνο σε υλοποιήσεις με πολλαπλούς απαριθμητές και ότι κάθε ένα από αυτούς ή και οι δύο θα μπορούσαν να παρέχονται σε μια υλοποίηση με ένα μόνο απαριθμητή. Το ίδιο ισχύει για οποιαδήποτε υπο-τμήματα στα παραδείγματα υλοποιήσεων των Σχημάτων 2, 3 και 4 τα οποία διαφορετικά δεν περιγράφονται ότι αλληλεπιδρούν αμοιβαία με έναν ουσιώδη τρόπο.
Το Σχήμα 5 δείχνει μια ακολουθία βημάτων τα οποία ακολουθούνται στη μέθοδο ενός παραδείγματος υλοποίησης. Η ροή μπορεί να θεωρείται ότι ξεκινάει στο βήμα 100 στο οποίο πραγματοποιείται επεξεργασία δεδομένων ορισμένη από εντολές. Στη συνέχεια στο βήμα 102 προσδιορίζεται κατά πόσο η εκτέλεση των εντολών έχει εισέλθει σε ένα συναλλακτικό σύνολο εντολών, π.χ. μέσω μιας εντολής “έναρξης συναλλαγής”. Εάν δεν έχει εισέλθει τότε η ροή επιστρέφει στο βήμα 100 εφόσον η μέθοδος που περιγράφεται σχετίζεται μόνο με τις διαδικασίες που συμβαίνουν όταν είναι σε εξέλιξη μια συναλλαγή. Εάν είναι σε εξέλιξη μια συναλλαγή τότε από το βήμα 102 η ροή συνεχίζει στο βήμα 104 όπου προσδιορίζεται κατά πόσο έχει δημιουργηθεί μια εξαίρεση. Εάν δεν έχει δημιουργηθεί τότε η ροή συνεχίζει στο βήμα 112, όπου προσδιορίζεται κατά πόσο έχει ολοκληρωθεί η συναλλαγή, π.χ. μέσω μιας εντολής “τέλους συναλλαγής”. Εάν η συναλλαγή έχει τώρα τελειώσει τότε η ροή επιστρέφει στο βήμα 100. Ωστόσο εάν η συναλλαγή είναι ακόμη σε εξέλιξη τότε η ροή επιστρέφει στο βήμα 104. Περαιτέρω, εάν στο βήμα 104 προσδιοριστεί ότι έχει ληφθεί μια εξαίρεση τότε στο βήμα 106 ο απαριθμητής εξαιρέσεων αυξάνεται και στο βήμα 108 προσδιορίζεται κατά πόσο ο απαριθμητής έχει φτάσει τώρα την τιμή κατωφλιού του. Εάν δεν την έχει φτάσει τότε η ροή συνεχίζει στο βήμα 110 όπου η συναλλαγή διακόπτεται και η ροή επιστρέφει στο βήμα 100. Εάν ωστόσο, στο βήμα 108 ο απαριθμητής βρεθεί τώρα να ισούται με την τιμή κατωφλιού του τότε πρώτα στο βήμα 114 η συναλλαγή διακόπτεται και στη συνέχεια στο βήμα 116 παράγεται το σήμα αποτυχίας συναλλαγής. Τέλος στο βήμα 118 ο απαριθμητής εξαιρέσεων μηδενίζεται και η ροή επιστρέφει στο βήμα 100.
Το Σχήμα 6 απεικονίζει μια υλοποίηση προσομοιωτή που μπορεί να χρησιμοποιείται. Μολονότι οι υλοποιήσεις που περιγράφηκαν προηγουμένως υλοποιούν την παρούσα εφεύρεση όσον αφορά στη διάταξη και στις μεθόδους για τη λειτουργία ειδικού υλικού επεξεργασίας που υποστηρίζει τις εν λόγω τεχνικές, είναι επίσης δυνατή η παροχή ενός περιβάλλοντος εκτέλεσης εντολών σύμφωνα με τις υλοποιήσεις που περιγράφονται στο παρόν το οποίο υλοποιείται μέσω της χρήσης ενός προγράμματος υπολογιστή. Τέτοια προγράμματα υπολογιστών αναφέρονται συχνά ως προσομοιωτές, δεδομένου ότι παρέχουν μια βασισμένη στο λογισμικό υλοποίηση μιας αρχιτεκτονικής υλικού. Ένας αριθμός προγραμμάτων υπολογιστή προσομοιωτή περιλαμβάνει τους εξομοιωτές, τις εικονικές μηχανές, τα μοντέλα και τους δυαδικούς μεταφραστές, συμπεριλαμβανομένων των δυναμικών δυαδικών μεταφραστών. Συνήθως, μια υλοποίηση προσομοιωτή μπορεί να εκτελείται σε έναν κεντρικό επεξεργαστή 230, ο οποίος προαιρετικά να εκτελεί ένα κεντρικό λειτουργικό σύστημα 220, υποστηρίζοντας το πρόγραμμα του προσομοιωτή 210. Σε ορισμένες διατάξεις, μπορεί να υπάρχουν πολλαπλές στρώσεις προσομοίωσης μεταξύ του υλικού και του παρεχόμενου περιβάλλοντος εκτέλεσης εντολών και/ή πολλαπλά διακριτά περιβάλλοντα εκτέλεσης εντολών που να παρέχονται στον ίδιο κεντρικό επεξεργαστή.
Ιστορικά, υπήρχε απαίτηση για ισχυρούς επεξεργαστές για την παροχή υλοποιήσεων προσομοιωτή οι οποίες εκτελούνται με εύλογη ταχύτητα, όμως μια τέτοια προσέγγιση μπορεί να δικαιολογείται σε ορισμένες περιπτώσεις, όπως όταν είναι επιθυμητή η εκτέλεση κώδικα εσωτερικού σε έναν άλλο επεξεργαστή για λόγους συμβατότητας ή επαναχρησιμοποίησης. Για παράδειγμα, η υλοποίηση προσομοιωτή μπορεί να παρέχει ένα περιβάλλον εκτέλεσης εντολών με επιπλέον λειτουργίες οι οποίες δεν υποστηρίζονται από το υλικό του κεντρικού επεξεργαστή ή να παρέχει ένα περιβάλλον εκτέλεσης εντολών το οποίο συνήθως συσχετίζεται με μια διαφορετική αρχιτεκτονική υλικού. Μια επισκόπηση της προσομοίωσης δίδεται στο “Some Efficient Architecture Simulation Techniques” (Ορισμένες αποτελεσματικές τεχνικές προσομοίωσης αρχιτεκτονικής), Robert Bedichek, Winter 1990 USENIX Conference, Σελίδες 53 - 63.
Στο βαθμό που έχουν προηγουμένως περιγράφει υλοποιήσεις αναφορικά με συγκεκριμένες δομές ή χαρακτηριστικά υλικού, σε μια προσομοιωμένη υλοποίηση, μπορούν να παρέχονται ισοδύναμες λειτουργίες από κατάλληλες δομές ή χαρακτηριστικά λογισμικού. Για παράδειγμα, συγκεκριμένα κυκλώματα μπορούν να υλοποιούνται σε μια προσομοιωμένη υλοποίηση ως λογική προγράμματος υπολογιστή. Παρόμοια, υλικό μνήμης, όπως ένας καταχωρητής ή μια κρυφή μνήμη, μπορεί να υλοποιείται σε μια προσομοιωμένη υλοποίηση ως μια δομή δεδομένων λογισμικού. Σε διατάξεις στις οποίες ένα ή περισσότερα από τα στοιχεία υλικού που αναφέρονται στις υλοποιήσεις που περιγράφηκαν προηγουμένως υπάρχουν στο κεντρικό υλικό (για παράδειγμα, κεντρικός επεξεργαστής 230), ορισμένες προσομοιωμένες υλοποιήσεις μπορούν να κάνουν χρήση του κεντρικού υλικού, όπου απαιτείται.
Το πρόγραμμα προσομοιωτή 210 μπορεί να αποθηκεύεται σε ένα αναγνώσιμο από υπολογιστή μέσο αποθήκευσης 212 (το οποίο μπορεί να είναι ένα μη προσωρινό μέσο) και παρέχει μια διασύνδεση προγράμματος (περιβάλλον εκτέλεσης εντολών) για το στοχευόμενο κώδικα 200 (ο οποίος μπορεί να περιλαμβάνει εφαρμογές, λειτουργικά συστήματα και έναν επόπτη) η οποία είναι ίδια με τη διασύνδεση προγράμματος εφαρμογής της αρχιτεκτονικής υλικού που μοντελοποιείται από το πρόγραμμα προσομοιωτή 210. Συνεπώς, οι εντολές προγράμματος του στοχευόμενου κώδικα 200 μπορούν να εκτελούνται εντός του περιβάλλοντος εκτέλεσης εντολών χρησιμοποιώντας το πρόγραμμα προσομοιωτή 210, ώστε ένας κεντρικός υπολογιστής 230 ο οποίος στην πράξη δεν έχει τα χαρακτηριστικά υλικού της διάταξης 60 που εξετάστηκε παραπάνω να μπορεί να εξομοιώνει αυτά τα χαρακτηριστικά. Για παράδειγμα, το πρόγραμμα προσομοιωτή 210 μπορεί να περιλαμβάνει λογική επεξεργασίας δεδομένων 214 και λογική διαχείρισης εξαιρέσεων 216 για την προσομοίωση της συμπεριφοράς οποιουδήποτε από το κύκλωμα επεξεργασίας δεδομένων και το κύκλωμα διαχείρισης εξαιρέσεων όπως περιγράφεται παραπάνω. Συνεπώς το πρόγραμμα προσομοιωτή 210 μπορεί επίσης να περιλαμβάνει λογική υποστήριξης συναλλαγών που αποκρίνεται σε μια ακολουθία εντολών που ορίζουν μια συναλλαγή ώστε να προκαλεί την ατομική πραγματοποίηση ενός συναλλακτικού συνόλου λειτουργιών επεξεργασίας δεδομένων που ορίζονται από την ακολουθία εντολών σε σχέση με άλλες λειτουργίες επεξεργασίας δεδομένων που πραγματοποιούνται από τη λογική επεξεργασίας δεδομένων.
Εν συντομία και περιληπτικά δημοσιοποιούνται μια διάταξη και μια μέθοδος λειτουργίας μιας διάταξης επεξεργασίας δεδομένων, καθώς και οι προσομοιωτές αυτής. Το κύκλωμα επεξεργασίας δεδομένων πραγματοποιεί λειτουργίες επεξεργασίας δεδομένων σε απόκριση εντολών, όπου ορισμένα σύνολα εντολών μπορούν να ορίζονται ως μια συναλλαγή, οι οποίες πρέπει να πραγματοποιούνται ατομικά σε σχέση με άλλες λειτουργίες που πραγματοποιούνται από το κύκλωμα επεξεργασίας δεδομένων. Όταν συμβαίνει μια σύγχρονη εξαίρεση κατά τη διάρκεια μιας συναλλαγής, η συναλλαγή διακόπτεται και αυξάνεται ένας απαριθμητής εξαιρέσεων. Όταν ο απαριθμητής φτάσει μια τιμή κατωφλιού παράγεται ένα σήμα αποτυχίας συναλλαγής, επιτρέποντας εάν ισχύει μια απόκριση σε αυτό τον αριθμό εξαιρέσεων και προκαλώντας την πραγματοποίηση διακοπών συναλλαγών.
Στην παρούσα εφαρμογή, οι λέξεις “διαμορφωμένο για...” χρησιμοποιούνται με τη σημασία ότι ένα στοιχείο μιας διάταξης έχει μια διαμόρφωση ικανή να εκτελεί την καθορισμένη λειτουργία. Σε αυτά τα πλαίσια, μια “διαμόρφωση” σημαίνει μια διάταξη ή έναν τρόπο διασύνδεσης υλικού ή λογισμικού. Για παράδειγμα, η διάταξη μπορεί να έχει αποκλειστικό υλικό το οποίο παρέχει την καθορισμένη λειτουργία ή ένας επεξεργαστή ή μια άλλη διάταξη επεξεργασίας μπορεί να προγραμματίζεται ώστε να πραγματοποιεί τη λειτουργία. “Διαμορφωμένο για” δεν υπονοεί ότι το στοιχείο της διάταξης πρέπει να αλλάξει με κάποιο τρόπο ώστε να παρέχει την καθορισμένη λειτουργία.
Μολονότι επεξηγηματικές υλοποιήσεις έχουν περιγράφει λεπτομερώς στο παρόν αναφορικά με τα συνοδευτικά σχεδιαγράμματα, πρέπει να γίνει κατανοητό ότι η εφεύρεση δεν περιορίζεται σε αυτές ακριβώς τις υλοποιήσεις και ότι διάφορες αλλαγές, προσθήκες και τροποποιήσεις μπορούν να πραγματοποιούνται σε αυτή από άτομα έμπειρα στην τέχνη χωρίς απόκλιση από το αντικείμενο της εφεύρεσης όπως ορίζεται από τις συνημμένες αξιώσεις. Για παράδειγμα, διάφοροι συνδυασμοί των χαρακτηριστικών των εξαρτώμενων αξιώσεων θα μπορούσαν να πραγματοποιούνται με τα χαρακτηριστικά των ανεξάρτητων αξιώσεων χωρίς απόκλιση από το αντικείμενο της παρούσας εφεύρεσης.

Claims (9)

ΑΞΙΩΣΕΙΣ
1. Μια διάταξη που περιλαμβάνει:
ένα κύκλωμα επεξεργασίας δεδομένων για την πραγματοποίηση λειτουργιών επεξεργασίας δεδομένων σε απόκριση εντολών επεξεργασίας δεδομένων, όπου το κύκλωμα επεξεργασίας δεδομένων περιλαμβάνει ένα κύκλωμα υποστήριξης συναλλαγών που αποκρίνεται σε μια ακολουθία εντολών που ορίζουν μια συναλλαγή ώστε να προκαλεί την ατομική πραγματοποίηση ενός συναλλακτικού συνόλου λειτουργιών επεξεργασίας δεδομένων που ορίζονται από την ακολουθία εντολών σε σχέση με άλλες λειτουργίες επεξεργασίας δεδομένων που πραγματοποιούνται από το κύκλωμα επεξεργασίας δεδομένων, και
ένα κύκλωμα διαχείρισης εξαιρέσεων που αποκρίνεται στην εμφάνιση μιας σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή ώστε να προκαλεί τη διακοπή της συναλλαγής από το κύκλωμα υποστήριξης συναλλαγών ώστε το συναλλακτικό σύνολο λειτουργιών επεξεργασίας δεδομένων να μην εκτελείται,
όπου το κύκλωμα διαχείρισης εξαιρέσεων περιλαμβάνει ένα κύκλωμα απαρίθμησης εξαιρέσεων που αποκρίνεται στην εμφάνιση της σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή για την αύξηση μιας απαρίθμησης που τηρείται από το κύκλωμα απαρίθμησης ενώ το κύκλωμα διαχείρισης εξαιρέσεων αποκρίνεται όταν η απαρίθμηση φτάνει μια τιμή κατωφλιού για τη δημιουργία ενός σήματος αποτυχίας συναλλαγής.
2. Η διάταξη της αξίωσης 1, όπου η τιμή κατωφλιού είναι μια προγραμματιζόμενη τιμή που τηρείται από το κύκλωμα απαρίθμησης εξαιρέσεων.
3. Η διάταξη της αξίωσης 1 ή της αξίωσης 2, όπου το κύκλωμα απαρίθμησης εξαιρέσεων αποκρίνεται στην εμφάνιση της σύγχρονης εξαίρεσης κατά την πραγματοποίηση της ακολουθίας εντολών που ορίζουν τη συναλλαγή για την αύξηση της απαρίθμησης που τηρείται από το κύκλωμα απαρίθμησης σε εξάρτηση από έναν τύπο της σύγχρονης εξαίρεσης.
4. Η διάταξη της αξίωσης 3, όπου το κύκλωμα απαρίθμησης εξαιρέσεων περιλαμβάνει μια μάσκα τύπου εξαίρεσης διαμορφωμένη να φιλτράρει σύμφωνα με τύπο εξαίρεσης εισερχόμενα σήματα ενδεικτικά της εμφάνισης των σύγχρονων εξαιρέσεων.
5. Η διάταξη της αξίωσης 3 ή της αξίωσης 4, όπου το κύκλωμα απαρίθμησης εξαιρέσεων περιλαμβάνει πολλαπλούς απαριθμητές ενώ το κύκλωμα απαρίθμησης εξαιρέσεων διατάσσεται ώστε να αυξάνει έναν επιλεγμένο απαριθμητή από τους πολλαπλούς απαριθμητές σε εξάρτηση από τον τύπο της σύγχρονης εξαίρεσης.
6. Η διάταξη οποιασδήποτε από τις αξιώσεις 3-5, όπου το κύκλωμα διαχείρισης εξαιρέσεων αποκρίνεται όταν η απαρίθμηση φτάνει την τιμή κατωφλιού για την παραγωγή ενός σήματος τύπου εξαίρεσης αποτυχίας συναλλαγής ενδεικτικού του τύπου της σύγχρονης εξαίρεσης η οποία εξανάγκασε την απαρίθμηση να φτάσει την τιμή κατωφλιού.
7. Η διάταξη οποιασδήποτε από τις αξιώσεις 3-6, όπου το κύκλωμα διαχείρισης εξαιρέσεων αποκρίνεται όταν η απαρίθμηση φτάνει την τιμή κατωφλιού για την εξαγωγή ενός προφίλ εξαιρέσεων αποτυχίας συναλλαγής ενδεικτικού τουλάχιστον ενός από τα εξής:
ένας αριθμός εξαιρέσεων,
ένας αριθμός τύπων εξαιρέσεων, και
ένας αριθμός εξαιρέσεων κάθε μια από ένα σύνολο τύπων εξαιρέσεων, οι οποίες εξανάγκασαν την απαρίθμηση να φτάσει την τιμή κατωφλιού.
8. Η διάταξη οποιασδήποτε προηγούμενης αξίωσης, όπου το κύκλωμα απαρίθμησης εξαιρέσεων περιλαμβάνει ένα κύκλωμα χρονισμού για τη μέτρηση μιας προκαθορισμένης χρονικής περιόδου και το κύκλωμα απαρίθμησης αποκρίνεται στην υπόδειξη της παρέλευσης της προκαθορισμένης χρονικής περιόδου από το κύκλωμα χρονισμού για το μηδενισμό της απαρίθμησης που τηρείται από το κύκλωμα απαρίθμησης.
9. Η διάταξη οποιασδήποτε προηγούμενης αξίωσης, όπου το κύκλωμα διαχείρισης εξαιρέσεων περιλαμβάνει έναν αποθηκευτικό χώρο απαριθμητή προγράμματος εξαιρέσεων για την αποθήκευση μιας τιμής απαριθμητή προγράμματος που σχετίζεται με την εμφάνιση της σύγχρονης εξαίρεσης κατά την πραγματοποίηση των εντολών που ορίζουν τη συναλλαγή, ενώ το κύκλωμα διαχείρισης εξαιρέσεων αποκρίνεται όταν η απαρίθμηση φτάνει την τιμή κατωφλιού για την εξαγωγή της τιμής απαριθμητή προγράμματος.
1 Π Min |igflnW IrirrmpyW |iinr ΚιΛτπ^ης cur ξΓργππί nr SnSnjirivriW η nmin περιλαμβάνει τα εξής βήματα;
πραγματοποίηση λειτουργιών επεξεργασίας δεδομένων σο απόκριση εντολών επεξεργασίας δεδομένων,
σε απόκριση μιας ακηλαιιθίας εντηλ ών πηη ορίζουν μια συναλλαγή. προκαλώντας — την — ατομική _ πραγματοποίηση — ενός — συναλλακτικού — συνόλου λειτηιιργιών επεξε ργασίας δεδομένων ποιι ορίζονται από την ακολοιιθία εντολών-πε σχέση με άλλες λειτουργίες επεξεργασίας δεδομένων,
σε — απόκριση _ της εμίρόνισης _ μαας — σύγχρονης — εξαίρεσης — κατά — την πραγματοποίηση της ακολουθίας εντολών που ορίςουν τη συναλλαγή, διακόπτοντας τη mwn) 1 πγή mriTc τ ο mmn» πνπν/ί mn/nl η 1 ciT/vnpyirlvw επεζεργαπίας SrSn|imirnv VO μην εκτελείταν
σε απόκριση — της _ εμφάνισης _ μιας — σύγχρονης — εξαίρεσης — κατά — την πραγματοποίηαη της ακολουθίας εντολών ποιι npiTmiv τη πιινπΠηή]αυξάνοντας, pjg απαρίθμηση, και
σε— απόκριση της επίτευξης μιας, τιμής κατωφλίου από την απαρίθμηση, παράγοντας. ένα σήμα αποτυχίας συναλλαγής..
1-1. - Ένα πρόγραμμα υπολογιστή για τον έλεγχο μιας κεντρικής διάταξης επεξεργασίας δεδομένων για την παροχή ενός περιβάλλοντος εκτέλεσης εντολών για την — εκτέλεση — εντολών — του — στοχευόμενου — κώδικα — προγράμματος, — το οποίο -περιλαμβάνει: .
λογική —<ρ>τ<ρ>ξ<ρ>ργ«™πς ΚεΑομεν^ν γι<η>— την — πραγματοποίηση — λειτουργιών επεξεργασίας δεδομένων σε απόκριση εντολών επεξεργασίας δεδομένων, όπου η insufficientOCRQuality for page 33
GR20180200121U 2018-04-11 2018-04-11 Διαχειριση εξαιρεσεων σε συναλλαγες GR20180200121U (el)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GR20180200121U GR20180200121U (el) 2018-04-11 2018-04-11 Διαχειριση εξαιρεσεων σε συναλλαγες

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GR20180200121U GR20180200121U (el) 2018-04-11 2018-04-11 Διαχειριση εξαιρεσεων σε συναλλαγες

Publications (1)

Publication Number Publication Date
GR20180200121U true GR20180200121U (el) 2019-11-28

Family

ID=69179785

Family Applications (1)

Application Number Title Priority Date Filing Date
GR20180200121U GR20180200121U (el) 2018-04-11 2018-04-11 Διαχειριση εξαιρεσεων σε συναλλαγες

Country Status (1)

Country Link
GR (1) GR20180200121U (el)

Similar Documents

Publication Publication Date Title
JP7377812B2 (ja) トランザクションにおける例外ハンドリング
JP3965142B2 (ja) コンピュータ・プログラムをデバックするための方法、システムおよびソフトウェア・プロダクト
JP2002268914A (ja) 特権命令の実行を監視する方法
JP5905904B2 (ja) デバッグ例外生成の制御
US20070136565A1 (en) Stack underflow debug with sticky base
JP6370098B2 (ja) 情報処理装置、情報処理監視方法、プログラム、及び記録媒体
JP2013539574A (ja) 不正なモード変更の操作
EP3063692B1 (en) Virtual machine introspection
CN112805710A (zh) 验证堆栈指针
US11461104B2 (en) Deferred system error exception handling in a data processing apparatus
GR20180200121U (el) Διαχειριση εξαιρεσεων σε συναλλαγες
EP2677429A1 (en) Error correction
Golnari et al. Error-tolerant processors: Formal specification and verification
US6772372B2 (en) System and method for monitoring unaligned memory accesses
KR102358754B1 (ko) 처리회로에 대한 트리거 신호의 어셔션을 제어하는 장치 및 방법
CN111625824A (zh) 基于iast的安全测试方法、装置、电子装置及存储介质
JP2004157662A (ja) 動的スタックオーバライトモニタ方法
Halvorsen et al. Debugging
JPH0436420B2 (el)
JPH0368033A (ja) プログラム実行制御方式
JP2015121961A (ja) 情報処理装置、仮想マシン制御方法、プログラム、及び記録媒体
JPH01184551A (ja) プログラムのデバッギング方式