OS Klausuraufgaben Flashcards
trap ist eine privilegierte Instruktion. Ja oder Nein?
Nein
Auf Einprozessorsystemen ist zu jedem Zeitpunkt h¨ochstens einProzess im Zustand ”rechnend“(“running”). Ja oder Nein?
Ja
Paging verhindert internen Verschnitt innerhalb einer Seitenkachel. Ja oder Nein?
Nein
Durch Verwendung von ASIDs entf¨allt die Notwendigkeitden TLB beim Adressraumwechsel vollst¨andig invalidieren zum¨ussen. Ja oder Nein?
Ja
RAID 0 mit mindestens 2 Platten erlaubt nach dem Totalausfalleiner Platte eine vollst¨andige Wiederherstellung aller Daten. Ja oder Nein?
Nein
Erkl¨aren Sie die Begriffe ”Systemaufruf“ ”Exception“ und ”Interrupt“. Gehen Sieinsbesondere darauf ein wann und von wem das jeweilige Ereignis ausgel¨ost wird.
Systemaufruf: Wird von einem Userlevel-Programm get¨atigt um vom Kernelbereitgestellte Dienste aufzurufen (z.B. ¨ Offnen einer Datei Erstelleneines neuen Prozesses . . . ) Exception: Von der Hardware ausgel¨ost falls bei der Ausf¨uhrung einer Instruktionein Fehler auftrat (z.B. Division durch 0 ung¨ultiger Speicherzugriff. . . ) Interrupt: Ausgel¨ost von Hardwarekomponenten die damit ein bestimmtesEreignis signalisieren (z.B. anliegende Daten Ende eines Zeitintervalls. . . )
Erl¨autern Sie die beiden Hauptprobleme die mit virtuell indizierten virtuell getaggtenCaches auftreten k¨onnen.
Mehrdeutigkeiten (ambiguity): Eine virtuelle Adresse wird zu verschiedenen Zeitpunktenoder in verschiedenen Adressr¨aumen (0.5 P) auf unterschiedliche physischeAdressen abgebildet. Ohne Invalidierung der entsprechenden Cachezeilenk¨onnte der Cache ”veraltete“ Daten enthalten (0.5 P) . Bedeutungsgleichheit (alias): Verschiedene virtuelle Adressen werden auf die gleichephysische Adresse abgebildet. Dadurch kann es zu Inkonsistenzen kommen(1 P) .
Angenommen Sie sollten einen mehrf¨adigen (multithreaded) Webserver entwickelnbei dem ein Thread Anfragen von Clients entgegennimmt und diese unter einerMenge von Arbeiter-Threads verteilt. Jeder Arbeiter-Thread bearbeitet seine Anfrageindem er die ben¨otigten Daten mittels eines blockierenden Systemaufrufsvon der Festplatte liest und dann an den Client zur¨ uckschickt. Welches der dreiaus der Vorlesung bekannten Threading-Modelle w¨urden Sie in diesem Szenariobevorzugen? Begr¨unden Sie Ihre Antwort.
One-to-One (1 P) . Bei Many-to-One w¨urde ein blockierender Systemaufruf eines Threadsdie gesamte Anwendung blockieren (1 P) . Many-to-Many ist auch denkbar aber eigentlichnur sinnvoll wenn der Kernel die Userlevel-Threads ¨uber Blockierungen benachrichtigenkann (etwa via Scheduler Activations).
Z¨ahlen Sie zwei Vorteile von Lottery Scheduling gegen¨uber priorit¨atsbasierten Ans¨atzenauf.
Verhungern wird verhindert: Solange jeder Prozess mindestens ein Ticket hatkommt er irgendwann zur Ausf¨uhrung (1 P) . Ticketweitergabe erlaubt eine genauere Abrechnung von Rechenzeit: Ein Clientprozesskann Tickets an einen Serverprozess weitergeben sodass dieser Rechenzeitdes Clients (statt eigener Rechenzeit) ”verbraucht“ (1 P) . Beim Lottery Scheduling wirken sich Lastver¨anderungen (Hinzunahme oder Entfernenvon Prozessen) gleichm¨aßig und proportional zum jeweiligen Ticketbesitzder noch laufenden Prozesse aus (graceful degradation) (1 P) .
Nennen und erkl¨aren Sie die vier notwendigen Bedingungen f ¨ur Deadlocks.
Mutual exclusion (aka exclusiveness): Eine Ressource kann nicht gleichzeitig vonmehreren Prozessen benutzt werden (0.5 P) . Hold and wait: Ein Prozess der bereits mindestens eine Ressource h¨alt wartet aufmindestens eine andere Ressource (0.5 P) . No preemption: Zugeteilte Ressourcen k¨onnen einem Prozess nicht wieder entzogenwerden er muss diese selbst freigeben (0.5 P) . Circular wait: Es gibt einen Menge von Prozessen fP0; P1; : : : ; P0g wobei P0 auf eineRessource wartet die P1 h¨alt P1 auf eine Ressource wartet die P2 h¨alt usw.und Pn auf eine Ressource wartet die P0 h¨alt (0.5 P) .
F¨uhrt ein unsicherer Zustand immer zu einem Deadlock? Warum oder warumnicht?
Nein (0.5 P) da ein Prozess nicht notwendigerweise das Maximum anRessourcen anfordert / ggf. eine abwechselnde Ausf¨uhrung erfolgreich ist (0.5 P) .
Diskutieren Sie die Vor- und Nachteile von Deadlock-Vermeidung (avoidance) gegen¨uber Deadlock-Erkennung (detection).
Deadlock avoidance:+ Es wird sichergestellt dass keine Deadlocks auftreten (0.5 P) .+ Deadlocks m¨ussen nicht behoben werden (0.5 P) .– ¨ Uberpr¨ufung bei jeder Ressourcenzuteilung n¨otig (0.5 P) .– Maximalbedarf an Ressourcen pro Prozess muss vorab bekannt sein (0.5 P) .– Ggf. unn¨otige Verz¨ogerung von Ressourcenanforderungen (0.5 P) .
Wozu dient ein TLB?
Ein TLB beschleunigt die ¨ Ubersetzung von virtuellen in physische Adressen(1 P) .
Bestimmen Sie die effektive Speicherzugriffszeit unter der Annahme dass ein TLBLookup10 ns und ein Speicherzugriff 200 ns dauert und dass der TLB eine durchschnittlicheTrefferrate von 50% hat. Nehmen Sie an dass das System keine weiterenCaches außer dem TLB besitzt.
Grundformel: 0.5 * Hit + 0.5 * Miss (0.5 P)Hit: 10 ns + 200 ns = 210 ns (1 P)Miss: 10 ns + 200 ns + 200 ns + 200 ns = 610 ns (1 P)Richtiges Ergebnis (ggf. als Folgefehler): 410 ns (0.5 P)
Welche Zugriffsrechte haben Besitzer Gruppe und andere an der Datei exam.texauf einem Unix-Dateisystem nachdem untenstehendes Kommando erfolgreich ausgef¨uhrt wurde?chmod 640 exam.tex
Besitzer: r w – (lesen und schreiben) (1 P)Gruppe: r – – (lesen) (0.5 P)Andere: – – – (keine Rechte) (0.5 P)
Welche Eintr¨age m¨ussen die Metadaten einer Datei mindestens enthalten wenn”contiguous allocation“ zur Reservierung von Plattenbl¨ocken verwendet wird?
Anfangsadresse (0.5 P) und Gr¨oße (0.5 P) .
Was ist ein ”einfach indirekter Block“ und wozu wird er ben¨otigt?
Ein ”einfach indirekter Block“ ist ein Plattenblock der Zeiger auf (bzw.Adressen von) weiteren Plattenbl¨ocken enth¨alt (0.5 P) . Er wird verwendet um Dateienverwalten zu k¨onnen die mehr Bl¨ocke belegen als eine Inode direkt referenzierenkann (0.5 P) .
Angenommen Sie erstellen einen symbolischen Link s zu einer existierenden Dateig. Wie ¨andert sich dadurch der Linkz¨ahler in der Inode von g? Was passiert mit swenn g gel¨oscht wird?
Der Linkz¨ahler ¨andert sich durch symbolische Links nicht (1 P) .Nach dem L¨oschen von g zeigt der Link ins Leere bleibt aber unver¨andert bestehen(1 P) .
Gegeben seien Plattenanfragen f ¨ur die Zylinder 1; 17; 23; 40; 42; 50; 70; 105. Der Schreib-/Lesekopf befindet sich momentan auf Zylinder 45. Geben Sie an in welcher Reihenfolgedie einzelnen Zylinder angesteuert werden wenn als PlattenschedulingstrategieSSTF verwendet wird.
(45) 42 40 50 70 105 23 17 1 (2 P)
Was ist das Hauptproblem das bei Verwendung von SSTF auftreten kann?
Anfragen nach Zylindern ”am Rand“ k¨onnen verhungern falls st¨andig Anfragennach Zylindern ”in der Mitte“ vorliegen (1 P) .
Erkl¨aren Sie die RAID-Level RAID1 und RAID5.
RAID1: Mirroring. Daten werden auf mehrere Platten gespiegelt (1 P) .RAID5: Block-Level-Parit¨at (0.5 P) mit verteilten Parit¨atsbl¨ocken (0.5 P) .
Die CPU-Instruktion die Interrupts ausschaltet ist privilegiert. Richtig oder falsch?
richtig
Beim One-to-One-Modell teilen sich alle Threads in einemAdressraum den selben Stack. Richtig oder falsch?
falsch
Das Hauptproblem von physisch indizierten (physically indexed)Caches ist das Auftreten von Mehrdeutigkeiten. Richtig oder falsch?
falsch
Interrupts werden vom Betriebssystem ausgel¨ost wenn ein Benutzerprogrammeine unzul¨assige Instruktion ausgef¨uhrt hat. Richtig oder falsch?
falsch
Erl¨autern Sie kurz die Unterschiede zwischen einem System mit monolithischemKern und einem mikrokernbasierten System. Nennen Sie einen Nachteil einesmikrokernbasierten Systems gegen¨uber einem System mit monolithischem Kern.
Monolith: Gesamte Funktionalit¨at (einschl. Treiber) in einem einzelnen Binary d.h.keine “harte” Isolation zwischen Komponenten. (1 P) Mikrokern: Nur kleine privilegierte Code-Basis alle Dienste/Treiber laufen isoliertund unprivilegiert Kommunikation ¨uber Nachrichten. (1 P)Nachteile eines Mikrokerns: Geringere Performance durch mehr Kommunikationsoverhead (1 P) . Hoher Aufwand bei Portierung von Monolith (0.5 P) aber insgesamt max. (1 P)f¨ur Nachteil.
Nennen Sie zwei M¨oglichkeiten wie bei einem Systemaufruf Parameter an den Betriebssystemkern¨ubergeben werden k¨onnen.
¨ Uber Register Auf dem Stack ¨ Uber einen dedizierten Speicherbereich dessen Anfangsadresse in einem Register¨ubergeben wird
Er¨ortern Sie Vor- und Nachteile des Many-to-One-Modells gegen¨uber dem One-to-One-Modell.
+ Schnelles Threadmanagement (0.5 P)+ UL-Scheduling (0.5 P)+ Leicht portierbar auf 1:1 oder M:N (0.5 P)- Profitiert nicht von Mehrprozessor-Systemen (0.5 P)- Blockierender Systemaufruf eines Threads blockiert alle anderen Threads derAnwendung. (0.5 P)- Profiling/Debugging schwierig (0.5 P)
In einem Mehrprozessor-System kann man entweder eine gemeinsame Ready-Queue f ¨ur alle Prozessoren oder eine lokale Ready-Queue pro Prozessor verwenden.Diskutieren Sie die Vor- und Nachteile der beiden M¨oglichkeiten.
Zentral:+ Gleichm¨aßige Auslastung aller Prozessoren (1 P)- Queue wird zum Flaschenhals (1 P)Pro CPU:+ “Automatische” Prozessor-Affinit¨at (1 P)- Load-Balancing n¨otig (1 P)
Bei x86-Prozessoren enth¨alt das sogenannte CR3-Register die Basisadresse der¨außeren Seitentabelle (das sog. page directory). Wird vom Betriebssystem eine neueAdresse in dieses Register geladen so invalidiert die Hardware automatisch denTLB. Warum?
Weil der TLB sonst die (Virt ! Phys) Abbildungen des “alten” Adressraumszur¨uckliefern w¨urde (und somit der Prozess im “neuen” Adressraum auf falsche Datenzugreifen w¨urde). (2 P)(Formaler: Der TLB kann als virtuell indexierter virtuell getaggter Cache betrachtetwerden. Wird er beim Adressraumwechsel nicht invalidiert treten Mehrdeutigkeiten(Ambiguities) auf.)
Durch welche ¨Anderung am TLB k¨onnte diese Invalidierung vermieden werden?
Unterst¨utzung von ASIDs (address space identifier)
Erkl¨aren Sie die Begriffe demand paging und pre-paging. Bei welchem Verfahren istmit mehr “verschwendetem” Speicher zu rechnen? Warum kann dieses Verfahrendennoch von Vorteil sein?
Demand paging: Seiten werden bei Bedarf also erst beim Auftreten eines Seitenfehlerseingelagert. (0.5 P) Pre-paging: Seiten werden “auf Verdacht” eingelagert in der Hoffnung dass sie zueinem sp¨ateren Zeitpunkt ben¨otigt werden. (0.5 P)Pre-paging verschwendet potentiell mehr Speicher (0.5 P) (da Seiten eingelagert werdenk¨onnen die gar nicht gebraucht werden). Dennoch kann pre-paging von Vorteilsein da dadurch die Zahl der auftretenden Seitenfehler reduziert und somit die Leistungverbessert werden kann (1.5 P) . Effizienterer Datentransfer von der Festplatte:(1 P) falls als einziger Vorteil genannt (0.5 P) Bonus falls zus¨atzlich zur reduziertenPF-Rate.
Durch welche Technik k¨onnen die mit dem fork()-Systemaufruf verbundenen Kosten(in Form von Rechenzeit) deutlich gesenkt werden?
copy-on-write (1 P)
Erl¨autern Sie den Unterschied zwischen mandatory und advisory file locking.
Mandatory: Das Betriebssystem stellt sicher dass kein Prozess eine Datei ¨offnenkann auf die bereits ein anderer Prozess ein Lock h¨alt. (1 P) Advisory: Das Betriebssystem erlaubt den gleichzeitigen Zugriff von mehreren Prozessenauf eine Datei die Prozesse m¨ussen sich ggf. selbst um korrekte Synchronisationk¨ummern. (1 P)
Erkl¨aren Sie den Unterschied zwischen einem Hardlink und einem symbolischenLink.
Hardlink: Ein (weiterer) Name f¨ur eine Datei d.h. ein Verzeichniseintrag der eine(schon vorhandene) Inode referenziert. (1 P) Symlink: Eine spezielle Datei vom Typ “Link” die den Namen der Zieldatei enth¨alt.(1 P)
Moderne Dateisysteme erlauben es in der Regel dass Dateien aus beliebig aufder Festplatte verteilten Bl¨ocken bestehen k¨onnen. Warum kann es dennoch vonVorteil sein Bl¨ocke f ¨ur eine Datei m¨oglichst “am St¨uck” zu allozieren?
Mechanische Festplatten erlauben vergleichsweise hohe Transferraten wenn Bl¨ockesequentiell (also auf derselben Spur) gelesen werden. Die Latenz f¨ur wahlfreie Zugriffeist dem gegen¨uber aber relativ hoch da in diesem Fall der Schreib-/Lesekopf erstpositioniert werden muss (seek time). (1 P) Unter Annahme der Lokalit¨atseigenschaft (sequentieller Zugriff oder wahlfreie Zugriffe auf dieselbe Spur) (0.5 P) k¨onnen daher zeitaufwendige Positionierungen des Schreib-/Lesekopfes vermieden werden. (0.5 P)
Nennen Sie zwei Beispiele f ¨ur zeichenorientierte Ger¨ate (character devices).
Z.B. Tastatur (0.5 P) und Maus (0.5 P) .
Wof ¨ur steht das Akronym DMA? Erkl¨aren Sie kurz wie DMA funktioniert und wozuman es verwendet.
Direct Memory Access (0.5 P) Das Betriebssystem programmiert den DMA-Controller (0.5 P) der die Daten vom Ger¨at in den Hauptspeicher ¨ubertr¨agt (oder umgekehrt). (0.5 P) . Das Ende des Kopiervorgangs wird durch einen Interrupt signalisiert. (0.5 P) DMA erlaubt den Datentransfer zwischen Hauptspeicher und einem E/A-Ger¨at ohne die CPU zu belasten. (1 P)
Wohin zeigt der Frame Pointer?
Fixed address for the stack frame. E.g. Between arguments and local variablesor between return address and arguments (1P). To the frame + explanation what a frame is (1P). To the beginning of the frame (1P). To the frame without further explanation (0P).
Wof ¨ur stehen die folgenden Akronyme?APICKSP
APIC Advanced Programmable Interrupt ControllerKSP Kernel Stack Pointer
Bei Nutzung des Many-to-One–Faden-Modells ist es nichtm¨oglich Rechen- und E/A-Operationen zu ¨uberlappen. Richtig oder falsch?
falsch
Der TLB ist f ¨ur gew¨ohnlich ein physisch indizierter virtuellgetaggter Cache. Richtig oder falsch?
falsch
Ruft man unter Linux fork() in einem Prozess auf deraus mehreren One-to-One–F¨aden besteht so werden allezugeh¨origen F¨aden dupliziert. Richtig oder falsch?
falsch
In Monitoren k¨onnen Verklemmungen auftreten. Richtig oder falsch?
richtig
Bei hinreichend langen Zeitscheiben ist Round-Robin ¨aquivalentzu First-Come-First-Served. Richtig oder falsch?b
richtig
Speicherplatz der als interne Fragmentierung bezeichnet wirddarf nicht in der Frei-Liste sein wohingegen der Speicherplatzder als externe Fragmentierung bezeichnet wird in der Frei-Liste auftauchen muss. Richtig oder falsch?
richtig
Was spricht daf ¨ur einen dedizierten Kern-Stapel pro Prozess zu benutzen? GebenSie ein konkretes Beispiel an!
Improved kernel protection: (1P) prevents information leaks from kernel to userspace (+1P) or ensures that stack is of sufficient size for kernel operations (+1P) or handling of userstack pagefaults need a separate kernel-stack anyway (+1P) or prevents effects of malicious manipulation of user-stack-pointer (+1P)
Bei einem Funktionsaufruf sichert die aufrufende Funktion selbst den aktuellenCPU-Kontext auf dem Anwendungsstapel. Wer sichert den aktuellen CPU-Kontextbei Auftritt einer Unterbrechung?
CPU sichert IP(/SP) (+0.5P) Interrupthandler u.U. den Rest der durch Interrupt-Service-Routine ¨uberschriebenwird (+0.5P)
Im Gegensatz zu Linux Kern-Modulen sind Mikrokern-Dienste voreinander gesch¨ utzt.Wie ist dieser Schutz implementiert (zwei Aspekte)?
Every Service runs as a user process (1P) and within its own address space (1P). If you cannot name it you cannot touchit.
Betriebssysteme laufen normalerweise im Kern-Modus was ihnen erm¨oglicht dengesamten CPU-Instruktionssatz zu verwenden. Virtuelle Maschinen (VMs) laufenallerdings im User-Mode. Z¨ahlen Sie drei Techniken auf die benutzt werden k¨onnenum VMs die Ausf¨uhrung privilegierter Instruktionen zu erm¨oglichen.
Paravirtualization (1P) Binary Translation (1P) Trap-and-emulate (1P)
Nehmen Sie an Sie haben ein System welches einen Kreis im Ressourcen-Allokations-Graphen enth¨alt. Befindet sich das System zwingend in einem Deadlock?Begr¨unden Sie Ihre Antwort.
No (+1P) There could be multiple resources of a kind which might prevent a deadlock (+1P)
Nehmen Sie an Sie haben eine Verklemmung erkannt. Nennen Sie zwei M¨oglichkeitendiese Verklemmung aufzul¨osen.
Some possibilities are: Process termination Rollback (+ resource preemtion)/resource preemption Add resources
Was ist der Unterschied zwischen Verklemmungsverhinderung und Verklemmungsvermeidung?Geben Sie jeweils ein Beispiel an.
Deadlock Prevention/Verhinderung: Negate at least one of the required deadlockconditions (+0.5P) e.g. using resource ordering (+0.5P)Deadlock Avoidance/Vermeidung: Decide if system stays in safe state on everyresource request (+0.5P) e.g. the Banker’s algorithm (+0.5P)
Geben Sie ein konkretes Szenario an in dem ein System ein einziges Semaphorenthalten k¨onnte auf dem ein Faden nur signal- und ein anderer Faden nur wait-Operationen ausf¨ uhrt.
Reader-Writer synchronization of an unbounded shared buffer (e.g. the readeris faster than the writer) Pipeline synchronization One-way communication/signal
Warum tauscht die atomare swap-Instruktion welche zur Implementierung vonSpin-Locks verwendet werden kann den Inhalt eines Registers mit dem einer Speicherstellestatt zwei Registerinhalte zu vertauschen?
Each thread has it’s own private register set so swapping between registers isinvisible to other threads (1P) Registers are CPU-local resources (0.5P)
Erkl¨aren Sie warum man das Kritischer-Abschnitt-Problem auf Multiprozessor-Systemen nicht durch das Maskieren von Unterbrechungen l¨osen kann.
Disabling interrupts only affects a single CPU/core threads on other CPUs canstill interfere (0.5P) Disabling interrupts on all CPUs cannot be done atomically (0.5P)
Ein Prozessor hat einen 32-Bit-Adressraum und kombiniert Segmentierung undKachelverwaltung (wie IA-32 erst Segmentierung dann Kachelverwaltung). DieSeitengr¨oße betr¨agt 4 KiB. Visualisieren Sie was in der MMU passiert wenn einBenutzerprozess auf Speicher zugreift und weder Segmentierungs- noch Seitenfehlerauftreten. Gehen Sie davon aus dass eine einstufige Seitentabelle genutztwird.
Aufteilung der Adresse f¨ur Segmentierung (+1P) Vergleich des Offsets mit der L¨ange des Segments (+1P) Addition der Basis-Adresse des Segments (+1P) Resultierende Adresse f¨ur Paging aufteilen (+0.5P) Aufl¨osen VPN -> PPN anhand der Pagetable (+0.5P) Protection bits im Pagetable-Eintrag mit Zugriff abgleichen (+1P)
Ist es sinnvoll Kachelverwaltung vor Segmentierung einzusetzen? Begr¨unden SieIhre Antwort.
No. Loses advantage of page tables (large virtual address spaces patched togetherfrom non-contiguous memory) while keeping the overhead of the two level scheme.In addition segment tables are small so building them from pages doesn’t buy youanything (and may lose because of internal fragmentation).
Beurteilen Sie Stapel Textsegment und Halde danach wie gut Ihrer Meinung nachbei diesen die LRU Seitenersetzungsstrategie in einer Kachelverwaltung funktioniert.Erkl¨aren Sie f ¨ur jedes Segment wie Sie zu der Einsch¨atzung kommen.
Stack best it is used in a LIFO fashion and is dense Code is second it is linear with loops and generally follows certain execution patterns Heap is last it tends to be used in a more random access fashion than e.g. stacks Different orderings may also be ok depending on your justification.
Ben¨otigt eine virtuelle Speicherverwaltung die Equal Allocation implementiert eineglobale oder eine lokale Seitenersetzungsstrategie? Begr¨unden Sie Ihre Antwort.
A local page replacement policy to keep the allocated shares equal.
In Linux hat die Oktalnotation der Zugriffsrechte 4 Ziffern. Erkl¨aren Sie wof¨ur die 4 Ziffern jeweils stehen (nicht welche Werte sie annehmen k¨onnen).
Je +0.5P f¨ur Spezialattribute Userrechte Gruppenrechte Rechte f¨ur alle.
Welche Zugriffsrechte werden ¨ ublicherweise f ¨ur das Verzeichnis /tmp/ gesetzt inwelchem unter Linux tempor¨are Daten abgelegt werden k¨onnen? Erkl¨aren Siewarum genau diese Rechte gesetzt werden.
1777 (+1P) Sticky bit (restricted deletion flag): Users may only remove or rename files theyown not those of others (despite the directory’s permissions) (+1P)
Erkl¨aren Sie warum ein RAID-5-Verbund Lesezugriffe generieren k¨onnte obwohldas Betriebssystem ausschließlich schreibend auf den Verbund zugreift.
Old data (0.5P) and Old checksum (0.5P) are needed for fast recomputation of new checksum
Der CPU-Befehlssatz wird generell in privilegierte und nicht privilegierte Instruktionenunterteilt. Woher weiß die CPU (IA-32) ob sie zu einer bestimmten Zeit eineprivilegierte Instruktion ausf¨uhren darf?
Current Privilege Level (CPL) Register in the CPU (”Ring”)
Nennen Sie 2 privilegierte IA-32 Instruktionen und erkl¨aren Sie jeweils warumdiese privilegiert sein m¨ussen.
CLI/STI - IRQ off/on - e.g. Timer triggers via interrupt if user could disableinterrupts she could interfere with scheduling PUSHF/POPF - Push/Pop Flags - e.g. to set CPL if user could set CPL she couldget kernel-mode privileges.
Wie bemerkt das Betriebssystem dass ein nicht privilegierter Prozess versucht hateine privilegierte Instruktion auszuf¨uhren?
The CPU generates an exception in that case.
Wof ¨ur stehen die folgenden Abk¨urzungen im Kontext der Betriebssysteme-Vorlesung?ASIDPFN
ASID Address Space IDentifierPFN Page/Physical Frame Number
Bei Nutzung des Many-to-One–Faden-Modells ist es nichtm¨oglich Rechen- und E/A-Operationen zu ¨uberlappen wennnur synchrone E/A-Primitiven benutzt werden. Richtig oder falsch?
richtig
Hauptprozessor-Einplanungsalgorithmen in General-PurposeBetriebssystemen tendieren dazu denjenigen Auftr¨agen hohePriorit¨aten zuzuordnen welche den Hauptprozessor am wenigstenbenutzen. Richtig oder falsch?
richtig
Ruft man unter Linux fork() in einem Prozess auf deraus mehreren Many-to-One–F¨aden besteht so werden allezugeh¨origen F¨aden dupliziert. Richtig oder falsch?
richtig