Ho un disco rigido da 4 TB con dimensioni del settore fisico 4k (formato avanzato) e l'ho collegato a due controller host SATA (uno interno e uno in un contenitore USB). Nel (più vecchio, circa 2010) arriva come dimensione del settore logico 512B, ma segnala che i suoi settori fisici sono 4096 byte. Nel recente recinto USB, si dice che abbia dimensioni logiche e fisiche di 4096B:
# internal host controller
sd 4:0:0:0: [sdd] 7814037168 512-byte logical blocks: (4.00 TB/3.63 TiB)
sd 4:0:0:0: [sdd] 4096-byte physical blocks
# USB enclosure
sd 18:0:0:0: [sdd] 976754646 4096-byte logical blocks: (4.00 TB/3.63 TiB)
Il controller "interno" mostra un comportamento che avevo visto in precedenza, che di solito viene chiamato "512e" in cui il firmware dell'unità emula l'indirizzamento LBA a 512 settori anche se non scrive fisicamente settori in quel modo. I sistemi operativi (e gli amministratori) possono garantire che le partizioni siano allineate in modo tale che i (piccoli) comandi di scrittura possano essere raggruppati in modo che il disco possa sovrascrivere interi settori invece di ricorrere alla scrittura su parte di un settore fisico, dove deve leggere il resto di contenuto prima.
Tuttavia, vedere il comportamento "nativo 4k" su un'unità (enclosure USB) era una novità per me e il mio pensiero iniziale era che l'involucro emulasse 4096 B indirizzandosi sull'emulazione 512B emulata dell'unità.
Le uniche occorrenze di questo che ho potuto trovare con una ricerca Web in cui strutture di archiviazione USB registrate con settori logici 4K. Presumo che emulino 4k su 512e, quindi consentono tabelle di partizione MBR in modo che possano essere utilizzate unità di grandi dimensioni su dispositivi legacy / incorporati (Smart TV e cosa no) che supportano solo l'archiviazione di massa USB MBR + FAT32.
Dopo aver contattato il produttore , hanno affermato che l'unità sta effettivamente funzionando in modalità 4k non emulata (nativa), anche il controller USB SATA non sta emettendo alcuna emulazione. Ciò richiederebbe al firmware dell'unità di rilevare se il controller host supporta (desideri?) Indirizzandosi alle dimensioni del settore di 4KB. Non ho trovato nulla al riguardo nella documentazione pubblica degli standard SATA. Quindi chiedo:
- Qualcuno ha visto "blocchi logici 4096 byte" sul proprio controller SATA?
- Le unità supportano effettivamente l'abilitazione / disabilitazione dell'emulazione su richiesta? Se è così,
- Come funziona questa determinazione?
- Puoi sovrascriverlo sul disco tramite una bandiera?
- Puoi sovrascriverlo sul controller host tramite un driver / flag?