Portanto, existem muitas versões diferentes do Unix por aí: HP-UX, AIX, BSD etc. O Linux é considerado um clone do Unix, e não uma implementação do Unix. Todos os "reais" são os descendentes reais do original? Se não, o que separa o Linux do Unix?
Portanto, existem muitas versões diferentes do Unix por aí: HP-UX, AIX, BSD etc. O Linux é considerado um clone do Unix, e não uma implementação do Unix. Todos os "reais" são os descendentes reais do original? Se não, o que separa o Linux do Unix?
Respostas:
Isso depende do que você quer dizer com "Unix" e "Linux".
UNIX é uma marca registrada do The Open Group . A marca registrada teve um histórico movimentado e não está completamente claro que não foi genérica devido ao uso generalizado do “Unix”, referente a sistemas similares ao Unix (veja abaixo). Atualmente, o Open Group concede o uso da marca a qualquer sistema que passe por uma certificação UNIX única . Veja também Por que existe um * Quando há menção do Unix na Internet? .
O Unix é um sistema operacional que nasceu em 1969 no Bell Labs . Várias empresas venderam e ainda vendem código derivado desse sistema original, por exemplo , AIX , HP-UX , Solaris . Veja também Evolução dos sistemas operacionais do Unix .
Existem muitos sistemas semelhantes ao Unix, pois oferecem interfaces semelhantes a programadores, usuários e administradores. O sistema de produção mais antigo é o Berkeley Software Distribution , que evoluiu gradualmente de baseado no Unix (ou seja, contendo código derivado da implementação original) para semelhante ao Unix (ou seja, com uma interface semelhante). Existem muitos sistemas operacionais baseados no BSD ou derivados do BSD: FreeBSD , NetBSD , OpenBSD , Mac OS X etc. Outros exemplos incluem OSF / 1 (agora descontinuado, era um sistema comercial não baseado em Unix, como o Unix), Minix(originalmente um sistema operacional semelhante ao Unix de brinquedo usado como ferramenta de ensino, agora um sistema semelhante ao Unix incorporado de produção) e, mais famoso, o Linux .
A rigor, o Linux é um kernel do sistema operacional projetado como o kernel do Unix.
O Linux é mais comumente usado como um nome de sistemas operacionais semelhantes ao Unix que usam o Linux como seu kernel. Como muitas das ferramentas externas ao kernel fazem parte do projeto GNU , esses sistemas são geralmente conhecidos como GNU / Linux . Todas as principais distribuições Linux consistem em GNU / Linux e outros softwares.
Existem sistemas semelhantes ao Unix baseados em Linux que não usam muitas ferramentas GNU, especialmente no mundo incorporado, mas acho que nenhum deles acaba com as ferramentas de desenvolvimento GNU, em particular o GCC .
Existem sistemas operacionais que têm Linux como kernel, mas não são do tipo Unix. O mais conhecido é o Android , que não possui uma experiência de usuário semelhante ao Unix (embora você possa instalar uma linha de comando semelhante ao Unix) ou experiência de administrador ou (principalmente) experiência de programador (programas Android "nativos" usam uma API que é completamente diferente do Unix).
Para todos os efeitos, uma distribuição moderna típica do Linux (Ubuntu, Debian, Red Hat, Fedora, Slackware, etc) é um Unix, mas, estritamente falando, nenhum sistema pode reivindicar ser Unix sem ser certificado, então as pessoas dizem que são Unix-like. Eles são inspirados pelo Unix e continuam sua cultura.
Isso também se aplica aos sistemas BSD.
O Mac OS X é certificado Unix, por isso é Unix, tanto no nome quanto na verdade. (e na verdade é baseado no BSD).
Deve-se notar que, como o próprio Linux é apenas um kernel, ele pode ser usado para criar sistemas não-unix (como o Android).
O Linux é mais 'semelhante ao Unix', então sim, de maneira simplista, você pode chamá-lo de clone, o mesmo se aplica aos BSDs (embora, reconhecidamente, os BSDs possam ser considerados mais próximos do Unix do que o Linux).
A principal coisa que confere ao Linux o título semelhante ao Unix é o fato de que ele é quase totalmente compatível com os padrões POSIX (Interface de Sistema Operacional Portátil [para Unix]) que foram acumulados ao longo do tempo.
A outra coisa importante, é a herança de código , etc. , como demonstrado na Wikipedia, o Linux não é realmente originário de fontes Unix; em vez disso, é praticamente construído a partir do zero (no entanto, isso é contestado).
Então, essencialmente, a principal coisa que separa o Unix do Linux é a ancestralidade e os padrões que ele atende.
A resposta escolhida explica bastante exaustivamente, mas você teria que assistir a um documentário inteiro para saber todos os detalhes entre o desenvolvimento inicial do UNIX e como o Linux foi lançado.
Primeiro, você deve considerar que o Linux é o kernel, feito pelo linus e outros programadores. Ele escolheu lançá-lo com a GPL, que na época era uma licença feita pela FSF (RMS e outras pessoas), que também estavam desenvolvendo seu próprio kernel e GNU.
O que geralmente chamamos de Linux é, inicialmente, o kernel, além de todas as outras ferramentas originalmente originárias do projeto GNU. Esses dois projetos são historicamente diferentes, porque na época o kernel do pessoal da FSF foi abandonado para favorecer o kernel do Linux, o que era muito melhor.
Lembro que há um documentário, você deveria assistir, acho importante para a sua cultura de programação.
Outra coisa que você deve considerar ao pensar em "* nix" é também tudo envolvendo o POSIX e outras coisas padronizadas pela arquitetura. É assunto de design / pesquisa de SO, mas define com precisão como os sistemas operacionais envolvidos funcionam e é crucial quando você tem um kernel funcionando bem com suas ferramentas.
Já existem muitas ótimas respostas, mas achei que as opiniões do grande Dennis Ritchie (co-criador do Unix) seriam um complemento interessante para as outras respostas mais técnicas.
Parece que Dennis Ritchie considerava o Linux um derivado legítimo do Unix. Em uma entrevista de 1999 para LinuxFocus.org , ele foi convidado,
qual a sua opinião sobre todo o momento do Linux e a decisão de muitas empresas de começar a desenvolver software para ele?
Sua resposta à pergunta foi
Eu acho que o fenômeno Linux é bastante agradável, porque é tão fortemente baseado no que o Unix forneceu. O Linux parece estar entre os mais saudáveis dos derivados diretos do Unix, embora existam também os vários sistemas BSD, bem como as ofertas mais oficiais dos fabricantes de estações de trabalho e mainframe. Não posso deixar de observar, é claro, o mundo derivado do Unix de "fonte livre" parece estar sofrendo exatamente o mesmo tipo de fragmentação e conflito que ocorreu e ainda está ocorrendo no mundo comercial.
Historicamente, Linus Torvalds criou um clone aprimorado do Minix OS. O desenvolvimento do Linux não está focado em uma plataforma e uma base de clientes específicas, e os desenvolvedores do Linux têm uma variedade de experiências e perspectivas. SOs como HP-UX, AIX, Solaris e outros são mais direcionados para fornecedores.
Na comunidade Linux, não existe um conjunto padrão estrito de ferramentas ou ambientes. Essa falta de padronização leva a inconsistências significativas no Linux. Para alguns desenvolvedores, a capacidade de usar as melhores realizações de outros sistemas operacionais é uma vantagem, mas nem sempre é conveniente copiar elementos UNIX no Linux, por exemplo, quando os nomes de dispositivos no Linux podem ser obtidos do AIX, enquanto as ferramentas para O trabalho com o sistema de arquivos está focado no HP-UX. Incompatibilidades desse tipo também são encontradas entre diferentes distribuições Linux.
Unix, originalmente UNICS (Serviço de Informação e Computação Uniplexed).
O Unix (marca registrada como UNIX) é uma família de sistemas operacionais de computador multitarefa e multiusuário que derivam do AT&T Unix original. O desenvolvimento começou em 1969 e foi anunciado fora dos abdominais de Bell em outubro de 1973.
Variedade de variantes acadêmicas e comerciais do Unix de fornecedores como a Universidade da Califórnia, Berkeley (BSD), Microsoft (Xenix), IBM (AIX) e Sun Microsystems (Solaris).
O Linux é uma família de sistemas operacionais de software livre e de código aberto criados em torno do kernel Linux. O componente definidor do Linux é o kernel Linux, um kernel do sistema operacional lançado pela primeira vez em 17 de setembro de 1991 por Linus Torvalds.
O Linux é empacotado em um formato conhecido como distribuição Linux (ou distribuição abreviada) para uso em computadores e servidores. Algumas das distribuições Linux mais populares e populares são o Arch Linux, CentOS, Debian, Fedora, Gentoo Linux, Linux Mint, Mageia, openSUSE e Ubuntu, juntamente com distribuições comerciais como o Red Hat Enterprise Linux
A interface do usuário, também conhecida como shell, é uma interface da linha de comandos (CLI), uma interface gráfica do usuário (GUI) ou através de controles conectados ao hardware associado, o que é comum em sistemas incorporados. Para sistemas de desktop, o modo padrão geralmente é uma interface gráfica do usuário, embora a CLI esteja normalmente disponível nas janelas do emulador de terminal ou em um console virtual separado.
O GNU é um sistema operacional e uma extensa coleção de softwares de computador. O GNU é composto inteiramente de software livre, a maioria dos quais é licenciada sob a própria GPL do Projeto GNU. GNU é um acrônimo recursivo para "GNU's Not Unix!", Escolhido porque o design do GNU é semelhante ao Unix, mas difere do Unix por ser um software livre e sem código Unix. O desenvolvimento do sistema operacional GNU foi iniciado por Richard Stallman enquanto trabalhava no Laboratório de Inteligência Artificial do Instituto de Tecnologia de Massachusetts (MIT) em 1983.
Os componentes básicos incluem o GNU Compiler Collection (GCC), a biblioteca GNU C (glibc) e o GNU Core Utilities (coreutils), mas também o GNU Debugger (GDB), os utilitários binários GNU (binutils), o shell GNU Bash e o GNOME ambiente de trabalho.
O Linux é um sistema operacional semelhante ao Unix, desenvolvido por Linus Torvalds e milhares de outros.
O BSD é um sistema operacional UNIX que, por razões legais, deve ser chamado de Unix-Like.
OS X é um sistema operacional UNIX gráfico desenvolvido pela Apple Inc.
O Linux é o exemplo mais importante de um sistema operacional Unix "real". Ele roda em qualquer coisa e suporta muito mais hardware que o BSD ou OS X. Uma citação interessante que encontrei quando comparava o BSD e o Linux:
O Linux é o que você obtém quando vários hackers de PC se sentam e tentam escrever um sistema Unix para o PC. O BSD é o que você obtém quando vários hackers do UNIX se sentam e tentam portar um sistema Unix para o PC.
O BSD é mais como um sistema operacional Unix do que o Linux. Também notável é que a Apple faz uso de componentes BSD e Linux. A Apple usa o APT do Debian e Ubuntu nas plataformas iOS e OS X. E é baseado no BSD. (O kernel, no entanto, é Darwin, que é o próprio kernel. Beastie, o ornitorrinco, é o mascote de Darwin, porque ele é uma mistura entre Beastie do BSD e um ornitorrinco.)
Se você deseja um sistema operacional Unix "real" (que funcione com qualquer coisa e suporte muito hardware), tente o Linux.
Se você deseja suporte de hardware de última geração e dores de cabeça (eu sei que vou sentir muito ódio, mas não me importo), use o BSD.
Se você deseja gastar US $ 1000 ou mais, use o OS X e o iOS. (Mais uma vez eu provavelmente vou ter uma tonelada de ódio.)
Eu sou um usuário Linux de longa data, depois de usá-lo dos anos 90 ao início dos anos 2000 e depois parar de usá-lo por um tempo, mas começou a usá-lo novamente em meados de 2012 como meu sistema operacional permanente, para que eu possa recomendá-lo a quem quiser para tentar algo diferente de Windoze.