Wirtschaftsinformatik 04: Betriebssysteme

Werbung
Wirtschaftsinformatik
04: Betriebssysteme
Hochschule für Wirtschaft und Recht
SS 16
WS 14/15
Dozent: R. Witte
Computertechnik
Vier Personen mit genau einer Taschenlampe
wollen nachts eine Hängebrücke überqueren, die
maximal 2 Personen trägt. Da es sehr dunkel ist,
MUSS die Taschenlampe jedes Mal mitgeführt
werden. Für die Überquerung benötigt jede
Person eine andere Zeit. Gehen zwei Personen,
bestimmt die Langsamere das Tempo.
A: 5 min
B: 10 min
C: 20 min
D: 25 min
In welcher Reihenfolge
müssen die Personen die
Brücke überqueren, um
nicht mehr als eine Stunde
zu benötigen?
Computertechnik
Moore´s Law
Komplexität integrierter Schaltkreise verdoppelt sich alle 18 Monate
Gordon Moore, 1965
Geschichte von BS
Start-Vorgang
• Grundund Betriebsfunktionen bekannt
▫ ROM
=> BIOS
BIOS
• Software
nutzt diese
um BS zu laden
lokalisation
des BS/Filesystem
▫ HDD
/ CD-ROM
/ USB in RAM
Lade
Betriebsystem
• Weitere
benötigen BS
StarteProgramme
andere Software
▫ E-Mail / Textverarbeitung etc.
• kleine BS können direkt im ROM sein
• BS werden zum Verarbeiten in RAM geladen
Geschichte von BS
• 1940 – 50: Röhren und Steckbretter
• kein BS
• Aufgaben direkt in Maschinensprache
• Umstecken von Kabeln, um Grundfunktionen
zu programmieren
• Keine Programmiersprachen
Geschichte von BS
• 1950 – 60: Transistoren und Stapelsysteme
• Programme auf Lochkarten
• Separates Einlesen
• Durch Transistoren viel komplexere Berechnung
und leistungsfähigere Rechner möglich
• Trennung
Designer – Operator – Wartung – Programmierer
• Stapelsysteme um Wege zu sparen
PDP-1 von DEC
1. Minicomputer
16 Zeilen / 64 Zeichen
1959 entwickelt
Geschichte von BS
• 1960 – 75: Integrierte Schaltkreise
• OS/360 von IBM
• Komplex aber universell
• Multiprogramming
• Speicher geteilt für verschiedene Jobs
• Spooling
• Simultaneous Peripheral Operation On Line
• Jobs direkt in Warteschlange schreiben
• Sharing
• Einteilen von CPU-Zeit in Zeitscheiben
311164058381
SPOOLING
Geschichte von BS
• 1975 – heute: Computernetze und Personalcomputer
• Globale Netze
• Computer für jeden Haushalt
• Betriebssysteme
• MS-DOS
• Windows XX
• Unix/Linux
Computertechnik
Aufgaben von BS
• Schnittstelle zwischen Mensch und Hardware
▫
▫
▫
▫
▫
Userinterface
Befehle 
Antworten 
Intuition durch graph. Oberfläche
API – Application Programming Interface
 Kommunikation nicht mehr in Maschinensprache
 Bsp: writeln(dateiNummer, textAdresse, ByteZahl)
• Dienstleistungsprogramme zur Verfügung
stellen
Aufgaben von BS
• Verwalten von Ressourcen
▫
▫
▫
▫
▫
Verwaltung von Speichermedien
Programme laden, starten, unterbrechen
Zuteilung von Prozessorzeit
Zuteilung von Arbeitsspeicherplatz
Ein- und Ausgabe koordinieren
• Strukturierte Zuteilung von Ressourcen an
laufende Programme
• Fehlerbehandlung
Aufgaben von BS
• Dienste
▫ Prozessmanagement
 Zuweisung von Ressourcen an Programme als Prozesse
▫ Speichermanagement
 Schneller Zugriff auf benötigte Inhalte (Cache, RAM)
▫ Dateiverwaltung
 Logische Adressierung
▫ E/A Steuerung
 Gerätetreiber, Steuerlogik für Hardware
▫ Benutzeroberfläche bereitstellen
Aufgaben von BS
Interrupt Verwaltung
Task Sychronisation
Zeitdienste
• Schichten
Hardware
Abstraction Layer
bzw.
Board Support
Packages
GUI / Shell
Aufgaben von BS
Aufgaben von BS
Prozesse
Man gebe in eine Schüssel: 200g Mehl,
100g Zucker und 3 Eier. Man verrühre
nun die Zutaten und gebe den Teig in eine
Backform. Anschließend backe man
diesen Teig 1 Stunde lang bei 200°.
Prozess starten
Sequentielles Abarbeiten
Unterbrechen möglich
Scheduling
Verfahren
Aufgaben von BS
statisch
Scheduling
• Mehrere Prozesse gleichzeitig
• Auswahl des nächsten Prozesses
durch Scheduler/Dispatcher
dynamisch
kooperativ
zeitgesteuert
konkurrieren
ereignisgesteuert
▫ Kooperativ oder konkurrierend
▫ Zeitgesteuert oder ereignisgesteuert
• Bei Unterbrechung  Sichern aller Register und
belegten Speicherplätze und Stack-Speicher
(tmpVar)
• Jeder Prozess hat eigenen Speicherbereich
Aufgaben von BS
Aufgaben von BS
Threads
• Paralleles Arbeiten innerhalb eines Programmes
• Mehrere Ablauffäden innerhalb eines Prozesses,
die sich alle Ressourcen dieses Prozesses teilen
• Austausch
von Daten
innerhalb
der Threads
Dateisysteme
Dateisysteme
Dateisysteme
AMIGA
• FFS (Amiga Fast File System): Dateisystem unter AmigaOS
APPLE
• Apple DOS: diskettenbasiertes Dateisystem für den Apple II
• HFS+: weiterentwickelte Variante von HFS mit Journaling und erweiterten Limits, Standard unter Mac OS X
LINUX
• ext2 (Second Extended File System, lange Zeit das Standard-Dateisystem unter Linux)
• ext3 (Third Extended File System): weiterentwickelte Variante von ext2 mit Journaling
• Next3: auf ext3 basierendes Dateisystem, welches die Möglichkeit Snapshots zu erstellen bietet
• ReiserFS: Journaling-Dateisystem von Namesys (B+/B+ Bäume)
WINDOWS
• FAT16: (wird von nahezu jedem Betriebssystem unterstützt)
• FAT32: neuere Variante der FAT-Dateisystemfamilie mit erweiterten Limits, ab Windows 2000
• NTFS (New Technology File System): seit Windows XP Standarddateisystem
• ReFS: Neues Dateisystem, angekündigt für Windows 8, basierend auf B+-Bäumen
UNIX
• FFS (Berkeley Fast File System): Variante von UFS unter BSD
• UFS (UNIX File System): verwendet unter Solaris und BSD
Wechselmedien
• ISO9660 (auch CDFS, Compact Disc File System): Standarddateisystem für CD-ROMs
• UDF (Universal Disk Format): Standarddateisystem für DVDs und Blu-ray Discs
Computertechnik
UNIX
• 1969 Bell Laboratories
• Ken Thompson, Dennis Ritchie
• System für mehrere Programmierer
▫ Multitasking, Multiuser, Netzwerkfähig
• Anfangs für Großrechner
• Erst Assembler, später C
UNIX-Wars
OSF (DEC, Semens, HP, IBM)
vs. UI (AT&T, Sun Microsystems)
UNIX - Philosophie
Douglas McIlroy
• Schreibe Computerprogramme so, dass sie nur
eine Aufgabe erledigen und diese gut machen.
• Schreibe Programme so, dass sie
zusammenarbeiten.
• Schreibe Programme so, dass sie Textströme
verarbeiten, denn das ist eine universelle
Schnittstelle.
UNIX – Philosophie
Eric S. Raymond
„The Art of Computer Programming“
Regel der Modularität: Schreibe einfache Bestandteile, die durch saubere Schnittstellen verbunden werden.
Regel der Klarheit: Klarheit ist besser als Gerissenheit.
Regel des Zusammenbaus: Entwirf Programme so, dass sie mit anderen Programmen verknüpft werden können.
Regel der Trennung: Trenne den Grundgedanken von der Umsetzung,
trenne die Schnittstellen von der Verarbeitungslogik.
Regel der Einfachheit: Entwirf mit dem Ziel der Einfachheit; füge Komplexität nur hinzu, wenn es unbedingt sein muss.
Regel der Sparsamkeit: Schreibe nur dann ein großes Programm, wenn sich klar zeigen lässt, dass es anders nicht geht.
Regel der Transparenz: Entwirf mit dem Ziel der Durchschaubarkeit, um die Fehlersuche zu vereinfachen.
Regel der Robustheit: Robustheit ist das Kind von Transparenz und Einfachheit.
Regel der Darstellung: Stecke das Wissen in die Datenstrukturen,
so dass die Programmlogik dumm und robust sein kann.
Regel der geringsten Überraschung: Mache beim Entwurf der Schnittstellen immer das Nächstliegende,
welches für die wenigsten Überraschungen beim Benutzer sorgt.
Regel der Stille: Wenn ein Programm nichts Überraschendes zu sagen hat, soll es schweigen.
Regel des Reparierens: Wenn das Programm scheitert, soll es das lautstark und so früh wie möglich tun.
Regel der Wirtschaftlichkeit: Die Arbeitszeit von Programmierern ist teuer; spare sie auf Kosten der Rechenzeit.
Regel der Code-Generierung: Vermeide Handarbeit; schreibe Programme, die Programme schreiben, falls möglich.
Regel der Optimierung: Erstelle Prototypen, bevor du dich an den Feinschliff machst.
Mache es lauffähig, bevor du es optimierst.
Regel der Vielseitigkeit: Misstraue allen Ansprüchen auf „den einzig wahren Weg“.
Regel der Erweiterbarkeit: Entwirf für die Zukunft, denn sie wird schneller kommen als du denkst.
UNIX – Philosophie
„Mache nur eine Sache und mache sie gut.“
„Alles ist eine Datei“
„Zu frühe Optimierung ist die
Wurzel allen Übels.“
„Unix wurde nicht entwickelt, um seine Benutzer daran
zu hindern, dumme Dinge zu tun, denn das würde diese
auch davon abhalten, schlaue Dinge zu tun.“
Doug Gwyn
„Verwende im Zweifelsfall rohe Gewalt“
„Unix ist einfach. Es erfordert
lediglich ein Genie, um seine
Einfachheit zu verstehen
Dennis Ritchie
„schreibe dummen Code,
der schlaue Daten
verwendet“
UNIX
• Bis UNIX V7 (1979) Quellcode an Universitäten öffentlich
• Berkeley Software Distribution (BSD) basierte auf dem
UNIX Code von AT&T
• 80er Jahre: AT&T sperrte Quellcode
und kommerzialisierte das BS,
Lizenzgebühren für BSD
• Firmen lizensierten eigene Versionen
(Bsp: Microsoft Xenix)
• Richard Stallman beginnt mit GNU
• 1992 FreeBSD Initiative
Linux
• Andrew S. Tannenbaum entwickelte MINIX als abgespecktes
Testsystem für Studenten
Linux
• Finnischer Student Linus B. Torwald
nutzte Minix für Terminalemulator
• lauffähiger Kernel für 80386 entstand
• C-Compiler durch GNU ersetzt
Linux
• GNU GPL
▫ Software kostenlos nutzen,
studieren, ändern und
verbreiten – Open Source
• Freier Quellcode lockte
viele Programmierer
(1993 bereits 300)
• Oberfläche KDE oder
GNOME
“Hello everybody out there using minix I’m doing a (free) operating system (just a hobby, won’t be big and
professional like gnu) for 386(486) AT clones. This has been brewing
since April, and is starting to get ready. I’d like any feedback on things
people like/dislike in minix, as my OS resembles it somewhat (same
physical layout of the file-system (due to practical reasons) among
other things).
I’ve currently ported bash(1.08) and gcc(1.40), and things seem to
work. This implies that I’ll get something practical within a few
months, and I’d like to know what features most people would want.
Any suggestions are welcome, but I won’t promise I’ll implement
them :-)
Linus ([email protected])
PS. Yes – it’s free of any minix code, and it has a multi-threaded fs. It
is NOT portable (uses 386 task switching etc), and it probably never
will support anything other than AT-harddisks, as that’s all I have :-(.”
Posting von 25.8.1991
Linux-Distributionen
• Arch Linux
• (2002)
• keine graph.
Oberfläche
Linux-Distributionen
• Debian (1993)
Linux-Distributionen
• Knoppix (2000)
Linux-Distributionen
• Ubuntu (2004), Heimanwender, auf Debian basiert
Ubuntu Server
Ubuntu TV
Ubuntu Studio
Linux-Distributionen
• Gentoo (1999), komplett individuell
Linux-Distributionen
• Rad Hat (1994), wird nicht mehr weiter entwickelt,
RHEL als kostenpflichtige Enterprise Version
Linux-Distributionen
• Fedora (2003)
Linux-Distributionen
• Mandriva (1998), kommerziell aber kostenlos
Linux-Distributionen
• Slackware (1993) streng nach UNIX
Linux-Distributionen
• openSUSE (1992), benutzerfreundliche Distribution
Linux-Distributionen
Linux-Debian
MS-DOS
• Erstes verbreitetes BS für PC
• Diskettenverwaltungssystem
Microsoft Disk Operating System
• Version 1 für 8086 entwickelt, spätere Versionen
bauten auf diesem System auf und konnten nicht
mit neuer Hardware Schritt halten
• Bis 1997 das verbreiteste BS
• 16 Bit, RAM bis 640 kB, nicht multitaskingfähig, 8Zeichen-Begrenzung für Dateinamen, kein GUI,
aufwendige Installation von E/A, keine
Sicherheitstechniken
MS-DOS
MS-DOS 1.x 12 (1981) – PC-DOS
MS-DOS 2.0 9 (1983) – HDD und Unterverzeichnisse
MS-DOS 3.x (1984) – Netzwerke
MS-DOS 4.0 (1988) – DOS-Shell
MS-DOS 5.0 (1991) – neuer Editor, neues Speichermodell
MS-DOS 6.0 (1993) – Festplattenkomprimierung,
Datenaustausch, Backup, Speicheroptimierung
MS-DOS 7.0 (1995) – Teil von Win95
MS-DOS 8.0 (2000) – Teil von WinME
MS-DOS Befehle
Befehl
cd
cd ..
cd \
dir
mkdir
copy
del
move
ren
edit
format
fdisk
date
time
ver
sys
Wirkung
Öffnet einen Ordner, z.B. CD DOS geht in den Ordner DOS
Geht in der Ordnerhierachie einen Ordner hoch, also von z.B. C:\DOS nach C:\
Es wird in den Stammordner des aktuellen Laufwerkes gewechselt
Zeigt den Inhalt des aktuellen Ordners an, man kann es auch näher definieren, z.B. zeigt
dir /w den Ordnerinhalt nacheinander und nicht untereinander an, dir *.exe zeigt nur
.exe Dateien im aktuellen Ordner an usw.
Erstellt einen Ordner im aktuellen Ordner
Kopiert Dateien, z.B. copy A:\ C:\ kopiert den Inhalt von A:\ nach C:\
Entfernt Dateien und Ordner, z.B. del datei.end löscht die Datei "datei.end"
Verschiebt Dateien
Benennt Dateien um, z.B. ren a b benennt "a" nach "b" um
Startet den DOS Dateieditor, wenn man eine bestimmte Datei editieren will einfach edit
datei.txt
Formatiert Festplatten und Disketten
Formatiert Festplatten um sie fürs System benutzbar zu machen
Zeigt das Datum an und man kann es verändern
Zeigt die Zeit an und man kann sie verändern
Zeigt die aktuelle DOS Version an
Nur für ältere DOS Versionen ohne Setup, macht die Festplatte bootbar so dass man nur
noch die Systemdateien von der Diskette mit copy A: C: kopieren muss
Erklärung
"Current
Directory"
"Directory"
"Make
Directory"
"Kopieren"
"Delete"
"Verschieben"
"Rename"
"Verändern"
"Formatieren"
"Format Disk"
"Datum"
"Zeit"
"Version"
"System"
MS-DOS
MS-DOS
Windows
• Windows 3.1 und 3.11 ab MS-DOS 6.0 als
grafische Benutzeroberfläche
• Ursprünglich als Programm Manager
• Eingabe win in
DOS-Eingabeaufforderung
Windows (Sparta)
•
•
•
•
•
•
•
Anwendungen in Fenstern
Gleiche Fenster in Größe und Pos. veränderbar
Durch Maus anklickbar
WYSIWYG
Mehrere Programme gleichzeitig
Austausch von Daten über Zwischenablage
Netzwerke in Win 3.11
Windows NT 3.51
(Daytona)
• Professionelle Version von 3.x
• Für geschwindigkeitsorientierte
Anwendungen
Windows 95
(Chicago)
•
•
•
•
•
•
•
•
32 Bit
Neue Programme
„Objektorientierte“ GUI
Dateinamen bis 256 lang
RAM bis 4 GB
Multitasking
Multithreading
Plug & Play
Windows NT 4.0
•
•
•
•
Spezielle Anwendungen
Sicheres Dateisystem
Professionelle Netzwerke
Sicherheitsstandard C2
Windows 98 (Memphis)
• FAT 32 für HDD > 2 GB
• IE
• Internetdateien und
Systemordner gleich
dargestellt
• Assistenten für
Einstellung und
Optimierung
Windows 2000 (Georgia)
• Verschlüsselung von Daten möglich
• Vereinigt Sicherheitsstandards von NT 4.0 mit
Benutzerfreundlichkeit von Win98
Windows ME
• Multimedia:
▫ Digitale Foto, Video-,
Audiobearbeitung
• Netzwerkassistenten
• Sicherer Shutdown
Windows XP (Whistler/NT5.0)
• Nachfolger von Win ME/2000
• verschiedene Versionen
▫
▫
▫
▫
•
•
•
•
•
Home
Professional
Media Center Edition
X64 Edition
Systemwiderherstellung
Datensicherung
Datenverschlüsselung
Firewall
Popup Blocker
Windows Server 2003 (NT 5.2)
•
•
•
•
•
•
•
•
•
•
Active Directory
DHCP-Server
DNS-Server
POP3 Server
SMTP Server
HTTP-Server
Dateiserver
IIS
Print-Server
Application Server
Windows Vista
(Lognhorn / NT6.0)
•
•
•
•
•
•
•
•
•
Security Development Lifecycle
Aero Benutzeroberfläche
Sidebar
Flip 3D
Wndows Mail
Snipping Tool
Fotogalerie
Kontrollfunktion für Eltern
Benutzerkontensteuerung
Windows 7 (Vienna)
• Marktanteil > 50%
• Barrierefreiheit
▫
▫
▫
▫
•
•
•
•
Sprachsteuerung
Sprachausgab e
Bildschirmtastatur
Bildschirmlupe
Multitouch
Neues Paint
Neues Wordpad
Neuer Rechner
Windows Server 2008
•
•
•
•
•
•
Neue Managementkonsole
Verbesserte Terminaldienste
Hyper-V
Windows Power-Shell
Failover Clustering
NW-Lastverteilung
Windows 8 (NT 6.3)
•
•
•
•
•
Modern UI und Desktop Oberfläche
Windows Phone 8
Windows RT für Tablets
Benutzerfreundlichkeit für Touchgeräte
Erhöhung Stabilität und Geschwindigkeit
Windows Server 2012
• Modern UI
• Direct Access 3.0 PKI
• Anbindung an MS Azure
Windows 10
• Einheitliches System für Desktop, Notebook, Tablet,
Phone, X-Box, Embedded Devices, Convertibles
MAC OS (1984-2000)
• Wurde mit Apple Computern verkauft und
war nur auf diesen lauffähig
• Vollständig graphisch, keine Kommandozeile
• Fehlende RAM Unterstützung
• Anfällig für E/A Konflikte
• Bestimmte Reihenfolge für
einige Erweiterungen
notwendig
• Ständig weiter optimiert und
schließlich eines der
robustesten Systeme
MAC OS X
Nachfolger von NeXTStep und Darwin
Apple Public Source Licence
▫ (quelloffen)
GUI Aqua
ENDE
Herunterladen