1.1

Werbung
Betriebssysteme
FU Berlin
WS 2006/07
Klaus-Peter Löhr
bs-1.1
1
1 Einführung
• Betriebsmittelverwaltung
• Entwicklungsgeschichte
• Architektur
Zur Erinnerung:
Informatische Fachbegriffe in Deutsch und Englisch findet man unter
http://www.babylonia.org.uk
bs-1.1
2
Software
„zwischen Hardware und Umwelt“
eingebettete Systeme
(embedded systems)
geschlossene Anwendungssysteme
(z.B. Flugbuchungssystem)
Betriebssysteme + Anwendungsprogramme
bs-1.1
3
Transaktionssystem
eingebettetes
System
Basissoftware
Betriebssystem
(operating system)
bs-1.1
4
Benachbarte Gebiete:
• Rechnerarchitektur
• Verteilte Systeme, Middleware
• Echtzeitsysteme
• Systemsicherheit
• Datenbanksysteme
• Programmiersprachen & Übersetzer
• Softwaretechnik
bs-1.1
5
Abgrenzung:
Betriebssystem im engeren Sinn
= System aus Sicht der Anwendungssoftware
= Software zwischen der Hardware und der
Systemschnittstelle (2)
Betriebssystem im weiteren Sinn
= System aus Sicht des Benutzers, d.h.
zuzüglich Benutzerschnittstelle,
Übersetzer, Dienstprogramme usw.
bs-1.1
6
Benutzerschnittstelle
(user interface)
Anwendungen, Übersetzer, .....,
und
Interaktionssystem
(auch
Systemschnittstelle
(system interface)
Datenbanksystem,
Middleware,
u.a.)
Betriebssystem
Hardware
auch „Systemsoftware“
bs-1.1
7
Systemschnittstelle bietet den Programmen die
einzige Möglichkeit zur Interaktion mit dem Betriebssystem
und zwar über Systemaufrufe (system/supervisor calls)
(= spezielle Maschinenbefehle)
Beachte:
In höheren Programmiersprachen sind die
Systemaufrufe in Bibliotheksroutinen verborgen,
bs-1.1
z.B. hinter
write(1,"hello",5)
verbirgt sich
...
SVC 17
...
8
Benutzercode:
... JSR WRITE ...
Unterprogrammsprung
Systemaufruf
Bibliotheksschnittstelle
Bibliothekscode:
... SVC 17 ...
Systemschnittstelle
Betriebssystem
bs-1.1
9
Merke: Die Trennung
Systemsoftware – Anwendungssoftware
(systems software – application software)
ist unscharf,
weil auf der Systemschnittstelle nicht nur Anwendungssoftware, sondern auch Systemerweiterungen aufgesetzt
werden können.
bs-1.1
10
Grobe Klassifikation der Hardware:
• Einprozessorsystem (uniprocessor)
• Mehrprozessorsystem (multiprocessor)
• Mehrrechnersystem (multicomputer, cluster)
mit verteiltem Speicher  verteiltes Betriebssystem
• Rechnernetz (computer network)
 Betriebssysteme + Middleware
bs-1.1
11
Betriebsarten eines Rechners
Einplatzsystem
(single-user system)
Einbenutzersystem
(single-user system)
Mehrplatzsystem
(multi-user system)
Teilhaberbetrieb
(multi-access)
Mehrbenutzersystem
(multi-user system)
interaktiv
Klient (client)
bs-1.1
Teilnehmerbetrieb
(time-sharing)
Stapelbetrieb
(batch processing)
Anbieter (server)
12
1.1 Betriebsmittelverwaltung
Hardware ist Konglomerat aus verschiedenen
Betriebsmitteln (auch Ressourcen, engl. resources)
wie z.B.
Prozessoren,
Speicher,
Peripheriegeräte,
Netzanschlüsse,
.....
bs-1.1
13
Aufgabe eines Betriebssystems ist,
den Anwendungsprogrammen statt der realen Betriebsmittel
virtuelle Betriebsmittel (virtual resources)
zur Verfügung zu stellen (z.B. „virtueller Speicher“)
mit den folgenden Eigenschaften:
 komfortabel –
durch geeignet parametrisierte
Software-Schnittstelle
 betriebssicher –
gegenüber Hardware- und
Software-Fehlern sowie
böswilliger Manipulation
 effizient –
bezüglich der realen Betriebsmittel
1.1.1 Prozessverwaltung
Betriebsmittel:
Prozessor
virtualisiert:
Prozess (process, task)
( Verwandter Prozessbegriff bei der
nichtsequentiellen Programmierung:
Prozess = Programmteil, der unabhängig von den
anderen Programmteilen ablaufen kann,
z.B. Thread in Java )
bs-1.1
15
Genauer:
leichtgewichtiger Prozess (lightweight process, thread (!) )
= virtueller Prozessor
schwergewichtiger Prozess (heavyweight process)
= virtueller Rechner ( virtueller Prozessor +
virtueller Speicher +
virtuelle Peripherie )
bs-1.1
16
Mehrprozessbetrieb (multitasking, multiprogramming):
Anzahl der Prozesse ist nicht durch die
Anzahl der Prozessoren beschränkt
bs-1.1
17
Mehrprozessbetrieb (multitasking, multiprogramming):
Anzahl der Prozesse ist nicht durch die
Anzahl der Prozessoren beschränkt
Schnappschuss der Prozessorzuordnung (processor allocation):
Prozesse
aktiv
bereit
wartend
Prozessoren
bs-1.1
18
Die Zuordnung wechselt:
„Multiplexen“ des Prozessors (processor multiplexing)
Zustandsübergänge eines Prozesses p :
(mit Operationen block/wake )
aktiv
anderer Prozess
macht block()
block()
wake(p)
bereit
anderer Prozess macht
bs-1.1
wartend
wake(p)
falls aktiver Prozess
verdrängt werden kann
Warum Mehrprozessbetrieb?

Teilnehmer- bzw. Server-Betrieb

Effiziente Nutzung des Systems angesichts
unterschiedlicher Ressourcen-Anforderungen
verschiedener auszuführender Programme
bs-1.1
20
Beispiel:
Software installieren
CD
Festplatte
Drucker
Dokument drucken
... und noch freie Prozessorkapazität für
rechenintensives Programm im Hintergrund
bs-1.1
21
1.1.2 Speicherverwaltung
Betriebsmittel:
Arbeitsspeicher
virtualisiert:
virtueller Adressraum
(virtual address space)
Von virtuellem Speicher (virtual memory) (5) spricht man, wenn
der virtuelle Adressraum größer als der Arbeitsspeicher sein kann
und teilweise auf Hintergrundspeicher ausgelagert werden kann.
bs-1.1
22
Schnappschuss der Speicherzuordnung (memory allocation):
[Speicheralloziierung – falsche Übersetzung]
Virtuelle Adressräume der (schwergewichtigen) Prozesse
Arbeitsspeicher
Betriebssystem
Multiplexen des Arbeitsspeichers durch
Umlagerung (swapping) der Prozesse zwischen
Arbeitsspeicher und Hintergrundspeicher
bs-1.1
Zustandsübergänge eines Prozesses:
aktiv
bereit
wartend
eingelagert
ausgelagert
bs-1.1
24
1.1.3 Dateiverwaltung
Betriebsmittel:
Langzeitspeicher (Platte, Band, stick, ...)
virtualisiert:
Datei (file)
= benanntes, persistentes Objekt
a
bs-1.1
b
c
d
e
f
g
25
1.1.4 Druckerverwaltung
Betriebsmittel:
reale Drucker
virtualisiert:
virtuelle Drucker
 Spooling
Auf verschiedene Weise realisierbar, z.B. so:
jeder Prozess besitzt einen eigenen virtuellen Drucker,
auf dem er mit print(text) drucken kann.
(Zwischenspeicherung der Ausgabe auf Hintergrundspeicher!)
 komfortabel und effizient
bs-1.1
26
1.1.5 Weitere Peripherie
Betriebsmittel:
Bildschirm
+ Tastatur/Maus
virtualisiert:
Fenster
+ Tastatur/Maus
Betriebsmittel:
Netzanschluss
virtualisiert:
Port
usw. . . .
bs-1.1
27
Zugehörige Unterlagen
Herunterladen