Muitas vezes comecei a pensar sobre isso, mas nunca encontrei uma boa resposta. Por que esses dois diretórios Unix não são /user
e, em /temp
vez disso?
Todos os outros diretórios abaixo root
parecem ser exatamente o que alguém imagina que sejam, mas esses dois parecem estranhos, eu sempre os adivinharia como user
e temp
.
Existe alguma razão histórica para as grafias?
boot
,home
,media
eroot
tudo o resto é encurtado.mnt
também faltam suas vogais.Respostas:
Sim, havia razões. Eles são pronunciados usuário e temp. passwd é semelhante, assim como o resolv.conf. O Unix é um sistema operacional antagônico e amigável ao usuário.
Eu era estudante quando 300 modems Baud eram a norma. Eu tinha inveja dos meus colegas, pois tinha um terminal Silent 700 da Control Data em que estava trabalhando. Você pode ver o atraso digitando cada caractere e aguardando o eco. Todo personagem contava; Eu também vejo isso como um incentivo ao início do leet speak.
Os hjkl do vi têm uma história que poucos conhecem. O vi foi desenvolvido por Bill Joy quando ele era um estudante de graduação na UCB durante esses mesmos anos. Os terminais da ADM 3a em Cory Hall tinham teclas de seta acima dessas letras
fonte
Eles são remanescentes do Unix. A memória e o espaço em disco estavam em falta. Cortar algumas vogais e outras abreviações deu uma economia real. Alguns blocos de disco ou bytes podem significar a diferença de poder executar um programa ou não. (Uma vez tive que cortar um programa em 24 bytes antes que ele fosse executado.)
Também como Tom notou que as velocidades dos terminais eram lentas. 1200 baud foi introduzido como alta velocidade e foi. Eu trabalhei com um sistema que usava um teletipo de meia velocidade (55 baud ou 5 cps) como console.
Nos sistemas que executam interfaces gráficas, geralmente não importa o quanto os usuários médios não os procurem. Os diretórios geralmente estão bem documentados na
hier
página de manual.Mudar para nomes mais longos causaria muitos problemas para os programas existentes. Isso também limitaria a portabilidade do script. Vincular vários nomes aos mesmos diretórios provavelmente seria mais confuso do que útil.
EDIT: O PDP-7 no qual o Unix foi desenvolvido tinha uma configuração básica de 4KW de memória e um máximo de 32KW. Palavras com 18 bits de largura. A entrada era um teletipo; portanto, a velocidade era provavelmente 110 baud ou 10cps, aproximadamente 100 palavras, significativamente mais lenta que a fala.
fonte
e
. Bem - às vezes eles crescem e depois crescem por um tamanho inteiro, mas raramente. E na RAM? Eu não sei.Estou surpreso que ninguém tenha comentado
/user
ainda. Este é óbvio: porque não é "usuário", é "Recursos Universal do Sistema".Quanto a
/tmp
, é simplesmente mais curto e mais fácil de digitar. Os programadores C têm o hábito de usar nomes abreviados quando possível, porque acabam digitando-os várias vezes em um programa. É muito comum ter uma variável temporária chamada "tmp" em vez de "temp" pelo mesmo motivo, você usa "i" i para o índice em um loop for em vez de "index" ou "counter".fonte
/usr
não era "Universal System Resources", era realmente usuário . Veja o YouTube: Arquivos da AT&T: O sistema operacional UNIX (produzido por volta de 1982), onde, a cerca de 13 minutos e 35 segundos,/usr/bwk
é claramente pronunciado "user-bwk" e/usr
"slash-user" por Brian W. Kernighan . / usr também está claramente implícito como o local que contém os diretórios pessoais no diagrama em 13min 30seg. Não acho que você possa ter muito mais autoridade do que isso.Um fator que ninguém mencionou é que, dada a tecnologia de teclado da época, havia uma vantagem substancial no uso de nomes abreviados, mais fáceis de digitar. Impressão
user
vs.usr
, mesmo em um teletipo de 110 BPS, provavelmente não era um grande negócio; ter que digitar essa letra extra era provavelmente mais significativo.fonte
Há também / var, / mnt e / opt;)
Quase lá. Como Shawn disse, "usuário" significa "Universal System Resources" (embora outros recursos, de acordo com o google, indiquem "Unix System Resources").
Atalhos, abreviações. Lembre-se de que os comandos em qualquer sistema operacional se destinam a acessar de forma interativa e programática. Especialmente na administração de sistemas em que o script rápido é uma das principais preocupações, abreviações, mnemônicos são tão bons (ou até melhores) que a palavra / comando com grafia completa.
Além disso, antigamente, se você estivesse se conectando remotamente através de um modem lento como o melaço, barbear algumas vogais aqui e ali tornaria sua vida mais fácil (ou menos infeliz se você fosse um administrador de sistemas tentando descobrir o que diabos está errado com uma caixa remota.)
Como dito anteriormente, não é exclusivo para / usr e / tmp (consulte / var, / mnt e / opt).
Além disso, não é exclusivo do Unix. Veja o DOS, por exemplo (chkdsk, por exemplo.) Mnemônicos em que você raspa vogais são um conceito poderoso e útil.
Mesmo em línguas naturais (como as línguas semíticas), o conceito existe (onde a raiz das palavras é universal e quase inequivocamente identificada por grupos de três consoantes). É um mecanismo humano inato para gerenciar informações.
fonte