Todos esses utilitários e seus comportamentos são definidos no padrão POSIX.
Linux
em si não é uma cópia de Unix
porque pode-se argumentar que ela simplesmente está em conformidade com o padrão POSIX
. No entanto, como sobre o GNU Coreutils
que contém utilitários como ls
, cd
e rm
, etc ...? Existe algum padrão que define os nomes desses utilitários básicos e seus comportamentos? Se não, podemos dizer que foi copiado de Unix
?
Todos esses utilitários e seus comportamentos são definidos no padrão POSIX.
O GNU é um acrônimo de GNU's Not UNIX. O GNU foi criado para tornar o sistema compatível com Unix sem qualquer uso do código do Unix, não de ideias e nomes de comandos.
O Coreutils é uma consolidação de três utilitários que costumavam ser fornecidos separadamente. Fileutils, textutils e shellutils, todos fornecidos pelo GNU. O Shellutils fornece os comandos que você cita, ls, cd, embora eu ache que o rm vem do fileutils iirc. Voltando um pouco mais adiante, o GNU foi um projeto iniciado por Richard Stallman para fornecer uma alternativa livre ao UNIX, e assim a maior parte do conjunto principal de comandos que você encontra em todos os UNICES também estava disponível através do GNU. Infelizmente para Richard, o kernel do Linux recebeu mais atenção do que seu kernel HURD inacabado e, portanto, o sistema UNIX ou UNIX mais popular no planeta é um híbrido do Linux Kernel suportado e suportando o conjunto de utilitários GNU.
Eu estava no mundo linux quando esta transição estava ocorrendo, e isso tornou a vida um pouco difícil no início, quando se desejava usar diferentes configurações de compilação para cada um, mas ce le vie. Por um tempo, meu nome fazia parte dos coreutils. Eu dei a capacidade de distinguir diferentes processadores Intel e Intel-Compatible um do outro, em vez de apenas um i386. Até então, todos os sistemas unix baseados em intel eram apenas i386s de alta velocidade e não aproveitavam os diferentes conjuntos de instruções estendidos disponíveis. Aquele bloco de reconhecimento de CPU agora foi completamente substituído por algo muito mais elegante e moderno, e você só pode encontrar meu nome como referência histórica em alguns patches antiquados que ainda estão por aí, mas ainda assim foi uma pena legal na minha cabeça. por alguns anos e me ajudou a conseguir meu primeiro emprego real em TI.
Podemos chamar casualmente o sistema operacional Linux, mas isso é um truncamento do que é realmente o GNU Linux ou o GNU / Linux.