computertechnik 04: betriebssysteme - creative adit

Post on 18-Apr-2022

3 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Computertechnik

04: BetriebssystemeHochschule für Technik und Wirtschaft

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.

In welcher Reihenfolge müssen die Personen die Brücke überqueren, um nicht mehr als eine Stunde zu benötigen?

A: 5 minB: 10 minC: 20 minD: 25 min

Computertechnik

Moore´s LawKomplexität integrierter Schaltkreise verdoppelt sich alle 18 Monate

Gordon Moore, 1965

Geschichte von BS

• Grund- und Betriebsfunktionen bekannt

▫ ROM => BIOS

• Software nutzt diese um BS zu laden

▫ HDD / CD-ROM / USB

• Weitere Programme benötigen BS

▫ 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

• 16 Zeilen

• 64 Zeichen

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

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

• Schichten

Hardware Abstraction Layer bzw.Board Support Packages

Interrupt VerwaltungTask SychronisationZeitdienste

GUI / Shell

Aufgaben von BS

Aufgaben von BS

Prozesse

Prozess starten

Sequentielles Abarbeiten

Unterbrechen möglich

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°.

Aufgaben von BS

Scheduling

• Mehrere Prozesse gleichzeitig• Auswahl des nächsten Prozesses

durch Scheduler/Dispatcher▫ Kooperativ oder konkurrierend▫ Zeitgesteuert oder ereignisgesteuert

• Bei Unterbrechung Sichern aller Register und belegten Speicherplätze und Stack-Speicher (tmpVar)

• Jeder Prozess hat eigenen Speicherbereich

SchedulingVerfahren

statisch dynamisch

konkurrieren

ereignisgesteuertzeitgesteuert

kooperativ

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

DateisystemeAMIGA

• 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-WarsOSF (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 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.

Eric S. Raymond„The Art of Computer Programming“

UNIX – Philosophie „Mache nur eine Sache und mache sie gut.“

„Zu frühe Optimierung ist die Wurzel allen Übels.“

„Verwende im Zweifelsfall rohe Gewalt“

„schreibe dummen Code, der schlaue Daten verwendet“

•„Unix ist einfach. Es erfordert lediglich ein Genie, um seine Einfachheit zu verstehen.“ – Dennis Ritchie

•„Unix wurde nicht entwickelt, um seine Benutzer daran zu hindern, dumme Dinge zu tun, denn das würde diese auch davon abhalten

„Unix ist einfach. Es erfordert lediglich ein Genie, um seine Einfachheit zu verstehen

„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.“

„Alles ist eine Datei“

UNIX

• Bis UNIX V7 (1979) Quellcode an Universitäten öffentlich

• Bereley 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 (torvalds@kruuna.helsinki.fi)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,

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

MS-DOS

• Erstes verbreitetes BS für PC• DiskettenverwaltungssystemMicrosoft 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, 8-

Zeichen-Begrenzung für Dateinamen, kein GUI, aufwendige Installation von E/A, keine Sicherheitstechniken

MS-DOS

MS-DOS 1.x 12 (1981) – PC-DOSMS-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 SpeichermodellMS-DOS 6.0 (1993) – Festplattenkomprimierung,

Datenaustausch, Backup, SpeicheroptimierungMS-DOS 7.0 (1995) – Teil von Win95 MS-DOS 8.0 (2000) – Teil von WinME

MS-DOS Befehle

Befehl Wirkung Erklärungcd Öffnet einen Ordner, z.B. CD DOS geht in den Ordner DOS

"Current Directory"

cd .. Geht in der Ordnerhierachie einen Ordner hoch, also von z.B. C:\DOS nach C:\cd \ Es wird in den Stammordner des aktuellen Laufwerkes gewechselt

dir

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. "Directory"

mkdir Erstellt einen Ordner im aktuellen Ordner"Make Directory"

copy Kopiert Dateien, z.B. copy A:\ C:\ kopiert den Inhalt von A:\ nach C:\ "Kopieren"del Entfernt Dateien und Ordner, z.B. del datei.end löscht die Datei "datei.end" "Delete"move Verschiebt Dateien "Verschieben"ren Benennt Dateien um, z.B. ren a b benennt "a" nach "b" um "Rename"

editStartet den DOS Dateieditor, wenn man eine bestimmte Datei editieren will einfach edit datei.txt "Verändern"

format Formatiert Festplatten und Disketten "Formatieren"fdisk Formatiert Festplatten um sie fürs System benutzbar zu machen "Format Disk"date Zeigt das Datum an und man kann es verändern "Datum"time Zeigt die Zeit an und man kann sie verändern "Zeit"ver Zeigt die aktuelle DOS Version an "Version"

sysNur 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 "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

• Netzwerk-assistenten

• Sicherer Shutdown

• Nachfolger von Win ME/2000

• verschiedene Versionen▫ Home

▫ Professional

▫ Media Center Edition

▫ X64 Edition

• Systemwiderherstellung

• Datensicherung

• Datenverschlüsselung

• Firewall

• Popup Blocker

Windows XP (Whistler/NT5.0)

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

top related