Os flash drives e os discos rígidos são considerados “um oceano de bytes”?

2

Por que uma unidade Flash USB pode ser formatada como NTFS ou FAT32? A unidade flash USB e o disco rígido devem ser considerados apenas como "um oceano de bytes"?

Estou muito acostumado a ouvir a formatação de um disco rígido como FAT32 ou NTFS, mas também podemos formatar uma unidade flash USB como NTFS ou FAT32?

É porque um disco rígido ou uma unidade flash podem ser considerados como "um oceano de bits" ou "um oceano de bytes"? Lembro-me de RAM como: leva 16 bits ou 32 bits como um sinal de endereço (o pé de cobre de 16 ou 32 na placa de circuito) e fornece 8 bits de dados (os outros 8 pés de cobre na placa de circuito). Então, um disco rígido pode ser considerado funcionando dessa maneira também? Então é por isso que um pen drive pode ser o mesmo também? Apenas um "oceano de bytes".

Mas é verdade que o hardware do disco rígido faz dele um oceano de setor ou algo mais, isto é, a menor unidade de leitura / gravação não é byte, mas alguma outra coisa?

Portanto, com esse "oceano de bytes", o NTFS tem o formato que diz "se o primeiro byte for

por 太極者無極而生 26.01.2010 / 20:03

1 resposta

5

Você pode, mas os sistemas operacionais não podem. Ambas as unidades flash e discos rígidos são lidos (e escritos) por setores e apenas setores. O driver dispositivo geralmente aplica esta restrição ao nível superior, e também lê todo o setor com, e. O superbloco NTFS é muito mais rápido do que ler o mesmo setor várias vezes implicitamente por causa de um driver que traduz solicitações de "byte range" para solicitações de "setor", portanto drivers de sistema de arquivos também realizam operações de leitura e gravação por setores (ou qualquer multiplicidade de setores: existe uma tecnologia chamada DMA - acesso direto à memória - que permite ler e gravar grandes rajadas de setores sem usar o tempo da CPU, tornando o acesso ao disco muito rápido).

Flash chips (não unidades) são tecnicamente divididos em outros blocos de dados por dois motivos:

  1. As fichas Flash podem ser lidas de qualquer posição para qualquer posição, mas gravadas apenas por blocos de tamanho fixo e posicionados.
  2. Flash chips contêm mais dados e espaço livre do que você pensa, porque é normal para um chip ganhar alguns setores com falha durante o trabalho. Eles são remapeados para outros setores por controlador de armazenamento na unidade USB e não são visíveis para o SO como setores defeituosos; Na verdade, não existe uma maneira de verificar se eles existem. Novamente, os controladores de memória flash estão sempre equipados com algoritmos que permitem substituir facilmente os setores com falha sem qualquer aviso prévio para as camadas superiores.

O documento NTFS que você está lendo não sugere leitura dessas variáveis por bytes. Você precisa lê-los em setores inteiros em que eles estão contidos e, então, endereçar um determinado byte na memória.

Também a memória recente (virtualmente qualquer uma em uma máquina compatível com 386) não é endereçada por bytes . Em vez disso, ele é endereçado por 32 (raramente), 64 e mesmo palavras de 128 bits. E quando você está lendo um byte no meio desse processador de texto, realmente solicita a palavra inteira e, em seguida, seleciona o byte que você precisa. Há até mesmo uma exceção de hardware em alguns processadores de 64 bits que surge quando você tenta acessar um ponteiro não alinhado (pelo limite de palavra de 64 bits).

    
por 26.01.2010 / 20:45