Unix - Unix

Unix
Simh-pdp11-unix-sysiii.png
Unix System III rodando em um simulador PDP-11
Desenvolvedor Ken Thompson , Dennis Ritchie , Brian Kernighan , Douglas McIlroy e Joe Ossanna da Bell Labs
Escrito em C e linguagem assembly
Família de sistema operacional Unix
Modelo fonte Software proprietário historicamente , enquanto alguns projetos Unix (incluindo a família BSD e Illumos ) são de código aberto
lançamento inicial O desenvolvimento começou em 1969
Primeiro manual publicado internamente em novembro de 1971 Anunciado fora do Bell Labs em outubro de 1973 ( 1971-11 )
 ( 1973-10 )
Disponível em inglês
Tipo de kernel Varia; monolítico , microkernel , híbrido
Influenciado por Multics

Interface de usuário padrão
Interface de linha de comando e gráfica ( Wayland e X Window System ; Android SurfaceFlinger ; macOS Quartz )
Licença Varia; algumas versões são proprietárias , outras são software livre / de código aberto
Website oficial opengroup .org / unix

Unix ( / j u n ɪ k s / ; registrado como UNIX ) é uma família de multitarefa , multiusuário computador sistemas operacionais que derivam do original AT & T Unix, cujo desenvolvimento começou na década de 1970 na Bell Labs centro de pesquisa por Ken Thompson , Dennis Ritchie e outros.

Inicialmente planejado para uso dentro do Bell System , a AT&T licenciou o Unix para terceiros no final dos anos 1970, levando a uma variedade de variantes Unix acadêmicas e comerciais de fornecedores, incluindo University of California, Berkeley ( BSD ), Microsoft ( Xenix ), Sun Microsystems ( SunOS / Solaris ), HP / HPE ( HP-UX ) e IBM ( AIX ). No início dos anos 1990, a AT&T vendeu seus direitos no Unix para a Novell , que então vendeu seus negócios Unix para a Santa Cruz Operation (SCO) em 1995. A marca UNIX passou para o The Open Group , um consórcio da indústria fundado em 1996, que permite a uso da marca para sistemas operacionais certificados em conformidade com a Single UNIX Specification (SUS). No entanto, a Novell continua detendo os direitos autorais do Unix, o que o processo judicial SCO Group, Inc. v. Novell, Inc. (2010) confirmou.

Os sistemas Unix são caracterizados por um design modular que às vezes é chamado de " filosofia Unix ". De acordo com essa filosofia, o sistema operacional deve fornecer um conjunto de ferramentas simples, cada uma das quais desempenhando uma função limitada e bem definida. Um sistema de arquivos unificado e baseado em inode (o sistema de arquivos Unix ) e um mecanismo de comunicação entre processos conhecido como " canais " servem como o principal meio de comunicação, e um script de shell e linguagem de comando (o shell Unix ) são usados ​​para combinar as ferramentas para realizar fluxos de trabalho complexos.

O Unix se distingue de seus predecessores como o primeiro sistema operacional portátil : quase todo o sistema operacional é escrito na linguagem de programação C , o que permite que o Unix opere em várias plataformas.

Visão geral

Versão 7 do Unix , o ancestral Research Unix de todos os sistemas Unix modernos

O Unix foi originalmente concebido para ser uma plataforma conveniente para programadores que desenvolvem software para serem executados nele e em outros sistemas, ao invés de não-programadores. O sistema cresceu à medida que o sistema operacional começou a se espalhar nos círculos acadêmicos e à medida que os usuários adicionavam suas próprias ferramentas ao sistema e as compartilhavam com os colegas.

No início, o Unix não foi projetado para ser portátil ou multitarefa . Mais tarde, o Unix gradualmente ganhou portabilidade, capacidades multitarefa e multiusuário em uma configuração de compartilhamento de tempo . Os sistemas Unix são caracterizados por vários conceitos: o uso de texto simples para armazenamento de dados; um sistema de arquivos hierárquico ; tratar dispositivos e certos tipos de comunicação entre processos (IPC) como arquivos; e o uso de um grande número de ferramentas de software , pequenos programas que podem ser agrupados por meio de um interpretador de linha de comando usando tubos , em vez de usar um único programa monolítico que inclui todas as mesmas funcionalidades. Esses conceitos são conhecidos coletivamente como " filosofia Unix ". Brian Kernighan e Rob Pike resumem isso em The Unix Programming Environment como "a ideia de que o poder de um sistema vem mais das relações entre os programas do que dos próprios programas".

No início dos anos 1980, os usuários começaram a ver o Unix como um sistema operacional universal em potencial, adequado para computadores de todos os tamanhos. O ambiente Unix e o modelo de programa cliente-servidor foram elementos essenciais no desenvolvimento da Internet e na reformulação da computação centrada em redes, em vez de em computadores individuais.

Tanto o Unix quanto a linguagem de programação C foram desenvolvidos pela AT&T e distribuídos para instituições governamentais e acadêmicas, o que levou ambos a serem portados para uma variedade maior de famílias de máquinas do que qualquer outro sistema operacional.

O sistema operacional Unix consiste em muitas bibliotecas e utilitários junto com o programa de controle mestre, o kernel . O kernel fornece serviços para iniciar e parar programas, lida com o sistema de arquivos e outras tarefas comuns de "baixo nível" que a maioria dos programas compartilha e programa o acesso para evitar conflitos quando os programas tentam acessar o mesmo recurso ou dispositivo simultaneamente. Para mediar esse acesso, o kernel tem direitos especiais, refletidos na distinção do espaço do kernel do espaço do usuário , sendo o último um domínio prioritário onde a maioria dos programas de aplicativos opera.

História

Ken Thompson (sentado) e Dennis Ritchie trabalhando juntos em um PDP-11

As origens do Unix datam de meados da década de 1960, quando o Instituto de Tecnologia de Massachusetts , Bell Labs e General Electric estavam desenvolvendo o Multics , um sistema operacional de compartilhamento de tempo para o computador mainframe GE-645 . Multics apresentou várias inovações , mas também apresentou problemas graves. Frustrado com o tamanho e a complexidade do Multics, mas não com seus objetivos, os pesquisadores individuais do Bell Labs começaram a se retirar do projeto. Os últimos a sair foram Ken Thompson , Dennis Ritchie , Douglas McIlroy e Joe Ossanna , que decidiram reimplementar suas experiências em um novo projeto de menor escala. Este novo sistema operacional estava inicialmente sem suporte organizacional e também sem um nome.

O novo sistema operacional era um sistema de tarefa única. Em 1970, o grupo cunhou o nome Unics para Uniplexed Information and Computing Service como um trocadilho com Multics , que significava Multiplexed Information and Computer Services . Brian Kernighan leva o crédito pela ideia, mas acrescenta que "ninguém consegue se lembrar" da origem da grafia final Unix . Dennis Ritchie, Doug McIlroy e Peter G. Neumann também dão crédito a Kernighan.

O sistema operacional foi originalmente escrito em linguagem assembly , mas em 1973, Versão 4 Unix foi reescrito em C . A versão 4 do Unix, entretanto, ainda tinha muitos códigos dependentes de PDP-11 e não era adequada para portabilidade. A primeira porta para outra plataforma foi feita cinco anos depois (1978) para a Interdata 8/32 .

Em 1974, Ken Robinson, do Departamento de Ciência da Computação da University of New South Wales (UNSW), na Austrália, solicitou uma cópia do Unix para seu minicomputador PDP-11/40 de Dennis Ritchie no Bell Labs. Esta instalação de 1975 fez da UNSW a primeira universidade fora dos Estados Unidos a executar o Unix.

Bell Labs produziu várias versões do Unix que são coletivamente chamadas de Research Unix . Em 1975, a primeira licença de origem para UNIX foi vendida para Donald B. Gillies na Universidade de Illinois em Urbana – Champaign Departamento de Ciência da Computação (UIUC). O estudante de graduação da UIUC Greg Chesson, que trabalhou no kernel Unix no Bell Labs, foi fundamental na negociação dos termos da licença.

Durante o final dos anos 1970 e início dos anos 1980, a influência do Unix nos círculos acadêmicos levou à adoção em larga escala do Unix ( BSD e System V ) por startups comerciais, o que por sua vez levou à fragmentação do Unix em múltiplos, semelhantes, mas frequentemente ligeiramente incompatíveis entre si. sistemas incluindo DYNIX , HP-UX , SunOS / Solaris , AIX e Xenix . No final da década de 1980, a AT&T Unix System Laboratories e a Sun Microsystems desenvolveram o System V Release 4 ( SVR4 ), que foi subsequentemente adotado por muitos fornecedores comerciais de Unix.

Na década de 1990, o Unix e os sistemas semelhantes ao Unix cresceram em popularidade e se tornaram o sistema operacional escolhido por mais de 90% dos 500 supercomputadores mais rápidos do mundo , à medida que as distribuições BSD e Linux eram desenvolvidas por meio da colaboração de uma rede mundial de programadores. Em 2000, a Apple lançou o Darwin , também um sistema Unix, que se tornou o núcleo do sistema operacional Mac OS X, mais tarde renomeado para macOS .

Os sistemas operacionais Unix são amplamente usados ​​em servidores , estações de trabalho e dispositivos móveis modernos .

Padrões

No final da década de 1980, um esforço de padronização de sistema operacional aberto agora conhecido como POSIX forneceu uma linha de base comum para todos os sistemas operacionais; POSIX baseado em IEEE em torno da estrutura comum das principais variantes concorrentes do sistema Unix, publicando o primeiro padrão POSIX em 1988. No início de 1990, um esforço separado, mas muito semelhante, foi iniciado por um consórcio da indústria, o Common Open Software Environment (COSE ), que acabou se tornando a Especificação Única do UNIX (SUS) administrada pelo The Open Group . A partir de 1998, o Open Group e o IEEE formaram o Austin Group , para fornecer uma definição comum de POSIX e a Single UNIX Specification, que, em 2008, havia se tornado a Open Group Base Specification.

Em 1999, em um esforço para obter compatibilidade, vários fornecedores de sistemas Unix concordaram com o formato executável e vinculável (ELF) do SVR4 como o padrão para arquivos binários e de código de objeto. O formato comum permite compatibilidade binária substancial entre diferentes sistemas Unix operando na mesma arquitetura de CPU.

O Filesystem Hierarchy Standard foi criado para fornecer um layout de diretório de referência para sistemas operacionais do tipo Unix; ele tem sido usado principalmente no Linux.

Componentes

O sistema Unix é composto de vários componentes que foram originalmente empacotados juntos. Ao incluir o ambiente de desenvolvimento, bibliotecas, documentos e o código-fonte portátil e modificável para todos esses componentes, além do kernel de um sistema operacional, o Unix era um sistema de software independente. Este foi um dos principais motivos pelos quais surgiu como uma importante ferramenta de ensino e aprendizagem e teve uma influência tão ampla.

A inclusão desses componentes não tornou o sistema grande - a distribuição V7 UNIX original, consistindo em cópias de todos os binários compilados mais todo o código-fonte e documentação ocupava menos de 10 MB e chegava em uma única fita magnética de nove trilhas . A documentação impressa, compilada a partir de fontes online, estava contida em dois volumes.

Os nomes e localizações do sistema de arquivos dos componentes Unix mudaram substancialmente ao longo da história do sistema. No entanto, a implementação V7 é considerada por muitos como tendo a estrutura inicial canônica:

  • Kernel  - código-fonte em / usr / sys, composto por vários subcomponentes:
    • conf  - configuração e partes dependentes da máquina, incluindo código de inicialização
    • dev  - drivers de dispositivo para controle de hardware (e alguns pseudo-hardware)
    • sys  - sistema operacional "kernel", gerenciamento de gerenciamento de memória, agendamento de processos, chamadas de sistema, etc.
    • h  - arquivos de cabeçalho, definindo estruturas-chave dentro do sistema e importantes invariáveis ​​específicas do sistema
  • Ambiente de desenvolvimento  - as primeiras versões do Unix continham um ambiente de desenvolvimento suficiente para recriar todo o sistema a partir do código-fonte:
    • Compilador da linguagem cc  - C (apareceu pela primeira vez no V3 Unix)
    • as  - assembler de linguagem de máquina para a máquina
    • ld  - linker, para combinar arquivos de objetos
    • lib  - bibliotecas de código-objeto (instaladas em / lib ou / usr / lib). libc , a biblioteca do sistema com suporte em tempo de execução C, era a biblioteca principal, mas sempre houve bibliotecas adicionais para coisas como funções matemáticas ( libm ) ou acesso ao banco de dados. O V7 Unix introduziu a primeira versão da moderna biblioteca "Standard I / O" stdio como parte da biblioteca do sistema. Implementações posteriores aumentaram significativamente o número de bibliotecas.
    • make  - build manager (introduzido no PWB / UNIX ), para automatizar efetivamente o processo de construção
    • incluir  - arquivos de cabeçalho para desenvolvimento de software, definindo interfaces padrão e invariantes de sistema
    • Outras linguagens  - V7 Unix continha um compilador Fortran-77, uma calculadora de precisão arbitrária programável ( bc , dc ) e a linguagem de script awk ; versões e implementações posteriores contêm muitos outros compiladores de linguagem e conjuntos de ferramentas. Os primeiros lançamentos BSD incluíam ferramentas Pascal , e muitos sistemas Unix modernos também incluem a GNU Compiler Collection , bem como ou em vez de um sistema compilador proprietário.
    • Outras ferramentas  - incluindo um gerenciador de arquivo de código de objeto ( ar ), lister de tabela de símbolos ( nm ), ferramentas de desenvolvimento de compilador (por exemplo, lex & yacc ) e ferramentas de depuração.
  • Comandos  - o Unix faz pouca distinção entre comandos (programas em nível de usuário) para operação e manutenção do sistema (por exemplo, cron ), comandos de utilidade geral (por exemplo, grep ) e aplicativos de propósito mais geral, como o pacote de formatação de texto e composição tipográfica. No entanto, algumas categorias principais são:
    • sh  - o interpretador de linha de comando programável "shell", a interface de usuário principal no Unix antes que os sistemas de janela aparecessem, e mesmo depois (dentro de uma "janela de comando").
    • Utilitários  - o kit de ferramentas principal do conjunto de comandos do Unix, incluindo cp , ls , grep , find e muitos outros. As subcategorias incluem:
      • Utilitários do sistema  - ferramentas administrativas como mkfs , fsck e muitos outros.
      • Utilitários de usuário  - ferramentas de gerenciamento de ambiente, como passwd , kill e outros.
    • Formatação de documentos  - os sistemas Unix foram usados ​​desde o início para a preparação de documentos e sistemas de composição tipográfica, e incluíram muitos programas relacionados, como nroff , troff , tbl , eqn , refer e pic . Alguns sistemas Unix modernos também incluem pacotes como TeX e Ghostscript .
    • Gráficos  - o subsistema de plotagem forneceu recursos para a produção de plotagens vetoriais simples em um formato independente de dispositivo, com interpretadores específicos do dispositivo para exibir esses arquivos. Os sistemas Unix modernos geralmente também incluem o X11 como um sistema de janelas e GUI padrão , e muitos suportam OpenGL .
    • Comunicações  - os primeiros sistemas Unix não continham comunicação entre sistemas, mas incluíam os programas de comunicação entre usuários mail e write . A V7 introduziu o primeiro sistema de comunicação entre sistemas UUCP , e os sistemas começando com BSD versão 4.1c incluíam utilitários TCP / IP .
  • Documentação  - Unix foi o primeiro sistema operacional a incluir toda a sua documentação online em formato legível por máquina. A documentação incluiu:
    • man  - páginas de manual para cada comando, componente de biblioteca, chamada de sistema , arquivo de cabeçalho, etc.
    • doc  - documentos mais longos detalhando os principais subsistemas, como a linguagem C e troff

Impacto

Ken Thompson e Dennis Ritchie , principais desenvolvedores do Research Unix
Foto da USENIX 1984, incluindo Dennis Ritchie (centro)
O Plan 9 da Bell Labs estende os princípios de design do Unix e foi desenvolvido como um sucessor do Unix.

O sistema Unix teve um impacto significativo em outros sistemas operacionais. Alcançou sua reputação por sua interatividade, fornecendo o software a uma taxa nominal para uso educacional, rodando em hardware barato e sendo fácil de se adaptar e mover para diferentes máquinas. O Unix foi originalmente escrito em linguagem assembly , mas logo foi reescrito em C , uma linguagem de programação de alto nível . Embora isso tenha seguido o exemplo de Multics e Burroughs , foi o Unix que popularizou a ideia.

O Unix tinha um modelo de arquivo drasticamente simplificado em comparação com muitos sistemas operacionais contemporâneos: tratando todos os tipos de arquivos como matrizes de bytes simples. A hierarquia do sistema de arquivos continha serviços e dispositivos da máquina (como impressoras , terminais ou unidades de disco ), fornecendo uma interface uniforme, mas às custas de ocasionalmente exigir mecanismos adicionais, como ioctl e sinalizadores de modo para acessar recursos do hardware que não ajustar o modelo simples de "fluxo de bytes". O sistema operacional Plan 9 levou esse modelo ainda mais longe e eliminou a necessidade de mecanismos adicionais.

O Unix também popularizou o sistema de arquivos hierárquico com subdiretórios aninhados arbitrariamente, originalmente introduzidos por Multics. Outros sistemas operacionais comuns da época tinham maneiras de dividir um dispositivo de armazenamento em vários diretórios ou seções, mas eles tinham um número fixo de níveis, geralmente apenas um nível. Vários sistemas operacionais proprietários importantes eventualmente adicionaram capacidades de subdiretório recursivas também padronizadas após Multics. A hierarquia de "grupo, usuário" do RSX-11M da DEC evoluiu para diretórios OpenVMS , os volumes do CP / M evoluíram para subdiretórios do MS-DOS 2.0+ e a hierarquia group.account do MPE da HP e os sistemas de biblioteca SSP e OS / 400 da IBM foram dobrados em sistemas de arquivos POSIX mais amplos.

Tornar o interpretador de comandos um programa de nível de usuário comum, com comandos adicionais fornecidos como programas separados, foi outra inovação do Multics popularizada pelo Unix. O shell Unix usava a mesma linguagem para comandos interativos e scripts ( scripts de shell  - não havia linguagem de controle de tarefa separada como o JCL da IBM ). Como os comandos do shell e do sistema operacional eram "apenas mais um programa", o usuário poderia escolher (ou até mesmo escrever) seu próprio shell. Novos comandos podem ser adicionados sem alterar o próprio shell. A sintaxe de linha de comando inovadora do Unix para criar cadeias modulares de processos produtor-consumidor ( pipelines ) tornou um paradigma de programação poderoso ( corrotinas ) amplamente disponível. Muitos interpretadores de linha de comando posteriores foram inspirados no shell do Unix.

A hipótese simplificadora fundamental do Unix era seu foco na nova linha - delimitado texto para quase todos os formatos de arquivo. Não havia editores "binários" na versão original do Unix - todo o sistema foi configurado usando scripts de comando de shell textuais. O denominador comum no sistema de E / S era o byte - ao contrário dos sistemas de arquivos "baseados em registros" . O foco no texto para representar quase tudo tornou os pipes Unix especialmente úteis e encorajou o desenvolvimento de ferramentas simples e gerais que poderiam ser facilmente combinadas para executar tarefas ad hoc mais complicadas . O foco em texto e bytes tornou o sistema muito mais escalável e portátil do que outros sistemas. Com o tempo, os aplicativos baseados em texto também se mostraram populares em áreas de aplicativos, como linguagens de impressão ( PostScript , ODF ) e na camada de aplicativos dos protocolos da Internet , por exemplo, FTP , SMTP , HTTP , SOAP e SIP .

O Unix popularizou uma sintaxe para expressões regulares que encontraram uso generalizado. A interface de programação Unix se tornou a base para um padrão de interface de sistema operacional amplamente implementado (POSIX, veja acima). A linguagem de programação C logo se espalhou além do Unix e agora é onipresente na programação de sistemas e aplicativos.

Os primeiros desenvolvedores Unix foram importantes para trazer os conceitos de modularidade e capacidade de reutilização para a prática da engenharia de software , gerando um movimento de "ferramentas de software". Com o tempo, os principais desenvolvedores do Unix (e programas que rodavam nele) estabeleceram um conjunto de normas culturais para o desenvolvimento de software, normas que se tornaram tão importantes e influentes quanto a tecnologia do próprio Unix; isso foi denominado filosofia Unix .

Os protocolos de rede TCP / IP foram rapidamente implementadas nas versões Unix amplamente utilizados em computadores relativamente baratos, que contribuíram para a Internet explosão de conectividade em tempo real em todo o mundo, e que serviu de base para implementações em muitas outras plataformas.

A política Unix de extensa documentação on-line e (por muitos anos) pronto acesso a todo o código-fonte do sistema aumentou as expectativas do programador e contribuiu para o lançamento do movimento do software livre em 1983.

Variantes gratuitas de Unix e semelhantes a Unix

Capturas de tela do console do Debian (superior, uma distribuição Linux popular ) e FreeBSD (inferior, um sistema operacional semelhante ao Unix popular )

Em 1983, Richard Stallman anunciou o projeto GNU (abreviação de "GNU's Not Unix"), um esforço ambicioso para criar um sistema de software livre semelhante ao Unix ; "livre" no sentido de que todos os que receberam uma cópia seriam livres para usá-la, estudá-la, modificá-la e redistribuí-la. O próprio projeto de desenvolvimento de kernel do projeto GNU , GNU Hurd , ainda não havia produzido um kernel funcional, mas em 1991 Linus Torvalds lançou o kernel Linux como software livre sob a GNU General Public License . Além de seu uso no sistema operacional GNU , muitos pacotes GNU - como o GNU Compiler Collection (e o resto da cadeia de ferramentas GNU ), a biblioteca GNU C e os utilitários básicos GNU  - passaram a desempenhar papéis centrais em outros sistemas Unix gratuitos também.

As distribuições Linux , consistindo no kernel Linux e grandes coleções de software compatível, tornaram-se populares tanto para usuários individuais quanto para negócios. Distribuições populares incluem Red Hat Enterprise Linux , Fedora , SUSE Linux Enterprise , openSUSE , Debian , Ubuntu , Linux Mint , Mandriva Linux , Slackware Linux , Arch Linux e Gentoo .

Um derivado gratuito do BSD Unix, 386BSD , foi lançado em 1992 e levou aos projetos NetBSD e FreeBSD . Com o acordo de 1994 de um processo movido contra a Universidade da Califórnia e Berkeley Software Design Inc. ( USL v. BSDi ) por Unix System Laboratories , foi esclarecido que Berkeley tinha o direito de distribuir BSD Unix gratuitamente se assim o desejasse. Desde então, o BSD Unix foi desenvolvido em vários ramos de produtos diferentes, incluindo OpenBSD e DragonFly BSD .

O Linux e o BSD estão cada vez mais atendendo às necessidades do mercado tradicionalmente atendidas por sistemas operacionais Unix proprietários, bem como se expandindo para novos mercados, como desktops de consumo e dispositivos móveis e incorporados. Por causa do design modular do modelo Unix, compartilhar componentes é relativamente comum; conseqüentemente, a maioria ou todos os sistemas Unix e similares incluem pelo menos algum código BSD, e alguns sistemas também incluem utilitários GNU em suas distribuições.

Em uma entrevista de 1999, Dennis Ritchie expressou sua opinião de que os sistemas operacionais Linux e BSD são uma continuação da base do design do Unix e são derivados do Unix:

Acho que o fenômeno do Linux é bastante agradável, porque se baseia fortemente na base fornecida pelo Unix. O Linux parece estar entre os mais saudáveis ​​dos derivados diretos do Unix, embora haja também os vários sistemas BSD, bem como as ofertas mais oficiais dos fabricantes de estações de trabalho e mainframe.

Na mesma entrevista, ele afirma que vê tanto o Unix quanto o Linux como "a continuação de idéias que foram iniciadas por Ken e eu e muitos outros, há muitos anos".

O OpenSolaris era a contraparte de software livre do Solaris desenvolvido pela Sun Microsystems , que incluía um kernel licenciado por CDDL e uma área de usuário principalmente GNU . No entanto, a Oracle interrompeu o projeto após a aquisição da Sun, o que levou um grupo de ex-funcionários da Sun e membros da comunidade OpenSolaris a dividir o OpenSolaris no kernel do Illumos . Em 2014, o illumos continua sendo o único derivado do System V de código aberto ativo.

ARPANET

Em maio de 1975, o RFC 681 descreveu o desenvolvimento da Rede Unix pelo Center for Advanced Computation da University of Illinois Urbana-Champaign . Foi dito que o sistema Unix "apresenta várias capacidades interessantes como um mini-host ARPANET ". Na época, o Unix exigia uma licença da Bell Telephone Laboratories que custava US $ 20.000 para instituições não universitárias, enquanto as universidades podiam obter uma licença por uma taxa nominal de $ 150. Foi observado que Bell estava "aberto a sugestões" para uma licença para toda a ARPANET.

O RFC menciona especificamente que Unix "ofertas poderosas instalações de processamento locais em termos de programas de usuário, vários compiladores , um editor baseado em QED , um sistema de preparação versátil documento e um eficiente sistema de arquivos com controle de acesso sofisticado, montável e volumes de-montáveis, e um tratamento unificado de periféricos como arquivos especiais . " Este último permitiu que o Network Control Program (NCP) fosse integrado ao sistema de arquivos Unix, tratando as conexões de rede como arquivos especiais que podiam ser acessados ​​por meio de chamadas de E / S padrão do Unix , que incluíam o benefício adicional de fechar todas as conexões na saída do programa, caso o usuário se esqueça de fazê-lo. O design modular do Unix permitiu-lhes "minimizar a quantidade de código adicionado ao kernel Unix básico ", com muito do código NCP em um processo de usuário trocável , rodando apenas quando necessário.

Branding

Estação de trabalho HP9000 executando HP-UX , um sistema operacional Unix certificado

Em outubro de 1993, a Novell , a empresa que detinha os direitos da fonte Unix System V na época, transferiu as marcas comerciais do Unix para a X / Open Company (agora The Open Group ) e, em 1995, vendeu as operações comerciais relacionadas para a Santa Operação Cruz (SCO). Se a Novell também vendeu os direitos autorais do software real, foi o assunto de um processo federal em 2006, SCO v. Novell , vencido pela Novell. O caso foi apelado, mas em 30 de agosto de 2011, o Tribunal de Apelações dos Estados Unidos para o Décimo Circuito confirmou as decisões do julgamento, encerrando o caso. O fornecedor de Unix SCO Group Inc. acusou a Novell de calúnia .

O atual proprietário da marca comercial UNIX é The Open Group, um consórcio de padrões da indústria. Apenas os sistemas totalmente compatíveis e certificados com a Especificação Única do UNIX se qualificam como "UNIX" (outros são chamados de " semelhantes ao Unix ").

Por decreto do The Open Group, o termo "UNIX" se refere mais a uma classe de sistemas operacionais do que a uma implementação específica de um sistema operacional; aqueles sistemas operacionais que atendem à Especificação Única de UNIX do The Open Group devem ser capazes de ostentar as marcas comerciais UNIX 98 ou UNIX 03 hoje, depois que o fornecedor do sistema operacional pagar uma taxa de certificação substancial e royalties anuais de marcas comerciais para o The Open Group. Os sistemas que foram licenciados para usar a marca comercial UNIX incluem AIX , EulerOS , HP-UX , Inspur K-UX , IRIX , macOS , Solaris , Tru64 UNIX (anteriormente "Digital UNIX" ou OSF / 1 ) ez / OS . Notavelmente, EulerOS e Inspur K-UX são distribuições Linux certificadas como compatíveis com UNIX 03.

Às vezes, uma representação como Un * x , * NIX ou * N? X é usada para indicar todos os sistemas operacionais semelhantes ao Unix. Isso vem do uso do asterisco ( * ) e dos caracteres de ponto de interrogação como indicadores curinga em muitos utilitários. Essa notação também é usada para descrever outros sistemas do tipo Unix que não atenderam aos requisitos para a marca UNIX do Open Group.

O Open Group solicita que UNIX seja sempre usado como um adjetivo seguido de um termo genérico, como sistema, para ajudar a evitar a criação de uma marca genérica .

Unix era a formatação original, mas o uso do UNIX permanece generalizado porque já foi composto em versaletes ( Unix ). De acordo com Dennis Ritchie , ao apresentar o artigo original do Unix para o terceiro Simpósio de Sistemas Operacionais da American Association for Computing Machinery (ACM), "tínhamos um novo tipógrafo e troff recém-inventado e estávamos intoxicados por sermos capazes de produzir pequenos cápsulas". Muitos dos antecessores e contemporâneos do sistema operacional usavam letras maiúsculas, então muitas pessoas escreveram o nome em letras maiúsculas por força do hábito. Não é uma sigla.

Nomes de marcas registradas podem ser registrados por entidades diferentes em países diferentes e as leis de marcas em alguns países permitem que o mesmo nome de marca seja controlado por duas entidades diferentes se cada entidade usar a marca em categorias facilmente distinguíveis. O resultado é que o Unix tem sido usado como uma marca para vários produtos, incluindo estantes de livros, canetas de tinta, cola engarrafada, fraldas, secadores de cabelo e recipientes para alimentos.

Várias formas plurais de Unix são usadas casualmente para se referir a várias marcas de Unix e sistemas semelhantes ao Unix. O mais comum são os Unixes convencionais , mas os Unices , tratando o Unix como um substantivo latino da terceira declinação , também são populares. A forma plural pseudo -anglo-saxônica Unixen não é comum, embora seja vista ocasionalmente. A Sun Microsystems , desenvolvedora da variante Solaris, afirmou que o próprio termo Unix é plural, referenciando suas muitas implementações.

Veja também

Referências

Leitura adicional

Em geral
Livros
Televisão
Palestras

links externos