Zašto disk rošta kad započne skidanje torenta?

poruka: 92
|
čitano: 9.215
|
moderatori: vincimus
+/- sve poruke
ravni prikaz
starije poruke gore
Ovo je tema za komentiranje sadržaja Bug.hr portala. U nastavku se nalaze komentari na "Zašto disk rošta kad započne skidanje torenta?".
14 godina
offline
Zašto disk rošta kad započne skidanje torenta?

Okej, uhvatili ste se teme kao pijan plota, a ne razumijem koji dio je nerazumljiv:

Kaže MS: 


Support for sparse files is introduced in the NTFS file system as another way to make disk space usage more efficient. When sparse file functionality is enabled, the system does not allocate hard disk drive space to a file except in regions where it contains nonzero data. When a write operation is attempted where a large amount of the data in the buffer is zeros, the zeros are not written to the file. Instead, the file system creates an internal list containing the locations of the zeros in the file, and this list is consulted during all read operations. When a read operation is performed in areas of the file where zeros were located, the file system returns the appropriate number of zeros in the buffer allocated for the read operation. In this way, maintenance of the sparse file is transparent to all processes that access it, and is more efficient than compression for this particular scenario.

Dakle, NTFS ne zapisuje nule u datoteku nego drži u cacheu podatak gdje se sve nalaze nule u datoteci (u ovom slučaju cijeloj datoteci). Prilikom zapisivanja podataka (dok torrent klijent skida), ta tablica se updatea sa zauzetim sektorima sve dok se datoteka ne skine do kraja. Ta datoteka je samo prividno velika 1.5 GB, u stvarnosti je samo toliko prostora na disku alcirano koliko ima podataka koji nisu nule. Stari podaci koji su na disku prepisuju se novima, ostatak se nadomješta podacima iz tablice za tu datoteku. Kad pristupaš toj datoteci iz windowsa, vidjet ćeš cijelih 1.5 GB, jer će ti OS tako to predstaviti. U stvarnosti, ako je torrent do pola skinut, na disku se nalazi samo 750 MB podataka. Ostatak je nadomjestak iz tablice.
FAT nema podršku za sparse, stoga se prealocira cijela datoteka da bi se unutar nje upisivali podaci. Zato kreiranje te temp datoteke na FAT FSu traje koliko dozvoljava brzina diska, a na NTFSu je maltene trenutna.
Pretpostavljam da se ta tablica drži u NTFS metapodacima za tu datoteku, no nisam siguran, ali poznavajući kako funkcionira taj FS, rekao bih da sam 99% u pravu :)

So if God has existed forever, you know, what did he do in his spare time? Like, before he made the Earth and everything?
Moj PC  
1 0 hvala 0
13 godina
odjavljen
offline
Re: Zašto disk rošta kad započne skidanje torenta?

Samo par korekcija i dopuna:

- nije sporno ovo s nulama u buffer, sporno je što se događa kad se pomakne pointer izvan dimenzija filea i pokuša pisati. Po standardu se sve od zadnjeg upisa (ili početka filea, ako je prazan) puni nulama. To radi OS/FS driver

- sparse file rezervira kompletan prostor na disku, iako je fizička veličina zapisanih podataka manja kako se ne bi dogodilo da se kasnije podatak ne može upisati. Ako je torrent skinut do pola, na disku se fizički nalazi 750 MB, ali je 1.5 GB rezervirano u metapodacima, te veličina filea i zauzeće diska prikazuje se po tome

- NTFS podržava sparse file, ali ga moraš aktivno zatražiti - ako program ne zatraži sparse file, ponašanje je identično kao na FAT sustavu

- nule se ne drže u cacheu, već u metapodacima - razlika je ogromna, cache je privremen i može biti izbrisan. Metapodaci sadrže range koji je ispunjen nulama. Pri pisanju se taj range smanjuje.

Privatne poruke su za privatne razgovore. Ne odgovaram na općenita pitanja vezana uz neku temu.
Nova poruka
E-mail:
Lozinka:
 
vrh stranice