Existe um sucessor para o NTFS? [fechadas]

3

O que estou perguntando é se existe algum sistema de arquivos que seja conhecido como um possível sucessor do NTFS?

Estou perguntando porque acabei de comprar um novo externo e percebi que o caminho para um arquivo, incluindo o próprio nome do arquivo, não pode adicionar até mais de 255 caracteres. Isso é conhecido como o "nome de arquivo longo" pela Microsoft. Estou assumindo que isso é devido à limitação do sistema de arquivos, então estou procurando por quaisquer alternativas possíveis.

Eu tenho uma máquina baseada no Windows 7, mas estou supondo que haveria software de terceiros que funcionaria com o Windows para tornar o novo sistema de arquivos acessível pelo Windows Explorer.

    
por hak8or 08.09.2012 / 22:33

2 respostas

18

Existe um sucessor do NTFS. É NTFS :)
(NTFS manteve seu nome, mas versões mais recentes do Windows têm versões diferentes e melhoradas do NTFS)

No entanto, o NTFS não é o motivo do limite de tamanho do nome do arquivo. Verifique este este link da microsoft . Vou copiar a parte relevante, mesmo que seja um pouco longo para copiar do outro lado.


Limitação do comprimento máximo do caminho

Na API do Windows (com algumas exceções discutidas nos parágrafos a seguir), o tamanho máximo de um caminho é MAX_PATH, que é definido como 260 caracteres .

Um caminho local é estruturado na seguinte ordem: letra de unidade, dois-pontos, barra invertida, componentes de nome separados por barras invertidas e um caractere nulo de terminação. Por exemplo, o caminho máximo na unidade D é "D: \ alguma cadeia de caminho de 256 caracteres", em que "" representa o caractere nulo de terminação invisível para a página de códigos do sistema atual. (Os caracteres < > são usados aqui para clareza visual e não podem fazer parte de uma string de caminho válida.)

Observe que as funções File I / O na API do Windows convertem "/" para "\" como parte da conversão do nome para um nome no estilo NT, exceto ao usar o prefixo "\? \" conforme detalhado nas seções a seguir. .

A API do Windows tem muitas funções que também têm versões em Unicode para permitir um caminho de comprimento estendido para um comprimento total máximo do caminho de 32.767 caracteres . Esse tipo de caminho é composto de componentes separados por barras invertidas, cada um com o valor retornado no parâmetro lpMaximumComponentLength da função GetVolumeInformation (esse valor geralmente é de 255 caracteres). Para especificar um caminho de comprimento estendido, use o prefixo "\? \". Por exemplo, "\? \ D: \ caminho muito longo".

    
por 08.09.2012 / 22:41
12

A limitação a que você se refere está na API do Windows, não no sistema de arquivos. Para passar nomes de arquivo maiores que MAX_PATH, a Microsoft estendeu as APIs para aceitar nomes longos de Unicode até 32.767 caracteres. Mas, para usar um caminho mais longo, ele deve estar em Unicode, prefixado por \\? \ E totalmente qualificado (sem nomes de caminho relativos). Efetivamente, o que isso significa é que, para usar esses caminhos mais longos, o sistema de arquivos e o suporte do SO estão lá, mas você precisa de um aplicativo que saiba como fazer sua parte.

    
por 08.09.2012 / 22:45