NTFS
NTFS | |
---|---|
Desenvolvedor | Microsoft |
Nome completo | New Technology File System |
Lançamento | Julho de 1993 (Windows NT 3.1) |
Identificador da partição | 0x07 (MBR) EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (GPT) |
Estruturas | |
Conteúdos de diretório | Árvore B+ |
Alocação de arquivos | Bitmap |
Blocos ruins | $BadClus (MFT Record) |
Limites | |
Tamanho Máximo de arquivo | 16 EiB – 1 KiB (formato); 16 TiB – 64 KiB (Windows 7, Windows Server 2008 R2 e anteriores);[1] 256 TiB – 64 KiB (Windows 8, Windows Server 2012 |
Número máximo de arquivos | 4,294,967,295 (232-1)[1] |
Tamanho máximo do nome de arquivo | 255 caracteres |
Tamanho máximo do volume | 264 clusters − 1 cluster (formato); 256 TiB − 64 KiB (implementação)[1] |
Caracteres permitidos em nomes | Win32: Todos os caracteres UTF-16 exceto /\:*"?<>| e NUL;POSIX: Todos os caracteres UTF-16 exceto / e NUL
|
Recursos | |
Datas salvas | Criação, modificação, mudança POSIX, acesso |
Faixa de datas | 1 de janeiro de 1601 – 28 de maio de 60056 (Tempos de arquivos são números de 64 bits contando em intervalos de 100 nanossegundos (dez milhões por segundo) desde o ano 1601, sendo mais de 58455 anos) |
Resolução de datas | 100 ns |
Bifurcações | Sim |
Atributos | Somente leitura, oculto, sistema, arquivo, não indexado, off-line, temporário, comprimido |
Permissões de sistema de arquivos | ACLs |
Compressão transparente | Por arquivo, LZ77 (Windows NT 3.51 em diante) |
Criptografia transparente | Por arquivo, DES-X (Windows 2000 em diante), DES Triplo (Windows XP em diante), AES (Windows XP Service Pack 1, Windows Server 2003 em diante) |
Armazenamento de caso único | Sim (Windows Server 2012) |
Sistemas operativos suportados | Windows NT 3.1 e posteriores Mac OS X v10.3 e posteriores (somente leitura) Linux versão 2.2 e posteriores ReactOS (somente leitura) |
Portal das Tecnologias de informação |
O NTFS (New Technology File System) é o sistema de arquivos padrão para o Windows NT e seus derivados.[2]
O NTFS foi desenvolvido quando a Microsoft decidiu criar o Windows NT: como o WinNT deveria ser um sistema operacional mais completo e confiável, o FAT não servia como sistema de arquivos por causa de suas limitações e falta de recursos. Na época, o que a empresa de Bill Gates queria apoderar-se de uma fatia do mercado ocupada pelo Unix. Anteriormente, ela já havia tentado fazer isso em parceria com a IBM, lançando o OS/2 - no entanto as duas empresas divergiam em certos pontos e acabaram quebrando a aliança. O OS/2 usava o sistema de arquivos HPFS (High Performance File System - Sistema de Arquivos de Alta Performance), cujos conceitos acabaram servindo de base ao NTFS.
O NTFS possui uma estrutura que armazena as localizações de todos os arquivos e diretórios, incluindo os arquivos referentes ao próprio sistema de arquivos denominado MFT (Master File Table).
História
[editar | editar código-fonte]Sua sigla significa New Technology File System cujo surgimento da primeira versão foi dada em 1993, mas a sua história não se iniciou aí. Em meados de 1980, a Microsoft precisava de algo no mercado que confrontasse as soluções baseadas em UNIX da época, foi aí que começou o desenvolvimento do Windows NT.
A empresa tinha à sua disposição o FAT, mas que por suas limitações de permissões com arquivos e problemas para trabalhar com documentos de grandes tamanhos, surgiu a necessidade de criar um sistema de arquivos. Na época, a empresa firmou uma parceria com a IBM para o desenvolvimento de um sistema operacional inovador (pois iria conter interface gráfica, algo que não era presente no mercado), sistema esse que se chamava OS/2. Mais tardar, os dois grandes ativos romperam a parceria por divergência em diversos pontos, mas a Microsoft não foi embora de mãos vazias. Enquanto a IBM continuou o projeto do OS/2, a empresa responsável pelo maior sistema do atual mercado foi trabalhar no projeto do Windows NT, levando consigo diversos conceitos do HPFS (High Performance File System), o sistema de arquivos do OS/2. Esses conceitos foram aplicados e transformados no que conhecemos atualmente como NTFS.
Recursos internos
[editar | editar código-fonte]Internamente, o NTFS usa árvores B para indexar dados do sistema de arquivos. Um diário de sistema de arquivos é usado para garantir a integridade dos metadados do sistema de arquivos, mas não o conteúdo dos arquivos individuais. Os sistemas que usam NTFS são conhecidos por terem maior confiabilidade em comparação com os sistemas de arquivos FAT.[3]
O NTFS permite qualquer sequência de valores de 16 bits para codificação de nome (nomes de arquivo, nomes de fluxo, nomes de índice etc.), exceto 0x0000. Isso significa que unidades do código UTF-16 são suportadas, mas o sistema de arquivos não verifica se uma sequência é UTF-16 válida (permite qualquer sequência de valores curtos, não restritos aos do padrão Unicode). No espaço de nomes do Win32, qualquer unidade de código UTF-16 não diferencia maiúsculas de minúsculas, enquanto no espaço de nomes do POSIX eles diferenciam maiúsculas de minúsculas. Os nomes dos arquivos são limitados a 255 unidades de código UTF-16. Certos nomes são reservados no diretório raiz do volume e não podem ser usados para arquivos. Estes são $MFT
, $MFTMirr
, $LogFile
, $Volume
, $AttrDef
,.
(ponto), $Bitmap
, $Boot
, $BadClus
, $Secure
, $UpCase
e $Extend
.[1] .
(ponto) e $Extend
são diretórios, os outros são arquivos. O kernel do NT limita os caminhos completos a 32.767 unidades de código UTF-16. Existem algumas restrições adicionais sobre pontos de código e nomes de arquivo.[4]
Master File Table (Tabela de Arquivos Mestre)
[editar | editar código-fonte]No NTFS, todos os dados de arquivos, diretórios e metarquivos - nome do arquivo, data de criação, permissões de acesso (pelo uso de listas de controle de acesso) e tamanho - são armazenados como metadados na Master File Table (MFT). Essa abordagem abstrata permitiu a adição fácil de recursos do sistema de arquivos durante o desenvolvimento do Windows NT - um exemplo é a adição de campos para indexação usados pelo software Active Directory. Isso também permite que o software de pesquisa rápida de arquivo localize arquivos e pastas locais nomeados, incluídos no MFT, muito rapidamente, sem exigir nenhum outro índice.
A estrutura MFT suporta algoritmos que minimizam a fragmentação do disco.[5] Uma entrada de diretório consiste em um nome de arquivo e um "ID do arquivo" (análogo ao número do inode), que é o número do registro que representa o arquivo na Tabela de Arquivos Mestre. O ID do arquivo também contém uma contagem de reutilização para detectar referências obsoletas. Embora seja muito semelhante ao W_FID do Files-11, outras estruturas NTFS são radicalmente diferentes.
Duas cópias do MFT são armazenadas em caso de corrupção. Se o primeiro registro estiver corrompido, o NTFS lê o segundo registro para localizar o arquivo espelho MFT. As localizações de ambos os arquivos são armazenadas no setor de boot.[6]
Vantagens e Desvantagens
[editar | editar código-fonte]Prós e Contras
[editar | editar código-fonte]- Prós
- Aceita volumes de até 256 TB utilizando tamanho de cluster de 64kb;
- O tamanho do arquivo é limitado apenas pelo tamanho do volume;
- Aceita nomes de volumes de até 32 caracteres;
- Oferece suporte a compactação, criptografia e indexação;
- Oferece suporte a clusters de 512 bytes;
- É possível inserir imagem do sistema em um volume NTFS;
- É um sistema de arquivos muito mais seguro que o FAT;
- Permite políticas de segurança e gerenciamento;
- Volumes NTFS são menos vulneráveis a fragmentos, em comparação com FAT;
- Melhor desempenho, em geral;
- Volumes NTFS podem se recuperar de um erro mais facilmente.
- Contras
- Se usado em uma mídia removível, ela pode se corromper mais facilmente;
- Não é possível otimizar para remoção rápida;
- Apenas versões a partir do NT 3.1 reconhecem volumes;
- Pode ser necessário drivers extra para acesso a plataformas não Windows;
- É mais lento que o FAT32, pois pelas diversas diretivas de segurança tanto de acesso quanto de leitura e gravação tornam a partição mais lenta que FAT32 que não possui nenhuma diretiva de segurança ou confiabilidade adequado.
Ver também
[editar | editar código-fonte]Bibliografia
[editar | editar código-fonte]CARRIER, Brian. File system forensic analysis. Upper Saddle River: Addison-Wesley, 2005.
RUSSINOVICH, Mark E.; SOLOMON. David A. Microsoft Windows internals: Microsoft Windows Server 2003, Windows XP, and Windows 2000. 4. ed. Redmond: Microsoft Press, 2005.
- ↑ a b c d Windows Server 2003 Technical Reference (28 de Março de 2003). «How NTFS Works». technet.microsoft.com. Consultado em 2 de agosto de 2017
- ↑ «Inside Win2K NTFS, Part 1». Microsoft MSDN. Consultado em 2 de agosto de 2017
- ↑ «Chapter 18 – Choosing a File System». MS Windows NT Workstation 4.0 Resource Guide. Microsoft. Consultado em 25 de fevereiro de 2014
- ↑ «Naming Files, Paths, and Namespaces». MSDN. Microsoft. Naming Conventions. Consultado em 25 de fevereiro de 2014
- ↑ «Master File Table». MSDN. 2 de julho de 2012
- ↑ «NTFS Master File Table (MFT)». Ntfs.com. Consultado em 22 de setembro de 2018