Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Harry Hauer Geändert vor über 8 Jahren
1
Ablauf von Daten- verarbeitungsprozessen Gliederung: ● Zeitliche Steuerung von Abläufen – Druckauftragsverarbeitung – scheinbare Gleichzeitigkeit von Prozessen ● Betriebssystem als Bindeglied von Hardware und Anwendungssoftware – Weg der Daten im Computersystem – Speicherung von Daten
2
zeitliche Steuerung von Abläufen Druckauftragsverarbeitung ● Probleme: – neue Aufträge werden geschickt, bevor der Drucker fertig ist – in Netzwerken senden mehrere Nutzer gleichzeitig oder kurz nacheinander Druckaufträge ● Lösung: – Benutzung einer Druckerwarteschlange, die neue Aufträge entgegen nimmt und diese nacheinander an den Drucker sendet
3
Druckauftragsverarbeitung Spooler: ● → Systemprogramm, das Druckaufträge von Anwendungsprogrammen in eine Warteschlange setzt und von dort aus an den Drucker übergibt. ● → nimmt die Aufträge der Benutzer entgegen und wartet, bis das Gerät wieder einen Ausdruck verarbeiten kann. Wenn das zugehörige Gerät frei ist, wird der älteste Druckauftrag verarbeitet, bis alle wartenden Aufträge abgearbeitet sind.
4
Druckauftragsverarbeitung Anwendungs- Spooler Drucker programm (Druckaufträge) neuester ältester
5
Druckauftragsverarbeitung Vorteile des Spoolings: ● höhere Geschwindigkeit Die Festplatte ist schneller als der Drucker. Dadurch kann die Anwendung zügig fortgesetzt werden, indem der Druckjob auf Platte geschrieben wird, ohne auf die Ausgabe warten zu müssen. ● Mehrfachnutzung von Geräten Ein Spooler kann zahlreiche Aufträge für ein Gerät zwischenspeichern. Dadurch können sich mehrere Personen bzw. Prozesse einen Drucker teilen, ohne sich gegenseitig zu behindern.
6
Druckauftragsverarbeitung Vorteile des Spoolings: ● Persistenz Ein Spooler löscht seinen Zwischenspeicher nicht zwangsläufig, wenn der Auftrag abgearbeitet ist. Dadurch kann ein Ausdruck wiederholt werden ohne das Anwendungsprogramm erneut zu starten. Auch andere Vorgänge werden mit Spoolern realisiert. Mailserver sammeln beispielsweise zu versendende Mails in einem Spool-Verzeichnis, von dem aus sie dann verschickt werden.
7
scheinbare Gleichzeitigkeit von Prozessen Im Computer laufen meist mehrere Prozesse scheinbar gleichzeitig nebeneinander ab (so genanntes Multitasking). In Wirklichkeit werden die einzelnen Prozesse in kurzen Zeitabständen abwechselnd aktiviert, so dass der Eindruck der Gleichzeitigkeit entsteht. Dazu teilt das Betriebssystem den einzelnen Prozessen Rechenzeit zu: Betriebssystem Prozess 1 Prozess 2 Prozess 3
8
kooperatives Multitasking ● eine zentrale Prozessverwaltung im Betriebssystemkern gibt die Rechenleistung nacheinander an die gestarteten Prozesse ab ● dabei ist es jedem Prozess selbst überlassen, wann er die Kontrolle an den Kern zurück gibt ● Vorteile: – technisch einfach zu realisieren – schnell und ressourcenschonend – Systemfunktionen (z.B. Ein- und Ausgabe) müssen nicht synchronisiert werden
9
kooperatives Multitasking ● Nachteile: – keine Prioritätszuweisung nach Wichtigkeit möglich – Programme, die ihre Kooperation abbrechen, können das gesamte System zum Stillstand bringen (Absturz) ● Beispiele: – TSR-Programme unter MS-DOS – Windows 3.x (Windows 3.1 und Windows für Workgroups 3.1 von 1992 und Windows für Workgroups 3.11 von 1993)
10
präemptives Multitasking ● der Betriebssystemkern steuert die Abarbeitung der einzelnen Prozesse und hält jeden Prozess nach einer bestimmten Abarbeitungszeit zu Gunsten anderer Prozesse an ● → Prozesse „schlafen“ (sind inaktiv) und setzen während ‚ihrer‘ Zuteilung im Prozessor Arbeit fort ● hardwareseitig ist ein Zeitgeber notwendig [... sendet regelmäßig ein Signal (Interrupt) an die CPU, was sie zur Ausführung eines Schedulers veranlasst. Dieser unterbricht die Prozesse, übernimmt nötige Verwaltungsaufgaben und gibt die Kontrolle wieder an einen der Prozesse zurück.]
11
präemptives Multitasking ● Vorteile: – in Verbindung mit einem Speicherschutz (verhindert, dass verschiedene Prozesse sich im Speicher gegenseitig überschreiben) sehr sicher vor Systemabstürzen – wichtigeren Prozessen können höhere Prioritäten zugewiesen werden ● Nachteil: – hardwareseitig aufwendiger ● Beispiele: – ab Windows 95, alle UNIX-artigen Systeme (wie Linux, Mac OS X usw.), heute Standard
12
Betriebssystem als Binde- glied Anwendung – Hardware ● „Ein Betriebssystem ist die Software, die die Verwendung (den Betrieb) eines Computers ermöglicht. Es verwaltet Betriebsmittel wie Speicher, Ein- und Ausgabegeräte und steuert die Ausführung von Programmen.“ [1] ● Zu den Aufgaben eines Betriebssystems gehören: – Speicherverwaltung – Programm-(Prozess)-Verwaltung – Geräte- und Dateiverwaltung – Rechteverwaltung – Abstraktion
13
Beispiel: Linux [1]
14
Beispiel: Windows NT [1]
15
Betriebssystem – Anwendungsprogramm Was passiert beim Starten und bedienen eines Anwendungsprogramms? ● Das Betriebssystem – reserviert Speicher für die Anwendung – startet den Prozess (bzw. die Prozesse) „Anwendung“ – ermöglicht der Anwendung den Zugriff auf hardwareunabhängige standardisierte Schnittstellen ● zur Tastatur- und Mauseingabe (u.a. Eingabegeräte) ● zur Grafik- und Tonausgabe (u.a. Ausgabegeräte) ● zum Laden und Speichern von Dateien – teilt der Anwendung Rechenzeit zu
16
Aufgabe ● Öffne ein Terminalfenster (z.B. „xterm“) ● Führe in dem Fenster den Befehl „top“ aus. Welche Angaben liefert dieses Programm? ● Starte eine beliebige Anwendung (z.B. OpenOffice) und beobachte die Ausgaben von „top“ im Terminalfenster.
17
Abstraktion ● = Verbergen der Komplexität der Maschine vor dem Anwender ● Abstraktion des Maschinenbegriffes (nach Coy): – Reale Maschine = Zentraleinheit + Geräte (Hardware) – Abstrakte Maschine = Reale Maschine + Betriebssystem – Benutzermaschine = Abstrakte Maschine + Anwendungsprogramm ● Anwendungen können nur über standardisierte Schnittstellen des Betriebssystems auf die Hardware zugreifen (über Systemaufrufe – system calls).
18
Abstraktion ● Vorteile: – Anwendungsprogramme laufen auf Computern mit unterschiedlicher Hardware – die Programmierung von Anwendungsprogrammen kann hardwareunabhängig erfolgen (d.h. Zugriffe auf die Hardware müssen nicht programmiert werden, die Benutzung von Systemaufrufen* genügt) – fehlerhafte Anwendungsprogramme können die Hardware nicht beschädigen * Beispiele: open, close, read, write, exec, fork, exit (Dateiverarbeitungsfunktionen)
19
Speicherung der Daten Anwendungsprogramm Betriebssystem Datenträger system call „write“ schreiben system call „read“ lesen
20
Quellen [1] http://de.wikipedia.org/wiki/Betriebssystemhttp://de.wikipedia.org/wiki/Betriebssystem
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.