2. Adventsüberraschung: 30% Rabatt auf Bücher (DE)! Nur noch heute profitieren.
Willkommen, schön sind Sie da!
Logo Ex Libris

Exceptionbehandlung und Synchronisation

  • Kartonierter Einband
  • 368 Seiten
(0) Erste Bewertung abgeben
Bewertungen
(0)
(0)
(0)
(0)
(0)
Alle Bewertungen ansehen
Eine Exception ist das Auftreten einer Bedingung, die es verunmog licht, mit der Ausfuhrung eines Programmes normal weiterzufahren... Weiterlesen
30%
71.00 CHF 49.70
Print on demand - Exemplar wird für Sie besorgt.

Beschreibung

Eine Exception ist das Auftreten einer Bedingung, die es verunmog licht, mit der Ausfuhrung eines Programmes normal weiterzufahren. Es ist die Aufgabe eines Betriebssystems oder des Laufzeitsystems einer Programmiersprache, einen Mechanismus zur Verfugung zu stel len, welcher die Behandlung von Exceptions unterstutzt. Bekannte Konzepte schlagen vor, ein Programm in einzelne Bereiche zu gliedern, urn Exceptions lokal behandeln zu konnen. Angepasst an eine blockstrukturierte Programmiersprache konnen diese Exception behandlungsbereiche sequentiell oder verschachtelt angeordnet wer den. Dieser Ansatz wird auf parallele Programme ubertragen: Dynamisch geschaffene Prozesse werden im selben Bereich ausgefuhrt, inner halb welchem sie gestartet wurden. Sie konnen ihrersei ts eigene Bereiche eroffnen, urn Exceptions selbst zu behandeln, damit andere Prozesse nicht gestort werden. Beim Auftreten einer Exception wird die Ausfuhrung des aktuellen Bereichs abgebrochen, und aIle in diesem Bereich gestarteten Prozesse werden gestoppt. Die Exceptionbehandlung muss in einem Echtzeitsystem zusammen mit der Synchronisation betrachtet werden, z.B. urn Verklemmungen zu verhindern, weil Prozesse, die infolge von Exceptions abgebrochen werden, ihre Betriebsmittel nicht wieder freigeben. Es wird eine Verwaltung dynamischer Objekte vorgeschlagen, welche Prozesse, Synchronisationsdeskriptoren (z.B. Semaphoren) und Zugriffsrechte (z.B. Zugriff auf ein Betriebsmittel) unterscheidet. Ein Objekt wird am Ende des Bereichs, innerhalb welchem es geschaffen oder zugeteilt wurde, automatisch geloscht resp. freigegeben.

Klappentext

Eine Exception ist das Auftreten einer Bedingung, die es verunmog­ licht, mit der Ausfuhrung eines Programmes normal weiterzufahren. Es ist die Aufgabe eines Betriebssystems oder des Laufzeitsystems einer Programmiersprache, einen Mechanismus zur Verfugung zu stel­ len, welcher die Behandlung von Exceptions unterstutzt. Bekannte Konzepte schlagen vor, ein Programm in einzelne Bereiche zu gliedern, urn Exceptions lokal behandeln zu konnen. Angepasst an eine blockstrukturierte Programmiersprache konnen diese Exception­ behandlungsbereiche sequentiell oder verschachtelt angeordnet wer­ den. Dieser Ansatz wird auf parallele Programme ubertragen: Dynamisch geschaffene Prozesse werden im selben Bereich ausgefuhrt, inner­ halb welchem sie gestartet wurden. Sie konnen ihrersei ts eigene Bereiche eroffnen, urn Exceptions selbst zu behandeln, damit andere Prozesse nicht gestort werden. Beim Auftreten einer Exception wird die Ausfuhrung des aktuellen Bereichs abgebrochen, und aIle in diesem Bereich gestarteten Prozesse werden gestoppt. Die Exceptionbehandlung muss in einem Echtzeitsystem zusammen mit der Synchronisation betrachtet werden, z.B. urn Verklemmungen zu verhindern, weil Prozesse, die infolge von Exceptions abgebrochen werden, ihre Betriebsmittel nicht wieder freigeben. Es wird eine Verwaltung dynamischer Objekte vorgeschlagen, welche Prozesse, Synchronisationsdeskriptoren (z.B. Semaphoren) und Zugriffsrechte (z.B. Zugriff auf ein Betriebsmittel) unterscheidet. Ein Objekt wird am Ende des Bereichs, innerhalb welchem es geschaffen oder zugeteilt wurde, automatisch geloscht resp. freigegeben.



Inhalt

1. Kapitel: Einleitung.- 1.1 Abstraktes Modell eines Computersystems.- 1.2 TC8 Echtzeitbetriebssystemmodell.- 1.3 Zielsetzungen.- 1.4 Bemerkungen zur Notation.- 2. Kapitel: Anforderungen und Konzepte.- 2.1 Grobstruktur.- 2.2 Prozessverwaltung.- 2.3 Exceptionbehandlung.- 2.3.1 Modell der Exceptionbehandlung.- 2.3.2 Bekannte Konzepte.- 2.3.2.1 Modula-2 (RT-11 Implementation).- 2.3.2.2 Ada.- 2.3.2.3 Chill.- 2.3.2.4 Diskussion.- 2.3.3 Anforderungen.- 2.3.4 Wahl eines Konzeptes.- 2.3.4.1 Anwenderschnittstelle (K-Level).- 2.3.4.2 Systemschnittstelle (S-Level).- 2.3.4.3 Speicherverwaltung.- 2.4 Synchronisation.- 2.4.1 Modell der Synchronisation.- 2.4.2 Beispiele von Synchronisationskonzepten.- 2.4.2.1 Semaphore.- 2.4.2.2 Meldungen.- 2.4.2.3 Kritische Abschnitte.- 2.4.3 Realisierung von Synchronisationsoperationen.- 2.4.3.1 Basissynchronisation.- 2.4.3.2 Listenverwaltung.- 2.4.3.3 Dispatching.- 2.4.3.4 Objektverwaltung.- 2.5 Zusammenfassung.- 2.5.1 K-Level.- 2.5.2 S- und Z-Level.- 3. Kapitel: Allgemeiner Entwurf.- 3.1 Entwurfsgrundsätze.- 3.2 Grobentwurf.- 3.2.1 Prozessverwaltung.- 3.2.2 Exceptionbehandlung.- 3.2.3 Datenstrukturen.- 3.3 Entwurf der Prozessverwaltung und Exceptionbehandlung.- 3.3.1 Listenverwaltung.- 3.3.2 Dispatcheroperationen.- 3.3.3 Start Process und Change Prio.- 3.3.4 Exceptionbereichsbehandlung.- 3.3.5 Bearbeiten einer Exception.- 3.3.5.1 Auslösephase.- 3.3.5.2 Zuordnungsphase.- 3.3.6 Objektverwaltung.- 3.3.6.1 Prozesslisten.- 3.3.6.2 Synchronisationsdeskriptorlisten.- 3.3.6.3 Zugriffsrechtlisten.- 3.3.6.4 Löschen von Synchronisationsdeskriptoren.- 3.3.7 Aufräumphase.- 3.3.7.1 Anforderungen.- 3.3.7.2 Entwurf.- 3.3.7.3 Synchrone Exceptions.- 3.3.8 Modulstruktur.- 3.3.8.1 Datenstrukturen.- 3.3.8.2 Prozeduren.- 3.3.8.3 Importbeziehungen.- 3.3.9 Initialisierung.- 3.4 Entwurf von Synchronisationsoperationen.- 3.4.1 Semaphore.- 3.4.2 Meldungen.- 3.4.3 Kritische Abschnitte.- 3.4.4 Richtlinien zur Anwendung des S- und Z-Levels.- 3.4.4.1 Initialisieren von Synchronisationsdeskriptoren.- 3.4.4.2 Synchronisationsoperationen.- 4. Kapitel: PDP-11 Version.- 4.1 Uebersicht.- 4.2 Die Modula-2 Implementation unter RT-11.- 4.2.1 Speicherorganisation.- 4.2.2 Laufzeitsystem und Standardbasis.- 4.2.3 Prozessorregister.- 4.2.4 Prozeduraufruf.- 4.2.5 Behandlung von Unterbrechungen.- 4.2.6 Prozessumschaltung.- 4.2.7 Debugger.- 4.3 Anpassungen an Modula-2/RT-11.- 4.3.1 Hilfsmodule.- 4.3.1.1 MESystemTypes.- 4.3.1.2 Mepdp11.- 4.3.2 Prozessverwaltung.- 4.3.3 Exceptionbehandlung.- 4.4 Behandlung von Unterbrechungen.- 4.4.1 Konzept und Anwenderschnittstelle.- 4.4.2 Entwurf der Unterbrechungsbehandlung.- 4.4.2.1 Prozessumschaltungen.- 4.4.2.2 Anpassung der Dispatcheroperationen.- 4.4.2.3 Umwandlung in einen Z-Prozess.- 4.4.2.4 Rückwandlung eines Z-Prozesses.- 4.4.3 Anwendungsbeispiel: MEClock.- 4.4.3.1 Anwenderschnittstelle.- 4.4.3.2 Realisierung.- 4.5 Speicherverwaltung.- 4.5.1 Konzept und Anwenderschnittstelle.- 4.5.2 Entwurf.- 4.6 Testhilfen.- 4.6.1 Laufzeittests.- 4.6.1.1 Z Level Error.- 4.6.1.2 Index Out of Range.- 4.6.1.3 Gültigkeit von Synchronisationsdeskriptoren.- 4.6.1.4 Einschränkungen beim Aufruf von Enter/Exit.- 4.6.1.5 Unerwartete Unterbrechungen.- 4.6.2 Anpassungen an den Debugger.- 4.6.2.1 Retten des Kontextes.- 4.6.2.2 Reparieren des dynamischen Links.- 4.6.2.3 Analyse des Modula-2 Hauptprozesses.- 4.7 Optimierungen.- 4.7.1 Prozessumschaltungen.- 4.7.2 Datenstrukturen.- 4.8 Zeitmessungen.- 5. Kapitel: Multiprozessorversion.- 5.1 Uebersicht.- 5.2 Synchronisation auf dem Z-Level.- 5.2.1 Gegenseitiger Ausschluss.- 5.2.1.1 Das Funktionspaar Lock/Unlock.- 5.2.1.2 Konzept für den Einsatz von Lock/Unlock.- 5.2.1.3 Gültigkeitstests.- 5.2.2 Notifikation.- 5.3 Prozessverwaltung und Exceptionbehandlung.- 5.3.1 Datenstrukturen.- 5.3.2 Listenverwaltung.- 5.3.3 Prozessumschaltung.- 5.3.4 Dispatcheroperationen.- 5.3.5 Start Process und Change Prio.- 5.3.6 Exceptionbereichsbehandlung.- 5.3.7 Bearbeiten einer Exception.- 5.3.7.1 Synchrone Exceptions.- 5.3.7.2 Asynchrone Exceptions.- 5.3.8 Objektverwaltung.- 5.3.8.1 Zugriffsrechtlisten.- 5.3.8.2 Löschen von Synchronisationsdeskriptoren.- 5.3.9 Aufräumphase.- 5.3.10 Modulstruktur.- 5.3.11 Initialisierung.- 5.4 Anpassung von Synchronisationsoperationen.- 5.4.1 Kritische Abschnitte.- 5.4.1.1 Gültigkeit von Synchronisationsdeskriptoren.- 5.4.1.2 Verwaltung von Zugriffsrechten.- 5.4.2 Richtlinien zur Anwendung des S- und Z-Levels.- 6. Kapitel: Anwendung der Exceptionbehandlung.- 6.1 Uebersicht.- 6.2 Beweisregeln.- 6.2.1 Programmverifikationstechnik.- 6.2.2 Beweisregeln für explizit ausgelöste Exceptions.- 6.2.3 Implizit ausgelöste Exceptions.- 6.2.4 Objektverwaltung und asynchrone Exceptions.- 6.3 Anwendungsprogramme.- 6.3.1 Vereinfachen der Programmstruktur.- 6.3.2 Unabhängige Exceptionbereiche.- 6.3.2.1 Synchronisation mit kritischen Abschnitten.- 6.3.2.2 Synchronisation mit Meldungen.- 6.3.3 Laden von Overlays.- 6.3.4 Abfangen von Prozessortraps.- 6.4 Systemprogrammierung.- 6.4.1 Fehlertolerante Pufferverwaltung.- 6.4.1.1 Problemstellung.- 6.4.1.2 Anwenderschnittstelle.- 6.4.1.3 Realisierung.- 6.4.2 Behandlung der Exception Time Out.- 6.4.2.1 Problemstellung.- 6.4.2.2 Lösungsansatz.- 6.4.2.3 Realisierung.- 6.4.3 Behandlung von .- 6.4.4 Ueberwachung der Sicherheit.- 6.5 Nicht behandelbare Exceptions.- 7. Kapitel: Schlussbemerkungen.- A. Literaturverzeichnis.- B. Einzelprozessorversion.- C. PDP-11 Version.- D. Multiprozessorversion.- E. Stichwortverzeichnis.

Produktinformationen

Titel: Exceptionbehandlung und Synchronisation
Untertitel: Entwurf und Methode
Autor:
EAN: 9783540156727
ISBN: 978-3-540-15672-7
Format: Kartonierter Einband
Herausgeber: Springer Berlin Heidelberg
Genre: Informatik
Anzahl Seiten: 368
Gewicht: 633g
Größe: H244mm x B170mm x T19mm
Jahr: 1985

Bewertungen

Gesamtübersicht

Meine Bewertung

Bewerten Sie diesen Artikel


Zuletzt angesehen
Verlauf löschen