it.phhsnews.com


it.phhsnews.com / Come può essere una dimensione del file pari a zero?

Come può essere una dimensione del file pari a zero?


Ogni tanto ci imbattiamo in una "situazione" sui nostri computer che ci lascia completamente sbalorditi, come un file che ha una dimensione pari a zero, ma com'è possibile? Il post di Q & A di SuperUser di oggi contiene le risposte alla domanda di un lettore confuso.

La sessione di domande e risposte di oggi ci viene fornita per gentile concessione di SuperUser, una suddivisione di Stack Exchange, un raggruppamento di siti Web di domande e risposte.

La domanda

Il lettore SuperUser Eugene S vuole sapere come la dimensione di un file può essere zero:

Questo è qualcosa in cui mi sono imbattuto e non ho potuto pensare ad una spiegazione adeguata. Se creo un file *. Txt vuoto sul mio computer e poi ne guardo le dimensioni, mostra una dimensione pari a zero. Come è possibile? Voglio dire anche se il file stesso è vuoto, deve comunque avere una certa dimensione (anche se è solo per memorizzare il proprio nome). Come è possibile spiegarlo?

Come è possibile che un file abbia una dimensione pari a zero?

La risposta

I contributori SuperUser David Schwartz e Cort Ammon hanno la risposta per noi. Innanzitutto, David Schwartz:

È possibile perché non esiste un file. C'è solo una voce di directory con un nome e proprietario. La voce della directory è logicamente distinta dal file. Ad esempio, lo stesso file può avere più di un nome in più di una directory.

Sfortunatamente, il termine file non è sempre usato per indicare esattamente la stessa cosa. Ma la logica della dimensione del file proviene dal modello in cui una voce di directory collega un file a una directory, quindi i nomi dei file e i relativi metadati sono memorizzati nella directory.

Seguito dalla risposta di Cort Ammon:

La semantica il significato della dimensione del file è diverso da quello che si sta utilizzando.

Ci sono molte dimensioni di file che sono significative. Il più comune e quello che vedi qui è il numero di byte nel file. Se il file è un file di testo vuoto, potrebbe effettivamente contenere zero byte. Questo numero è importante per i programmatori perché spesso è necessario aprire un file, leggere tutti i dati e chiuderlo. Abbiamo bisogno di sapere quanti byte di dati saranno nel file in modo che possiamo pianificare in anticipo.

Un altro significato deriva dal modo in cui la maggior parte dei file system memorizza i dati. La maggior parte dei file system memorizza i dati in blocchi. Ad esempio, il file system può archiviare dati in blocchi da 64 kB, il che significa che non assegnerà mai nulla che non sia un multiplo pari di 64 kB. Sembra inefficiente, ma può rendere la contabilità un po 'più semplice, e spesso più semplice significa più veloce.

Un terzo significato, che stai tirando, sarebbe il numero effettivo di bit richiesti sul disco rigido per descrivere la presenza di un file. Ciò include le informazioni che di solito sono memorizzate separatamente dal file. Per esempio, in Linux, il concetto del nome del file è memorizzato nell'inode per la directory che contiene il file. [ Sulla base di input da altri commenti, questo è (tecnicamente) memorizzato nei dati della directory. Quando ho scritto questo, stavo pensando al caso della directory piccola. I dati più piccoli di 156 byte possono essere memorizzati direttamente nell'inode. ] Questo non è un significato comunemente usato perché è terribilmente difficile da determinare senza conoscere il funzionamento interno tremendamente profondo del tuo file system (come la contabilità per lo spazio necessario per memorizzare tutte le autorizzazioni sul file). Tuttavia, se hai un disco fisso da 1.000.000 di byte e vuoi sapere quanto grande può stare un file su quel disco fisso, questo sarà un significato molto importante per te!


Hai qualcosa da aggiungere alla spiegazione? Audio disattivato nei commenti. Vuoi leggere più risposte dagli altri utenti di Stack Exchange esperti di tecnologia? Controlla il thread completo di discussione qui.


Remote Desktop Roundup: TeamViewer vs Splashtop rispetto a Windows RDP

Remote Desktop Roundup: TeamViewer vs Splashtop rispetto a Windows RDP

Ci sono una miriade di soluzioni desktop remote sul mercato e può essere difficile scegliere quello giusto per le tue esigenze. Non ti preoccupare, abbiamo fatto tutto per te, catalogando e confrontando le più diffuse soluzioni desktop remote in modo da poter scegliere con facilità quello giusto. Dopo la recente raffica di notizie riguardanti TeamViewer e computer compromessi (tu puoi leggere il loro comunicato stampa qui e il nostro articolo su come proteggere correttamente TeamViewer qui), c'è stato un po 'di interesse nei programmi desktop alternativi alternativi.

(how-to)

Come definire la directory di base per il comando

Come definire la directory di base per il comando "cd" in Linux

Per impostazione predefinita, la finestra Terminale in Linux si apre sulla tua directory home. Per passare a qualsiasi directory che non sia direttamente nella directory home, è necessario fornire il percorso completo o utilizzare il comando "cd" più volte. Ad esempio, lavoro regolarmente con più directory all'interno della directory Documenti, che è in la directory home.

(how-to)