Como obter valores para o bloco de parâmetros do BIOS em um VBR?

0

Estou criando um VBR, que recorre ao primeiro setor de um volume. O VBR deve ter o bloco de parâmetros do BIOS, se o sistema de arquivos FAT for implementado. Ao trabalhar no meu disco (digamos), consegui encontrar o valor para as entradas no VBR (digamos, bpbSectorsPerTrack ). Mas e se o mesmo VBR for executado em outro sistema em um volume diferente? Os valores diferem ri8? Como devo obter esses valores?

Em resumo, minhas perguntas são as seguintes:

1) É necessário que os valores de VBR sejam precisos? 2) Se sim, de onde posso obter esses valores?

Obrigado

Solicitação: Se possível, responda a minha outra pergunta que pedi outro dia em "stackoverflow" em link

Estou muito necessitado de respostas.

    
por Panther Coder 20.12.2016 / 18:00

1 resposta

1

BPB é usado para armazenar metadados sobre:

  1. A geometria do dispositivo.
  2. A posição das estruturas do FS.

O primeiro é relevante apenas para disquetes.
Os HDDs possuem uma geometria fixa, você pode obter esse valor do seu disco BPB ou simplesmente formatar um driver de caneta USB. Esses valores são os mesmos para todos os dispositivos.

Observe bem , os drivers do setor de 4KiB estão começando a aparecer no mercado.
Portanto, agora os HDDs também têm geometria variável .
Encontrar se um dispositivo suporta setores 4KiB está além do escopo desta resposta (veja o
ATA / Especificação ATAPI8 ).

O segundo é realmente definido apenas para o sistema de arquivos NTFS e FAT.
Não há nada especial para fazer aqui, durante a criação do FS você sabe onde as estruturas relevantes são escritas no disco e você cria o BPB de acordo. A Wikipedia já faz um ótimo trabalho ao explicar os valores dos campos e quais podem ser definidos como zero em contextos não relevantes.

O BPB é usado principalmente pelas tecnologias da Microsoft. Por exemplo, o Unix usa um esquema diferente .

    
por 21.12.2016 / 11:18