Kap1

17
1 Stichworte Notizen Prof. W. Burkard 1 Betriebssysteme am Beispiel Fachhochschule Pforzheim Prof. W. Burkard FB 7, Studiengang Wirtschaftsinformatik Linux 2 Stichworte Notizen Prof. W. Burkard 2 Überblick klassische Betriebssysteme Einführung und Überblick Hardware-Grundlagen Prozessverwaltung Speicherverwaltung Dateisysteme Ein-/Ausgabe Deadlocks Einführung in Linux/Unix Überblick, Installation, System-Grundlagen Dateisystem, die Shell, Task-Management, Linux administrieren, die grafische Oberfläche Linux im Netz: NIS und NFS Praxisteil Java-Threads Threads und Prozesse in Java die Synchronisationsproblematik und ihre Lösungen Interprozesskommunikation

description

 

Transcript of Kap1

Page 1: Kap1

1

Stichworte

Notizen

Prof. W. Burkard 1

Betriebssystemeam Beispiel

Fachhochschule PforzheimProf. W. Burkard

FB 7, Studiengang Wirtschaftsinformatik

Linux

2

Stichworte

Notizen

Prof. W. Burkard 2

Überblick

● klassische Betriebssysteme■ Einführung und Überblick■ Hardware-Grundlagen■ Prozessverwaltung ■ Speicherverwaltung■ Dateisysteme■ Ein-/Ausgabe■ Deadlocks

● Einführung in Linux/Unix■ Überblick, Installation, System-Grundlagen■ Dateisystem, die Shell, Task-Management, ■ Linux administrieren, die grafische Oberfläche■ Linux im Netz: NIS und NFS

● Praxisteil Java-Threads■ Threads und Prozesse in Java■ die Synchronisationsproblematik und ihre Lösungen■ Interprozesskommunikation

Edited by Foxit Reader Copyright(C) by Foxit Software Company,2005-2006 For Evaluation Only.
Page 2: Kap1

3

Stichworte

Notizen

Prof. W. Burkard 3

Organisation der Vorlesung

Teilnehmer■ Betriebswirte SG Wirtschaftinformatik ■ Bachelor of Information Systems■ Ingenieure der Elektrotechnik Diplom/Bachelor

Pflichtprogramm für alle Ingenieure

Pflichtteil Betriebswirte

Woch

e 1W

oche 2

Woch

e 4

Woch

e 3

Woch

e 5

Woch

e 7

Woch

e 6

Woch

e 8W

oche 9

Woch

e 10

Woch

e 11

Woch

e 13

Woch

e 12

Woch

e 14

Betriebssysteme Theorie (7) Linux / Unix-Teil (4)Thread-

Programming (3)

für Betriebswirte keine Pflicht

4

Stichworte

Notizen

Prof. W. Burkard 4

Literatur

[Tannen95] Andrew S. Tannenbaum, Moderne Betriebssysteme, Hanser-Verlag München/Wien 1995

[Oechsle01] Rainer Oechsle, Parallele Programmierung mit Java Threads, Hanser-Verlag München/Wien 2001

[Nehmer01] Jürgen Nehmer und Peter Sturm, Systemsoftware (Grundlagen moderner Betriebssysteme), dpunkt-Verlag, Heidelberg 2001

[Kredel02] H. Kredel & A. Yoshida, Thread- und Netzwerkprogrammierung mit Java,dpunkt-Verlag, Heidelberg 2002

[Brause98] Rüdiger Brause, Betriebssysteme, Springer-Verlag, Berlin 1998[Siegert98] H.J.Siegert, Betriebssysteme eine Einf., Oldenbourg-V. München 1998[Steen95] Maarten van Steen, Computer and Network Organization,

Prentice-Hall, München 1995[Stucky97] Wolffried Stucky, Der Rechner als System,

Teubner-Verlag, Stuttgart 1997

Jonas
Highlight
Bestellen!
Edited by Foxit Reader Copyright(C) by Foxit Software Company,2005-2006 For Evaluation Only.
Edited by Foxit Reader Copyright(C) by Foxit Software Company,2005-2006 For Evaluation Only.
Edited by Foxit Reader Copyright(C) by Foxit Software Company,2005-2006 For Evaluation Only.
Page 3: Kap1

5

Stichworte

Notizen

Prof. W. Burkard 5

Aufgaben der Betriebssysteme

Definition:

Das Betriebssystem steuert und verwaltet die vorhandenen Betriebsmittel eines Rechnersund stellt den Anwendern und den Anwendungsprogrammen Schnittstellen zur Verfügung,die den möglichst einfachen und damit effiziente Umgang mit den Ressourcen ermöglichen.

Aufgaben:

• Verwalten vorhandener Ressourcen: •Prozessoren, •Speicher, •Peripherie-Geräte, •Prozesse

• Anbieten abstrakter Schnittstellen zu den Betriebsmitteln• Steuern und Überwachen der Anwendungs-Software• Realisieren von Kommunikationswegen zwischen den

einzelnen Ressourcen des Systems,den Anwendungsprogrammen und dem Menschen

6

Stichworte

Notizen

Prof. W. Burkard 6

Geschichte der Betriebssysteme

Generation 1: Generation2:

Rechner ohne Betriebssystem, keine Idee des Stapelbetriebes mit getrenntenUnterscheidung der Anwender in Systemen für Eingabe, Verarbeitung, Ausgabe. Entwickler,Operateur, Programmierer Der teuere Rechner wurde besser ausgenutzt, und Nutzer. ( bis Mitte der 50er) durch Verringern der Stillstandszeiten.

-Systemsoftware kümmert sich um die Probleme die wir nur deshalb haben, weil wir einen Computer haben. z.B. Windows Explorer, Compiler, Defragmentierungsprogramm -Anwendungssoftware kümmert sich ausschlieslich um die Probleme die wir auch ohne Computer haben. z.B. Buchhaltungssoftware, Excel
z.B. Zwischenablage
Edited by Foxit Reader Copyright(C) by Foxit Software Company,2005-2006 For Evaluation Only.
Page 4: Kap1

7

Stichworte

Notizen

Prof. W. Burkard 7

Mehrprogrammbetrieb● Mehrere Jobs werden im Hauptspeicher gehalten.● Wenn ein Job auf das Ende einer I/O-Operation wartet, wird die CPU einem anderen

Job zugeteilt.● d.h. es können zu einem bestimmten Zeitpunkt mehrere Jobs “in Arbeit” sein.● ABER: Nur ein in “Warteposition” gehender Job gibt die CPU frei

==> non-preemptive-scheduling● Job-Spooling (Simultaneous Peripheral Operation On Line) =

Zwischenlagerung der ankommenden Jobs auf Magnetplatte, so dass beimFreiwerden einer Partition ein neuer Job sofort nachgeladen werden konnte

● Speicherpartitionierung = Aufteilung des Hauptspeichers in separate Teile, in dieje ein Job geladen werden kann

Synonyme Begriffe: Job = Task = Prozeß (aber nur bedingt = Thread )

Speicherbereich für das Betriebssystem

Speicher-partiton 1

“Job 1”

Speicher-partiton 2

“Job 2”...

Speicher-partiton 3

“Job 3”

Speicher-partiton n

“Job n”

8

Stichworte

Notizen

Prof. W. Burkard 8

Timesharing

= Variante des Mehrprogrammbetriebes● Bisheriges Problem: zu lange Antwortzeiten verhinderten interaktives Arbeiten● Lösung: Betriebssystem weist die CPU den Jobs explizit zu und “entreist” sie

ihnen wieder, auch unabhängig von deren Bearbeitungsstand !!● d.h. das BS stellt sicher, dass die aktiven Jobs innerhalb einer gewissen

Zeitspanne immer wieder auf der CPU ein Stück weiterlaufen.● ==> preemptive-scheduling

Forderungen an einen guten Scheduling-Algorithmus:● Fairness: Jeder Job erhält gerechten Anteil an CPU-Zeit● Effizienz: CPU ist immer voll ausgelastet● Antwortzeit: Ist für interaktive Nutzer minimal● Verweilzeit: Stapeljobs bleiben möglichst kurz im System● Durchsatz: Möglichst viele Aufträge je Zeiteinheit

!! Widersprüchliche Ziele!!� �������� �� �� � �� � � �� �� � �

Jonas
Highlight
Edited by Foxit Reader Copyright(C) by Foxit Software Company,2005-2006 For Evaluation Only.
Page 5: Kap1

9

Stichworte

Notizen

Prof. W. Burkard 9

vernetzte Rechner

neue Herausforderungen: Betriebssysteme mehrerer Rechner müssen miteinander kommunizierenRessourcenverteilung über Rechnergrenzen hinwegEntstehung von Arbeitsteilung und Spezialisierung im Verbund (=>Client/Server)

Netzwerkbetriebssystem:Jeder Rechner im Netz hat sein eigenes Betriebssystem. Die Benutzer sind sich der Netzstruktur bewußt und greifen explizit auf nicht-lokale Ressourcen zu.

verteilte Betriebssysteme:Das gesamte Netz erscheint dem Anwender gegenüber wie ein einziger Rechner. Auf welchem Rechner ein Prozeß läuft und/oder wo eine Datei real gespeichert wird, ist dem Anwender nicht bekannt. Der Zugriff auf die verteilten Ressourcen erfolgt automatisch, möglichst effizient und bleibt dem Anwender verborgen.

10

Stichworte

Notizen

Prof. W. Burkard 10

Betriebssystem? Was ist das eigentlich?

SAP/R3 MS-Office Browser ...

Compiler Editoren M M S

B E T R I E B S S Y S T E M

Maschinensprache

Mikroprogramme

physikalisches Gerät

Anwendungsprogramme

Systemprogramme

Hardware

MMS = Mensch-Maschine-Schnittstelle, in der RegelKommandointerpreter bzw. grafische Benutzeroberfläche

Jonas
Note
Editor: Mit einem Editor kann man Dateien mit einer vorgegebenen Sturuktur bearbeiten (editieren); mit einem Textverarbeitungsprogramm gestaltet man im Gegensatz zum Editor die Daten (Fett, Kursiv,...). Compiler: Quelldatei wird in Zieldatei umgewandet und dann verwendet. BSp. Text in deutsch wird ins englische Übersetzt und kann dann verwendet werden. Interpreter: Quelldatei wird direkt umgewandelt und verwendet => direkt verfügbar. BSp. Rede auf deutsch wird direkt (on-the-fly) ins englische übersetzt.
Edited by Foxit Reader Copyright(C) by Foxit Software Company,2005-2007 For Evaluation Only.
Page 6: Kap1

11

Stichworte

Notizen

Prof. W. Burkard 11

Softwarestrukturen in einem Rechner

MMS = Mensch-Maschine-Schnittstelle, in der RegelKommandointerpreter bzw. grafische Benutzeroberfläche

12

Stichworte

Notizen

Prof. W. Burkard 12

Wozu brauchen wir ein BS?

Es bietet...... den Anwendungen einen komfortablen Zugriff zu den Hardwareressourcen eines

Rechners... somit wichtige Brückenfunktion zwischen Anwendung und Rechnerhardware... Koordination von unabhängigen Anwendungen, so dass sie sich bei Mehrbenutzer-

bzw. Mehrprogrammbetrieb beim Ressourcenzugriff nicht in die Quere kommen.

Was aber heißt „komfortabler Zugriff“ ?

Beispiel: Eine Anwendung will Daten persistent auf externem Medium speichern. Dafür gibt’s mehrere Alternativen:

● Direktes Abspeichern von Blöcken auf einer Festplatte● Benutzung eines Dateisystems, das seinerseits eine Festplatte bzw. Blöcke nutzt● Benutzung eines Datenbank-Systems, das auf einem Dateisystem aufsetzt, das ...● Verwendung persistenter Objekte in einer OO-Programmierumgebung, die eine

Datenbank als Unterstützung voraussetzt, die auf einem Dateisystem fußt, das ...

I

Jonas
Note
Anwendung: z.B. Word, PowerPoint, ... Dienstprogramm: z.B. Formatierwerkzeug, Patitionierwerkzeug, Defragmentierwerkzeug, ...
Edited by Foxit Reader Copyright(C) by Foxit Software Company,2005-2007 For Evaluation Only.
Jonas
Highlight
= dauerhaft verfügbar machen (z.B. auf HDD speichern)
Jonas
Highlight
= Objektorientiert
Jonas
Line
Abstraktion nimmt nach unten zu
Jonas
Typewriter
Nach Taylor-Reihe googeln, bzw. Unterlagen vom Gymnasium anschauen.
Page 7: Kap1

13

Stichworte

Notizen

Prof. W. Burkard 13

Wozu brauchen wir ein BS?

Das Beispiel zeigt:● Es wird immer ein Gerät benutzt (Festplatte)● Es gibt mehrere unterschiedliche Abstraktionsebenen● Welche Abstraktionsebene gewählt wird ist sehr stark von der Anwendung abhängig● Wie lassen sich die Dienste einer Abstraktionsebene nutzen ?● � es gibt ein Laufzeitpaket, d.h. einer Anwendung wird eine Menge von Funktionen

zur Verfügung gestellt, die den Zugang zu den gebotenen Diensten ermöglicht. (Application Programming Interface API )

● Die gebotenen Dienste können vom BS selbst oder aber von anderen Serviceleistern erbracht werden (dann aber ist das BS nur als Vermittler tätig)

● Die Dienste des Betriebsystems werden also durch einen „ganz normalen“Prozeduraufruf angefordert.

● Dieser „ganz normale“ Prozeduraufruf wird system call (Systemaufruf) genannt und mündet in aller Regel in einem TRAP (Einsprung in den Betriebssystemkern)

II

14

Stichworte

Notizen

Prof. W. Burkard 14

Wozu brauchen wir ein BS?

Der direkte Umgang der Anwendungsprogramme mit der Hardware ist aus mehreren Gründen problematisch:

● Schnittstellen zu Geräte-Controllern sind heute zwar weitgehend genormt, aber dennoch unhandlich.

● Koordination von Prozessor und anderen Komponenten mit den hardwareseitig verfügbaren Hilfsmitteln (Interruptmechanismen, Zyklisches Abfragen (Polling) ) führt zu schwer durchschaubaren Progammstrukturen, die wir auf Anwendungsebene nicht haben wollen.

● Direkter Hardwarezugriff bedeutet in Mehrbenutzerbetrieb schwerwiegende Schutzprobleme durch unvermeidbare Benutzung privilegierter Instruktionen

● Ohne unterstützende Software ist die Abwicklung unabhängiger Benutzeraktivitäten in einem Multiuserbetrieb undenkbar, Koordinationsaufwand zu komplex.

� Anwender wünschen sich indirekten Zugang zur Hardware über eine Dienstschicht, die quasi eine virtuelle Maschine darstellt und komfortabel benutzbar ist.

III

Page 8: Kap1

15

Stichworte

Notizen

Prof. W. Burkard 15

Grundlagen: Systemaufrufe

● Anwendungsprogramme kommunizieren mit dem Betriebssystem indem sie Systemaufrufe tätigen. ==> Aufruf von Systemfunktionen

● Anwendungsentwicklungssysteme müssen alle Systemaufrufe in Bibliotheken vorrätig halten.

● Die Bibliotheksfunktionen rufen durch sogenannte TRAPs das Betriebssystem

Beispiel: Lesen von Datei ● im Programmcode stehe:

anzahl = read(Dateiname,Zielspeicherplatz-im-Hauptspeicher, Anzahl-zu-lesender-Bytes)

● Bibliotheksfunktion read prüft die Parameter und startet dann das BS mit den angegebenen Parametern durch einen TRAP

● Betriebssystem suspendiert den laufenden Prozeß und erledigt die geforderte Aufgabe. Dann schreibt es die Anzahl der gelesenen Bytes in die entsprechende Prozeßvariable und schaltet den Prozeß wieder “rechenbereit”.

● Prozeß läuft bei der Bibliotheksfunktion wieder weiter.● Bibliotheksfunktion liefert der rufenden Funktion die Anzahl gelesener Bytes

16

Stichworte

Notizen

Prof. W. Burkard 16

System callsProblem:● Wie verhindert man, dass bei Verschiebungen des BS im Speicher die Anwendungen neu

kompiliert werden müssen, um die Systemprozeduren korrekt anzusprechen ?

Lösung:● Speichern aller Aufrufparameter auf dem Stack und Auslösen eines speziellen

Hardwaresignals (sogenannter Softwareinterrupt) ● Wie bei einem „ normalen“ Hardware-Interrupt speichert der Prozessor seinen aktuellen

Stand, springt in die Interruptbehandlung und erledigt den geforderten Job, um dann an die Stelle des Abbruches zurückzukehren.

● Die Interruptbehandlungsroutine ist somit der zentrale Einsprungpunkt in den BS-Kern

● Da nach einem Systemaufruf die nächste Instruktion nicht gleich ausgeführt wird, sondern die Befehlsausführung am BS-Einsprung plötzlich „ aufhört“ , wird der Softwareinterrupt auch als Falltür (trap door, kurz TRAP) bezeichnet

Edited by Foxit Reader Copyright(C) by Foxit Software Company,2005-2007 For Evaluation Only.
Page 9: Kap1

17

Stichworte

Notizen

Prof. W. Burkard 17

Architekturbeispiel Linux / Unix

MMS = Mensch-Maschine-Schnittstelle, in der RegelKommandointerpreter bzw. grafische Benutzeroberfläche

18

Stichworte

Notizen

Prof. W. Burkard 18

Architekturbeispiel Mach

MMS = Mensch-Maschine-Schnittstelle, in der RegelKommandointerpreter bzw. grafische Benutzeroberfläche

Page 10: Kap1

19

Stichworte

Notizen

Prof. W. Burkard 19

Schichtung und Systemaufrufe bei W2K

MMS = Mensch-Maschine-Schnittstelle, in der RegelKommandointerpreter bzw. grafische Benutzeroberfläche

20

Stichworte

Notizen

Prof. W. Burkard 20

Ein- und Mehrprozessorsysteme

Massen-speicher

Prozessor

BS- Anw. 1 Anw. 2 ... Anw. nKern

Simples Einprozessorsystem

Im einfachsten klassischen Fall gibt es nur einen Prozessor, derHauptspeicher und Massenspeicher benutzt, um das Betriebssystem (BS) und die Anwendungsprogramme auszuführen

Bei der Rechnerarchitektur, für die ein Betriebssystem Ressourcen verwalten soll, müssen grundsätzliche Konfigurationen unterschieden werden

I

MMS = Mensch-Maschine-Schnittstelle, in der RegelKommandointerpreter bzw. grafische Benutzeroberfläche

Jonas
Typewriter
von Neumann Architektur
Edited by Foxit Reader Copyright(C) by Foxit Software Company,2005-2007 For Evaluation Only.
Page 11: Kap1

21

Stichworte

Notizen

Prof. W. Burkard 21

Ein- und Mehrprozessorsysteme

Massen-speicher

Prozessor 1

BS- Anw. 1 Anw. 2 ... Anw. nKern

Multiprozessorsystem (enge Kopplung)

• Einprozessorsysteme können mit mehreren Prozessoren aufgerüstet werden

• Durch unterschiedliche Kopplungskonzepte entstehen unterschiedliche Architekturen

• Die einfachste Architektur sieht nur eine Vervielfachung der CPU vor, alle CPUs hängen dann

parallel an einem Verbindungsnetzwerk (Multi-Master-Systembus)

• Der Systembus verbindet die Prozessoren auf der einen Seite mit den Speichermodulen auf der

anderen Seite.

• Bei intensiver Nutzung wird der Bus zum Flaschenhals � Leistungseinbußen

II

Massen-speicher

Multi-Master-Systembus

Prozessor 2 Prozessor n...

MMS = Mensch-Maschine-Schnittstelle, in der RegelKommandointerpreter bzw. grafische Benutzeroberfläche

22

Stichworte

Notizen

Prof. W. Burkard 22

Ein- und Mehrprozessorsysteme

Massen-speicher

Prozessor 1

Multiprozessorsystem (lose Kopplung)

Interessante Beobachtung bei Mehrprozessorsystemen:

Oft spricht jeder Prozessor nur einen eng umgrenzten Speicherbereich an

( in dem sich die von ihm gerade abgearbeitete Anwendung befindet )

Daher die Idee: Aufteilen des Speichers und enger an den Prozessor binden

III

Massen-speicher

Multi-Master-Systembus

Prozessor 2 Prozessor n...

BS- Anw. 1 Kern

BS- Anw. n Kern

BS- Anw. 2 Kern

MMS = Mensch-Maschine-Schnittstelle, in der RegelKommandointerpreter bzw. grafische Benutzeroberfläche

Page 12: Kap1

23

Stichworte

Notizen

Prof. W. Burkard 23

Ein- und Mehrprozessorsysteme

Rechnernetz / Cluster

Was geschieht, wenn man jedem Prozessor ein eigenes Betriebssystem gibt?

Vollkommen unabhängige Rechner mit jeweils eigenem (eventuell unterschiedlichem)

Betriebssystem werden lose über ein Netzwerk gekoppelt

Cluster = sehr schnelles Netzwerk räumlich dicht beieinander stehender Rechner

IV

Massen-speicher

Prozessor 1

BS- Anw. Kern

Verbindungsnetzwerk LAN, WAN ...

Massen-speicher

Prozessor 2

BS- Anw. Kern

...

MMS = Mensch-Maschine-Schnittstelle, in der RegelKommandointerpreter bzw. grafische Benutzeroberfläche

24

Stichworte

Notizen

Prof. W. Burkard 24

Grundlagen: Prozesse

MERKE: Prozesse sind das wesentliche Konzept aller Betriebssysteme

Ein Prozeß ist ein in Ausführung befindliches Programm!

Er umfaßt:● den ausführbaren Programmcode● die Programmdaten (Variablen und

Konstanten des Programmes)● den Programmzähler (zeigt auf die

aktuell zu bearbeitende Anweisung)● Stack und Stackpointer ( Zwischenpuffer

für beim Programmlauf anfallende Daten)● alle weiteren Informationen, die das

Betriebssystem zur Ausführung des Programmes benötigt

Prozeßtabelle=Tabelle des Betriebssystems, in der alle Infos eines jeden Prozesses gespeichert sind

Threads („Handlungsfäden“) = leichtgewichtige Prozesse innerhalb von Prozessen, vom Anwendungsprogrammierer definiert!

Prozeß

Daten (Heap)

Programmcode

Stapel (Stack)

CPU-RegisterProzeß

-Kontext

Datei-Info, Zugriffsrechte

MMU-Register

Kernel-Stack

Edited by Foxit Reader Copyright(C) by Foxit Software Company,2005-2007 For Evaluation Only.
Jonas
Highlight
= Speicherpool
Jonas
Highlight
= imaginäre Stapeleinheit die permanent wächst und wieder abnimmt. Es wird immer auf das oberste Element zugegriffen.
Jonas
Highlight
= parallele Abläufe innerhalb eines Prozesses
Page 13: Kap1

25

Stichworte

Notizen

Prof. W. Burkard 25

Prozesse leben und sterben...

Das Betriebssystem erzeugt, verwaltet und eliminiert Prozesse.

Ein Prozeß kann andere Prozesse erzeugen ==> Prozeßbaumgängige Systemaufrufe (System-Calls):

■ “ erzeuge Kindprozeß B“■ “ lösche mich”■ “ Ich warte auf Ende meines Kindprozesses E”■ “ Ersetze im Prozeß F den Programmcode durch Code yyy”■ “ ich brauche mehr Speicher”

Prozesse können miteinander und mit dem BS “reden” ==> Interprozeßkommunikation

Prozesse in Timesharing-Systemen haben einen Besitzer ==> Sicherheitsproblemuid = user identification gid = group identification

Prozeß A

Prozeß B Prozeß C

Prozeß D Prozeß E Prozeß F

26

Stichworte

Notizen

Prof. W. Burkard 26

Grundlagen: Dateien

● Zur Erinnerung: Das BS verbirgt die Physik einer Festplatte (Zylinder,Spuren...) und schafft dem Anwender eine einfache Schnittstelle: Dateien

● Das Konzept der Dateien und Dateiverzeichnisse

Wurzelverzeichnis (root directory)

BenutzerSystemPogramme

SAP/R3MS-Office UteKarlAnna

Studienangelegenh.DAUrlaub

Page 14: Kap1

27

Stichworte

Notizen

Prof. W. Burkard 27

Handhabung von Dateien

● Vor dem Lesen oder Schreiben muß man eine Datei öffnen==> Zugriffsrechte regeln den Zugriff

● Idee: Eine Datei sei ein Ding, in welches man hineinschreiben oder aus dem man lesen kann ==> dann sind viele Geräte auch “Dateien” !!!

Also:● normale Datei: blockorientierte Byteansammlung auf der Festplatte/Diskette● spezielle Form: zeichenorientierte „Dateien“, z.B. Tastatur, Bildschirm, Drucker● Pipe, eine „Datei“ für die Interprozesskommunikation

A B

Zwei Prozesse, die durch zwei Pipes verbunden sind. Eine Pipeist unidirektional, man kann sie nur lesen ODER schreiben!

28

Stichworte

Notizen

Prof. W. Burkard 28

Grundlagen:

Kommandointerpreter

● Das Betriebssystem ist also das Programm, das alle Systemaufrufe ausführt.

● Der Kommandointerpreter ist das Programm, das dem Anwender einen Zugang zum Betriebssystem verschafft, wenn keine Anwendung da ist, die das tun könnte !!!

● textuelle Kommandointerpreter (z.B. DOS: Command.com)stellen eine einfache Sprache zur Verfügung, um Systemaufrufe sinnvoll zu nutzen. Beispiel: DIR DEL COPY

● grafische Benutzeroberflächen: (grafische Interpreter)stellen eine erweiterte MMS (Mensch-Maschine-Schnittstelle) zur Verfügung:Der Computer ist für den Anwender das, was die MMS ihm zeigt.

● Alternativ-Begriff: shell

Page 15: Kap1

29

Stichworte

Notizen

Prof. W. Burkard 29

“Ummantelung” des Systems durch Kommandointerpreter

...Treiber A Treiber B Treiber C Treiber n

...Gerät A Gerät B Gerät C Gerät n

shell-Kommandos Dienstprogramme Anwendungen

Betriebssystemkern mit allen Systemfunktionen

grafische oder textuelle Shell(z.B. Windows-Oberfläche bzw.

command.com)

30

Stichworte

Notizen

Prof. W. Burkard 30

Monolithische Betriebsystemstrukturen

Das Betriebssystem ist EIN Programm, eine unstrukturierte Ansammlung von Systemfunktionen, die sich auch gegenseitige uneingeschränkt nutzen können.

Es unterscheidet lediglich User- und Kernel-Modus:

Page 16: Kap1

31

Stichworte

Notizen

Prof. W. Burkard 31

Virtuelle Maschinen

Idee: Bau eines leistungsfähigen Multiuser-Multitasking-Systems durch Verwendung vorhandener, einfacher Betriebssysteme, denen ein “Verteiler” untergeschoben wird. (Beispiel PC/MOS386)

DOS DOS DOS

virtuelle MS-DOS-PCs

PC-MOS386-Betriebssystem

die “nackte” Hardware des PC

modifiziertes MSDOS-BIOS

hier: Systemaufruf

hier: TRAP (unter DOS sind dies SW-Interrupts)

hier: Ein- /Ausgabe-operation

hier: TRAP ins MOS

32

Stichworte

Notizen

Prof. W. Burkard 32

Client-Server-Architekturin einem Rechner:

BS-Kern bzw. Netzwerk sichern die Kommunikation zwischen C+Sin einem Netz:

BetriebssystemkernKernmodus

... BenutzermodusClient-Prozeß

Client-Prozeß

Client-Prozeß

Server-Prozeß

Server-Prozeß

KlientKern

Rechner 1

Netzwerk

KlientKern

Rechner 2

KlientKern

Rechner 3

KlientKern

Rechner n

Nachricht vom Client zum Server

...

Page 17: Kap1

33

Stichworte

Notizen

Prof. W. Burkard 33

Alles klar ??1. Nennen Sie die Aufgaben von Betriebssystemen

2. Erläutern Sie den Unterschied zwischen preemptive und non-preemptive scheduling

3. Warum wird Spooling heute insbesondere bei der Ausgabe auf Drucker verwendet?

4. Worin liegt der Vorteil, wenn die Shell nicht Teil des Betriebssystems ist?5. Warum macht das in verteilten Systemen beliebte Client/Server-Modell auch in

Einzelplatzrechnern Sinn ?

6. Warum benötigt ein PC mit nur einem Prozeß keine Prozeßtabelle?

7. welche der nachstehenden Aktionen sollten nur im Kern und niemals im Benutzermodus laufen?- Sperren aller Unterbrechungsleitungen- Lesen der Tageszeit- Setzen der Tageszeit