TGI 1
Technische Grundlagen der Informatik, Nordakademie - Elmshorn SM 1/1-51; JB 1/52-82; NR 1/83-92; BR 1/93-131; NR 2/1-27; JJ 2/28-63
Technische Grundlagen der Informatik, Nordakademie - Elmshorn SM 1/1-51; JB 1/52-82; NR 1/83-92; BR 1/93-131; NR 2/1-27; JJ 2/28-63
Set of flashcards Details
Flashcards | 199 |
---|---|
Students | 13 |
Language | Deutsch |
Category | Computer Science |
Level | University |
Created / Updated | 24.08.2015 / 14.05.2023 |
Weblink |
https://card2brain.ch/box/tgi_1
|
Embed |
<iframe src="https://card2brain.ch/box/tgi_1/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Wie ist die Datenhaltung innerhalb eines Dateisystems?
(Im Gegensatz zur Hauptspeicherverwaltung)
Notiere die Dezimalzahl 2,9 als Festkommazahl mit 3 Vorkomma-, 4 Nachkommastellen und einem Vorzeichenbit in Dualer Darstellung.
Da es sich um eine positive Dezimalzahl handelt, ist das Vorzeichenbit eine 0
Zunächst wird die Zahl vor dem Komma umgewandelt.
2 : 2 = 1 R0
1 : 2 = 0 R1
0 : 2 = 0 R0
Die "Reste" werden von unten nach oben gelesen und ergeben daher: 210 = 0102
Anschließend wendet man sich den Nachkommastellen zu:
0,9 * 2 = 1 ,8
0,8 * 2 = 1 ,6
0,6 * 2 = 1 ,2
0,2 * 2 = 0 ,4
Die Nachkommastelle wird jeweils mit 2 multipliziert, die Ziffer vor dem Komma wird von oben nach unten aufgeschrieben, und es ergibt sich insgesammt:
2,910 = 0 010 , 1102
Stelle die Dezimalzahl 184 in der BCD-Notation dar.
Welche Nachteile und welche Vorteile hat diese Notation?
Um Umwandlung in die BCD-Notation erfolgt verhältnismäßig schnell:
18410 = 0001 1000 0100
Der Nachteil an dieser Notation ist, dass zwar die Codierung von 16 Zuständen möglich ist, aber nur 10 Zustände benötigt werden. Dies ist Speicherverschwendung. Weiterhin gibt es (noch) ineffizientere Rechenoperationen.
Woraus setzen sich Dateien zusammen?
Dateien sind eine zusammengesetzte Menge von Daten (binär, ASCII, UNICODE, etc.). Sie besitzen einen Namen, die in ihrer Länge und zulässigen Zeichen variieren können. Oft sagt die Dateierweiterung/-endung im Allgemeinen etwas über die Datei aus.
Jedoch bestimmt die Dateiendung nicht den Dateityp der Datei!
Was ist ein Verzeichnis?
Ein Verzeichnis dient der Strukturierung der Ablage der Dateien. Dabei existieren Ein- oder Zwei-Ebenen- bis hierarchische Verzeichnissysteme.
Die sind je nach System oftmals selbst Dateien.
Nenne vier Dateitypen.
- Zeichendateien für serielle Eingabe/Ausgabe-Geräte, wie Drucker, Netzwerk, Terminals,...
- Blockdateien für blockorientierte Geräte wie Festplatten, optische Laufwerke wie Blu-ray-Disc oder DVD
- Systemdateien (wie z.B. Verzeichnisse)
- Reguläre Dateien (Text- und Binärdateien z.B. ausführbare Programme, Shellskripte, Konfigurationsdateien, Save- games oder Library-Dateien
Welche zwei Dateizugriff-Methoden gibt es?
- Sequentieller Zugriff
- Random- Access-Dateien
Was versteht man unter sequentiellen (Datei-)Zugriff?
Je nach Struktur der Datei werden Bytes oder Records (fester oder variabler Länge) nacheinander gelesen bzw. geschrieben, wobei "Zurückspulen" für mehrfaches Lesen möglich ist.
Berechne als Addition im Dualsystem:
a) 14510 + 6710
b) 6710 - 1810
Gibt es etwas zu bedenken?
a) Es ist 14510 = 100100012 und 6710 = 1000112
Die Addition wird dabei "wie immer" gerechnet.
b) Bevor hier eine Addition gemacht werden kann, muss die Dezimalzahl -18 zunächst in ihr 2 Komplement überführt werden. Dazu bildet man zunächst den Betragswert der Zahl als Dualzahl, also:
1810 = 00100102 Die Nullen vor der ersten 1 sind für die Rechnung später, damit wir die gleiche Anzahl Ziffern haben. Im nächsten Schritt werden alle Bits Intertiert. Aus 0010010 wird also 1101101. Zu dieser Zahl wird dann eine Eins addiert. Das Ergebnis stellt nun die Dezimalzahl -18 dar.
Was versteht man unter Scheduling?
Scheduling regelt die zeitliche Ausführung mehrerer Prozesse in Betriebssystemen.
In welchen Situationen ist Scheduling notwendig?
Wenn ein...
- Prozess erzeugt wird
- Prozess beendet wird
- Prozess blockiert wird
- blockierter Prozess wieder bereit ist
- Prozess unterbrochen wurde (Timer-Interrupt)
Welche Vorteile ergeben sich aus Scheduling?
- Fairness: Vergleichbare Prozesse sollten vergleichbar behandelt werden
- Hoher Durchsatz: Je mehr Ressourcen parallel in Betrieb gehalten werden, desto höher ist der Gesamtdurchsatz
- Niedrige Durchlaufzeit: Die benötigte Zeit von der Erzeugung bis zur Beendingung eines jeden Prozesses sollte möglichst gering sein
- Niedrige Antwortzeiten: Bei interaktiven System sollte die Zeit zwischen der Nutereingabe und der Reaktion des System möglichst gering sein
- Hohe Effzienz führt zur einen hohen Prozessorauslastung
Warum kann beim Scheduling im Allgemeinen keine optimale Planung erstellt werden?
Da die benötigten Betriebsmittel für die einzelnen Prozesse nicht im Vorfeld bekannt sind. Der Scheduler muss dynamisch auf geänderte Anforderungen reagieren. Dabei können verschiedene Zuteilungsstrategien zum Einsatz kommen.
Welche Zuteilungsstrategien gibt es beim Scheduling?
- Preemptive (unterbrechende); dem Prrozess kann der Prozesspr entzogen werden (Bsp. Round Robin, Shortest Remaining Time First)
- Non-preemptive (nicht unterbrechende); der Prozess gibt freiwillig die Kontrolle an das Betriebssystem ab (Bsp. First-Come-First-Served, Shortest Job First)
- Hybride (preemptove oder non-preemptive); (Bsp. Priority Scheduling)
Welche Eigenschaften hat die Scheduling-Strategie "Round Robin"?
Einem Prozess wird die CPU für eine bestimmte Zeitscheibe zugeteilt.
Danach wird der Prozess wieder hinten in die Warteschlange eingereiht.
Welcher Nachteil entsteht, wenn die Zeitscheibe der Scheduling-Strategie "Round Robin" zu klein gewählt wird?
Der Anteil der Rechenzeit für den Prozesswechsel ist zu hoch
Welcher Nachteil entsteht, wenn die Zeitscheibe der Scheduling-Strategie "Round Robin" zu groß gewählt wird?
Es entstehen meist zu lange Wartezeitem, als es für interaktive Systeme zumutbar wäre
Welche Eigenschaften hat die Scheduling-Strategie "Shortest Remaining Time First"?
- Die bereiten Prozesse werden nach der benötigten Rechenzeit sortiert.
- Der Prozess mit der geringsten noch benötigten Rechenzeit wird ausgewählt.
Sobald ein neuer Prozess erstellt wird, wird der rechnende (aktive) Prozess unterbrochen.
Welches Problem entsteht, bei der Nutzung der Scheduling-Strategie "Shortest Remaining Time First"?
Es muss bekannt sein, wie viel Rechenzeit für einen Prozess benötigt wird.
(Die Anzahl der Befehle sagt nichts über die Ausführungsdauer aus und Statistiken können variieren).
Welche Eigenschaften hat die Scheduling-Strategie "First-Come-First-Served"?
Alle Prozesse werdenin der Reihenfolge ihres Eingangs bearbeitet.
Eine Neuzuteilung der Prozesse findet erst statt, wenn der laufende Prozess zu warten beginnt oder seine Ausführung beendet ist.
Welches Problem entsteht, bei der Nutzung der Scheduling-Strategie "First-Come-First-Served"?
Kurze bzw. kurzlaufende Prozesse müssen unter Umständen lange warten
Welche Eigenschaften hat die Scheduling-Strategie "Shortest-Job-First"?
- Analog zu Shortest Remaing Time First aber ohne Unterbrechung
- Garantiert eine minimale durchschnittliche Antwortzeit
Welche Probleme entstehen, bei der Nutzung der Scheduling-Strategie "Shortest Job First"?
- Ebenfalls, Ermittlung der (Rest-)Laufzeit des Prozesses
- Langlaufende Prozesse können verhungern, da alle neuen kürzer laufenden Prozesse Vorrang haben
Welche Eigenschaften hat die Scheduling-Strategie "Priority Scheduling"?
- Weist jedem Prozess eine Priorität zu
- Die Vergabe kann intern und extern erfolgen
- Prioritäten können statisch oder dynamisch sein
- Die Abarbeitung der Prozesse berücksichtigt hauptsächlich die Prioritäten
Welches Problem entsteht, bei der statischen Vergabe von Prioritäten der Scheduling-Strategie "Priority Scheduling"?
Statische Prozesse können verhungern
Interprozesskommunikation ist eine Methode zum Informationsaustausch von...
Prozessen und Threads
Aus welchem Grund ist Interprozesskommunikation erforderlich?
Aufteilung von Programmen in verschiedene Prozesse führt i.d.R. zur Notwendigkeit, Informationen zwischen den Prozessen auszutauschen
Die technische Umsetzung der Interprozesskommunikation erfolgt durch...
gemeinsam genutzten Speicher
- Bei Thread des gleichen Prozesses einfach, da Ressourcenbündelung im Prozess (gemeinsamer virtueller Adressraum und gemeinsam genutzte geöffnete Dateien)
- Bei Prozessen nutzt man den gemeinsamen Hauptspeicher, indem verschiedene virtuelle Adressen auf dieselben physikalischen Adressen abgebildet werden, alternativ nutzt man Dateien
Bei manchen System ist es möglich Race Conditions zu vermeiden. Wie?
Zur Vermeidung von Race Conditions müsste Prozess A den Zugriff auf einen Wert bis zum Abschluss der Veränderung so sperren, dass Prozess B warten muss, bis A seinen Zugriff auf den Wert beendet hat.
Race Conditions beschreiben Situationen, ...
...in denen das Endergebnis von der Reihenfolge der Abarbeitung der Prozesse abhängt.
Die Fehleranalyse ist sehr unangenehm!
Was bedeutet wechselseitiger Ausschluss in kritischen Abschnitten?
Jeweils nur ein Prozess darf im kritischen Abschnitt arbeiten. Durch kritische Abschnitte sollte verhindert werden, dass zwei oder mehr Prozesse (quasi) gleichzeitig gemeinsam benutzten Speicher bearbeiten.
Welche beiden Ansätze gibt es für kritische Abschnitte?
- Abschalten von Unterbrechungen: Unklug (Fairness-Probleme) und unsinnig bei Mehrprozessor- bzw. Mehrkernsystemen
- Einführung einer Sperrvariablen mit Warten auf Freigabe
Wo liegt der Registerspeicher?
CPU
Eine Seicherstelle liegt im...
Hauptspeicher
Welcher Nachteil entsteht bei der TSL-Anweisung (test and set lock)?
Aktives Warten, und Warten verbraucht CPU Zeit
Welche Funktion hat der TSL Befehl?
Der TSL-Befehl ist ein spezieller Maschinenbefehl, der von einigen CPUs zur Verfügung gestellt wird. Es handelt sich also um einen Assemblerbefehl.
- Kein anderer Prozess kann auf die Speicherstelle zugreifen, bis die Anweisung ferit ist. (Sperre d. Speicherbus)
- Sperre mit Hilfe der TSL-Anweisung, Entsperre durch MOVE.Anweisung.
Definition Sleep and Wakeup
Zwei Prozesse benutzen einen gemeisamen allgemeinen Puffer mit fester Größe. Der Erzeuger legt Informationen hinein, der Verbraucher nimmt sie heraus.
Synchronisation ist notwendig
Welchen Vorteil zu Lösungn wie TSL hat Sleep and Wakeup?
Es keine Rechenzeit (CPU-Zyklen) verschwendet.
Welche Bedeutung haben die Systemaufrufe (Sleep and Wakeup)?
Sleep blockiert einen Prozess
Wakeup hebt die Blockade eines Prozesses auf.
Erzeuger-Verbraucher-Problem (Bsp.)
- Synchronisation zweier Prozesse über einen gemeinsamen Puffer fester Größe
- Prozess A legt Daten im Puffer ab (Erzeuger)
- Prozess B verarbeitet die Daten d. Puffers (Verbraucher)
- Erzeuger wird blockiert, sobald der Puffer voll ist
- Verbraucher wird blockiert sonald der Puffer leer ist
- Verbraucher erweckt ggf. den Verbraucher
- Überprüfung von voll und leer bedeutet, belegte verfügbare Pufferplätze abzugleichen - potentielle Race-Conditions