Suponho que a pergunta seja específica do sistema operacional, então considerarei os seguintes cenários:
- Janelas (NTFS)
- OSX (HFS)
- Linux (ext2,ext3,ext4)
Cada sistema operacional tem seu sistema de arquivos padrão em que opera (o OSX, acredito, só tem uma opção disponível). Eu notei alguns utilitários disponíveis para sistemas operacionais lerem diferentes sistemas de arquivos (o que obviamente éNÃOalém do kernel), o que me fez pensar: as operações do sistema de arquivos são uma função de um driver (ou seja, potencialmente modular) ou são realmente separadas do kernel?
Responder1
No Linux, quando você mesmo compila o kernel, você tem a opção de compilar o suporte para cada sistema de arquivos disponível (ext2, ext3, ext4, reiserfs ou JFS, por exemplo) separados como módulos ou dentro do kernel. Não tentei se funciona quando compilado como módulos, mas suponho que certamente não funcionará para o sistema de arquivos da partição de inicialização, mas pode funcionar para os outros.
Não faço ideia para Windows ou OSX.
Responder2
Responder3
Para Linux e OSX (não tenho certeza sobre Windows), você pode dar uma olhada emSistema de arquivos no espaço do usuárioeMac Fuse. Isso permite que implementações de FS sejam escritas não no kernel, mas como drivers de espaço de usuário - que são naturalmente muito menos perigosos.