O padrão UNIX exige sistemas de arquivos que diferenciam maiúsculas de minúsculas?

O padrão UNIX exige sistemas de arquivos que diferenciam maiúsculas de minúsculas?

Uma respostaparaessa questãomenciona oCertificação UNIX 03 do OSX. Agora AFAIK, o sistema de arquivos padrão do OSX é/eraHFS, que "salva a caixa de um arquivo que é criado ou renomeado, mas não diferencia maiúsculas de minúsculas na operação" (ou seja, épreservandomas caso-insensível).

A certificação UNIX ou POSIX exige um caso-confidencialsistema de arquivo?

Responder1

De acordo com a especificação POSIX:

O sistema pode fornecer extensões não padrão. Esses são recursos não exigidos pelo POSIX.1-2008 e podem incluir, mas não estão limitados a:

--recorte--

  • Sistemas de arquivos não conformes (por exemplo, sistemas de arquivos legados para os quais _POSIX_NO_TRUNC é falso, sistemas de arquivos que não diferenciam maiúsculas de minúsculas ou sistemas de arquivos de rede)

--recorte--

Portanto, parece que a distinção entre maiúsculas e minúsculas é a norma, mas é possível oferecer suporte a um sistema de arquivos não compatível (sem distinção entre maiúsculas e minúsculas) e ainda chamar seu produto de UNIX, desde que ele também possa suportar sistemas de arquivos com distinção entre maiúsculas e minúsculas.

(editar)

Na verdade, vejaesta parte da especificação:

Duas propostas foram consideradas em relação à dobragem de casos em nomes de arquivos:

  1. Remova todas as palavras que anteriormente permitiam a dobragem da caixa.

Justificativa

A dobragem de maiúsculas e minúsculas é inconsistente com o conjunto de caracteres de nome de arquivo portátil e as definições de nome de arquivo (todos os bytes, exceto <barra> e nulo). Nenhuma implementação conhecida que permita todos os bytes, exceto <barra> e nulo, também faz dobramento de maiúsculas e minúsculas.

  1. Altere “embora esta prática não seja recomendada” para “embora esta prática seja fortemente desencorajada”.

Justificativa

Se a dobragem de maiúsculas e minúsculas precisar ser incluída no POSIX.1, o texto deverá ser mais forte para desencorajar a prática.

O consenso selecionou a primeira proposta. Caso contrário, um aplicativo em conformidade teria que assumir que o dobramento de casos ocorreria quando não fosse desejado, mas não ocorreria quando fosse desejado.

Portanto, parece que foi deixado propositalmente ambíguo - não é explicitamente permitido nem proibido.

informação relacionada