Arvutiteaduse instituut
  1. Kursused
  2. 2020/21 sügis
  3. Operatsioonisüsteemid (LTAT.06.001)
EN
Logi sisse

Operatsioonisüsteemid 2020/21 sügis

  • Pealeht
  • Loengud
  • Praktikumid
  • Kodutööd
  • Hinded
  • Osalejad

Kolmas kodutöö - Salvestusruumi haldus

Kirjutada graafilise kasutajaliidesega simulaator failisüsteemi ühetasemelise indekseeritud paigutuse visualiseerimiseks.

  • Vaja on näidata paigutust iga sammu järel.
  • Paigutusest peab olema aru saada, mis alad kuuluvad missugusele failile.
  • Vaja on simuleerida ainult andmeplokkide paigutust (indeksid on lihtsuse huvides kusagil väljaspool ja neile pole vaja plokke hõivata).
  • Faili plokid ei pea paiknema sidusalt, selleks on meil kusagil mõtteline indeks.
  • Uue loodava faili plokkideks võetakse alati esimesed vabad plokid.
  • Kasutada on ketas 48 plokiga
  • Sisendiks on järjend failide loomise ja kustutamise sündmuste kohta, näiteks A,2;B,3;A,-;C,4;B,+3;D,5;E,15;C,-;F,5
    • Järjendis iga paar tähistab faili loomist koos sisu kirjutamisega, kasvatamist või kustutamist
    • Paari esimene element on unikaalne ühetäheline faili nimi
    • Paari teine element on loodava faili suurus (lihtsa arvu korral), faili kasvatamisel lisatav plokkide arv (kujul +arv) või miinus sellenimelise faili kustutamiseks: A,5 tähendab 5-plokilise faili loomist, A,+2 tähendab failile A 2 ploki lisamist ning A,- tähendab A kustutamist (mitte osalist vähendamist)
  • Võib eeldada, et mustris on kuni 10 sündmust
  • Võib eeldada, et ühtki faili ei kustutata enne tema loomist
  • Võib eeldada, et iga faili kustutatakse maksimaalselt 1 kord (kustutamisel kustutatakse ära kõik tema osad)
  • Kui mingil sammul uue faili jaoks ruumi ei jätku, tuleb sellest teada anda ja töö katkestada
  • Kasutaja saab valida 3 valmis pöördusmustri vahel (kolm päringute näitejärjekorda, mis aitavad algoritmi tööd mõista)
  • Kasutajal peab olema võimalus sisestada (sealhulgas paste) oma pöördusmuster
  • Visualiseering peab kajastama ketta seisu iga loomise või kustutamise sündmuse järel ning iga kettaploki kohta peab olema aru saada, mis failile see kuulub (või on vaba)
  • Simulatsiooni lõpuks peab lisaks välja arvutama ja kasutajale näitama lõppseisu fragmenteerituse kahel erineval viisil:
    • Kui suur protsent allesjäänud failidest on fragmenteerunund (koosnevad rohkem kui ühest fragmendist)?
    • Kui suur protsent kasutatud ruumist kuulub fragmenteerunud failidele?
  • Lisaks simulatsioonile peab esitama vastuse küsimusele:
    • Kummal viisil mõõdetud fragmenteeritus on pöörleva ketta jõudluskao iseloomustamiseks mõistlikum (põhjenda)?

Programmeerimiskeel ja raamistik on vabad.

Tähtaeg: 30.12.2020

Näitemustrile A,2;B,3;A,-;C,4;B,+3;D,5;E,15;C,-;F,5 vastav näidisväljund:

18. Kodutöö 3
Sellele ülesandele ei saa enam lahendusi esitada.
  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Tartu Ülikooli arvutiteaduse instituudi kursuste läbiviimist toetavad järgmised programmid:
euroopa sotsiaalfondi logo