Leitung: Praktikum: Vorlesung: Praktikumsgruppen : 3weber/bs/weber/einleitung.pdf2 Betriebssysteme...

Preview:

Citation preview

1

SS 2007

Version vom 21.03.2007

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 2

Organisation

Leitung: H. WeberPraktikum: Abdellaoui, Adrian, Debusmann,

Schäfer, Weber

Vorlesung:Do, 7.45 - 10.15 (3 Stunden V, inkl. Pause)

Praktikumsgruppen : 3-stündig

PL/SL : Klausur am Semesterende

Praktikum: 2 bewertete (live) Aufgaben (je 40 %) undweitere 5 Aufgaben (je 2%), mündlicher Anteil (5%), Praktikumsordner (5%)

2

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 3

Literatur I

R. Brause, Betriebssysteme – Grundlagen und Konzepte, 2. Auflage, Springer-Verlag, Berlin 2001A.S. Tanenbaum, Moderne Betriebssysteme, 2. Auflage, Pearson-Verlag 2002C. Vogt, Betriebssysteme, Spektrum Akademischer Verlag, Heidelberg 2001J. Nehmer, P. Sturm, Systemsoftware –Grundlagen moderner Betriebssysteme, dpunkt-Verlag, Heidelberg 1998A. Silberschatz, P. Gavin, G. Gagne, AppliedOperating Systems Concepts, John Wiley&Sons, New York 2000

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 4

Literatur II

W. Stallings, Operating Systems, Prentice Hall, New Jersey 1998

G. Nutt, Operating Systems, Addison-Wesley, Reading 2000

L. Bic, A. Shaw, Betriebssysteme, Hanser-Verlag, 1988

E. Glatz, Betriebssysteme Grundlagen, Konzepte, Systemprogrammierung, dpunkt-Verlag, 2005

R.A. Finkel, An Operating Systems Vade Mecum,Prentice Hall – bei uns als PDF-File vorhanden

H. Weber, Praktische Systemprogrammierung, Vieweg, Wiesbaden 1998

3

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 5

Inhalt der Vorlesung

ÜbersichtProzesseProzeßsynchronisationSpeicherverwaltungDateiverwaltungEin- und AusgabeverwaltungVerteilte Systeme

Übersicht

Kap. 1

4

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 7

Kap. 1 - Inhalt

Einleitung: Was ist ein BetriebssystemBetriebssystemschichtenSchnittstellen und virtuelle MaschinenGeschichteAufbau von BetriebssystemenRechnerarchitekturenWichtige Konzepte

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 8

Betriebssystem-Zoo

5

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 9

Einleitung I

Was ist ein Betriebssystem ?

* die Gesamtheit der Programmteile, die die Benutzung von Betriebsmitteln steuern und verwalten

* die Software (Programmteile), die für den Betrieb eines Rechners anwendungsunabhängig notwendig ist

* virtuelle Maschine, die dem Benutzer Abstraktionen der Hardware zur Verfügung stellt, die wesentlich einfacher zu benutzen sind

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 10

Einleitung II

Definition (Betriebssystem):

Ein Betriebssystem ist ein Programmsystem, das alle Betriebsmittel eines Rechensystems verwaltet und ihre Zuteilung kontrolliert und den Nutzern des Rechensystems eine virtuelle Maschine offeriert, die einfacher zu verstehen und zu programmieren ist als die unterlagerte Hardware.

6

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 11

benutzt

benutzt

benutzt

Benutzer

Benutzerprogramm

Maschinenhardware

Betriebssystem

Betriebssystemschichten I

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 12

Betriebssystemschichten II

User 1 User 2 User 3Compiler Editor ... Spiele

BetriebssystemdiensteHardware HW

Schichtenmodell Zwiebelschalenmodell

7

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 13

Betriebssystemschichten III

Systemsoftware versus Anwendersoftware

Das Betriebssystem ist der Teil der Software, die normalerweise im Kernmodus oder Supervisormodus ausgeführt wird

Die Anwendungsprogramme (Compiler, Editor, E-Mail-Programm etc.) werden im Benutzermodus ausgeführt

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 14

Schnittstellen & virt. Maschinen ISCSI-Operationen fur Festplatten:

FORMAT UNIT RECOVER DATA VERIFYINQUIRY RECOVER ID WRITEMODE SELECT RELEASE UNIT WRITE AND VERIFYMODE SENSE REQUEST SENSE WRITE BUFFERNO OPERATION RESERVE UNIT WRITE EXTENDEDPRIORITY RESERVE REZERO UNIT WRITE LONGREAD SEEK WRITE SAMEREAD BUFFER SEEK EXTENDED .....READ CAPACITY SEND DIAGNOSTICREAD DEFECT DATA SET LIMITSREAD EXTENDED START/STOP UNITREAD LONG TEST UNIT READYREASSIGN BLOCKSRECEIVE DIAGN. RESULTS

Wer will schon mit dieser Schnittstelle Informationenlangfristig speichern und zugreifen wollen ?!?

8

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 15

Schnittstellen & virt. Maschinen II

Eine SchnittstelleSchnittstelle besteht aus

Daten sowie Funktionen bzw. Methoden dafür (Objekte)

Protokolle für die Benutzung der Funktionen und Daten, mit denen das Objekt Dienstleistungen erbringt (Exportschnittstelle)

Die ImplementierungImplementierung benötigt dazuDaten, Funktionen und Protokolle für die Dienstleistungen, die sie zur Erfüllung benötigt (Importschnittstelle).

Virtuelle Maschinen

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 16

Schnittstellen & virt. Maschinen III

Schicht 3

Zeit

Schicht 2

Schicht 1

9

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 17

Schnittstellen & virt. Maschinen IV – Virt. CPU

Software-Hardware-Migration durch virtuelle CPU

Programm in Java-Code Programm in Java-CodeJava-Code / Maschinencode Microcode-

CPU- Hardware und CPU-Hardware

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 18

Schnittstellen & virtuelle Maschinen V - virtuelle logische, physikalische Geräte

Beispiel: Festplattenspeicher

virtuelles Gerät

= logisches Gerät +Verwaltungstreiber

logisches Gerät

= physikalisches Gerät + HW-Treiber.

Kontrolle Daten

Virtuelles Gerät

log. Gerät 1 log. Gerät 2

phys.Gerät 1

Treiber 1

phys.Gerät 2

Treiber 2

Treiber für log. Geräte

10

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 19

Geschichte I

Gliederung (parallel zu Rechnergenerationen):

1. Generation (1945-1955): Röhren und Steckkarten

2. Generation (1955-1965): Transistoren und Stapelverarbeitung

3. Generation (1965-1980): ICs und Mehrprogrammbetrieb

4. Generation (1980-1990): Personal Computer und Netzwerkbetriebssysteme

5. Heute

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 20

Geschichte II

1. Generation (1945-1955):USA: H. Aiken (Harvard), J. v. Neumann (Princeton) u.a.

Deutschland: Konrad Zuse

Eine Gruppe von Personen kümmert sich um Entwurf, Bau,

Programmierung, Operating und Wartung jedes einzelnen

Rechners.

Programmierung durch Verdrahtung von Steckkarten oder in absoluter Maschinensprache (Programmiersprachen unbekannt).

Nutzung fur numerische Berechnungen.

Ab Anfang der 50er Jahre Benutzung von Lochkarten.

Betriebssysteme unbekannt.

11

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 21

Geschichte III

2. Generation (1955-1965):Nach Einfuhrung von Transistoren werden Rechner zuverlässig genug, um an Kunden verkauft zu werden.Unterscheidung zwischen Entwicklern, Herstellern, Operateuren, Programmierern und Wartungspersonal.Zunächst Ausfuhrung einzelner Jobs in Form von Lochkartenstapeln mit hohem Anteil manueller Arbeiten.Rationalisierung des Operating durch Einfuhrung des Stapelbetriebs (Batch-System):

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 22

Geschichte IV

-

Batch-System– bringt Kartenstapel zur 1401– kopiert Karten auf Band– bringt Eingabeband auf 7094, die Berechnung ausführt– bringt Ausgabeband zur 1401, die den Output ausdruckt

12

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 23

Geschichte V

Die Steuerkarten waren Vorläufer der heutigen Kommandosprachen, die Monitore Vorläufer der heutigen Betriebssysteme

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 24

Geschichte VI

3. Generation (1965-1980):ICs und Multiprogramming

Timesharing-Betrieb

Zugriff über Terminals

Multics

UNIX

13

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 25

Geschichte VII

4. Generation (1980-1990): Personal Computer als Individuen zugeordnete Werkzeuge (= Workstation).Netzwerke zur Kommunikation und Kooperation.getrieben durch LSI und VLSI- Entwicklung, preiswert, aber leistungsstark wie Minirechner bzw. Großrechner.hohe Graphikfähigkeit führt zu benutzerfreundlichen OberflächenMarktdominierende Betriebssysteme: MS- DOS und UNIX.Netzwerkbetriebssysteme erlauben Zugang zu anderen Rechnern, Dateitransfer, gemeinsame Benutzung von Informationen (z. B. TCP/ IP Netzwerk Utilities, Novell Netware, Network File System)

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 26

Geschichte VIII

5. Heute: Neue Anwendungen gekennzeichnet durch:

steigende Komplexität und neue geforderte Funktionalitäten:Verteiltheit (Client/ Server),Offenheit,Heterogenität,Skalierbarkeit"Cooperative Computing"Sicherheit (Security)RealzeitfähigkeitFehlertoleranz / RobustheitMultimediaWWW- Anbindung

14

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 27

Geschichte IX

Aktuelle Entwicklungsrichtungen:

Verteilte Betriebssysteme

Multiprozessing

Standardisierung von Schnittstellen

Mehrere BS-Schnittstellen auf einem Rechner

Konfigurierbarkeit

Realzeitfähigkeit

Administration grosser Netzwerke

Multimediaunterstützung

Erhöhung der Sicherheit

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 28

Geschichte X - Fragen

Gestern:Welche Betriebssysteme haben Sie benutzt?

...

Heute:Welche Betriebssysteme benutzen Sie ?

...

Welche Systeme sind nützlich für diese LV?

15

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 29

Aufbau I - Unterschiedliche Arten von BSn

Mainframe-Betriebssysteme

Server-Betriebssysteme

Multiprozessor-Betriebssysteme

PC Betriebssysteme

Echtzeit-Betriebssysteme

Betriebssysteme für eingebettete Systeme

Betriebssysteme für Chipkarten

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 30

Aufbau II - Betriebssystemgliederung

Benutzerschnittstelletextuelle und graphische Interaktion mit dem Benutzer

Dienstprogramme, Werkzeugeoft benutzte Programme wie Editor, Linker, ...

ÜbersetzungsprogrammeInterpreter, Compiler, Translator, ..

OrganisationsprogrammeSpeicher-, Prozessor-, Geräte-, Netzverwaltung

16

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 31

Aufbau III - Benutzerschnittstelle

Ein Blick auf die Benutzerschnittstelle:

1. Benutzeroberfläche (Kommandointerpreter, Grafische Oberflächen) einschließlich der Schnittstellen zu Dienstprogrammen (Tools) wie etwas Editoren, Übersetzer (Compiler), Binder (Linker), ...

2. Bibliotheksschnittstellen (Standardbibliotheken und spezielle Bibliotheken), zur Programmierung benutzt.3. Betriebssystemdienst-Schnittstelle enthält Systemaufrufe (system calls), d.h. „erweiterte Befehle“ = Operationen zum Umgang mit den Abstraktionen, die der Kern offeriert. Wesentliche Kernabstraktionen: Prozesse (processes) = Programme in Ausführung, damit verbunden Mechanismen zur Prozess-Synchronisation und –KommunikationDateien (files) , damit verbunden Dateisysteme (file systems) und Verzeichnisse (directories) IO-Geräte (devices)

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 32

Aufbau IV - Typischer Betriebssystemaufbau

Systemaufruf

Maschinencode

BenutzeroberflächeUser Interface Management System

BetriebssystemkernOperating System Kernel

Hardware

Anwen-dung 1

Dienst-programm

Werk-zeug…

Benutzer 1 … Benutzer N

17

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 33

Aufruf mittels Traps(Falltüren)

Aufbau V - Der Betriebssystemkern

EingangAusgang

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 34

Aufbau VI - Systemaufrufe: Traps und Interrupts

Synchrone, indirekte Methodenaufrufe (Traps)...Move A,R1 Tabelle von Interruptvektoren

Trap 7Move R1, A...

Adresse PC der ISR 6Adr 0012

Status PS der ISR 6Adr 0013

Adresse PC der ISR 7Adr 0014

Status PS der ISR 7Adr 0015

Adresse PC der ISR 8Adr 0016

Status PS der ISR 8Adr 0017

Asynchrones HW-Interrupt-Signal 7

ISR = Interrupt Service Routines = TreiberPS = Processor Status Word (prio, mode,..)

18

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 35

Aufbau VII - Aufruf des Betriebssystemkerns

Interrupt{PC+1, PS=user mode}→stack return from interrupt

BS →PC, kernel mode →PS stack→{PC, PS=user mode}

Programm-instruktionen

Programm-instruktionen

Betriebssystem-kerndienste

Umschaltung vom Usermodus in Kernmodus und zurück !!

BS : Bootstrap

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 36

Aufbau VIII - UNIX-Betriebssystemkern

…user mode

kernel mode

Benutzer-Programm 1

System-Programm 1

System-Programm 2

Benutzer-Shell 1

Benutzer-Shell 2

Überprüfbare Schnittstelle und FunktionsverteilungSpeicher-

verwaltung Serielle Ein/Ausgabe Dateisystem Prozess-Dis-play TTY Drucker Maus Platte

Floppy Netz manage-ment

Hardware

MultiMulti--UserUser

MultiMulti--programmingprogramming

Implementierungsunabhängige Schnittstellen:PPortable OOperating SSystem IInterface based on UniXX

19

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 37

Aufbau IX - UNIX Systemsoftware I

Systemprogramme ar build & maintain archivescat concatenate files→standard outcc compile C programchmod change protection modecp copy fileecho print argumentgrep file search including a patternkill send a signal to a process

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 38

Aufbau X - UNIX Systemsoftware II

ln link a file lp print a filels list files and directoriesmv move a filesh start a user shelltee copy standard in to standard out and

to a filewc word count

20

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 39

Aufbau XI – Monolitisches System

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 40

Aufbau XII – Geschichtetes System

Struktur des THE Betriebssystems

21

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 41

Aufbau XIII – Virtuelle Maschinen

Struktur von VM/370 mit CMS

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 42

Aufbau XIV – Client-Server Modell

22

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 43

Aufbau XV – Client-Server Modell in einem verteilten System

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 44

Aufbau XVI – Bsp.: MACH- Betriebssystemkern

Mach-Kern

Scheduler, Nachrichtenübermittlung, Basic I/O, Speicherobjekte

SpeicherManager

FileManager

TerminalI/O

Benutzer-programm

user modekernel mode

Hardware

MikrokernVorteile: minimaler Kern, alle Funktionen modularisiert austauschbar Nachteile: Kommunikationsdauer zwischen Managern

23

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 45

Aufbau XVII – Bsp.: Windows NT - Anforderungen

kompatibel zu vorhandenen Systemen Unix, DOS, ..

zuverlässig und robust

leichte Portierbarkeit

leicht veränderbar und anpassungsfähig

leistungsstark

Geht das überhaupt ?

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 46

Aufbau XVIII – Bsp.: Windows NT - Lösungen

Kompatibilitätpro emuliertes BS ein extra Subsystem (Server), von Kunden(Clients) durch Nachrichten (local procedure calls LPC) angefordert. Sie setzen auf Dienstleistungen der NT Executive (Syscalls) auf.

RobustheitTrennung der Programmablaufumgebungen(virt. Maschinen), kein direkter Hardwarezugrifffehlertolerantes Dateisystem, Netzdienste,

PortierbarkeitIn C geschriebene Module, auf Hardwaremodell aufsetzend

24

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 47

Aufbau XIX – Bsp.: Windows NT - Betriebssystemkern

user modekernel mode

SystemdiensteObject

ManagerProcess

ManagerLocal

Proc. CallsMemoryManager

SecurityMonitor

I/OSystem

KernelHardware Abstraction Layer HAL

Hardware

POSIXClient

Win/DOSClient

OS/2Client

Win32Subsys-

tem

POSIXSubsys-

tem

OS/2Subsys-

temLogon

SecuritySubsys-

tem

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 48

Rechnerarchitekturen I

Einprozessorsystem

Massen-speicher

ProgrammeDaten

Prozessor

BS-Kern

Nutzer 1Programm

... Nutzer nProgramm

Hauptspeicher

Bis max. N (~ 16) CPUs erweiterbar. Problem: Speicherzugriff (Systembus)

25

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 49

Rechnerarchitekturen II

Multiprozessorsystem

Verbindungsnetzwerk„Tanzsaal “

BS-Kern

Nutzer 1Programm

... Nutzer nProgramm

P1 P2 … Pn

Problem: Performance-Einbussen bei häufigen Speicherzugriffen

Arbeitsspeicher

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 50

Rechnerarchitekturen III

Mehrrechnersystem

Verbindungsnetzwerk„Vorzimmer“

BS-Kern

Nutzer 1Programm

P1 … Pn

BS-Kern

Nutzer nProgramm Arbeitsspeicher

26

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 51

Rechnerarchitektur IV

Rechnernetz

VerbindungsnetzwerkLAN, WAN

P1 … Pn

BS-Kern

Nutzer 1Programm

BS-Kern

Nutzer nProgramm

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 52

Wichtige Konzepte I

Prozesse

Dateien

Systemaufrufe

Shells

27

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 53

Konzepte II - Prozesse

Prozess-Baum

– A hat zwei Kind-Prozesse B and C erzeugt

– B hat drei Kind-Prozesse D, E, und F erzeugt

Prozeß : Programm in seiner Ausführung

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 54

Konzepte III - Dateissytem

28

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 55

Konzepte IV – Mounten von Dateisystemen

• Vor dem Mounten,Files auf Floppy sind nicht benutzbar

• Nach dem Mounten der Floppy auf b,Files auf Floppy sind Teil der Filehierarchie

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 56

Konzepte V - Systemaufrufe

Es gibt 11 Schritte beim Ausführen des Systemaufrufs

read (fd, buffer, nbytes)

29

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 57

Konzepte VII – Systemcalls für File Management

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 58

Konzepte VII – Directory Management

30

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 59

Konzepte IX - Verschiedene

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 60

Konzepte X – UNIX/Windows32 - Systemaufrufe

31

Betriebssysteme und Grundlagen Verteilter Systeme © H. Weber, FH WiesbadenÜbersicht Folie 61

Konzepte XI – Eine kleine Shell

while (TRUE) { /* repeat forever */type_prompt( ); /* display prompt */read_command (command, parameters) /* input from terminal */

if (fork() != 0) { /* fork off child process *//* Parent code */

waitpid( -1, &status, 0); /* wait for child to exit */} else {/* Child code */execve (command, parameters, 0); /* execute command */

}}

Recommended