Eu tenho um disco rígido de 4 TB com tamanho de setor físico de 4k (formato avançado) e o anexei a dois controladores host SATA (um interno e outro em um gabinete USB). No (mais antigo, em 2010), ele aparece com tamanho de setor lógico de 512B, mas relata que seus setores físicos são 4096 bytes. No recente gabinete USB, é relatado que possui 4096B de tamanho lógico e físico:
# 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)
O controlador "interno" mostra o comportamento que eu já havia visto anteriormente, que geralmente é chamado de "512e", em que o firmware da unidade emula o endereçamento LBA de 512 setores, embora não escreva fisicamente os setores dessa maneira. Os sistemas operacionais (e administradores) podem garantir que as partições estejam alinhadas, de modo que os comandos de gravação (pequenos) possam ser agrupados para que o disco possa sobrescrever setores completos em vez de voltar a gravar em parte de um setor físico, onde precisa ler o restante do conteúdo primeiro.
No entanto, ver o comportamento "nativo de 4k" em uma unidade (gabinete USB) era novo para mim e meu pensamento inicial era o gabinete emular o endereço 4096B em cima da emulação 512B emulada da unidade.
As únicas ocorrências disso que pude encontrar em uma Pesquisa na Web em que instalações de armazenamento USB registradas em setores lógicos de 4k. Eu presumo que eles emulam 4k sobre 512e, portanto, permitem tabelas de partição MBR para que unidades grandes possam ser usadas em dispositivos herdados / incorporados (Smart TVs e outras) que suportam apenas o armazenamento em massa USB MBR + FAT32.
Depois de entrar em contato com o fabricante , eles alegaram que a unidade está realmente operando no modo 4k não emulado (nativo), o controlador USB SATA também não está fazendo nenhuma emulação. Isso exigiria que o firmware da unidade detectasse se o controlador host suporta (deseja?) Endereçar tamanhos de setor de 4KB. Não pude encontrar nada sobre isso na documentação pública dos padrões SATA. Então eu pergunto:
- Alguém viu "blocos lógicos de 4096 bytes" em seu controlador SATA?
- As unidades realmente suportam ativar / desativar a emulação sob demanda? Se então,
- Como essa determinação funciona?
- Você pode substituí-lo na unidade por meio de uma bandeira?
- Você pode substituí-lo no controlador host por meio de um driver / sinalizador?