Betriebssysteme

Werbung
Betriebssysteme
1. Was ist ein Betriebssystem (engl. OS operating system)
Ø Ein Programm, welches sämtliche Ressourcen eines Rechners (Rechenzeit, Speicher,
Interrupts, I/O-Geräte usw.) verwaltet und Anwendungsprogrammen zur Verfügung stellt.
2. Aufgaben eines Betriebssystems
Ø
Ø
Ø
Ø
Ø
Ø
Ø
Bereitstellen einer Benutzerschnittstelle ("Kommandointerpreter", "Shell")
Bereitstellen einer Programmierschnittstelle (API)
Laden und Ausführen von Anwenderprogrammen
Speichern und Verwalten von Daten und Programmen
Koordination von Prozessen
Verwaltung der Rechenzeit
Verwaltung der Ressourcen
Ø Prozessor(en)
Ø Hauptspeicher
Ø Hintergrundspeicher (Platte, Band, etc.)
Ø Peripheriegeräte (Terminal, Drucker, Plotter, etc.)
3. Architektur des Betriebssystems
Zur logischen Strukturierung wird das BS in mehrere Schichten oder Schalen eingeteilt.
Ø Die unterste Schale beinhaltet alle hardwareabhängigen Teile des Betriebssystems,
und wird BIOS (Basic Input/Output-System) genannt.
Es ist in einem Festwertspeicher (ROM etc.) eingebaut.
Alle weiteren Schichten sind von der Hardware unabhängig.
Ø Die nächste Schicht enthält die Ein-/Ausgabe-Dienste für
Plattenspeicher und Peripheriegeräte.
Ø Die darauf folgende Schicht behandelt Kommunikationsund Netzwerkdienste, Dateien und Dateisysteme.
Ø Weitere Schichten können je nach Anforderung folgen.
Ein Betriebssystem besitzt also drei oder mehr logische Schichten.
Jede Schicht kommuniziert mit ihren benachbarten Schichten über Schnittstellen. Sie kann
Funktionen der nächst niedrigeren Schicht aufrufen und ihrerseits Funktionen („Dienste“)
für die nächst höhere Schicht zur Verfügung stellen. Die Gesamtheit der Vorschriften, die
bei der Nutzung der Dienste einzuhalten sind, wird als "Protokoll" bezeichnet.
Ø Die frühen Computer (Großrechner) zeichneten sich dadurch aus, dass Hardware und
Betriebssystem vom gleichen Hersteller kamen und optimal aufeinander abgestimmt
waren. Bei den heutigen PCs ist dies nur noch beim Macintosh von Apple der Fall.
Ø Bei Personal Computern auf Basis von Intel-Prozessoren kommen Hardware und Betriebssystem von unterschiedlichen Herstellern. So hat man die Wahl zwischen Betriebssystemen von Microsoft (Windows 98/ME, Windows 2000, Windows XP, usw.)
oder freien UNIX-Implementierungen (Free BSD, Linux). Da auch Peripheriegeräte von
verschiedensten Herstellern kommen, liefern diese die Betriebssystem-Anpassung in
Form von Treibern, die beim Laden des Betriebssystems mit eingebunden werden.
4. Entwicklungsgeschichte:
Ø Die erste Computergeneration (ca. 1945-1955) besaß kein Betriebssystem.
Ø Programmierung direkt (Steckbrett, Lochstreifen, Lochkarte)
Ø Keine Programmiersprachen
Ø Die zweite Generation (ca. 1955-1965) arbeitete mit Stapelverarbeitung.
Ø Batch-Betrieb (Lochkarten)
Ø Einfache Job-Control-Sprachen
Ø Programmiersprachen (Assembler, Fortran, etc.)
Ø Magnetbänder als Zwischenspeicher
Ø Die dritte Generation (ca. 1965-1980) beherrschte Dialogverarbeitung.
Ø Der Benutzer kommuniziert über Tastatur und Bildschirm
Ø Multiprogramming = Mehrprogrammbetrieb
Ø Hauptspeicheraufteilung für mehrere Programme
Ø Timesharing (Zeitliche Verschachtelung der Programme)
Ø MULTICS als UNIX-Vorgänger (1969 das erste UNIX)
Ø Die vierte Generation (ab ca. 1975): Dialogsystem
Ø Zuerst Dialog im Textmodus über Tastatur und Textbildschirm.
Ø Später grafische Benutzeroberflächen (AppleOS, Windows, "X" unter UNIX).
Ø Einzelplatzbetriebssysteme (CP/M, MS-DOS, Win95, Win98, WinME)
Ø Mehrnutzerbetriebssystemen (UNIX, Novell, Linux, WinNT)
Ø Netzwerkbetriebssysteme (Kommunikation mehrerer Computer)
Ø Verteilte Betriebssysteme (mehrere Prozessoren = Multiprocessing)
5. Windows-Betriebssysteme
1982: MS-DOS (Microsoft Disk Operating System)
Ø Singleuser-Singletasking-Betriebssystem
Ø 16-Bit-Adressierung (Intel 8086, 80186, 80286, 80x86)
Ø sehr einfache Kommandosprache
Ø kommandozeilenorientiert
1990: Windows (Version 3.x)
Ø Erstmalig Betriebssystem-Erweiterung mit grafischer Benutzeroberfläche für Intel-PCs
(Die Versionen 1 und 2 waren DOS-Erweiterungen mit reiner Textoberfläche).
Ø Steuerung über Maus (Pointer Device)
Ø Fenster als Arbeitsfläche
Ø 32-Bit-Adressierung im protected mode (386/486/Pentium)
Ø einheitliche Gerätetreiber, auf welche die Programme aufsetzen
Ø Erweiterung der Systemaufrufe (API = Application Programming Interface)
1995: Windows 95
Ø Windows 95 hingegen ist ein vollwertiges Betriebssystem
Ø kein DOS mehr als "Unterlage", jedoch DOS 7.0 als "DOS-Fenster"
Ø 32-bit-Adressierung
Ø besserer Speicherschutz der Applikationen
Ø Netzwerkintegration (IPX/SPX von Novell, TCP/IP, NetBEUI)
Ø Multimedia-Schnittstelle (Video und Sound)
Ø dynamische Cacheverwaltung (weniger Plattenzugriffe)
Ø 'Plug & Play': automatische Erkennung und Installation von Hardwarekomponenten
1998: Windows 98
Ø FAT32 als Standarddateisystem (Laufwerke mit mehr als 2 GByte Kapazität möglich)
Ø Verbessertes Power-Management
Ø Integrierte Internet Benutzeroberfläche
Ø Win32 Driver Model
ab 1993: Windows NT
Ø Server-basiertes Multitasking-Betriebssystem mit Netzwerkunterstützung.
Ø Aufteilung von Programmen in threads
Ø Multitasking, Multithreading, Multiprocessing
Ø virtuelle Speicherverwaltung (je Prozeß bis zu 4 GByte)
Ø Benutzerverwaltung, Zugriffsrechte, Autentifizierung
Ø Unterstützung verschiedener Dateisysteme (FAT, NTFS von NT)
Ø optimiert für den Netzwerkbetrieb in Verbindung mit dem Client-Server-Konzept
Ø auf verschiedenen Prozessoren implementierbar ist (Intel, Mips, DEC Alpha, etc.),
was außer Unix bei keinem anderen der vorgestellten BS der Fall ist.
6. Unix (und Derivate)
Ø
Ø
Ø
Ø
Ø
eines der ältesten Betriebssysteme (seit 1969).
Multitasking-BS (Multiprocessing-BS) und Multiuser-BS (Mehrbenutzer-BS)
geeignet für Mikrocomputer der Oberklasse, Mini-Computer, Großrechner
beispielgebend für andere Systeme (DOS, Windows und OS/2)
nahezu für jede Hardwareplattform verfügbar.
Ø zwei Standards: Berkeley Unix (BSD) sowie AT&T's System V Release 4 (SVR4).
Ø bei den Benutzeroberflächen (GUI) gibt es unterschiedliche Standards,
aber alle folgen der X11 Definition (tonangebend: MOTIF Definition)
Ø in Schichten strukturiert (Shell (Kommandointerpreter), Kernel, Treiber)
Ø Netzwerkbetrieb über TCP/IP von Anfang an implementiert
Ø Mehr als 90% des Codes ist in C programmiert --> portabel auf andere Systeme
Ø hierarchisch strukturiertes Dateisystem mit voneinander unabhängigen Rechtebits
/
boot
init.d
z.B:
etc
bin
samba
dev
home
students
teachers
/boot Bootdateien und Kerneldateien
/etc alle Konfigurationsdateien
/bin ausführbare Binärdateien
(u)ser
(g)roup
r w x
22 21 20
4 2 1
r w x
22 21 20
4 2 1
(o)ther
r
w
x
4
2
1
root
usr
media
floppy
tmp
cdrom
var
log
/dev Gerätedateien (Treiber)
/home Heimatverzeichnis der Benutzer
/root Heimatverzeichnis des Systemverwalters
Bezeichnung der jeweiligen Nutzergruppe
Zugriffsrechte: r(readable), w(writable), x(executable)
Wertigkeit der entsprechenden Rechtebits
Codierung des Zugriffsrechts (binär)
Zwei Möglichkeiten der Änderung von Zugriffsrechten:
chmod u=rw,g+rx,o-r <datei>
chmod 764 <datei>
Änderung der Zugriffsrechte (symbolische Notation, relativ)
Änderung der Zugriffsrechte (numerische Notation, absolut)
Die Zahl ergibt sich durch Addition der Rechtebits:
7 = 4 (readable) + 2 (writeable) + 1 (executable) = Vollzugriff
6 = 4 (readable) + 2 (writeable)
= Lese+Schreib
7. Linux
Ø
Ø
Ø
Ø
Ø
Frei verfügbares Multitasking- und Multiuser-Betriebssystem auf UNIX-Basis
1991 von Linux Thorvalds aus der Unix-Variante Minix (Tanenbaum) weiterentwickelt
1992 erste Socket-Schicht für Linux, um das X-Windows-System zu portieren.
1993 Linux unter den Top 5 der beliebtesten Newsgroups im Internet
1994 im März wurde die Version 1.0 freigegeben, mit X und Netzwerk/Internet (TCP/IP)
Ø Linux wurde von Anfang an unter die GPL (General Public License) gestellt.
Ø die GPL soll die Freiheit garantieren, alle Versionen eines Programms zu teilen und
zu verändern. Sie soll sicherstellen, dass Software für alle ihre Benutzer frei bleibt.
Ø Es kann frei und kostenlos verteilt, eingesetzt und erweitert werden.
Ø Es wird von einer Vielzahl von Entwicklern in aller Welt weiterentwickelt
Ø Copyleft-Prinzip: Alle abgeleiteten Programme eines unter der GPL stehenden
Werkes dürfen von Lizenznehmern nur dann verbreitet werden, wenn sie von diesen ebenfalls zu den Bedingungen der GPL lizenziert werden.
Ø OpenSource-Betriebssystem
Ø Entwickler haben Einblick in sämtliche Quellcodes und können
sehr einfach neue Funktionen integrieren bzw. Programmierfehler eliminieren.
Ø Treiber für neue Adapter können dadurch sehr schnell integriert werden.
Ø Heutige Verbreitung
Ø Novell, einst die Nr1 im Netzwerk-Bereich von PCs, hat SUSE-Linux gekauft und
ist von seinem eigenen Netzwerk-Betriebssystem Netware auf Linux umgestiegen.
Ø Apple ist von seinem eigenen Betriebssystem Mac OS auf Mac OS X umgestiegen,
das sich auf ein freies BSD-Unix stützt.
Ø Im embedded-Bereich (z.B. Handys) wird Linux eingesetzt (OpenSource!!)
Ø Linux ist heute praktisch eine Art Industrie-Standard!
Ø Distributionen
Ø Verschiedene Software-Paket mit Linux-Kernel
Ø Debian GNU/Linux
Ø Ubuntu (basiert auf Debian)
Ø Fedora und Red Hat Enterprise
Ø openSUSE und SUSE Linux Enterprise (Novell)
8. Kontrollfragen:
1. Aus welchen 2 prinzipiell verschiedenen Teilen
besteht jedes Betriebssystem auf einem PC?
2. Wo können diese beiden Teile untergebracht sein?
3. Was versteht man umgangssprachlich unter einem Betriebssystem?
4. Welche Funktionen muss es erfüllen?
5. Nennen Sie mindestens 5 Betriebssysteme für Einzelplatzrechner.
6. Nennen Sie mindestens 3 Betriebssysteme für Mehrnutzeranlagen
7. weitere Fragen ergeben sich aus den markierten Abschnitten bzw. Überschriften
9. Quellen:
Ø
Ø
Ø
Ø
Prof. Plate, Einführung in Betriebssysteme, http://www.netzmafia.de/skripten/bs/
Codename Linux (ARTE 2001) http://www.archive.org/details/codename_gnu_linux
Verzeichnis der 500 leistungsstärksten Rechner: http://www.top500.org/
Wikipedia (Stand 2. Mai 2009) http://de.wikipedia.org/wiki/Microsoft_Windows
Herunterladen