- PowerPoint PPT Presentation

1 / 55
About This Presentation
Title:

Description:

Title: Introduction to Object Technology Author: Patty Roy Last modified by: socke Created Date: 6/26/1999 9:48:38 PM Document presentation format – PowerPoint PPT presentation

Number of Views:33
Avg rating:3.0/5.0
Slides: 56
Provided by: Patty192
Category:

less

Transcript and Presenter's Notes

Title:


1
Überblick über Betriebssysteme
  • Kapitel 2

2
Betriebssysteme
  • Ist ein Programm, das die Ausführung von
    Anwendungsprogrammen steuert
  • Dient als Schnittstelle zwischen den Anwendungen
    und der Computerhardware.

3
Zielen von Betriebssysteme
  • Bequemlichkeit
  • Ein Computer kann bequemer benutzt werden.
  • Effizienz
  • Computersystemressourcen können effizient genutzt
    werden.
  • Fähigkeit zur Weiterentwicklung
  • Ermöglicht die effektive Entwicklung, das Testen
    und die Einführung neuer Systemfunktionen, ohne
    das dies den Betrieb negativ beeinflusst.

4
Schichten und Ansichten eines Computersystems
5
Dienste die ein Betriebssystem anbietet.
  • Programmentwicklung
  • Editoren und Debugger
  • Programmausführung
  • Zugriff auf E/A-Geräte
  • Kontrollierter Zugriff auf Dateien
  • Systemzugriff

6
Dienste die ein Betriebssystem anbietet
  • Fehlererkennung und Reaktion auf Fehler
  • Interne und externe Hardwarefehler
  • Speicherfehler
  • Ausfall von Geräte
  • Softwarefehler
  • arithmetischer Überlauf
  • Zugriff auf geschützte Speicherzellen
  • Betriebssystem kann einer Anforderung einer
    Anwendung nicht nachkommen.

7
Dienste die ein Betriebssystem anbietet
  • Buchführung
  • stellt Nutzungsstatistiken auf
  • Leistungen überwachen
  • Nützlich, um die Notwendigkeit zukünftiger
    Erweiterungen abschätzen zu können.
  • Kann zu Abrechnungszwecken verwendet werden.

8
Betriebssystem
  • Funktioniert auf die gleiche Art und Weise wie
    normale Computersoftware
  • es ist ein Programm das durch den Prozessor
    ausgeführt wird.
  • Das Betriebssystem gibt die Kontrolle häufig ab
    und ist darauf angewiesen dass der Prozessor es
    ihm ermöglicht die Kontrolle zurück zu erlangen.

9
(No Transcript)
10
Kernel
  • Teil des Betriebssystem welcher sich im
    Hauptspeicher befindet.
  • Umfasst die am häufigsten verwendeten Funktionen
  • auch bezeichnet als Betriebssystemkern

11
Fähigkeit zur Weiterentwicklung
  • Hardwareupgrades und neue Hardwaretypen
  • Neue Dienste
  • Reparaturen (fixes)

12
Entwicklungsgeschichte der Betriebssysteme
  • Serielle Verarbeitung
  • Kein Betriebssystem (50er Jahren)
  • Rechner wurden von einer Konsole aus gestartet,
    die Kontrollleuchten, Kippschalter, Eingabegeräte
    (Lochkartenleser) und Drucker umfasste.
  • Reservierungsterminkalender auf Papier
  • Für einen einzelnen Programmlauf, konnte es
    notwendig sein, einen Compiler, Quellprogramm, zu
    laden. Das kompilierte Programm zu sichern, usw.

13
Entwicklungsgeschichte der Betriebssysteme
  • Einfache Stapelbetriebssysteme
  • Monitor
  • Benutzer hat keinen direkter Zugriff auf den
    Rechner
  • Der Monitor steuert die Sequence der Ereignisse
  • Jobs werden vom Operator aufeinander gestapelt
  • Nach Programmbeendigung wird zum Monitor zurück
    verzweigt
  • Ein Teil, der Residenter Monitor, befindet sich
    stets im Hauptspeicher

14
Jobsteuersprache Job Control Language (JCL)
  • Eine spezielle Art von Programmier-sprache.
  • Stellt dem Monitor Befehle zur Verfügung
  • der Compiler der geladen werden soll
  • Die Daten die vom Programm verwendet werden
    sollen

15
Hardwaremerkmale
  • Speicherschutz
  • Ein Benutzerprogramm darf den Speicherbereich,
    der den Monitor enthält, nicht verändern.
  • Timer Der wird verwendet um einzelne Jobs daran
    zu hindern, das System für sich alleine auf Dauer
    in Beschlag zu nehmen.

16
Einprogrammbetrieb
  • Prozessor muss mit der Ausführung warten auf den
    E/A-Befehlsablauf.

17
Mehrprogrammbetrieb
  • Während ein Job auf die E/A wartet, kann der
    Prozessor zu dem anderen Job umschalten

18
Mehrprogrammbetrieb
19
(No Transcript)
20
Beispiel
JOB1 JOB2 JOB3 Art des Jobs umfangreiche umfangre
iche umfangreiche Berechnungen E/A E/A Dauer 5
min. 15 min. 10 min. Speicherbedarf 50K 100 K 80
K Festplatte? No No Yes Terminal? No Yes No Drucke
r? No No Yes
21
Auswirkung des Mehrprogramm-betriebs auf die
Ressourcennutzung
Uniprogramming Multiprogramming Prozessornutzung
22 43 Speichernutzung 30 67 Festplattennutzung
33 67 Druckernutzung 33 67 Zeitaufwand 30
min. 15 min. Durchsatzrate 6 jobs/hr 12
jobs/hr Mittlere Antwortzeit 18 min. 10 min.
22
Timesharing
  • Mehrprogrammbetrieb für die Abarbeitung mehrere
    interaktive Jobs.
  • Die Zeit des Prozessors wird auf mehrere Benutzer
    verteilt.
  • Mehrere Benutzer greifen gleichzeitig über
    Terminals auf das System zu.

23
Stapelmehrprogrammbetrieb im Vergleich mit
Timesharing
Stapelmehrprogramm-betreib Time Sharing
Hauptziel Maximierung der Prozessorausnutzung Minimierung der Antwortzeit
Anweisungsquelle für das Betriebssystem Befehle in Jobsteuerungs-sprache, die mit dem Job bereitgestellt werden Befehle, die am Terminal eingegeben werden
24
(No Transcript)
25
Wichtige Errungenschaften
  • Prozesse
  • Speicherverwaltung
  • Informationsschutz und Sicherheit
  • Ablaufplanung und Ressourcen-verwaltung
  • Systemstruktur

26
Prozesse
  • Ein Programm in der Ausführung
  • Eine Instanzierung eines Programms, welches auf
    einem Prozessor ausgeführt werden kann
  • Die Einheit, die einem Prozessor zugeteilt und
    auf einem Prozessor ausgeführt werden kann
  • Eine Aktivitätseinheit, die durch einen einzigen
    sequentiellen Ausführungs-Thread, einen aktuellen
    Status und einen zugehörigen Satz
    Systemressourcen gekennzeichnet wird

27
Hauptursachen für Programmierfehler in der
Entwicklung der Systemsoftware
  • Falsche Synchronisation
  • Das Betriebssystem muss gewährleisten dass ein
    Prozess, das auf ein E/A-Gerät wartet auch das
    Signal empfangen wird.
  • Fehlgeschlagener gegenseitiger Ausschluss
  • Nichtdeterministischer Programmbetrieb
  • Ergebnisse sollten nur von der Eingabe und nicht
    von den Aktivitäten andere Programme abhängen
  • Verklemmungen (Deadlocks)

28
Prozess
  • Besteht aus drei Komponenten
  • Ein ausführbares Programm
  • Die zugehörige Daten, die das Programm benötigt
  • Den Ausführungskontext des Programms
  • Alle Informationen, die das Betriebssystem
    braucht, um den Prozess zu verwalten

29
Prozess
30
Speicherverwaltung
  • Prozessisolierung
  • Automatische Zuordnung und Verwaltung
  • Unterstützung der modularen Programmierung
  • Schutz und Zugriffskontrolle
  • Langzeitspeicher

31
Virtueller Speicher
  • Es ermöglicht den Programmen, den Speicher von
    einem logischen Standpunkt aus anzusprechen
  • Bei der Ausführung aufeinander folgender Prozesse
    kommt es zu keiner Unterbrechung, wenn ein
    Prozess auf den Sekundärspeicher ausgelagert und
    der nachfolgende Prozess eingelesen wird

32
Paging
  • Paging ermöglicht es, Prozesse aus einer Anzahl
    von Blöcken mit fester Grösse, genannt Seiten, zu
    bilden
  • Eine virtuelle Adresse besteht aus einer
    Seitenzahl und einem Offset innerhalb der Seite
  • Die einzelnen Seiten können im Hauptspeicher
    beliebig angeordnet sein
  • Das Paging-System sorgt für eine dynamische
    Abbildung der virtuellen oder logische Adressen
    und der realen Adressen, oder physikalische
    Adressen

33
(No Transcript)
34
Adressierung beim virtuellen Speicher
35
Ablaufplanung und Ressourcenverwaltung
  • Fairness
  • allen Prozessen ungefähr den gleichen und fairen
    Zugriff geben
  • Differenzierte Ansprechempfindlichkeit
  • muss zwischen unterschiedlichen Jobklassen
    unterscheiden
  • Effizienz
  • den Durchsatz maximieren, die Antwortzeit
    minimieren, so viele Benutzer wie möglich bedienen

36
Hauptelementen eines Betriebssystems
37
Systemstruktur
  • Wir können das Betriebssystem als eine Reihe von
    Ebenen betrachten
  • Jede Ebene führt einen zugeordneten Teil an
    Funktionen aus
  • Die einzelnen Ebenen verlassen sich für die
    Durchführung einfacher Funktionen auf die nächst
    tiefere Ebene
  • Ein Problem wird so in eine Reihe von leichter zu
    handhabenden Teilproblemen aufgespaltet

38
Hierarchie eines Betriebssystems
Ebene Name Objekte Beispieloperationen 13 Shell Be
nutzerprogrammier- Aussagen in Shell-Sprache umg
ebung 12 Benutzerprozesse Benutzerprozesse Beenden
, Löschen,
Unterbrechen, Wiederaufnehmen 11 Verz
eichnisse Verzeichnisse Erstellen, Löschen,
Anhängen, Ablösen, Suchen, Auflisten
10 Geräte Externe Geräte, wie Öffnen, Schließen,
Lesen, Drucker, Tastaturen Schreiben und
Anzeigegeräte 9 Dateisystem Dateien Erstellen,
Löschen, Öffnen Schließen, Lesen,
Schreiben 8 Kommunikation Kanäle
(Pipes) Erstellen, Löschen, Öffnen Schließen,
Lesen, Schreiben
39
Hierarchie eines Betriebssystems
Ebene Name Objekte Beispieloperationen 7 Virtuelle
r Speicher Segmente, Seiten Lesen, Schreiben,
Aufrufen 6 Lokaler Sekundär- Datenblöcken,
Geräte- Lesen, Schreiben, Zuweisen, Speicher kan
äle Freigeben 5 Einfache Prozesse Einfach
Prozesse, Unterbrechen, Wiederauf- Semaphore,
Bereit- nehmen, Warten, schaftslisten Signalisi
eren
40
Hierarchie eines Betriebssystems
  • Ebene Name Objekte Beispieloperationen
  • 4 Interrupts Interrupt-Steuer- Aufrufen,
    Verdecken, Auf-

    programme decken, erneuter Versuch
  • Prozeduren Prozeduren, Aufruf-,
    Stapelmarkierung, Aufruf,
  • stapel, Anzeige Rücksprung
  • 2 Befehlssatz Auswertungsstapel, Laden,
    Speichern,
  • Microprogrammüber-, Addieren, Subtrahieren,
  • setzer, Skalar- und Verzweigen
  • Felddaten
  • 1 Elektronische Register, Gatter, Busse, Löschen,
    Übertragen,
  • Schaltungen usw Aktivieren,
  • Vervollständigen

41
Merkmale moderner Betriebsysteme
  • Mikrokernel-Architektur
  • Hierbei werden dem Kernel nur einige wesentliche
    Elemente zugeordnet
  • Unterstützung von Adressräumen
  • Interprozesskommunikation (IPC)
  • Grundlegendes Scheduling

42
Merkmale moderner Betriebsysteme
  • Multithreading
  • ein Prozess wird in mehrere Threads aufgeteilt
    die nebenläufig ausgeführt werden können
  • Thread
  • Eine Arbeitseinheit, die sich per Dispatcher
    zuordnen lässt
  • wird sequentiell ausgeführt und kann unterbrochen
    werden
  • Prozess
  • Ein oder mehrere Threads mit dazugehörenden
    Systemressourcen

43
Merkmale moderner Betriebsysteme
  • Symmetrischer Mehrprozessorbetrieb
  • es sind mehrere Prozessoren vorhanden
  • Diese Prozessoren teilen sich denselben
    Hauptspeicher, dieselben E/A-Geräte und sind
    durch einen Kommunikationsbus miteinander
    verbunden
  • Alle Prozessoren können dieselben Funktionen
    ausführen

44
Merkmale moderner Betriebsysteme
  • Verteilte Betriebssysteme
  • Schafft die Illusion eines einzigen
    Hauptspeicherraums und eines einzigen
    Sekundärspeicherraums
  • wie z.B. ein System für verteilte Dateien

45
Merkmale moderner Betriebsysteme
  • Objektorientierter Aufbau
  • Ermöglicht das disziplinierte Hinzufügen von
    modularen Erweiterungen zu einem kleinen Kernel
  • Ermöglicht den Programmierern, ein Betriebssystem
    ohne Zerschlagung der Systemintegrität nach Maß
    zuzuschneidern

46
Windows 2000
  • Nutzt die Verarbeitungsfähigkeiten heutiger
    32-Bit-Mikroprozessoren aus
  • Es handelt sich um ein Multitasking-Betriebssystem
    , obwohl es nach wie vor für die Unterstützung
    eines einzelne interaktiven Benutzers gedacht
    ist.
  • Client/Server System

47
Windows 2000 Architektur
  • Modularer Aufbau verleiht ein hohes Maß an
    Flexibilität
  • Läuft auf einer Vielzahl von Hardwareplattformen
    (??)
  • Unterstützt Anwendungen, die für eine Vielzahl
    anderer Betriebssysteme geschrieben wurden

48
Betriebssystemaufbau
  • Modifizierte Mikrokernel-Architektur
  • Nicht ein reiner Mikrokernel (denn)
  • Viele Systemfunktionen laufen außerhalb des
    Mikrokernels im Kernel-Modus
  • Jedes Modul kann entfernt, aufgerüstet oder
    ausgetauscht werden, ohne dass das gesamte System
    neu geschrieben werden muss

49
(No Transcript)
50
Client/Server-Modell
  • Vereinfacht die Executive
  • es ist möglich eine Vielzahl von APIs zu
    konstruieren
  • Verbessert die Zuverlässigkeit
  • Jedes Executive-Service-Modul läuft geschützt mit
    einer eigenen Speicherpartition
  • Clients können nicht direkt auf die Hardware
    zugreifen
  • Bietet eine passende Grundlage für die verteilte
    Verarbeitung in Computernetzen

51
Threads and SMP
  • Unterschiedliche Routinen können simultan auf
    unterschiedlichen Prozessoren laufen
  • Mehrere Threads desselben Prozesses können
    gleichzeitig auf verschiedenen Prozessoren
    ausgeführt werden
  • Server-Prozesse können mehrere Threads einsetzen
  • Gemeinsame Nutzung von Daten und Ressourcen durch
    Prozesse

52
UNIX
  • Die zugrunde liegende Hardware ist von der
    Betriebssystemsoftware umgeben
  • Das Betriebssystem wird als System-Kernel
    bezeichnet
  • Unix ist zusätzlich mit einer Reihe von
    Benutzerdiensten und Schnittstellen ausgestattet,
    die auch als Teil des Systems angesehen werden
  • shell
  • C compiler

53
UNIX
54
Modern UNIX Systeme
  • System V Release 4 (SVR4)
  • Solaris 2.x
  • HPux
  • 4.4BSD
  • Linux

55
Unix-Geschichte
Write a Comment
User Comments (0)
About PowerShow.com