Ha szívesen korrepetálnál, hozd létre magántanár profilodat itt.
Ha diák vagy és korrepetálásra van szükséged, akkor regisztrálj be és írd meg itt, hogy milyen tantárgyban!
Egy reguláris állomány 555000. byte-ját akarjuk olvasni. Hol található meg az ehhez
tartozó blokk címe? (Tegyük fel, hogy a rendszer diszkblokkjai 1 K-sak, és 4 byte-on
címezhetőek.)
Ilyen kérdésünk előfordulhat majd a dolgozatunkban, azonban fogalmam sincs, hogy hogyan kéne megoldani, a tanár jegyzetei alapján pedig nem igazán tudom megcsinálni.
Direkt és indirekt blokkokat kell használni, azonban nem tudom, hogy a direkteket feltétlen fel kell-e használni
Jelenleg 1 felhasználó nézi ezt a kérdést.
0
Felsőoktatás / Informatika
Válaszok
1
ISU{ Elismert }
megoldása
A feladat szerint egy reguláris állomány 555 000 byte-ját szeretnénk olvasni. A rendszer diszkblokkjai 1 K (1024 byte) méretűek, és 4 byte-on címezhetőek. Az adott információk alapján meg kell határoznunk, hogy hol található meg az olvasandó blokk címe.
Először meg kell számolnunk, hogy hány diszkblokkra van szükség az olvasandó 555 000 byte tárolásához. Ehhez a következő számítást végezhetjük:
Szükséges diszkblokkok száma = (Olvasandó byte-ok száma) / (Diszkblokk mérete)
Szükséges diszkblokkok száma = 555 000 / 1024 ≈ 542.97
Mivel a diszkblokkok egész számokban mérhetőek, ezért a fenti eredmény alapján tudjuk, hogy legalább 543 diszkblokkra lesz szükségünk.
Az olvasandó byte-ok címzése érdekében direkt és indirekt blokkokat használhatunk. A direkt blokkok az adatokat közvetlenül tárolják, míg az indirekt blokkok további címeket tartalmaznak, amelyekre hivatkozva elérhetjük az adatokat.
A feladat nem határozza meg, hogy pontosan hány direkt és indirekt blokkot kell használnunk. Ezért a konkrét megoldáshoz szükséges lenne több információ.
Ha csak direkt blokkokat használunk, akkor minden diszkblokkhoz 4 byte-os cím tartozik. Tehát az 543 diszkblokkot tartalmazó állományunkat az alábbi módon címezzük:
0 - 542: Direkt blokkok címei (0-tól 542-ig)
Az olvasandó byte-ok címe tehát 0-tól 542-ig terjed.
Ha indirekt blokkokat is használunk, akkor a címeket tovább bővíthetjük. Az egyes indirekt blokkok több címet tartalmaznak, így több diszkblokkot is képesek hivatkozni. Az indirekt blokkok használatával hatékonyabban tudjuk címezni a nagyobb mennyiségű adatot.
A pontos megoldás érdekében további információkra van szükségünk a feladatban. A direkt és indirekt blokkok pontos számának meghatározásához, valamint az egyes blokkok címeinek meghatározásához részletesebb specifikációra lenne szükség.