Su Linux (e Unixes dell'era degli anni '80), un dispositivo di archiviazione (spesso una partizione del disco su alcuni disco rigido o su alcuni SSD ) è un blocco dispositivo (vedi this ) quindi è una [sotto-] sequenza di blocks (che è l'unità base di I / O fisico ) . La dimensione del blocco fisico dipende dall'hardware (i vecchi dischi IDE avevano una dimensione di blocco di 512 byte, i nuovi grandi SATA hanno un disco dimensione del blocco di 4Kbytes, leggi Formato avanzato wikipage) e quando crei un file system (ad esempio mkfs
, vedi mke2fs (8) ) puoi specificare una dimensione del blocco logico che è un multiplo (spesso una piccola potenza di due, incluso 1) di quella dimensione fisica del blocco. Leggi anche su indirizzamento dei blocchi logici .
In passato (si pensi alle workstation Sun3 degli anni '90) il disco era fatto di cilindri con teste organizzati in settori (leggi CHS wikipage), con un settore contenente un blocco. Oggi, questi rimangono ancora ma sono un artefatto artificiale fornito dal controller del disco rigido (il circuito sul disco stesso). In alcuni sistemi operativi, il driver del dispositivo di blocco riprogrammato e riordinato le richieste IO per ridurre al minimo il movimento della testina del disco e la la latenza di rotazione .
This way a file system can work with any type of storage device (traditional hard disk, SSD, USB flash drive, etc.), and only the device driver for the storage device is changed.
Sì, ma il male è nei dettagli (ad es. leggi su TRIM e Write Amplification , specifico per SSD). E i dettagli sono importanti, quindi l'implementazione effettiva è meno semplice della tua figura. Maggiori informazioni su file system (e pensa a cluster e file system remoti tra cui SMB & NFS ; leggi anche su Logical Volume Manager ).
Leggi Sistemi operativi: tre pezzi facili (e i suoi persistence part).
Si noti che i dispositivi di blocco sono stati scaricati in FreeBSD (che attualmente forniscono un'astrazione comune per i personaggi e i dispositivi a blocchi). Sospetto che anche su Windows il sistema operativo sia a conoscenza di partizioni, dimensioni del blocco, ecc. (Ma dovresti controllare).