Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem lseek

Ahoj,
Mohl bych poprosit o kontrolu úlohy a co se stane, když lseek posune offset o hodnotu vetší než je velikost alokačního bloku, přeskočí do dalšího bloku souboru (za předpokladu, že soubor zabírá víc jak jeden alokační blok a pokud by byl soubor menší jak alokační blok vrátí lseek chybu?

-------------------------------------------------- -------------------------------------------------- -----------------
Jaký je maximální počet čtení bloku z disku při provedení operací?
h=open("/dir/file", O_RDONLY); //5
lseek(h, 1025, SEEK_CUR); //0
read(h, buf, 10); //1
lseek(h, 500, SEEK_CUR); //0
read(h, buf, 10); //0

Velikost alokačního bloku 1024B. Předpokládejte přitom, že adresáře jsou kratší, než 1 blok,file je klasický soubor delší, než 20B, žádný blok není na počátku ve vyrovnávací paměti a používají se všechny běžně používané vyrovnávací paměti, nedochází k interferenci s dalšími procesy, přepnutí kontextu, příchod signálů apod.

Předmět Autor Datum
pracujes so suborom ako celkom, a ne so ziadnymi alokacnymi blokmi. poslední
MM.. 10.04.2014 16:13
MM..

Zpět do poradny Odpovědět na původní otázku Nahoru