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
)
(
Versionen
)
Inhalt dieses LOOPs ausdrucken
[23.118 Bytes]
(
Versionen
)
Prozesskontrollblock unter Linux
[14.380 Bytes]
(
Versionen
)
Wechselseitiger Ausschluss
[11.653 Bytes]
(
Versionen
)
Vom Quellcode zum Prozessor
[11.077 Bytes]
(
Versionen
)
Aufgaben zum Kapitel Speicherverwaltung
[11.066 Bytes]
(
Versionen
)
Threads
[9.946 Bytes]
(
Versionen
)
Kernel-Mode, User-Mode und Systemaufrufe
[9.483 Bytes]
(
Versionen
)
Speicherwerk
[9.111 Bytes]
(
Versionen
)
Interrupt-Controller
[9.077 Bytes]
(
Versionen
)
Aufbau und Arbeitsweise eines Registers
[8.942 Bytes]
(
Versionen
)
Kritischer Abschnitt
[8.786 Bytes]
(
Versionen
)
Moderne Bussysteme
[8.734 Bytes]
(
Versionen
)
Scheduling
[8.642 Bytes]
(
Versionen
)
Blockorientierte Geräte
[8.560 Bytes]
(
Versionen
)
MMU - Memory Management Unit
[8.460 Bytes]
(
Versionen
)
Steuerwerk / Leitwerk
[8.452 Bytes]
(
Versionen
)
Einstufige Seitentabellen
[8.294 Bytes]
(
Versionen
)
Das Problem des ungünstigsten Moments
[8.157 Bytes]
(
Versionen
)
Jahr 2013
[8.146 Bytes]
(
Versionen
)
Datentransfer und Interrupts
[8.070 Bytes]
(
Versionen
)
Semaphore
[8.008 Bytes]
(
Versionen
)
Von Windows unterstützte Dateisysteme
[7.910 Bytes]
(
Versionen
)
NRU - Not Recently Used Algorithmus
[7.850 Bytes]
(
Versionen
)
DMA-Controller
[7.688 Bytes]
(
Versionen
)
Virtuelle Speicherverwaltung
[7.556 Bytes]
(
Versionen
)
Interruptbehandlung für ein Gerät
[7.526 Bytes]
(
Versionen
)
Deadlocks erkennen
[7.264 Bytes]
(
Versionen
)
Bereitstellen einer Schnittstelle zum Geräte-Controller
[7.196 Bytes]
(
Versionen
)
Aktives Warten mit while
[6.987 Bytes]
(
Versionen
)
Shared Memory
[6.702 Bytes]
(
Versionen
)
Betriebsmittel sind Prozessen zugeordnet
[6.380 Bytes]
(
Versionen
)
Aufgaben zum Kapitel Dateiverwaltung
[6.372 Bytes]
(
Versionen
)
Round Robin
[6.216 Bytes]
(
Versionen
)
Literatur
[5.881 Bytes]
(
Versionen
)
Mehrere Prozesse gleichzeitig im Speicher
[5.622 Bytes]
(
Versionen
)
Quasi-gleichzeitige Ausführung mehrerer Prozesse
[5.556 Bytes]
(
Versionen
)
Page Fault
[5.279 Bytes]
(
Versionen
)
Fork
[5.278 Bytes]
(
Versionen
)
Swapping und Paging
[5.043 Bytes]
(
Versionen
)
FAT - File Allocation Table
[5.005 Bytes]
(
Versionen
)
Aufgaben zur Synchronisation
[4.922 Bytes]
(
Versionen
)
Aktives Warten mit TSL
[4.848 Bytes]
(
Versionen
)
Zeichenorientierte Geräte
[4.840 Bytes]
(
Versionen
)
Aufgaben zum Kapitel Prozessoren und ihre Befehle
[4.787 Bytes]
(
Versionen
)
Aufgaben zum Kapitel Vom Anwender zur digitalen Schaltung
[4.630 Bytes]
(
Versionen
)
Betriebssystemarten
[4.468 Bytes]
(
Versionen
)
Impressum
[4.220 Bytes]
(
Versionen
)
Deadlocks vermeiden
[4.195 Bytes]
(
Versionen
)
Aufgaben zum Scheduling
[4.133 Bytes]
(
Versionen
)
Speicherverwaltung
[4.081 Bytes]
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