[SO przydział miejsca na dysku

Awatar użytkownika
nico89
Użytkownik
Użytkownik
Posty: 107
Rejestracja: 20 mar 2006, o 16:11
Płeć: Mężczyzna
Lokalizacja: Opole Lub.
Podziękował: 5 razy
Pomógł: 7 razy

[SO przydział miejsca na dysku

Post autor: nico89 »

Kojarzy ktoś jak rozwiązac takie zadanko ?
8. W systemie plików z przydziałem ciągłym, w którym rozmiar bloku wynosi 256 B, a
rozmiar dostępnej dla tych bloków strefy dysku wynosi 10 KB, umieszczono dwa pliki o
rozmiarach 2000 B oraz 3000 B. Informacja w katalogu o lokalizacji pliku dla
pierwszego pliku podaje blok nr 4, a dla drugiego blok nr 22 (przyjmując, że numeracja
bloków jest od 0).
(a) Ile bajtów przestrzeni dyskowej pozostanie niewykorzystane w wyniku fragmentacji
wewnętrznej przy alokacji miejsca dla tych dwóch plików?
(b) Jaki byłby maksymalny rozmiar kolejnego (trzeciego) pliku, który można by
umieścić w tym systemie nie dokonując relokacji dotychczas przydzielonych
bloków?
lub/i:
3. W systemie plików z przydziałem indeksowym, w którym blok indeksowy ma
organizację wielopoziomową, rozmiar bloku wynosi 512 B, a rozmiar indeksu bloku
wynosi 4 B.
(a) Ilu bloków dyskowych potrzeba do przechowania zawartości dwóch plików o
rozmiarach odpowiednio 307500 B i 102500 B?
(b) Ile bajtów przestrzeni dyskowej pozostanie niewykorzystane w wyniku fragmentacji
wewnętrznej przy alokacji miejsca dla tych dwóch plików?
Awatar użytkownika
Dedemonn
Użytkownik
Użytkownik
Posty: 643
Rejestracja: 21 lut 2007, o 19:40
Płeć: Mężczyzna
Lokalizacja: Z kompa
Podziękował: 26 razy
Pomógł: 137 razy

[SO przydział miejsca na dysku

Post autor: Dedemonn »

8.
a) Fragmentacja wewn. -> zmarnowane/nieużyte miejsce wewnątrz bloku, który jest w jakiejś części używany. Dla danego procesu ilość zmarnowanej pamięci to będzie wielosc_procesu % wielkosc_bloku.

b) Od wielkości całkowitej pamięci należy odjąć ilość pamięci zajmowanej przez obydwa pliki -> max. wielkość trzeciego pliku. (jeśli dobrze pamiętam, to wg przydziału ciągłego pliki są ułożone "obok siebie")
Z tym, że aby obliczyć ilość pamięci zajmowanej przez dany plik, należy sprawdzić, czy plik spowodował fragmentację wewnętrzną (można sprawdzić za pomocą operacji modulo). Jeśli tak, to zajmuje wielkosc_procesu+(256 - wielkosc_procesu%256).
ODPOWIEDZ