Basisinformationstechnologie I
Wintersemester 2013/14
11. Dezember 2013 – Betriebssysteme

Universität zu Köln. Historisch...
Seminarverlauf







16. Oktober: Organisatorisches / Grundlagen I √
23. Oktober: Grundlagen II √

30. Oktober: Gru...
Themenüberblick „Betriebssysteme“
Betriebssysteme
 Metaphern
 „Datei“
 „Ordner“
 „Desktop“

 Dateiverwaltung
 Prozes...
Betriebssysteme
Bildquelle Windows: http://www.winhistory.de/index.php
Blickwinkel (Tanenbaum)
Bottom-Up
„Die Aufgabe eines Betriebssystems besteht darin, eine
geordnete und kontrollierte Zutei...
Hässlich  Schön
OS bzw. Benutzungsschnittstelle mit dem
magischen Handschuh: „Minority Report“ (2002)

Bildnachweis: Mino...
Betriebssysteme: Intention I

(Interface / GUI)
Bereitstellung elementarer Dienste und
Ressourcen
 Dienste, die (vereinfa...
OS: Metaphern,
Dateiverwaltung
Dateiverwaltung: Metaphern
Dateiverwaltung: Metaphern

Quelle: http://3.bp.blogspot.com/-lpAg_sp3iNg/TadY5hZ7H1I/AAAAAAAAAE4/35Z-MALDS3o/s1600/DavidC...
http://www.mikrocontroller.net/articles/Festplatte
Dateizugriff: Adressierungsarten
Absolute Adressierung
D:bitstuffmp3ClarkTed EPClark - 01 - Ted.mp3
Relative Adressierung
...
Hierarchische Dateisysteme

Bildquelle: http://de.wikipedia.org/wiki/Dateisystem
NTFS: MFT
Wichtigste Datenstruktur jedes Volumes:
Masterdateitabelle (MFT, Master File Table)
 Lineare Folge von festgele...
Dateisysteme: MS proprietär
Von FAT-16 zu NTFS:
 FAT-16
 Altes MS-DOS Dateisystem
 Verwendet 16-Bit Adressen,
dadurch B...
NTFS: Cluster
Viele NTFS Partitionen verwenden 4-KB-Blöcke zur
Speicherung
Kompromiss zwischen:
 Großen Blöcken  effizie...
Fragmentierung
Dateioperationen
Grundmenge an (elementaren) Operationen zur
Verwaltung von Dateien:






Neu
Löschen (unlink)
Kopie...
vs.
Konsolenbasics (Linux)















touch
rm
rmdir
rm -r
cp
ls
less
for (( i = 1 ; i <= 1000; i++ )) do echo...
Betriebssystem: Zentrale Aufgaben
Dateiverwaltung √
 Abstraktionen / Schnittstellen für Zugriff auf Low-Level
Funktionen ...
OS-Aufgaben:
Prozessverwaltung
Begrifflichkeiten: Prozess, Programm, etc.

Rezept  Programm
Informatiker / Informatikerin 
Prozessor (CPU)
Zutaten für ...
…etwas geschieht…
Prozess, Programm

Der Sohn des kuchenbackenden Informatikers wird
von einer Biene gestochen – was geschieht?
 Der Bäcker...
Prozess
Prozess = „Aktivität jedweder Art“
Prozess umfasst:








Ein Programm
Eingaben
Ausgaben
Zustand

Mehrere ...
Prozess
Arbeitsdefinition „Prozess“: Ein auf einem Rechner
ablauffähiges oder im Ablauf befindliches
Programm, zusammen mi...
Prozessunterbrechung
Jedem Prozess wird vom Betriebssystem ein
eigener Adressbereich zugewiesen
Wird ein Prozess deaktivie...
Prozess vs. Threads
Jeder Prozess verfügt über einen eigenen
Speicherbereich

Threads sind leichtgewichtige Prozesse, verf...
Scheduling / Prozessverwaltung
Prozessverwaltung
Mehrere (rechenbereite) Prozesse konkurrieren um
Rechenzeit

Ist nur eine CPU im System vorhanden, muss
...
Scheduler / Multitasking
Multitasking / Multithreading = Fähigkeit eines
Betriebssystems, mehrere Aufgaben (Tasks /
Thread...
OS-Aufgaben:
Speicherverwaltung
Speicherverwaltung
Aufgabe des Betriebssystems: Versorgung der
Prozesse / Threads mit Arbeitsspeicher
 Memory Manager
Pro...
Speicherverwaltung
Grundproblem: Was geschieht, wenn der
physikalische Arbeitsspeicher voll ist?
 Lösung I (anno pief): P...
Swapping

 Problem: Externe Fragmentierung
/
Bit WiSe 2013 | Basisinformationstechnologie I - 07: Betriebssysteme
Bit WiSe 2013 | Basisinformationstechnologie I - 07: Betriebssysteme
Bit WiSe 2013 | Basisinformationstechnologie I - 07: Betriebssysteme
Bit WiSe 2013 | Basisinformationstechnologie I - 07: Betriebssysteme
Bit WiSe 2013 | Basisinformationstechnologie I - 07: Betriebssysteme
Bit WiSe 2013 | Basisinformationstechnologie I - 07: Betriebssysteme
Bit WiSe 2013 | Basisinformationstechnologie I - 07: Betriebssysteme
Upcoming SlideShare
Loading in...5
×

Bit WiSe 2013 | Basisinformationstechnologie I - 07: Betriebssysteme

699

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
699
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Bit WiSe 2013 | Basisinformationstechnologie I - 07: Betriebssysteme

  1. 1. Basisinformationstechnologie I Wintersemester 2013/14 11. Dezember 2013 – Betriebssysteme Universität zu Köln. Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners // jan.wieners@uni-koeln.de
  2. 2. Seminarverlauf       16. Oktober: Organisatorisches / Grundlagen I √ 23. Oktober: Grundlagen II √ 30. Oktober: Grundlagen III √ 06. November: Rechnertechnologie I √ 20. November: Rechnertechnologie II √ 27. November: Rechnertechnologie III √ Dezember, Januar:  Betriebssysteme  Programmiersprachen  Algorithmen und Datenstrukturen  (Theoretische Informatik)  Klausurvorbereitung  05. Februar: Klausur
  3. 3. Themenüberblick „Betriebssysteme“ Betriebssysteme  Metaphern  „Datei“  „Ordner“  „Desktop“  Dateiverwaltung  Prozessverwaltung  (Arbeits)Speicherverwaltung
  4. 4. Betriebssysteme
  5. 5. Bildquelle Windows: http://www.winhistory.de/index.php
  6. 6. Blickwinkel (Tanenbaum) Bottom-Up „Die Aufgabe eines Betriebssystems besteht darin, eine geordnete und kontrollierte Zuteilung der Prozessoren, Speicher und Ein-/Ausgabegeräte an die um sie konkurrierenden Programme durchzuführen“ (vgl. Tanenbaum: Moderne Betriebssysteme. 2009, S. 35 ff.)  Ein Betriebssystem übernimmt die Verwaltung aller Bestandteile eines komplexen Systems Top-Down Betriebssysteme verwandeln […] etwas Hässliches in etwas Schönes […].“ (vgl. Tanenbaum: Moderne Betriebssysteme. 2009, S. 34)  Programmiersicht: Ein Betriebssystem stellt Abstraktionen für Anwendungsprogramme bereit
  7. 7. Hässlich  Schön OS bzw. Benutzungsschnittstelle mit dem magischen Handschuh: „Minority Report“ (2002) Bildnachweis: Minority Report (2002), thealarmclock.com. http://www.thealarmclock.com/mt/archives/2007/12/brad_feld_joins.html
  8. 8. Betriebssysteme: Intention I (Interface / GUI) Bereitstellung elementarer Dienste und Ressourcen  Dienste, die (vereinfachten) Zugriff auf Ressourcen ermöglichen.  Ressourcen     Rechenzeit (CPU / GPU) Hauptspeicher Festplatten- / Wechselmedienspeicherplatz Interne Geräte wie Erweiterungskarten, OnboardKomponenten (z.B. Onboard Soundkarte, Onboard LAN)  Externe Geräte, z.B. über USB mit dem Rechner verbunden: Scanner, Drucker
  9. 9. OS: Metaphern, Dateiverwaltung
  10. 10. Dateiverwaltung: Metaphern
  11. 11. Dateiverwaltung: Metaphern Quelle: http://3.bp.blogspot.com/-lpAg_sp3iNg/TadY5hZ7H1I/AAAAAAAAAE4/35Z-MALDS3o/s1600/DavidCarsonsDesktop.jpg
  12. 12. http://www.mikrocontroller.net/articles/Festplatte
  13. 13. Dateizugriff: Adressierungsarten Absolute Adressierung D:bitstuffmp3ClarkTed EPClark - 01 - Ted.mp3 Relative Adressierung ./Clark – 01 - Ted.mp3 (dasselbe Verzeichnis) ../*.mp3 (eine Ebene / Ordner höher) ../../*.htm (zwei Ebenen höher)
  14. 14. Hierarchische Dateisysteme Bildquelle: http://de.wikipedia.org/wiki/Dateisystem
  15. 15. NTFS: MFT Wichtigste Datenstruktur jedes Volumes: Masterdateitabelle (MFT, Master File Table)  Lineare Folge von festgelegten 1-KB-Einträgen  Jeder MFT-Datensatz beschreibt eine Datei oder ein Verzeichnis   Enthält die Attribute der Datei (i.e. Name, Zeitstempel, Liste von Adressen, die angeben, wo auf der Platte die zugehörigen Blöcke stehen)  MFT ist selber eine Datei, kann somit irgendwo auf der Partition liegen
  16. 16. Dateisysteme: MS proprietär Von FAT-16 zu NTFS:  FAT-16  Altes MS-DOS Dateisystem  Verwendet 16-Bit Adressen, dadurch Beschränkung von Festplattenpartitionen auf max. 2GB  FAT-32  32-Bit Adressen; Max. 2TB Partitionen  NTFS  64-Bit Adressen; Max. 264 Byte große Partitionen  Cluster / Clustergrößen
  17. 17. NTFS: Cluster Viele NTFS Partitionen verwenden 4-KB-Blöcke zur Speicherung Kompromiss zwischen:  Großen Blöcken  effizienter Dateitransfer  Kleinen Blöcken  geringe interne Fragmentierung  Knackpunkt: Da das Dateisystem eine Datei als Folge von Blöcken verwaltet, belegt eine Datei mindestens die Größe eines Blockes (Default Windows: 4KB) – auch wenn sie nur 1 Byte an Daten enthält
  18. 18. Fragmentierung
  19. 19. Dateioperationen Grundmenge an (elementaren) Operationen zur Verwaltung von Dateien:      Neu Löschen (unlink) Kopieren Umbenennen Verschieben  „Einfach verkettete Liste“
  20. 20. vs.
  21. 21. Konsolenbasics (Linux)             touch rm rmdir rm -r cp ls less for (( i = 1 ; i <= 1000; i++ )) do echo “$i" >> example.txt; done; cat Pipe: | cat example.txt | wc –l chmod +x
  22. 22. Betriebssystem: Zentrale Aufgaben Dateiverwaltung √  Abstraktionen / Schnittstellen für Zugriff auf Low-Level Funktionen (z.B. der Festplatte) √  Blöcke / Cluster √  Fragmentierung √ Prozessverwaltung / Ressourcenverwaltung / Zeitplanung  Scheduling Speicherverwaltung
  23. 23. OS-Aufgaben: Prozessverwaltung
  24. 24. Begrifflichkeiten: Prozess, Programm, etc. Rezept  Programm Informatiker / Informatikerin  Prozessor (CPU) Zutaten für den Kuchen  Eingabedaten Prozess  Aktivität, die daraus besteht, dass der Bäcker das Rezept liest, die Zutaten herbeiholt und den Kuchen backt
  25. 25. …etwas geschieht…
  26. 26. Prozess, Programm Der Sohn des kuchenbackenden Informatikers wird von einer Biene gestochen – was geschieht?  Der Bäcker wechselt von einem Prozess (Backen) zu einem höheren Prozess  I. Erste-Hilfe-Buch zu Rate ziehen (Programm)  II. Medizinische Hilfe leisten (Prozess)
  27. 27. Prozess Prozess = „Aktivität jedweder Art“ Prozess umfasst:       Ein Programm Eingaben Ausgaben Zustand Mehrere Prozesse können sich einen einzelnen Prozessor teilen (Analogie: Kuchenbäcker) oder auf mehrere Prozessoren verteilt werden Eine Schedulingstrategie entscheidet, wann die Arbeit an einem Prozess unterbrochen und ein anderer Prozess bedient wird.
  28. 28. Prozess Arbeitsdefinition „Prozess“: Ein auf einem Rechner ablauffähiges oder im Ablauf befindliches Programm, zusammen mit all seinen benötigten Ressourcen wird als Prozess oder Task bezeichnet. Prozesszustände: Nachdem ein Prozess gestartet wurde, kann er sich in verschiedenen Zuständen befinden:     rechenbereit rechnend suspendiert  rechenbereit blockiert
  29. 29. Prozessunterbrechung Jedem Prozess wird vom Betriebssystem ein eigener Adressbereich zugewiesen Wird ein Prozess deaktiviert, müssen folgende Informationen gespeichert werden, um ihn später reaktivieren zu können:  der Programmcode des Prozesses  seine im Arbeitsspeicher befindlichen Daten  der Inhalt der CPU-Register einschließlich des Befehlszählers  eine Tabelle aller geöffneten Dateien mit ihrem aktuellen Bearbeitungszustand
  30. 30. Prozess vs. Threads Jeder Prozess verfügt über einen eigenen Speicherbereich Threads sind leichtgewichtige Prozesse, verfügen über keinen eigenen Speicherbereich Ein Prozess kann aus einem oder mehreren Threads bestehen Vorteile von Threads:  Kommunikation zwischen Threads möglich, die demselben Prozess zugeordnet sind, da gleicher Adressbereich  Leichter, d.h. schneller zu erzeugen und wieder zu zerstören als Prozesse  geringerer Laufzeit-Overhead zur Erzeugung und Verwaltung von Threads als bei Prozessen
  31. 31. Scheduling / Prozessverwaltung
  32. 32. Prozessverwaltung Mehrere (rechenbereite) Prozesse konkurrieren um Rechenzeit Ist nur eine CPU im System vorhanden, muss entschieden werden, welcher Prozess als nächstes läuft. Der Teil des Betriebssystems, der diese Wahl trifft, wird als Scheduler bezeichnet (kommt beim präemptiven Multitasking zum Einsatz) Abbildung aus: Tanenbaum: Moderne Betriebssysteme. 2009, S. 132.
  33. 33. Scheduler / Multitasking Multitasking / Multithreading = Fähigkeit eines Betriebssystems, mehrere Aufgaben (Tasks / Threads) nebeneinander auszuführen U.a. zwei Verfahren:  Kooperatives Multitasking  Auch: Prioritätsabhängige Verwaltung  Präemptives Multitasking  Auch: Zeitscheibenverfahren  Z.B. Round-Robin-Strategie (Rundlauf-Strategie)
  34. 34. OS-Aufgaben: Speicherverwaltung
  35. 35. Speicherverwaltung Aufgabe des Betriebssystems: Versorgung der Prozesse / Threads mit Arbeitsspeicher  Memory Manager Prozesse müssen vom OS vor gegenseitiger Beeinträchtigung durch fehlerhafte Adressierung gemeinsam benutzter Speicherbereiche geschützt werden Wesentliche Verfahren zur Speicherverwaltung:  Swapping  Paging
  36. 36. Speicherverwaltung Grundproblem: Was geschieht, wenn der physikalische Arbeitsspeicher voll ist?  Lösung I (anno pief): Programmierer teilen ihre Programme manuell in kleine Segmente (sog. Overlays) auf. Overlays wurden auf der Festplatte gespeichert und bei Bedarf dynamisch vom Betriebssystem ein- und ausgelagert.  Lösung II: Virtueller Speicher  Swapping  Paging
  37. 37. Swapping  Problem: Externe Fragmentierung
  38. 38. /

×