Anmelden
Computerarchitektur und Betriebssysteme
Unten werden bis zu
50
Ergebnisse im Bereich
1
bis
50
angezeigt.
Zeige (
vorherige 50
|
nächste 50
) (
20
|
50
|
100
|
250
|
500
)
184px-JohnvonNeumann-LosAlamos.gif
184 × 240; 26 KB
Aktives warten vs mutex.jpg
1.345 × 1.155; 515 KB
https://vfhcab.eduloop.de/loop/Datei:Animation_der_Zusammenarbeit.mp4
Animation der Zusammenarbeit.mp4
; 1,68 MB
Aufgabe befehlssatz.jpg
705 × 596; 70 KB
Board und komponenten.jpg
1.173 × 661; 126 KB
CAB-Logo 150dpi.jpg
472 × 387; 125 KB
Citation.png
57 × 57; 1 KB
Controller-ready.jpg
420 × 141; 19 KB
Controller1.jpg
960 × 720; 41 KB
Controller3.jpg
960 × 720; 79 KB
Cpu.jpg
960 × 720; 33 KB
Cpu10-base.jpg
960 × 720; 71 KB
Cpu10-stack.jpg
960 × 720; 71 KB
Cpu11-base.jpg
960 × 720; 73 KB
Cpu11-limit.jpg
960 × 720; 72 KB
Cpu12-limit.jpg
960 × 720; 74 KB
Cpu13-interrupt-controller.jpg
1.302 × 726; 146 KB
Cpu2.jpg
960 × 720; 38 KB
Cpu3.jpg
960 × 720; 47 KB
Cpu4.jpg
960 × 720; 57 KB
Cpu5.jpg
960 × 720; 63 KB
Cpu6.jpg
960 × 720; 103 KB
Cpu7.jpg
960 × 720; 70 KB
Cpu8-speicher.jpg
1.496 × 720; 194 KB
Cpu9-speicher.jpg
1.496 × 720; 171 KB
Cs-linux.jpg
630 × 210; 55 KB
DMA-Controller.jpg
371 × 703; 42 KB
DMA-Quelle-CPU-Ziel.JPG
533 × 91; 15 KB
DMA-Quelle-DMA-Controller-Ziel.JPG
535 × 91; 14 KB
DMA-Transfer-2.jpg
681 × 660; 73 KB
DMA-Transfer.JPG
681 × 660; 49 KB
DMA-Transfer.jpg
681 × 660; 73 KB
Datei-in-fat.jpg
551 × 1.003; 75 KB
Dma-mit.jpg
700 × 337; 63 KB
Dma-ohne.jpg
606 × 333; 52 KB
Eawerk.jpg
960 × 720; 56 KB
Einfacher befehlssatz.JPG
183 × 260; 20 KB
Fat.jpg
281 × 744; 40 KB
Flip-Flop.jpg
131 × 127; 4 KB
Gatter.jpg
945 × 366; 51 KB
Geraetemanager.jpg
484 × 806; 135 KB
Geraeteverwaltung-1.jpg
670 × 377; 53 KB
Geraeteverwaltung-2.jpg
670 × 377; 79 KB
Geraeteverwaltung-3.jpg
670 × 377; 75 KB
Heitmann-applet.JPG
819 × 633; 64 KB
In-arbeit.jpg
604 × 468; 170 KB
Java-icon.jpg
83 × 43; 8 KB
Java konfigurieren.jpg
491 × 234; 22 KB
Java sicherheitseinstellungen.jpg
541 × 574; 78 KB
Kontextwechsel.jpg
700 × 250; 31 KB
Zeige (
vorherige 50
|
nächste 50
) (
20
|
50
|
100
|
250
|
500
)
Inhalt
Computerarchitektur und Betriebssysteme
1
Motivation
1.1
Hinweise für Studierende
1.2
Hinweise für Experten
1.3
Copyright
2
Computerarchitektur
2.1
Vom Anwender zur digitalen Schaltung
2.1.1
Erstmal aufschrauben
2.1.2
Von-Neumann-Rechner
2.1.2.1
Von-Neumann-Architektur
2.1.2.2
Von-Neumann-Flaschenhals
2.1.3
Komponenten eines Von-Neumann-Rechners
2.1.3.1
Zentraleinheit / CPU
2.1.3.1.1
Steuerwerk / Leitwerk
2.1.3.1.2
Rechenwerk
2.1.3.2
Speicherwerk
2.1.3.3
Ein- / Ausgabewerk
2.1.3.4
Gesamtbild eines Von-Neumann-Rechners
2.1.3.5
Von-Neumann-Zyklus
2.1.3.6
Animation der Zusammenarbeit
2.1.4
Eigenschaften eines Von-Neumann-Rechners
2.1.5
Digitale Schaltungen
2.1.5.1
Aufbau und Arbeitsweise eines Registers
2.1.5.2
Aufbau und Arbeitsweise des Speicherwerks
2.1.5.3
Aufbau und Arbeitsweise der ALU
2.1.5.4
Aufbau und Arbeitsweise eines Busses
2.1.6
Gatter
2.2
Prozessoren und ihre Befehle
2.2.1
Vom Quellcode zum Prozessor
2.2.2
Befehlssatz
2.2.3
Befehlsformat
2.2.3.1
Einadressformat
2.2.3.2
Zweiadressformat
2.2.3.3
Dreiadressformat
2.2.3.4
Das Adressformat und der Von-Neumann-Zyklus
2.2.3.5
Aufgaben & Co. zum Befehlsformat
2.2.4
Adressierungsarten
2.2.4.1
Unmittelbare Adressierung
2.2.4.2
Registeradressierung
2.2.4.3
Direkte/absolute Adressierung
2.2.4.4
Registerindirekte Adressierung
2.2.4.5
Indizierte Adressierung mit Verschiebung
2.2.5
Vom Programm zum Prozess
2.2.6
Gesamtbild der Programmausführung
2.2.7
Aufgaben & Co. zu Prozessoren
2.3
Weitere Komponenten der Computerarchitektur
2.3.1
Stackregister
2.3.2
Basisregister
2.3.2.1
Mehrere Prozesse gleichzeitig im Speicher
2.3.2.2
Swapping: Aus- und Einlagern von kompletten Prozessen
2.3.3
Limitregister zum Speicherschutz
2.3.4
Interrupt-Controller
2.3.4.1
Gründe für eine Interrupt-Auslösung
2.3.4.2
Speicherschutzverletzung
2.3.4.3
Quasi-gleichzeitige Ausführung mehrerer Prozesse
2.3.4.4
Kommunikation mit E/A-Geräten
2.3.4.4.1
Allgemeiner Aufbau eines Controllers
2.3.4.4.2
Zeit und Kosten machen den Unterschied
2.3.4.4.3
Datentransfer und Interrupts
2.3.5
DMA-Controller
2.3.5.1
Aufbau und Arbeitsweise eines DMA-Controllers
2.3.5.2
Direkt kann wirklich direkt bedeuten
2.3.6
MMU - Memory Management Unit
2.3.7
Moderne Bussysteme
2.4
Fazit Computerarchitektur
3
Betriebssysteme
3.1
Einführung Betriebssysteme
3.1.1
Geschichtlicher Überblick zu Betriebssystemen
3.1.2
Nur ein Prozessor mit einem Kern
3.1.3
Zwischen Benutzer und Hardware
3.1.4
Betriebsmittel
3.1.5
Betriebsmittel sind Prozessen zugeordnet
3.1.6
Zentrale Aufgabe eines Betriebssystems
3.1.7
Betriebssystemarchitekturen
3.1.8
Betriebssystemarten
3.1.9
Vom Batch-Job zum Multitasking
3.1.10
Kernel-Mode, User-Mode und Systemaufrufe
3.2
Prozessverwaltung
3.2.1
Prozess
3.2.2
Prozesskontext
3.2.3
Kontextwechsel
3.2.3.1
Die Statistik der Kontextwechsel unter Windows
3.2.3.2
Die Statistik der Kontextwechsel unter Linux
3.2.4
Prozesse erzeugen
3.2.4.1
Fork
3.2.4.2
CreateProcess
3.2.5
Prozesskontrollblock
3.2.5.1
Prozesskontrollblock unter Windows
3.2.5.2
Prozesskontrollblock unter Linux
3.2.6
Prozesstabelle
3.2.7
Prozesszustände
3.2.8
Verwalten von Prozessen
3.2.8.1
Prozessverwaltung aus Admin-Sicht unter Windows
3.2.8.2
Prozessverwaltung aus Admin-Sicht unter Linux
3.2.9
Threads
3.2.9.1
Java-Beispiel mit Threads
3.2.9.2
Prozesse und Threads unter Windows
3.2.9.3
Prozesse und Threads unter Unix und Linux
3.2.10
Scheduling
3.2.10.1
Scheduling-Ziele
3.2.10.2
Scheduling-Verfahren
3.2.10.2.1
First Come First Serve
3.2.10.2.2
Shortest Job First
3.2.10.2.3
Shortest Remaining Time Next
3.2.10.2.4
Round Robin
3.2.10.2.5
Priority Scheduling
3.2.10.2.6
Weitere Verfahren
3.2.10.3
Scheduling in gängigen Betriebssystemen
3.2.10.4
Vergleichskriterien
3.2.11
Synchronisation
3.2.11.1
Grundlegende Begriffsdefinitionen zur Synchronisation
3.2.11.1.1
Nebenläufigkeit
3.2.11.1.2
Race Conditions
3.2.11.1.3
Kritischer Abschnitt
3.2.11.2
Aktives Warten
3.2.11.2.1
Aktives Warten mit while
3.2.11.2.2
Das Problem des ungünstigsten Moments
3.2.11.2.3
Aktives Warten mit TSL
3.2.11.3
Semaphore
3.2.11.3.1
Mutex
3.2.11.3.1.1
Wechselseitiger Ausschluss
3.2.11.3.1.2
Reihenfolgedurchsetzung
3.2.11.3.2
Zählsemaphor
3.2.11.3.2.1
Erzeuger- / Verbraucherproblem
3.2.11.3.2.2
Philosophenproblem
3.2.11.4
Monitore
3.2.11.5
Zusammenfassung Synchronisation
3.2.11.6
Synchronisationstechniken moderner Betriebssysteme
3.2.11.7
Synchronisationsmechanismen in Programmiersprachen
3.2.12
Deadlocks
3.2.12.1
Vier Bedingungen nach Coffman
3.2.12.2
Deadlocks erkennen
3.2.12.3
Deadlocks ignorieren
3.2.12.4
Deadlocks vermeiden
3.2.12.5
Deadlocks verhindern
3.2.12.6
Deadlock-Fazit
3.2.13
Interprozesskommunikation
3.2.13.1
Zwei Threads kommunizieren über gemeinsame Variablen
3.2.13.2
Zwei Prozesse kommunizieren über gemeinsame Speicherobjekte
3.2.13.3
Zwei Prozesse kommunizieren über Shared Memory
3.2.13.4
Zwei Prozesse kommunizieren über Pipes
3.2.13.5
Zwei Prozesse kommunizieren über Sockets
3.2.13.6
Interprozesskommunikation-Fazit
3.3
Speicherverwaltung
3.3.1
Virtuelle Speicherverwaltung
3.3.1.1
Arbeitsweise der MMU
3.3.1.2
Seitentabellen
3.3.1.2.1
Einstufige Seitentabellen
3.3.1.2.2
Mehrstufige Seitentabellen
3.3.2
Swapping und Paging
3.3.2.1
Page Fault
3.3.2.2
Seitenersetzung
3.3.2.2.1
Was bei der Seitenersetzung passiert
3.3.2.2.2
Das Modifiziert-Bit
3.3.2.2.3
Seitenersetzungsverfahren
3.3.2.2.3.1
Optimaler Seitenersetzungsalgorithmus
3.3.2.2.3.2
NRU - Not Recently Used Algorithmus
3.3.2.2.3.3
FIFO - First In First Out Algorithmus
3.3.2.2.3.4
Second Chance Algorithmus
3.3.2.2.3.5
Working Set Algorithmus
3.3.3
Shared Memory
3.3.4
Speicherverwaltung moderner Betriebssysteme
3.3.4.1
Speicherverwaltung unter Linux
3.3.4.2
Speicherverwaltung in Windows
3.3.4.3
Speicherverwaltung unter Android
3.4
Geräteverwaltung
3.4.1
Rolle der Geräteverwaltung
3.4.2
Abhängig und gleichzeitig unabhängig
3.4.3
Gerätetreiber
3.4.4
Aufgaben eines Treibers
3.4.4.1
Initialisierung des Geräte-Controllers
3.4.4.2
Gerät dem Betriebssystem bekannt machen
3.4.4.3
Bereitstellen einer Schnittstelle zum Geräte-Controller
3.4.4.4
Interruptbehandlung für ein Gerät
3.4.4.5
Bereitstellen einer Schnittstelle zur Geräteverwaltung
3.4.4.6
Pufferung von Daten
3.4.4.7
Koordination nebenläufiger Zugriffe auf ein Gerät
3.4.5
Geräteklassen
3.4.5.1
Blockorientierte Geräte
3.4.5.2
Zeichenorientierte Geräte
3.4.5.3
Sonstige Geräte
3.4.6
Memory-Mapped-I/O
3.4.7
DMA - Direct Memory Access
3.4.8
Windows-Treiber auf GitHub
3.5
Dateiverwaltung
3.5.1
Datei
3.5.2
Dateisystem
3.5.3
Aufgaben eines Dateisystems
3.5.4
Dateisystemkonzepte
3.5.5
Von Windows unterstützte Dateisysteme
3.5.5.1
FAT - File Allocation Table
3.5.5.2
NTFS - New Technology File System
4
Aufgaben zur Prüfungsvorbereitung
4.1
Aufgaben zum Kapitel Vom Anwender zur digitalen Schaltung
4.2
Aufgaben zum Kapitel Prozessoren und ihre Befehle
4.3
Aufgaben zum Kapitel Weitere Komponenten der Computerarchitektur
4.4
Aufgaben zum Kapitel Einführung Betriebssysteme
4.5
Aufgaben zum Kapitel Prozessverwaltung
4.5.1
Aufgaben zu Prozesse und Threads
4.5.2
Aufgaben zum Scheduling
4.5.3
Aufgaben zur Synchronisation
4.5.4
Aufgaben zu Deadlocks
4.6
Aufgaben zum Kapitel Speicherverwaltung
4.7
Aufgaben zum Kapitel Geräteverwaltung
4.8
Aufgaben zum Kapitel Dateiverwaltung
5
Logbuch
5.1
Jahr 2013
5.2
Jahr 2014
5.3
Jahr 2015
5.4
Jahr 2016
6
Anhang
6.1
Zweier-Potenzen
6.2
Bits und Bytes
6.3
GiB, MiB, KiB im Vergleich zu GB, MB, KB
6.4
Java-Applets
6.5
Inhalt dieses LOOPs ausdrucken
6.6
Impressum
Abbildungsverzeichnis
Medienverzeichnis
Listingverzeichnis
Aufgabenverzeichnis
Literaturverzeichnis
Index
Export
Als PDF herunterladen