Nach DIN 44300 umfaßt ein Betriebssystem:

Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften dieser Recheanlage die Basis der möglichen Betriebsarten des Rechensystems bilden und die insbesondere die Abwicklung von Programmen steuern und überwachen.

Ein Betriebssystem hat folgende grundlegende Aufgaben:

  • Verbergen der Komplexität der Maschine vor dem Anwender (Abstraktion)
  • Bereitstellen einer Benutzerschnittstelle ("Kommandointerpreter", "Shell")
  • Bereitstellen einer normierten Programmierschnittstelle (API)
  • Verwaltung der Resourcen der Maschine

Prozessor(en)

 Hauptspeicher

Hintergrundspeicher (Platte, Band, etc.)

 Geräte (Terminal, Drucker, Plotter, etc.)

Rechenzeit

  • Koordination von Prozessen

1.3 Architektur des BetriebssystemsZur logischen Strukturierung wird das Betriebssystem normalerweise in mehrere Schichten oder Schalen eingeteilt. Die unterste Schale beinhaltet alle hardwareabhängigen Teile des Betriebssystems, insbesondere auch die Verarbeitung von Interrupts. Auf diese Weise ist es möglich, das BS leicht an unterschiedliche Rechnerausstattungen anzupassen. Die nächste Schicht enthält die grundlegenden Ein-/Ausgabe-Dienste für Plattenspeicher und Peripheriegeräte. Die darauffolgende Schicht behandelt Kommunikations- und Netzwerkdienste, Dateien und Dateisysteme. Weitere Schichten können je nach Anforderung folgen. Ein Betriebssystem besitz als drei oder mehr logische Schichten.



Jede Schicht bildet eine abstrakte (virtuelle) Maschine, die mit ihren benachbarten Schichten über wohldefinierte Schnittstellen kommuniziert. Sie kann Funktionen der nächstniedrigeren Schicht aufrufen und ihrerseits Funktionen für die nächsthöhere Schicht zur Verfügung stellen. Die Gesamtheit der von einer Schicht angebotenen Funktionen wird auch als "Dienste" dieser Schicht bezeichnet. Die Gesamtheit der Vorschriften, die bei der Nutzung der Dienste einzuhalten sind, wird als "Protokoll" bezeichnet.

Die unterste Schicht setzt immer direkt auf der Rechner-Hardware auf. Sie verwaltet die realen Betriebsmittel des Rechners und stellt stattdessen virtuelle Betriebsmittel bereit. Oft wird diese Schicht als "BIOS" (Basic I/O-System) bezeichnet. Alle weiteren Schichten sind von der Hardware unabhängig.

Durch jede Schicht wird eine zunehmende "Veredelung" der Hardware erreicht (z. B. wachsende Abstraktion, wachsende Benutzerfreundlichkeit).

Durch die Programmierschnittstelle (API, Applications Programmers Interface) der höheren Schichten wird auch vermieden, daß jeder Programmierer die grundlegenden Routinen für den Zugriff auf Ein-/Ausgabegeräte und Massenspeicher selbst programmieren muß. Das BS stellt also eine definierte Programmierschnittstelle zur Verfügung. Änderungen am BS oder der Hardware wirken sich so nicht auf die Anwenderprogramme aus, die nach wie vor über die gleichen Betriebssystem-Aufrufe die Dienste des BS in Anspruch nehmen.

Bei Einzelbenutzer-Singletaskingsystemen können Anwenderprogramme die Schichtenstruktur durchbrechen und z. B. direkt auf einer bestimmten Hardwarekomponente aufsetzen. Bei Mehrbenutzer- oder Multitaskingsystemen ist dies nicht möglich, das hier der Schutz der einzelnen Resourcen (CPU, Platte, Ein-/Ausgabe, usw.) für jedes Programm vor Beeinflussung durch andere Programme gewährleistet werden muß. Hier ist eine streng hierarchische Kommunikation nötig, die nur zwischen zwei benachbarten Schichten zulässig ist.

Bedenkt man, daß heutige Rechnersysteme sich selbst innerhalb einer Rechnerfamilie vielfältig in Speicherausstattung, Art und Umfang der angeschlossenen Geräte unterscheiden, so wird klar, daß die Erstellung monolithischer Programme für jede mögliche Rechnerkonstellation ein praktisch undurchführbares Unternehmen ist. Die Lösung dieses Problems heißt hier: Modularisierung.

Programme werden in Module zerlegt, die zueinander über definierte Schnittstellen in Beziehung stehen. Somit ist es möglich, innerhalb eines Programmes einen Modul durch einen anderen mit gleicher Schnittstelle zu ersetzen, um das Programm an eine andere Rechnerkostellation anzupassen. Die Auswahl und Zusammenstellung der allgemeingültigen Module wird bestimmt durch die eingesetzte Hardware und die Art der Programme, die durch diese Module unterstützt werden sollen. Sie ist für viele Programme, die auf einem Rechner abgearbeitet werden sollen, gleich und unterscheiden sich wiederum etwas von Rechner zu Rechner. 1.4 Warum Multitasking mehr Rechnerleistung bringt




سلام أنا حسام أبن عبد الرحيم عمايري أمي عصمت   دخل الله


wie lautet der alogarythmus für primzahlen?