Betriebssysteme KE1 und KE2 Flashcards
Was war der ENIAC?
Der ENIAC wurde durch physische Veränderung der Hardware programmiert. Er war ein Elektronenrechner der mit 18.000 Röhren bestückt war und 30 Tonnen wog,
Was zeichnet die klassische Architektur eines von-Neumann-Rechners aus?
Das auszuführende Programm ist nicht mehr ein fester Bestandteil des Rechners. Es wird vor dem Programmlauf in den Speicher des Rechners geladen und hinterher wieder entfernt.
Was sind die wesentlichen Bestandteile eines von Neumann Rechners?
- Der Prozessor (CPU = Central Processing Unit)
- Der Hauptspeicher (Main Memory)
- die Ein- /Ausgabegeräte (I/O devices)
Wie wird der Processor noch bezeichnet?
ALU (arithmetische Logic Unit)
Wie ist der Hauptspeicher organisiert?
Der Prozessor greift auf die Programme und die Daten zu, die sich zur Laufzeit im Hauptspeicher befinden. Dieser ist als eine lange Folge von gleich großen Speicherzellen organisiert, die einzeln adressiert werden können. (Wahlfreier Zugriff)
Was ist ein „Word“?
Der Inhalt einer Speicherzelle. Es besteht aus einem oder mehreren Bytes.
Wieviele Bit enthält ein Byte?
8 Bit
Was ist ein Bit
Ein Bit hat den Wert null oder eins.
Rechne 1 MB um:
KB
Byte
1 MB
= 1024 KB
= 1024^2 Byte
Wie rechnet man die Binärdarstellung einer Dezimalzahl um?
Teile durch 2 und stelle den Restwert nach links Bspl: 160= 160/2 =80 =0 80/2 =40 = 0 40/2 = 20 = 0 20/2 = 10 = 0 10/2 = 5 = 0 5/2 = 2 = 1 2/2 = 1 = 0 1/2 = 0 = 1
= 10100000
Was ist ein GHz?
Ein GHz (Gigahertz) ist eine Taktfrequenz, also die Anzahl der Takte pro Sekunde.
Ein Gigahertz bedeutet einen Takt von einer Nanosekunde (eine Milliarde Takte pro Sekunde)
Was versteht man unter Zugriffszeit?
Die Zeit zwischen dem Aufbringen einer Adresse auf den Adressbus und der Ankunft des zugehörigen Speicherzelleninhalts über den Datenbus.
Was ist der Cache?
Der Cache ist im vergleich zum Hauptspeicher ein kleinerer aber schnellerer Zwischenspeicher. Häufig benutzte Daten werden vorübergehend vom Hauptspeicher in den Cache kopiert. Wenn Daten benötigt werden, schaut man zuerst im Cache.
Welche Aufgaben hat das Betriebssystem bzgl. Cache?
- Cache Management:
Wenn kein Platz mehr im Cache ist, wird entschieden welche Daten überschrieben werden können - Cache-Konsistenz
Angenommen, der Wert einer Variablen soll verändert werden. Wenn diese Änderung nur an der Kopie im Cache vollzogen wird, so besteht anschließend ein Unterschied zwischen dem Original im Hauptspeicher und der Kopie im Cache. Das Betriebssystem muss dafür sorgen, dass sich hieraus keine Fehler ergeben. Dieses Problem ist besonders gravierend bei Multiprozessor Systemen, bei denen jeder Prozessor über einen eigenen Cache verfügt.
Was ist der Primärspeicher?
Hauptspeicher
Was ist die Magnetplatte?
Die Magnetplatte ist ein Sekundärspeicher. Sie ist auf beiden Seiten mit einer magnetisierbaren Oberfläche beschichtet und dreht sich mit rund einhundert Umdrehungen pro Sekunde.
Wie kann man bei der Magnetplatte die Suchzeit verringern?
- zusammengehörende Informationen sollte möglichst in benachbarten Sektoren und Zylindern gespeichert werden.
- wenn bei einem Plattenlaufwerk mehrere Schreib-Leseaufträge gleichzeitig vorliegen, sollte eine günstige Bearbeitungsreihenfolge gewählt werden. (Disk scheduling)
Was sind Abarbeitungsstrategien für eine Magnetplatte?
- FCFS (First-Come, first-served)
- SSTF (shortest-seek-time-First)
- SCAN
Was ist FCFS?
First-come, first-served:
Bearbeitet die Aufträge in der Reihenfolge ihres Eingangs.
Was ist SSTF?
(Shortest-seek-time-first)
Bearbeitet jeweils denjenigen Auftrag als nächsten, dessen Spur der momentanen Position des Schreib-/Lesekopfs am nächsten liegt
Was ist SCAN?
SCAN bewegt den Kopf abwechselnd von außen nach innen und von innen nach außen über die gesamte Platte und führt dabei die Aufträge aus, deren Spuren gerade überquert werden
Was dauert länger?
Der Zugriff auf die Magnetplatte oder auf den Hauptspeicher?
Der Zugriff auf die Magnetplatte dauert sehr viel länger als auf den Haupspeicher
Was sind die Vorteile der Magnetplatte?
Die Magnetplatte liefert ein viel größeres Datenvolumen als der Hauptspeicher. Ein Sektor enthält zwischen 0, und 4 KByte Nutzinformation.
Wie wird die Nutzinformation eines Sektors in einer Magnetplatte bezeichnet?
Block
Was ist eine RAM-Disk?
Unter einer RAM-Disk versteht man eine fest reservierten Teil des Hauptspeichers, der von Anwenderprogrammen und Anwendern wie eine Magnetplatte benutzt werden kann.
Warum ist die Magnetplatte nicht für Langzeitarchivierung geeignet?
- Magnetplatten sind für wahlfreien Zugriff konzipiert und deshalb pro Mbyte Kapazität zu teuer, und darauf Informationen abzulegen, auf die nur selten zugegriffen wird.
- Sie sind oft im selben Gehäuse untergebracht wie Prozessor und Hauptspeicher und erlauben es uns deshalb nicht, Informationen an getrennten Ort zu verwahren oder auf andere Rechner zu transferieren
Was sind Teritärspeicher?
Teritärspeicher sind Datenträger, die preiswert sind und sich leicht vom Rechner entfernen lassen.
Z.b. Disketten, CD´s…
Wodurch zeichnen sich Magnetbänder aus?
Ihre Kapazität ist sehr viel größer als die einer Magnetplatte. Sie bieten aber nur sequentiellen Zugriff. Dies führt zu einer extrem langen Zugriffszeit.
Was versteht man unter einer Jukebox?
In einer juke-box werden einige hundert Kasetten von Magnetbändern zusammen gefasst.
Wie funktionieren CD´s DVDS
Die Daten werden optisch gespeichert und von einem Laser abgetastet
Was ist ein Flash-basierter Speicher?
Ein Flash-Basierter Speicher ist preisgünstiger als die externe Festplatte. Hier handelt es sich um Speicherchips, die Daten permanent, also auch ohne Stromversorgung speichern. Sie können auch schnell überschrieben werden. Z.B. USB-Sticks/Speicherkarten.
Wie werden Sekundär- und Teritärspeicher noch genannt?
Externspeicher
Zähle die Speicherarten nach Zugriffszeit aufsteigend auf (kosten absteigend)
- CPU-Register
- Cache
- Hauptspeicher
- Sekundärspeicher
- Teritärspeicher
Was ist ein Bus
Ein Bündel von Leitungen zusammen mit einem Protokoll, das genau festlegt, welche Nachrichten über den Bus geschickt werden können und wie diese Nachrichten durch Signale auf den Leitungen dargestellt werden.
Ein Bus verbindet viele Geräte, die alle über den Bus miteinander kommunizieren können.
Zu jedem Zeitpunkt kann aber nur eine Nachricht über den Bus verschickt werden.
Warum werden Geräte nicht direkt an den Bus angeschlossen?
Geräte werden über einen Controller an den Bus angeschlossen, da wenn die CPU alle Geräte selbst steuern müsste, wäre sie damit so belastet, dass für die eigentliche Programmausführung zu wenig Zeit bliebe.
Für welche Gerätetypen gibt es einen Cotroller der die Steuerung des Geräts übernimmt?
Zu jedem Gerätetypen gibt es einen Controller, der die Steuerung des „nackten“ Geräts übernimmt.
Oft können mehrere Geräte gleichen Typs an einen Controller angeschlossen werden.
Was ist ein Controller?
Ein Controller ist ein Stück elektronische Hardware.
Für komplexere Geräte wie z.b. Eine Magnetplatte wird meist hierfür ein vollwertiger Prozessor verwendet, der auf einer Platine im Gehäuse des Plattenlaufwerks untergebracht ist.
Was ist ein Gerätetreiber?
Über einen Gerätetreiber (Software) kommuniziert das Betriebssystem mit den Controllern, die die Geräte steuern.
Welche Register besitzt ein Controller?
- Datenausgaberegister (Data-out)
Hierhin schreibt der Treiber Daten, die für den Controller bestimmt sind. - Dateneingangsregister(data-in),
in das der Controller Daten schreibt, die für den Gerätetreiber bestimmt sind. - Statusregister (Status):
hier kann der Treiber den Zustand des Geräts abfragen, ob es zum Beispiel noch beschäftigt ist, oder ob Daten aus dem Dateneingangsregister abgeholt werden können
Kontrollregister (Control):
hier hinterlegt der Treiber Befehle an den Controller, zum Beispiel einen Lesebefehl.
Was sind die Vorteile/Nachteile bei der Implementierung von Funktionen in Hardware?
Vorteil:
Effizienter
Dient der Abstraktion, weil die Details in der Hardware verschwinden
Nachteil:
Eine Implementierung in Software macht weniger Arbeit und lässt sich leichter ändern
Was wird als virtuelles Gerät bezeichnet?
Die konzeptionelle Einheit von
Gerätetreiber
Controller
Gerät
Welche Konzepte stehen im Modell des virtuellen Geräts?
Abstraktion
Kapsellung, auch Geheimprizip genannt
Schichtenmodell
Was bedeutet Abstraktion?
Abstraktion bedeutet, von technischen Details abzusehen und sich auf das Wesentliche zu konzentrieren.
Das Konzept der Abstraktion besagt, dass man auf höherer Ebne gewisse Details nicht zu kennen braucht.
Was ist das Prinzip der Kapselung?
Das Prinzip der Kapselung besagt man darf die Details in unteren Ebenen nicht kennen. Eine Alternative Bezeichnung hierfür ist Geheimnisprinzip
Was sind die Gründe für Kapselung?
Missbrauch verhindern
Änderungen erleichtern
Was ist das Schichtenmodell?
Bspl.
Oberste Schicht: in Software implementiert
mittlere Schicht: elektronische Hardware
Unterste Schicht: mechanische Hardware
Die Kommunikation mit der Außenwelt erfolgt nur in der obersten Schicht. In jeder Schicht werden von oben ankommende Aufträge bearbeitet und zur weiteren Bearbeitung an die nächsttiefere Schicht weitergeleitet. Wenn in der untersten Schicht der Auftrag vollst. Erledigt ist, wird dort eine Antwort generiert und durch alle Schichten wieder nach oben geleitet. Die oberste Schicht schickt dann die Antwort an den externen Auftraggeber.
Was sind die Vor und Nachteile vom Schichtenmodell?
Ansatz ist nur sinnvoll, wenn jede Schicht einen wesentlichen Beitrag zur Bearbeitung der Aufträge und Antworten leisten kann.
Vorteil:
Einfache Implementierung, weil nur die beiden Schnittstellen zur nächsthöheren und nächsttieferen Schicht realisiert werden müssen u. Weil im Inneren der Schicht nur eine klar umrissenen Teilaufgabe gelöst werden muss
Nachteil: sind die Schichten zu klein entsteht hoher Verwaltungsaufwand
Was ist poling?
Die CPU kann - neben ihrer anderen Arbeit - immer wieder das Statusregister des Controllers abfragen, um festzustellen, ob der Auftrag schon erledigt ist. Diesen Abfragebetrieb nennt man poling.
Liegen die Register im Hauptspeicherbereich, so lässt sich eine solche Abfrage zwar recht schnell erledigen, aber wenn sie immer wieder erfolglos bleibt, wird insgesamt viel CPU-Zeit damit verbracht
Was ist ein Unterbrechungsbetrieb?
Der Controller benachrichtigt die CPU, sobald er den Auftrag ausgeführt hat; hierzu unterbricht er die CPU bei ihrer augenblicklichen Arbeit.
Dieser Unterbrechungsbetrieb bildet die Grundlage für die Arbeitsweise moderner Computersysteme
Wie geht die CPU mit Unterbrechungen um?
Die CPU besitzt einen besonderen Eingang für Unterbrechungen.
Entdeckt die CPU ein Unterbrechungssignal, rettet sie den Inhalt des Befehlszählregisters (Adresse des nächsten auszuführenden Befehls) in einen systemeigenen Bereich des Hauptspeichers und lädt stattdessen die Anfangsadresse einer allgemeinen Prozedur zur Unterbrechungshandlung (interrupt Händler)
Wie wird mit Mehreren Unterbrechungen umgegangen?
Bei vielen Prozessoren lässt sich der Unterbrechungseingang vorübergehend außer Betrieb setzten, sodass weitere Unterbrechungssignale wirkungslos bleiben.
Zum anderen kann man jedem Unterbrechungswunsch eine Priorität zuordnen
Was ist ein trap?
Wenn Software Unterbrechungen im CPU-Betrieb auslöst
In welchen Fällen kommt es zu Software-Unterbrechungen der CPU
Ausnahmen, wie z.b. DIV/0
Verfahren zur Kontrollübergabe:
Systemaufrufe, diese bilden zusammen die Programmierschnittstelle zwischen den Anwenderprogrammen und dem Betriebssystem.
Was ist die unterbrechungsgesteuerte ein/Ausgabe?
Der Controller schreibt jeweils ein Wort in sein Dateneingangsregister und löst eine Unterbrechung aus.
Dadurch wird der Gerätetreiber gestartet.
Er veranlasst, dass das Wort von der CPU in Empfang genommen und in den Hauptspeicher geschrieben wird. Wenn ein Block 512 Bytes enthält und ein Wort zwei Bytes umfasst, Weide die CPU bei diesem Verfahren 256-mal unterbrochen, bevor der Datenblock endlich im Hauptspeicher steht
Was ist DMA?
Der direkte Speicherzugriff (direct memory Access).
Hierbei wird im Computer ein spezieller DMA-Controller eingesetzt, der selbstständig über den Bus Daten in den Hauptspeicher übertragen kann, ohne die CPU zu bemühen. Auch der Gerätecontroller muss für das DMA-Verfahren ausgelegt sein.
Was wird als handshaking bezeichnet?
Eine Kommunikation wie die zwischen DMA- und Gerätecontroller wird im Englischen als handshaking bezeichnet, sie stellt einen einfachen Fall eines Protokolls dar.
Was ist der Ur-Lader (bootloader)
Der Ur-Lader befindet sich in einem speziellen Teil des Hauptspeichers, der seinen Inhalt auch nach Abschalten des Stroms behält.
Der Ur-Lader lädt zunächst den eigentlichen Lader von der Magnetplatte.
Der Lader wird nun gestartet und lädt das Betriebssystem in den Hauptspeicher. Dieser Vorgang wird als hochfahren (booting) bezeichnet.
Welche Programme laufen im Benutzermodus?
Alle Anwendungsprogramme
Welche Befehle können nur im Systemmodus ausgeführt werden?
Privilegierte Maschinenbefehle
Kann ein Benutzer direkt auf ein gerät zugreifen?
Kein Benutzer kann direkt auf ein Gerät zugreifen; man muss zu diesem Zweck das mit höheren Rechten ausgestattete Betriebssystem um Hilfe bitten.
Was ist der Adressraum?
Bevor ein Programm gestartet wird, weist ihm das Betriebssystem einen bestimmten Bereich im Hauptspeicher zu, seinen Adressraum.
Das Programm darf nur auf solche Adressen zugreifen, die in seinem eigenen Adressraum liegen.
Was sind relokierbare Programme (relocable code)?
Zuerst wird bei der Übersetzung eines Programms vom Compiler in Maschinensprache eine relative Adresse gegeben.
Wird das Programm in seinen Adressraum geladen, stimmen die relativen Adressen nicht mit den absoluten Adressen überein.
Wenn das Programm eine Speicherzelle adressieren will, wird die im Programm enthaltene relative Adresse zur niedrigsten Adresse des Adressraums addiert
Somit können die Programme zusammen mit ihren Adressräumen beliebig im Hauptspeicher verschoben werden
Formel
absolute Adresse = (Basisregister) + relative Adresse
Wie heißt ein Programm, dass sich gerade in der Ausführung befindet?
Prozess
Aus was besteht der Prozesskontext und wo wird er verwaltet?
- den Registerinhalten, insbesondere
- Befehlszähler und
- Grenzen des Adressraums
- Seitentabelle
- Prozessnummer
- Priorität
Vom Betriebssystem im Prozesskontollblock.
Was ist PCB?
Der Prozesskontrollblock
In ihm werden Angaben zum Prozesskontext zusammen gefasst.
Es wird dort auch vermerkt ob der Prozess im System- oder Benutzermodus arbeitet.
Wieviele Prozesse können im Zustand „rechnend“ zeitgleich im Einprozessorsystem sein?
Nur einer - nur der Prozess, dessen Programm gerade von der CPU ausgeführt wird.
Welche Prozesszustände gibt es?
Erzeugt Bereit Blockiert Rechnend Beendet
Was bedeutet der Prozesszustand „bereit“
Der Prozess bewirbt sich mit den übrigen bereiten Prozessen um die Zuteilung der CPU
Was bedeutet der Prozesszustand „blockiert“
Er wartet darauf, dass seine Ein-/Ausgabeanforderung erledigt wird oder das ein anderes Ereignis eintritt
Was ist der CPU-Scheduler?
Der CPU-Scheduler entscheidet, welcher der bereiten Prozesse als nächster rechnen darf.
Folgende Strategien kann er anwenden:
FCFS (First-come, First-Server)
-> Nachteil früh eintreffender Prozess mit hohem Rechezeitbedarf oder einer Endlosschleife hält späteren Prozesse auf
SJF (shortest Job First)
-> Vorraussetzung: die benötigte Rechenzeit lässt sich gut vorhersagen
Was ist „Stapel- oder Batch-Betrieb“?
Der Rechner erhält einen ganzen Schub von Aufträgen (Jobs), die keine Interaktion mit dem Benutzer erfordern und regelmäßig auszuführen sind, so dass man ihre Laufzeiten in etwa kennt.
Was ist Time-Sharing-Betrieb?
Mehrere Benutzer können zur selben Zeit an einem Rechner arbeiten, und jeder kann gleichzeitig mehrere Programme laufen lassen
Tatsächlich arbeiten arbeiten die Programme jedoch nicht gleichzeitig bei nur einer CPU, sondern die Prozesse werden sehr schnell gewechselt.
Was ist das Verfahren „round Robin“?
Die bereiten Prozesse werden reihum bedient. Dazu kann man sie in der Reihenfolge ihres Eintreffens in einer kreisförmigen Warteschlange speichern.
Wie nennt man das Umschalten zwischen Prozessen?
Kontextwechsel (context switch)
Was macht der Dispatcher?
Er führt den Kontextwechsel durch (das Umschalten zwischen Prozessen)
Was passiert wenn ein rechnender Prozess auf ein bestimmtes Ereignis warten will?
Ein rechnender Prozess kann durch einen Systemaufruf mitteilen, dass er auf ein bestimmtes Ereignis warten will, er wird dann blockiert und kommt in eine spezielle Warteschlange, in der möglicherweise noch andere blockierte Prozesse stehen, die auf dasselbe Ereignis warten. Wenn dann dieses Ereignis eintritt, kann der Prozess, welcher es auslöst, ein Signal abschicken. Dieses Signal bewirkt, dass alle Prozesse aus der Warteschlange wieder in den Zustand bereit versetzt werden.
Beschreibe was bei der Ausführung des zu read zugehörigen Systemaufrufs in einem Prozess P geschieht.
- Eine Software-Unterbrechung wird ausgelöst, der Kontext von P wird zunächst gerettet, dann wird der Ein/Ausgabeteil des Betriebssystems aufgerufen.
- Dieser prüft zunächst, ob die benötigten Daten nicht schon im Cache im Hauptspeicher stehen, in dem Fall werden sie in den Adressraum von P kopiert, und nach der Rückkehr von der Software-Unterbrechung wird der Prozess P sofort wieder rechnend.
- Stehen die Daten nicht im Cache, ist ein Plattenzugriff erforderlich. Der Prozess P wird solange blockiert. Der Leseauftrag wird an die Geräte-Warteschlange des Plattenlaufwerks angehängt. Dann gibt es dem Gerätetreiber Bescheid.
- Sobald der Gerätetreiber frei ist, und rechnend wird, entnimmt er den Auftrag der Geräte-Warteschlange. Der Gerätetreiber reserviert im betriebssystemeigenen Bereich Speicherplatz für die zu lesenden Daten und schickt einen Lesebefehl an den Gerätecontroller. Dann führt der Treiber den Systemaufruf Warten aus und blockiert.
- Der Gerätecontroller bestimmt erst die physische Adresse, dann führt er den Leseauftrag aus und überträgt zusammen mit dem DMA-Controller die Daten in den reservierten Bereich im systemeigenen Speicher, währenddessen können auf der CPU beliebige andere Prozesse rechnen. Danach wird eine Unterbrechung ausgelöst.
- Mittels des Unterbrechungsvektors wird die Unterbrechungsroutine des Plattenlaufwerks gestartet. Sie schickt das Signal, auf das der Gerätetreiber wartet, und kehrt dann von der Unterbrechung zurück. Der Gerätetreiber wird dadurch bereit.
- Sobald der Gerätetreiber rechnend wird, sieht er in der Geräte-Warteschlange nach, von welchem Prozess der Leseauftrag stammte, gibt dem Ein-/Ausgabeteil des Betriebssystems Bescheid und geht in denn Zustand bereit
- Der Ein-/Ausgabeteil des Betriebssystems kopiert die Daten aus dem systemeigenen Speicher in den Adressraum des Prozesses P und versetzt P aus dem Zustand blockiert in den Zustand bereit.
- Sobald der Prozess P wieder rechnen darf, wird der Systemaufruf beendet, und P setzt seine Arbeit hinter dem read fort.
Was enthält der Kern (Kernel)
Der Kern (Kernel) des Betriebssystems enthält
Geräteunabhängige Teile für Blockeises Ein- und Ausgabe. Ein weiter Teil des Kerns ist für die Hauptspeicherverwaltung zuständig.
Den CPU Scheduler
In UNIX und Linux auch die Gerätetreiber
Und weitere Teile für die Erledigung anderer Aufgaben
Welche zwei Schnittstellen hat der Kern?
Controllerschnittstelle = Verbindung zur Hardware Programmierschnittstelle = Stellt die Dienste des Betriebssystems für die Programme zur Verfügung.
Welche groben Aufgabenbereiche haben die Systemaufrufe?
- Prozesse
- Dateien
- Information
- Kommunikation
Was muss passieren wenn in einem Prozess ein Fehler auftritt?
Wenn ein Fehler auftritt, muss der Prozess abgebrochen werden (Abort)
Dabei sollte es möglich sein, eine Fehlermeldung auszugeben oder den Inhalt von Registern und Adressraum für die Fehlersuche zu speichern (dump)
Was ist eine Datei?
Eine Datei ist grob gesagt eine Sammlung zusammengehöriger Information
Dateien befinden sich im Sekundär- und Teritärspeicher.
Was passiert beim öffnen einer Datei?
Durch das Öffnen wird die Datei in eine spezielle Liste eingetragen, bei den folgenden Zugriffen braucht dann nicht jedesmal aufs neue die physische Adresse der Datei bestimmt zu werden. Außerdem lässt sich damit verhindern, dass zwei Benutzer sich beim Zugriff auf dieselbe Datei stören.
Wie kann die Kommunikation zwischen Prozessen erfolgen?
Die Kommunikation zwischen Prozessen kann auf zwei verschiedene Arten erfolgen:
Versand von Nachrichten (Message Passung)
Über einen gemeinsamen Speicherbereich (Shared Memory)
Wie kann der Versand von Nachrichten zwischen den Prozessen erfolgen?
- verbindungslos (connectionless)
wie versenden eines Briefs - verbindungsorientiert (Connection-orientier)
Es wird eine Verbindung zwischen Sender und Empfänger aufgebaut, über die dann die Kommunikation erfolgt
Was sind pipes?
In UNIX und Linux wird der verbindungsorientierte Datenaustausch durch pipes realisiert.
Wozu dient die Benutzerschnittstelle?
Sie dient dem Benutzer zusammen mit den Schnittstellen der Anwendungsprogramme zur Kommunikation mit dem Rechner.
Aus was besteht die Benutzerschnittstelle?
Aus der Gesamtheit aller Systemprogramme.
Welchen Aufgabenbereichen lassen sich die Systemprogramme zuordnen?
- Programme
- Dateien und Verzeichnisse
- Information
- Kommunikation
Was ist Common Desktop Environment (CDE)?
Eine integrierte Oberfläche.
Es vereinigt viele Systemprogramme mit folgenden Funktionen in sich:
- Editor (Zum Schreiben der Programmtexte)
- Compiler/Interpreter (für die verwendete Programmiersprache)
- Binder/linker (fasst einzelne Module zu einem Lademodul zusammen)
- Lader/loader (Bringt das Lademodul in den Hauptspeicher)
- Debugger (für Fehlersuche)
Was machen Systemprogramme?
Systemprogramme helfen dem Benutzer Dateien anzulegen Dateien zu kopieren Dateien zu drucken Dateien umzubenennen Dateien zu löschen Zugriffsberechtigungen setzen
Was ist eine Directory?
Zusammengehörige Dateien werden in Verzeichnissen (directories) zusammen gefasst
Was ist der Unterschied im Aufgabenbereich von Systemaufrufen und Systemprogrammen?
Systemaufrufe:
Haben besonders mit der Kommunikation zwischen Prozessen zu tun
Systemprogramme:
Sind auf höherer Ebene für die Kommunikation zwischen Benutzern zuständig
Was ist der Kommandointerpreter (command Interpreter)?
Der Command Interpreter ist ein wichtiges Systemprogramme, der die Eingaben des Benutzers entgegennimmt und ihre Ausführung veranlasst.
Was ist eine Shell?
Einen für jeden Benutzer maßgeschneiderten Kommandointerpreter
Was ist ein Parallelrechner?
Multiprozessorsystem
Arbeit wird auf mehrere Prozessoren verteilt
Warum löst ein Multiprozessorsystem mit k Prozessoren ein Problem nicht unbedingt k mal so schnell wie ein Einzelprozessorsystem?
- Kommunikation zwischen den Prozessesoren benötigt zeit
- Einige Probleme sind nicht parallelisierbar
Was sind die Vorteile eines Parallelrechners?
- Effizienzsteigerung
- Kostenersparnis durch Zusammenfassung mehrerer CPU`s
- Störungssicherheit (bei Ausfall eines Prozessoren)
Wie ist das Verhältnis bei einem Parallelrechner von Prozessoren und Hauptspeicher?
Bei einem Parallelrechner teilen sich die Prozessoren einen gemeinsamen großen Hauptspeicher. Der Zugriff erfolgt entweder über einen Bus, oder der gemeinsame Hauptspeicher wird in kleiner Stücke zerlegt und ein Schaltwerk sorgt dafür, dass jeder Prozessor auf jedem Teil des Speichers zugreifen kann.
Was sind Verteilte Systeme?
Jeder Prozessor hat einen eigenen Speicher
Die Kommunikation zwischen den Prozessoren erfolgt durch den Versand von Nachrichten.
Sind bei verteilten Systemen die Prozessoren im selben Rechnergehäuse untergebracht?
Nicht zwingend -
Es kann auch aus vielen Einezlprozessorrechnern bestehen, die auf der ganzen Welt verteilt sind wie z.B. Das World Wide Web.
Was ist eine Hypercube-Architektur?
Beim d-dimensionalen Hypercube gibt es für jeden der 2^d möglichen Vektoren die man aus d Nullen und Einsen bilden kann, einen Prozessor.
Die Prozessoren sind nur an den Vektoren verbunden, die sich genau an einer stelle vom eigenen Vektor unterscheiden.
Bspl:
(10011000) und (10011010) haben eine Verbindung
(10011000) und (10111010) nicht
Was ist ein Relzeitsystem?
Hier ist es Teil der Korrektheitsanforderung, dass das Ergebnis innerhalb einer vorgegebenen Zeit berechnet wird.
Übungsaufgabe 1.1
Die Binärdarstellung einer natürlichen Zahl n >= 1 ist die Folge ak ak-1 … a1 a0 von Nullen und Einsen ai, für welche
n = ak2^k + ak-12^k-1 + … + a12^1 + a02^0
gilt und ak = 1; führende Nullen lässt man also fort. Welche Zal n wird durch 11011101 dargestellt?
Bestimmen sie die Binärdarstellung von 160
2^7 + 2^4 + 2^3 + 2^2 +2^0 = 157
n` := (n-a0)/2 = n div 2
Irritiert man das Verfahren ist a1 = n` mod 2
Es ergibt sich 10100000
Einfachere Beschreibung:
Gehe nach folgendem Verfahren vor:
(1) Teile die Zahl mit Rest durch 2.
(2) Der Divisionsrest ist die nächste Ziffer (von rechts nach links).
(3) Falls der (ganzzahlige) Quotient = 0 ist, bist du fertig,
andernfalls nimm den (ganzzahligen) Quotienten als neue Zahl
und wiederhole ab (1).
Übungsaufgabe 1.2
Beim Prozessor 68000 von Motorola beträgt die Wortlänge 2 Byte. Wie breit muss der Adressbus sein- das heißt: aus wie vielen Bits bestehen die Adressen bei einer Hauptspeicherkapazität von 16 MByte?
Teilt Mann 16 MByte in Worte der Länge 2 Byte auf, so entstehen:
(162^20)/2 = 82^20 = 2^23
Viele Worte. Der Adressbus muss also die Breite 23 haben.
Übungsaufgabe 1.3
Angenommen, ein Schreib- / Lesezugriff auf den Cache ist neun mal so schnell wie ein Zugriff auf den Hauptspeicher. Welchen Zeitvorteil ergibt die Verwendung eines Cache nach dem oben beschriebenen Algorithmus, wenn bei 80% aller Zugriffe die gesuchten Daten im Cache gefunden werden?
Sei c die Zeitdauer eines Schreib-/Lesezugriffs auf den Cache, dann fällt also in 80% aller Datenzugriffe ein Zeitaufwand von c Einheiten an. Bei den übrigen 20% der Fälle muss auf den Hauptspeicher zugegriffen werden, das kostet zusätzlich 9c Zeiteinheiten. Danach müssen die Daten noch in den Cache abgelegt werden, das benötigt noch c Zeiteinheiten. Im Mittel entsteht also bei Verwendung des Cache ein Zeitaufwand in Höhe von
(80/100)c + (20/100)(9c+2c) = (80 + 220)/100*c = 3c
Gegenüber 9c beim Betrieb ohne Cache. Bei den hier zugrunde gelegen Werten geht es mit Cache also drei mal so schnell.
Übungsaufgabe 1.4
Wir betrachten ein Plattenlaufwerk mit nur einer einzelnen Platte. Die Spuren sind mit 0 beginnend von außen nach innen durchnummeriert. Wenn dafür nun mehrere Aufträge vorliegen, kann man sie nach folgenden Strategien abarbeiten:
- FCFS (First-come, First-served) - bearbeitet die Aufträge in der Reihenfolge ihres Eingangs.
- SSTF (shortest-sek-Time-First) - bearbeitet jeweils denjenigen Auftrag als nächsten, dessen Spur der momentanen Position des Schreib-/Lesekopfs am nächsten liegt.
- SCAN - bewegt den Kopf abwechselnd von außen nach innen und von innen nach außen über die gesamte Platte und führt dabei die Aufträge aus, deren Spuren gerade überquert werden.
Angenommen, es sind Zugriffsaufträge für Sektoren in den Spuren
32, 185, 80, 126, 19, 107
In dieser Reihenfolge eingegangen. Der Kopf steht anfangs auf der Spur 98 und bewegt sich im Falle der SCAN-Strategie gerade nach außen. Welche Distanz muss der Kopf bei Anwendung der drei Strategien jeweils insgesamt zurücklegen, bis alle Aufträge erledigt sind?
Bei der Strategie FCFS ergibt sich als Gesamtdistanz
(98-32) + (185-32) + (185-80) + (126-80) + (126-19) + (107-19) = 565
SSTF:
Es werden nacheinander die Spuren 98, 107, 126, 80, 32, 19, 185 besucht, was eine Gesamtdistanz von 301 ergibt.
SCAN:
Führt von Spur 98 zunächst nach außen bis zur Spur 0 und dann wieder nach innen bis Spur 185 - hier beträgt die Gesamtdistanz 283.
Bei diesem Beispiel schneidet also die Strategie SCAN am besten ab. In der Praxis sind die Verhältnisse komplizierter, weil nicht alle Schreib-/ Leseaufträge im voraus bekannt sind. Vielmehr treffen immer neue Aufträge ein, während die ersten bereits abgearbeitet wurden.
Übungsaufgabe 1.5
Sortieren sie alle Ihnen bekannten Speicherformen nach Zugriffszeit.
Nach aufsteigender Zugriffszeit geordnet:
Prozessregister, Cache Hauptspeicher RAM-disk Magnetplatte BD HD DVD CD/DVD Diskette Magnetband
Übungsaufgabe 1.6
Nach jeder Ausführung eines Befehls überprüft die CPU, ob an ihrem Unterbrechungseingang ein Signal angekommen ist. Schleicht sich hier durch die Hintertür der ineffiziente Abfragebetrieb ein, den wir durch die Einführung des Unterbrechungsbetriebs eigentlich hatten vermeiden wollen?
Es stimmt zwar, dass beim regelmäßigen Überprüfen des Unterbrechungseingangs ein Abfragebetrieb vorliegt, diese Abfragen erfolgen aber im Inneren der CPU und benötigen deshalb viel weniger Zeit als das Lesen des Statusregisters des Controllers. Denn selbst bei speicherabgebildeter Ein-/Ausgabe werden hierfür mehrere CPU-Befehle benötigt.
Übungsaufgabe 1.7
Das Ziel des DMA-Verfahrens liegt in einer Entlastung der CPU. Wieso kann es trotzdem vorkommen, dass die Arbeit der CPU verzögert wird, während DMA-Vorgänge ablaufen?
Auch bei Einsatz des DMA-Verfahrens kann es zu Verzögerungen in der Arbeit der CPU kommen, weil der DMA-Controller während der Übertragung den Bus besetzt hält, die CPU also nichts auf den Hauptspeicher zugreifen kann.
Übungsaufgabe 1.8
Warum darf der Unterbrechungsvektor nicht im Adressraum eines Anwendungsprogramms liegen?
Läge der Unterbrechungsvektor im Adressraum eines Benutzerprogramms, so könnte der Benutzer die Anfangsadresse einer Unterbrechungsroutine so ändern, dass, wenn diese Unterbrechung eintritt, statt der Unterbrechungsroutine ein Teil des Benutzerprogramms gestartet wird. Die CPU währe dann im Systemmodus und der Benutzer hätte damit die vollständige Herrschaft über den Rechner erlangt.
Übungsaufgabe 1.9
Muss der Befehl, mit dem der Unterbrechungseingang der CPU außer Betrieb gesetzt wird, privilegiert sein?
Der Befehl zum Außerbetriebsetzen der Unterbrechungsleitung muss auf jeden Fall privilegiert sein. Wenn nämlich ein Benutzerprogramms diesen Befehl ausführen könnte und anschließend in eine Endlosschleife geriete, wäre es nur noch durch Abschalten des Rechners zu stoppen.
Übungsaufgabe 1.10
Gegeben sei eine feste Menge von endlich vielen Prozessen mit bekannten Rechenzeiten. Beweisen Sie, dass SJF die Gesamtwartezeit minimiert, also die Summe aller Wartezeiten der einzelnen Prozesse. Dabei ist die Wartezeit eines Prozesses diejenige Zeit bist zur Beendigung, in der sich der Prozess im Zustand bereit befindet.
Betrachten wir eine Ausführungsreihenfolge, bei der ein langer Prozess L vor einem kurzen Prozess K an die Reihe kommt. Wenn wir die beiden miteinander vertauschen, brauchen alle dazwischen liegenden Prozesse nicht mehr so lange zu warten. Für L verlängert sich bei diesem Tausch zwar die Wartezeit, aber die Verkürzung der Wartezeit von K ist größer! Alle übrigen Prozesse sind nicht betroffen. Also verkürzt solch ein Tausch die Gesamtwartezeit. Jede von SJF verschiedene Ausführungsreihenfolge lässt sich also noch verbessern. Folglich ist SJF optimal.
Übungsaufgabe 1.11
Zu welchem Problem kann es bei einem System mit SJF-Scheduling kommen, wenn einige längere Prozesse laufen und immer wieder kurze Prozesse gestartet werden? Wie kann man die SJF-Strategie modifizieren, sodass dieses Problem vermieden wird?
Bei SJF werden kürzere Prozesse vor längeren bearbeitet. Je mehr kurze Prozesse generiert werden, desto länger müssen die langen Prozesse warten. Wenn also immer neue kurze Prozesse erzeugt werden, kommen die langen Prozesse nie an die Reihe. Dieses Problem wird starvation genannt. Eine einfache Möglichkeit, starvation zu verhindern ist, beim Scheduling zusätzlich zu den erwarteten Laufzeiten auch Prioritäten zu berücksichtigen. Alle im System eintreffenden Prozesse erhalten zunächst die gleiche Priorität, die dann jedoch erhöht wird, je länger ein Prozess auf Prozessorzuteilung wartet. Der lange Prozess hätte dann irgendwann eine Priorität, und der Scheduler kann erkennen, dass der Prozess schon lange wartet und ihn bearbeiten, obwohl kürzere Prozesse im System sind. Diese Prioritätsanpassung wird auch als aging bezeichnet.
Muss der Zugriff auf das Register des Zeitgebers privilegiert sein?
Der Zugriff auf das Register, das die Anzahl der verbleibenden Zeiteinheiten der aktuellen Zeitscheibe enthält, muss privilegiert sein! Denn Sonst könnte ein Prozess sich selbst zusätzlich Rechenzeit verschaffen.
Übungsaufgabe 1.13
Welche Gefahren drohen, wenn beim Verfahren round Robin die Zeitscheiben zu dick oder zu dünn gewählt werden?
Prozesse mit großem Ein-/Ausgabebedarf könnten von extrem langen Zeitscheiben nicht profitieren: Meist blockieren sei lange bevor ihre Zeitscheibe abgelaufen ist, etwa um auf die nächste Benutzereingabe zu warten. Sie können aber sehr darunter leiden, wenn sie rechenzeitintensive Prozesse vor sich haben, die ihre dicken Zeitscheiben voll ausnutzen. Darum sind zu dicke Zeitscheiben nicht wünschenswert. Aber zu dünne Zeitscheiben sind auch ineffizient: Die CPU verbringt dann einen zu großen Teil ihrer Zeit mit unproduktiven Kontextwechseln , während es mit den Prozessen nur langsam voran geht.
Übungsaufgabe 1.15
Warum werden die gelesenen Daten erst im systemeigenen Speicherbereich abgelegt und nicht gleich im Adressraum des anfordernden Prozesses P?
Wollte man die gelesen Daten sofort in den Adressraum des Prozesses P übertragen, der sie angefordert hat, so müsste die Zieladresse vom Betriebssystem über den Treiber an den Controller weitergegeben werden. Außerdem dürfte der Adressraum von Prozess P im Hauptspeicher nicht bewegt werden, bis der Lesevorgang abgeschlossen ist. Beides wäre unzweckmäßig. Dem Controller die Zieladresse mitzuteilen, widerspricht den Prinzipien von Kapselung und Aufgabenteilung (separation of concerns). Blockierte Prozesse nicht bewegen oder auf die Magnetplatte auslagern zu können, würde die effiziente Verwaltung des Hauptspeichers behindern.
Übungsaufgabe 1.14
Warum wird nicht schon beim Compilieren die logische Datenbeschreibung durch die physische Beschreibung ersetzt?
Zwischen dem Compilieren und dem Ausführen eines Programms kann ein längerer Zeitraum liegen, in dem die Dateien verändert werden. Deshalb kann man logische Adressen erst zur Laufzeit auf physische Adressen abbilden.
Übungsaufgabe 1.16
Welcher gravierende Unterschied besteht zwischen einer verbindungsorientierten und einer verbindungslosen Übertragung, wenn eine sehr lange Nachricht vor dem Absenden in mehrere Teile zerlegt werden muss?
Wenn man eine lange Nachricht in mehreren Teilen überträgt, ist beim verbindungsorientierten Datenaustausch sichergestellt, dass die Teile in der richtigen Reihenfolge beim Empfänger ankommen. Beim verbindungslosen Austausch kann das nicht garantiert werden.
Übungsaufgabe 1.17
Über wieviele Zwischenstationen muss man beim de-dimensionalen Hypercube höchstens laufen, um von einem Prozessor zu einem anderen gelangen
Zwei beliebige Vektoren der Länge d unterscheiden sich im schlimmsten Fall an allen d Stellen. Wenn man also bei jedem Schritt einen Unterschied verschwinden lässt, indem man den entsprechenden Nachbarn aufsucht, sind insgesamt d Schritte über d-1 Zwischenstationen erforderlich.
Was ist ein Betriebssystem?
(Wiki) Ein Betriebssystem, auch OS (von englisch operating system) genannt, ist eine Zusammenstellung von Computerprogrammen, die die Systemressourcen eines Computers wie Arbeitsspeicher, Festplatten, Ein- und Ausgabegeräte verwaltet und diese Anwendungsprogrammen zur Verfügung stellt. Das Betriebssystem bildet dadurch die Schnittstelle zwischen den Hardware-Komponenten und der Anwendungssoftware des Benutzers
Wozu braucht man ein Betriebssystem?
Transparenz: Ein Betriebssystem soll die Details über Hardware vor Benutzern und Anwendungen verstecken. Benutzer sollen nur mit Anwendungsprogrammen mit einem Rechner interagieren.
Welche Aufgabe hat ein Betriebssystem?
- Bereitstellung von Schnittstellen für Anwendungen und Benutzer
- Aufteilung der CPU-Zeit für die einzelnen Prozesse
- Zuteilung des Hauptspeichers für die einzelnen Prozesse und Verwaltung des virtuellen Speichers
- Steuerung von Ein-/Ausgabegeräten
Welche Strategien und Mechanismen benutzt ein Betriebssystem um die Aufgaben zu lösen?
- Strategie:
- Ein Betriebssystem muss die Konrolle über das ganze System behalten
- Das Betriebssystem muss immer wieder aktiviert werden - Mechanismus:
- Durch Unterbrechungen wird das Betriebssystem aktiviert
Welche Schnittstellen werden vom Betriebssystem zur Verfügung gestellt?
- Programmierschnittstelle
- Benutzerschnittstelle
Welche Idee hatte von Neumann? Warum ist seine Idee ein Meilenstein für die Informatik?
Trennung der Hardware und Software
Universelle Maschine zur Ausführung von Programmen: Das auszuführende Programm ist nicht mehr fester Bestandteil des Rechners, es wird vor der Ausführung in den Speicher geladen und hinterher wieder entfernt
Welche Hardwarekomponenten hat ein moderner von-Neumann-Rechner?
- Prozessor (CPU = central processing unit)
- Hauptspeicher (main memory)
- Ein-/Ausgabegeräte (I/O devices)
Wie sieht eine CPU aus? Welche wichtigen Register hat die CPU?
- Befehlszähler (Program Counter, PC) enthält die Adresse derjenigen Speicherzelle, in der der als nächses auszuführende Befehl steht
- Befehlsregister (Instruction Register IR) speichert den aktuellen Befehl, der gerade bearbeitet wird
- PSW (Programmstatuswort) enthält ein besonderes Bit für Benutzer-/Systemmodus
- Speicheradressregister (Memory Adress Regiser MAR) enthält die Adresse derjenigen Speicherzelle, die als nächstes gelesen oder beschrieben werden soll
Akkumulator eines von vielen Datenregistern, speichert ein Zwischenergebnis einer berechnung
Welche Aufgabe haben die Register der CPU?
Um ein Wort aus einer Speicherzelle zu holen, hat die CPU einige wichtige Register, die als Zwischenspeicher verwendet werden
Was ist ein Programm im Hauptspeicher?
ein gerade auszuführendes Programm
Welche Schritte hat ein Befehlszyklus des Prozessors?
Die CPU arbeitet Befehle in Zyklen ab. Eine Befehlsausführung kann in zwei Phasen aufgeteilt werden:
1. Holphase (fatch stage):
Das Speicheradressregister übernimmt den Wert vom Befehlszähler und gibt die Adresse an den Adressbus weiter. Der Inhalt der Speicherzelle wird in das Befehlsregister geladen und interpretiert
2. Ausführungsphase (execution stage)
- geholte Befehl wird ausgeführt
- weitere Daten oder Adressen können von Speicherzellen geholt werden.
- Befehlszähler wird hochgezählt
Wie sieht ein Hauptspeicher aus?
- lange Folge von gleich großen Speicherzellen organisiert.
Welche Beziehung hat der Adressbus mit dem Hauptspeicher?
Der Hauptspeicher wird über den Adressbus des Prozessors angesprochen
Wie kann man aus der Größe des Hauptspeichers die Länge des Adressbusses berechnen?
Wir teilen die Größe des Hauptspeichers durch die Länge der Worte. Die Breite des Adressbusses ist dann der Exponent der 2er Potenz.
Beispiel: Hauptspeicher 16 MByte Worte haben die Länge 2 Byte, so ist
(162^30)/2=82^20=2^23
Warum hat der Hauptspeicher die Eigenschaft des wahlfreien Zugriffs?
(Wiki)
Die Bezeichnung des Speichertyps als „wahlfrei“ bedeutet in diesem Zusammenhang, dass jede Speicherzelle über ihre Speicheradresse direkt angesprochen werden kann. Der Speicher muss also nicht sequenziell oder in Blöcken ausgelesen werden. Bei großen Speicherbausteinen erfolgt die Adressierung jedoch nicht über die einzelnen Zellen, sondern über ein Wort, dessen Breite von der Speicherarchitektur abhängt
Wie ist eigentlich wahlfreier Zugriff des Hauptspeichers definiert?
Speicherzellen können einzeln adressiert werden.
Was ist ein Cache?
ein schneller Zwischenspeicher, in den häufig benutzte Daten kopiert werden, um die Zugriffszeit zu verringern.
Wozu ist ein Cache gut?
Zugriffszeit auf Daten und Programme zu verringern.
Welche Probleme entstehe, wenn ein Cache eingesetzt wird? Wie läuft der Cache-Algorithmus?
Konsistenz-Probleme
Cache-Algorithmus:
- Häufig benutzte Daten werden in den Cache kopiert
- Erst Suche im Cache - da schneller
- Wenn Suche erfolglos -> Hauptspeicher und Kopie in den Cache
Was ist ein Sekundärspeicher?
- Aufgabe der dauerhaften Speicherung
- Häufig Magnetplatte (Festplatte) und Flashspeicher
Wie ist eine Festplatte aufgebaut?
- Magnetplatte auf beiden Seiten mit einer magnetisierbaren Oberfläche beschichtet
- Magnetplatte dreht sich mit 100 Umdrehungen/Sekunde
- Jede Oberfläche einer Platte ist in einige tausend kreisförmige Spuren gleicher Breite unterteilt, die wiederum aus einigen hundert Sektoren bestehen
- übereinanderliegende Spuren bilden einen Zylinder
Welche Befehle kann die Festplatte ausführen?
? Lesen & schreiben?
Warum unterstützt eine Festplatte auch den wahlfreien Zugriff?
Jeder Sektor wird mit einer Adresse angesprochen
Was ist die Positionierungszeit, Latenzzeit, Übertragungszeit und Zugriffszeit bei einer Festplatte?
Positionierungszeit : Zeit für die Positionierung des Schreib-/Lesekopfes
Latenzzeit: Warten, dass der gesuchte Sektor am Kopf vorbeiläuft
Übertragungszeit: Lesen des Sektorinhalts und das Speichern in einen Puffer
Zugriffszeit: Positionierungszeit + Latenzzeit + Übertragungszeit
Welche Strategien gibt es, um die Aufträge für Plattenlaufwerke abzuarbeiten?
- FCFS (first-come, first served)
- SSTF (shortest-seek-time-first)
- SCAN - bewegt Kopf abwechselnd von außen nach innen und von innen nach außen über die gesamte Platte und fürh die Aufträge aus, deren Spuren überquert werden.
Welche Probleme kann es bei der Strategie SSTF geben?
Das Problem der Starvation betrifft die Strategie SSTF (shortest seek time first), da hier Aufträge, die weit von der aktuellen Position des
Schreib-/Lesekopfs entfernt sind, durch neue Aufträge, die nicht so weit entfernt sind, nach hinten geschoben und nicht bearbeitet werden.
Kann es passieren, dass ein Auftrag mit SSTF nicht bearbeitet wird?
Ja, da hier Aufträge, die weit von der aktuellen Position des
Schreib-/Lesekopfs entfernt sind, durch neue Aufträge, die nicht so weit entfernt sind, nach hinten geschoben und nicht bearbeitet werden.
Was ist der Unterschied zwischen einem Sektor und einem Block?
Ein Block ist die Nutzinformation eines Sektors.
Was ist ein parity bit?
Sie werden für die Fehlerkorrektur genutzt. Der Wert der partity bits ist die Summe der Werte bestimmter Datenbits. Beim Schreiben bzw. Lesen eines Sektors werden diese Summen berechnet und in die Prüfbits eigetragen bzw. mit den dort gespeicherten Werten verglichen. Ergeben sich Abweichungen, so ist ein Fehler aufgetreten.
Bei Verwendung geeigneter Codes knan man feststellen, welches Bit einen falschen Wert hat und den Fehler automatisch korrigieren
Was ist ein Tertiärspeicher?
Das wesentliche Merkmal von Teritärspeichern ist, dass sich der Datenträger preiswert herstellen und leich vom Rechner entfernen lässt.
Sie eignen sich gut für den Transfer von Daten zwischen nicht vernetzten Rechnern.
Beispiele: Diskette, CD, DVD, USB-Sticks
Was ist der Unterschied zwischen einem wahlfreien Zugriff und einem sequentiellen Zugriff?
sequentieller Zugriff:
Man kann nur auf die Blöcke direkt zugreifen, die sich gerade vor oder hinter dem Schreib-/Lesekopf befinden (vor/zurückspulen für Zugriff)
wahlfreier Zugriff:
Unter wahlfreiem Zugriff (englisch random access, auch „direkter Zugriff“, „Direktzugriff“) wird in der Informatik die Möglichkeit verstanden, in konstanter (oder unter-linearer) Zeit einen lesenden und/oder schreibenden Speicherzugriff auf ein beliebiges Element eines Datenspeichers oder einer Datenstruktur durchführen zu können.