• Keine Ergebnisse gefunden

5 Bit 7 Bit 10 Bit

N/A
N/A
Protected

Academic year: 2022

Aktie "5 Bit 7 Bit 10 Bit"

Copied!
13
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Datum,Zeit 4.Juli 2008,08:00 09:30 Uhr(90min)

Aufgabenblätter 13 Seiten(einshl. Dekblatt)

erreihbare Punktzahl 75

zugelassene Hilfsmittel A (s.Prüfungsplan)

Studiengang Prf. Nr. Raum

AI 3618 C109

Name: Matrikelnummer:

Vorbemerkung DieKlausuristziemlihumfangreih.LassenSiesihnihtverunsihern,

Siebenötigen niht alle Punkte für dieNote 1,0; Sie benötigen weniger als die Hälfte der

Punkte fürdie Note4,0.

Hinweise:

ˆ Shreiben Siebitte Nameund Matrikelnummer aufjedes Aufgabenblatt.

ˆ ShreibenSieIhreLösungzudenAufgaben aufdenfreienPlatz,direktanshlieÿend

an die Fragestellungen. Wenn Sie zusätzlihe Blätter verwenden, so shreiben Sie

bitte Nameund Matrikelnummerauf jedesBlatt.

ˆ Shreiben Sielesbar!

VomPrüferauszufüllen:

Aufgabe 1 2 3 4 5 6 Summe

Max.Punkte 19 25 8 10 3 10 75

(2)

Aufgabe 1 Virtueller Speiher

EinBetriebssystemverwendetPaging,umfürdievershiedenenProzessejeweilseinenvir-

tuellenHauptspeiherzurealisieren.Dervirtuelle Speiherwirdauf32MB Hauptspeiher

und16MBderFestplatteabgebildet(Swap-Spae).DieGesamtlängeeinerAdressebeträgt

28Bit.

5 Bit 7 Bit 10 Bit

PT1 PT2 PT3 Offset

6 Bit

DasBetriebssystemverwendeteinedreistugeSeitentabel-

le.DieLängedererstenSeitenadresse(PT1)beträgt5Bit;

die Länge der zweiten Seitenadresse (PT2) beträgt 7 Bit;

die Länge der dritten Seitenadresse (PT3) beträgt 6 Bit;

dieLänge desOsetsbeträgt 10Bit.

Allg.Hinweis:Shreiben Siebeiden folgenden Aufgaben immer den Rehenweg auf,z.B.

GröÿedesSpeiherbereih XY dividiert durh Anzahl Z.

1.1 (10 Punkte)

Ein Prozessbelegtfolgende Adressbereihe:

Prog. Teil Adressbereih Gröÿe inByte

TextSegment 0 - 420000 420001

HeapSegment 420001 - 19738070 19318070

StakSegment 268365945 268435456 69512

(1 Punkt)Wie viele Einträge hat dieSeitentabelle ersterStufe?

(1 Punkt)Wie viele Einträge hat eineSeitentabelle zweiterStufe?

(1 Punkt)Wie groÿ (inKilobyte,KB) ist ist eineSeite, wiegroÿ isteine Kahel?

(1 Punkt)Wie viele Seiten belegt dasStakSegment?

(1 Punkt)Wie viele Seitentabellen dritterStufewerdenfür dasStakSegment benötigt?

(2 Punkte) Wie viele Seitentabellen dritter Stufe werden für das Text und das Heap-

Segment benötigt?

(2 Punkte) Wie viele Seitentabellen zweiter Stufe werden für das Text und das Heap

(3)

(1 Punkt)Wie viele Kaheln verwaltet dasBetriebssystem?

1.2 (9 Punkte)

Im Weiterensoll einevirtuelle Adressedurh vierDezimalzahlen für PT1, PT2, PT3und

Oset dargestellt werden. Beispiel: Die dezimalen Werte (11, 27, 33, 213) stehen für die

virtuelle Adresse010110011011 10000100011010101.

DiefolgendeAbbildungzeigteinenAusshnittausderSeitentabelleersterStufeundeinige

Ausshnitte aus Seitentabellen zweiter und dritter Stufe. Ahtung: In den Seitentabellen

dritterStufestehennurdiesignikantenBits,sodassderOsetlediglihangehängtwerden

muss!

1 2 3 4 0

10 11

:

:

6180

:

PT2 PT1

3506 9748 3988 5742 4398

9748

6620

9028 5128 8040

:

1066 8742 7046 3248 1

2 0

1 2 3 0 Anfangsadresse

31

2901

98 :

6620

867

1066 741

42 1

0

3 :

930 9028

558 26

28 :

PT3

: :

:

27 331

2

108

6180

790 285 : 1 0

2

646

Diephysishe AdressesollinFormeiner Dezimalzahl dargestelltwerden.

ErgänzenSiediefehlendenWerteinderTabellesoweitmöglih.WennSieeinenWertniht

(4)

virt.Adresse phys.Adresse

1 2 28 123 952443

1 2 26 381

31 0 3 459

661846

216170

1 98 2 503

2 3 0 967

(5)

Aufgabe 2 Datei System mit I-Nodes

Ein DateisystemverwendetI-NodesfürdieVerwaltung vonDateien. FürdieFreispeiher-

verwaltungvon I-Nodesund Blöken verwendetdasSystem je eineBitmap.

Ein I-Node desSystemsbesitzt folgendesFormat (die Zahlensindlediglih Beispiele!):

I-Node

3

D 1

Datei-Typ D: Directory R: Reguläre Datei S: Soft-Link

Link-Count Direkter Block

Einfach indirekter Block Zweifach indirekter Block Dreifach indirekter Block 4

9 6

DieDaten sindalso übereinen direkten Blok,einen zweifahindirekten Blokund einen

dreifah indirekten Blok erreihbar. Ein Blok enthält 2048 Byte, ein Zeiger auf einen

Blokenthält 8Byte. I-Nodesenthalten nieselbst Dateneiner Datei.

2.1 (3 Punkte)

Wie groÿ kann eine Dateiin diesem Dateisystem maximal sein? Bitte geben Sie alle Re-

henshrittean.

2.2 (2 Punkte)

Wie groÿkanndasDateisystem maximalsein (Begründung)?

2.3 (3 Punkte)

Wie viele Blöke belegt eine Datei, die 100MB Daten enthält. Berüksihtigen Sie niht

denPlatz,derimDatei-Verzeihnis(Diretory)belegtwirdundebenfallsnihtden Platz,

(6)

Verzeihnisse sind Dateien, die zu jeder verwalteten Datei einen Eintrag enthalten. Ein

Eintragbestehtausdem Namenund einem Verweis auf denI-NodederDatei.

. ..

home log.txt

2

8 6 2

I-Node 8

1

Block 1 . ..

8 2 4 5 notes.txt toDo.txt

I-Node 4

2

Block 2 I-Node 2

3

Block 3

I-Node 6

11

Block 11 I-Node 5

5

Block 5 /home/notes.txt

<EOF>

040708-s001 . . . 040708-s002 . . . 040708-pqr . . .

<EOF>

Am Dienstag scheint die Sonne verbreitet für 15 bis 16 Stunden . . .

. . . von einem oft wolkenlosen Himmel. <EOF>

4

Block 4 Block 7

7 D

R

D

S

R

test.txt 4

11

1 2 1

1 1

10

Block-Bitmap I-Node-Bitmap

0 1

0 1

. . . . . . 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0

1 1

0 1

Index 5 10 15

0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 1

0 1 0

0 0 0

Abbildung 1:I-NodesundBlöke desDateisystems

Abb.1zeigtallevomDateisystemverwendetenI-NodesundBlökesowieeinenAusshnitt

derFreispeiherverwaltung.DerEintrag<EOF>bedeutet:GemäÿLängeneintragimI-Node

endet die Datei an dieser Stelle. Der erste Eintrag der Freispeiher-Bitmaps bezeihnet

den Blok 0bzw. den I-Node 0.DerWert1 bedeutet,dass derentsprehende Blokbzw.

I-Nodebelegt ist,derWert0 bedeutet,dass derentsprehende Blokbzw. I-Nodefrei ist.

2.4 (9 Punkte)

DasSystem enthält einigeInkonsistenzen. ListenSiedieEinträge auf,die fehlerhaftsind.

Z.B.BlokX,EintragYmüsstedenWertZhaben,I-Node-Bitmap,n-teStellemüssteden

(7)

2.5 (5 Punkte)

Die Datei log.txt wird um 2KB vergröÿert. Welhe Änderungen ergeben sih in dem

gegebenenDateisystem?DasSystemverwendetdafürnurBlökeabBlok15einshlieÿlih.

Waswirdangelegt, welhe Wertewerden wo eingetragen bzw. verändert?

2.6 (3 Punkte)

EineDatei(XY.Z)bestehtauseinemI-NodeunddreiDatenblöken.Ein Programmönet

dieDateimitdemBefehlfopen(XY.Z, r+).DasProgrammliestdenerstenBlokund

übershreibt den Rest derDatei. Nehmen Sie an,dass die Stromversorgung des Rehners

ausfällt,währenddieDateiübershriebenwird.MitwelherStrategielässtsihverhindern,

dass die Datei in einen inkonsistenten Zustand kommt. Erläutern Sie das Vorgehen ggf.

(8)

Aufgabe 3 Ersetzungsstrategien (8 Punkte)

Das Betriebssystem eines Rehners verwaltet einen Hauptspeiher mit 4 Kaheln. Das

Betriebssystem verwendet den NRU-Algorithmus. Auf dem System läuft ein Prozess mit

insgesamt 8 Seiten. Die Seiten der Prozesse werden gemäÿ der ersten Zeile derfolgenden

Tabellen referenziert.Dabeisteht 'r' fürlesendenZugri und'w'fürshreibenden Zugri.

DerEintrag ZS bedeutet, dass dieR-Bits durh NRU-Algorithmus zurükgesetzt werden.

InderSpalteuntereinemZugrisollendieFolgendiesesZugrisdagestelltwerden.Sowird

z.B. inderersten Spaltedurh den Zugri aufSeite 1diese Seite inKahel 3eingelagert.

DieSeiten 0,4,und 3wurden shonvorher eingelagert.

Ergänzen SiedieTabelle.

Seitenreferenz/ArtdesZugris

1/r 4/r 2/w ZS 4/r 3r 2/r 1/w ZS 3/r

K0 0(1,1)

K1 4(1,0)

K2 3(0,1)

K3 1(1,0)

Zweite Tabelle fürevtl. Korrekturen.

Seitenreferenz/ArtdesZugris

1/r 4/r 2/w ZS 4/r 3r 2/r 1/w ZS 3/r

K0 0(1,1)

K1 4(1,0)

K2 3(0,1)

(9)

Aufgabe 4 Synhronisation

C A

B S2

S1

S3

F D

E S5 S4

S6

Abbildung 2:Ein paralleles System in

Formeines Petri-Netzes DasfolgendePetri-NetzzeigtdieSynhronisati-

onvon2Prozessen

P

_

ABC

,und

P

_

DEF

.Es

handelt sih um ein Bedingungs-Ereignis-Netz.

DieTransitionen

A, B

und

C

gehörenzuProzess

P

_

ABC

,dieTransitionen

D, E

und

F

gehören

zuProzess

P

_

DEE

.

4.1 (2 Punkte)

Welhe Stellen müssen Sie als Semaphor reali-

sieren,umdiezweiProzessegemäÿ demobigen

Petri-Netz zusynhronisieren?

4.2 (3 Punkte)

Geben Sie den Quell-Code für die Prozesse

P

_

ABC

und

P

_

DEF

an. Sie können dazu

PseudoPasal verwenden (s. Skript von Frau

Keller)oder(Pseudo)Java.

Prozess P_ABC{

}

Prozess P_DEF{

}

4.3 (3 Punkte)

Zeihnen SiedenEreignisgrafendesPetri-Netzes.SiekönnendieVorlageuntenverwenden

oder eine eigene Skizze anfertigen. Geben Sie zu jedem Übergang die Transition, die ihn

(10)

4.4 (2 Punkte)

Kanndas System,dasindem oben angegebenen Petri-Netz(s. Abb. 2) dargestellt ist,in

(11)

Aufgabe 5 Interprozesskommunikation

Zwei Prozesse auf einem Rehner sollen Daten austaushen. Die Prozesse sindniht mit-

einander verwandt. Ein Datensatz enthält zwei kurze Texte, zwei ganze Zahlen und drei

Gleitkommazahlen und dreieinzelne Buhstaben.Das Programmmuss voraussihtlih re-

gelmäÿig angepasstwerden, da sih dieZusammensetzung derDatensätze ändernkann.

Für die Interprozesskommunikation müssen Sie sih zwishen Shared Memory und einer

NamedPipe entsheiden. NennenSiekurz die spezishenVor- undNahteiledieser Ver-

fahrenfür diegegebene Aufgabe.

5.1 (3 Punkte)

(12)

Aufgabe 6 Sheduling (10 Punkte)

Ein Betriebssystem verwendet prioritätsbasiertes Sheduling. Der Sheduler wird aktiv,

wenn eine Zeitsheibe abläuft und wenn ein Prozesse einenSVC (Aufrufin den Betriebs-

system-Kernel) absetztunddadurh blokiertwird.

ˆ Wenn ein Prozess eine höhere Priorität besitzt als alle anderenProzesse, so darf er

laufen, sobaldderSheduler aktiv ist/war.

ˆ WenneinZeitsheibeabläuftpassiertfolgendes:DiePrioritätdesProzesses,dergera-

derehnet, wirdumden Wert 1vermindert.Die PrioritätenderProzesse,die bereit

sind,werdenumdenWert1erhöht.DanahermitteltderShedulerdenProzess,der

alsnähstes laufendarf.

ˆ Wenneinen ProzesseinenSVCabgesetzt, wirderblokiert. SeinePriorität wirdum

denWert1 erhöht.

ˆ DieminimalePrioritäteinesProzessistdieBasis-Priorität-2,diemaximalePriorität

eines Prozessistdie Basis-Priorität+2.

ˆ Wenn mehrere Prozesse die maximale Priorität besitzen und einer davon läuft, so

darf dieserweiterlaufen.

ˆ Wenn mehrere Prozesse die maximale Priorität besitzen und keiner davon läuft, so

(13)

Prozesse

ProzessNr. Basis-Priorität

1 5

2 6

3 7

4 6

Ereignisse

t 1

:Prozess P1,P2 und P3werdengestartet

t 2

:Ein Zeitsheibefür Multitasking läuft ab

t 3

:Prozess P3maht einenSVC(blokiert)

t 4

:Prozess P4wirdgestartet

t 5

:Ein Zeitsheibefür Multitasking läuft ab

t 6

:Ein Zeitsheibefür Multitasking läuft ab

t 7

:Prozess P2maht einenSVC(blokiert)

t 8

:Prozess P3wirddeblokiert

t 9

:Ein Zeitsheibefür Multitasking läuft ab

t 10

:Ein Zeitsheibefür Multitasking läuft ab

t 11

:Prozess P3maht einenSVC(blokiert)

Zeihnen SiedieZustände und diePrioritätenderProzesse indiefolgende Tabelle ein:

1 2 3 4 5 6 7 8 9 10 11 12

P1 P2 P3 P4

t läuft

bereit blockiert Legende:

Zweite Tabelle fürevtl. Korrekturen:

1 2 3 4 5 6 7 8 9 10 11 12

P1 P2 P3 P4

t läuft

bereit

blockiert

Legende:

Referenzen

ÄHNLICHE DOKUMENTE

Intuitively: The predicting algorithm produces an l-tuple according to q i−1 , given that z i−1 is generated by the PRBG. If dst answers 0, then it thinks that the l-tuple was

für das Stak-Segment oder kann der Stak über die vorhandenen Seitentabellen zweiter.. Stufe adressiert

Ein Betriebssystem verwendet Paging, um für die vershiedenen Prozesse jeweils einen vir-.. tuellen Hauptspeiher

mentiert werden, dass es niht in einen Deadlok geraten kann; wenn ja, wie; wenn nein,.

mentiert werden, dass es niht in einen Deadlok geraten kann; wenn ja, wie; wenn nein,.. Aufgabe

a) Die Register: Sie dienen als Zwischenspeicher für Daten und Befehle. b) Das Steuerwerk: Jeder einlangende Befehl wird hier decodiert und aktiviert ein entsprechen-

1) Reset. This has highest priority. This has second highest priority. This has third highest priority. This has lowest priority. you execute XOP instructions to

SED1065 built in, SoundGenerator, SupplyVoltageDetection Watchdog, 10bit A/D Converter, HighSpeedOperation, no access to ext. 16bit timer) SoundGenerator, Display Memory, Clock