Sistema de arquivos MINIX - MINIX file system
Desenvolvedor (s) | Comunidade de código aberto |
---|---|
Nome completo | Sistema de arquivos MINIX versão 3 |
Introduzido | 1987 Minix 1.0 | com
Identificador de partição | 0x81 ( MBR ) |
Recursos | |
Datas gravadas | última alteração de metadados, última alteração de arquivo, último acesso de arquivo |
Resolução de data | 1s |
Permissões do sistema de arquivos | POSIX |
Compressão transparente | Não |
Criptografia transparente | Não (fornecido no nível do dispositivo de bloco) |
Outro | |
Sistemas operacionais suportados | Minix 3 , Linux , MiNT e HelenOS |
O sistema de arquivos Minix é o sistema de arquivos nativo do sistema operacional Minix . Ele foi escrito do zero por Andrew S. Tanenbaum na década de 1980 e tinha como objetivo replicar a estrutura do Sistema de Arquivos Unix , omitindo recursos complexos, e tinha o objetivo de ser um auxílio de ensino. Em grande parte, caiu em desgraça entre os usuários do Linux em 1994 devido à popularidade de outros sistemas de arquivos - mais notavelmente ext2 - e sua falta de recursos, incluindo tamanhos de partição limitados e limites de comprimento de nome de arquivo.
História
O MINIX foi escrito do zero por Andrew S. Tanenbaum na década de 1980, como um sistema operacional semelhante ao Unix , cujo código-fonte podia ser usado livremente na educação. O sistema de arquivos MINIX foi projetado para uso com o MINIX; ele copia a estrutura básica do Unix File System, mas evita quaisquer recursos complexos no interesse de manter o código-fonte limpo, claro e simples, para atender ao objetivo geral do MINIX de ser um auxílio de ensino útil.
Quando Linus Torvalds começou a escrever seu kernel do sistema operacional Linux (1991), ele estava trabalhando em uma máquina rodando MINIX e adotou o layout do sistema de arquivos. Isso logo se mostrou problemático, uma vez que o MINIX restringia o comprimento dos nomes de arquivo a 14 caracteres (30 nas versões posteriores), limitava as partições a 64 megabytes e o sistema de arquivos foi projetado para fins de ensino, não de desempenho. O sistema de arquivos estendido (ext; abril de 1992) foi desenvolvido para substituir o do MINIX, mas foi apenas com a segunda versão deste, ext2 , que o Linux obteve um sistema de arquivos de nível comercial. Em 1994, o sistema de arquivos MINIX "quase não era usado" entre os usuários do Linux.
Design e implementação
Um sistema de arquivos MINIX possui seis componentes:
- O bloco de inicialização que é sempre armazenado no primeiro bloco. Ele contém o carregador de boot que carrega e executa um sistema operacional na inicialização do sistema.
- O segundo bloco é o Superblock que armazena dados sobre o sistema de arquivos, que permite ao sistema operacional localizar e entender outras estruturas do sistema de arquivos. Por exemplo, o número de inodes e zonas , o tamanho dos dois bitmaps e o bloco inicial da área de dados .
- O bitmap inode é um mapa simples dos inodes que rastreia quais estão em uso e quais estão livres, representando-os como um (em uso) ou zero (livre).
- O bitmap de zona funciona da mesma maneira que o bitmap de inode , exceto que rastreia as zonas.
- A área dos inodes . Cada arquivo ou diretório é representado como um inode, que registra metadados, incluindo tipo (arquivo, diretório, bloco, char, pipe), IDs para usuário e grupo, três carimbos de data / hora que registram a data e hora do último acesso, última modificação e último status mudança. Um inode também contém uma lista de endereços que apontam para as zonas na área de dados onde os dados do arquivo ou diretório estão realmente armazenados.
- A área de dados é o maior componente do sistema de arquivos, usando a maior parte do espaço. É onde os dados reais do arquivo e do diretório são armazenados.