Sistemas OperacionaisVisão geral
Gerenciamento de Arquivos
O sistema de arquivos parte o volume em clusters de C bytes e anota quais pertencem a cada arquivo e em que ordem. Para o programa o arquivo é uma sequência de n bytes; no disco a unidade de alocação é o cluster inteiro.
Ocupação, FAT e índice deste tópico — e alocação na memória, organização de arquivos e escalonamento de disco nos tópicos vizinhos — partem desse mapa.
O tópico se agrupa em três blocos. O primeiro calcula a reserva na área de dados: ocupação = ⌈n/C⌉×C, com fragmentação interna no último cluster.
O segundo localiza o cluster lógico i: soma primeiro+i na faixa contínua, percorre a cadeia (encadeada ou FAT em tabela), ou lê índice[i] no bloco de índice.
O terceiro marca o conjunto ainda livre: bitmap de um bit por cluster, lista de contadores (início, contador) de faixas, ou lista encadeada só dos livres.
Tamanho lógico n versus ocupação ⌈n/C⌉×C, e setor de hardware versus cluster de alocação, estão em Sistema de Arquivos. Um arquivo de 1 byte com C = 2048 ocupa 2048.
Acesso aleatório por primeiro+i, por FAT[k], ou por índice[i] está em Sistema de Arquivos. Contígua sofre fragmentação externa; encadeada e indexada, só a interna do último cluster. O esquema não altera a ocupação.
Achar k clusters contíguos no bitmap, reduzir (10, 5) a (13, 2) na lista de contadores, ou remover a cabeça 7→12→3, está em Sistema de Arquivos. A FAT já marca livre na própria tabela.
Páginas deste tópico
Sistema de Arquivos
ProAlta incidência no POSCOMP14 min de leitura · 4ª mais cobrada em Sistemas Operacionais
Contígua vs encadeada (FAT) vs indexada; ocupação = teto(n/cluster)×cluster.