Conteúdo verificado

Unix

Assuntos Relacionados: Software

Sobre este escolas selecção Wikipedia

Arranjar uma seleção Wikipedia para as escolas no mundo em desenvolvimento sem internet foi uma iniciativa da SOS Children. Patrocinar uma criança para fazer uma diferença real.

Filiação de sistemas Unix e Unix-like

Unix (oficialmente registrado como UNIX, às vezes também escrito como Unix com small caps) é um computador sistema operacional desenvolvido originalmente em 1969 por um grupo de AT & T funcionários em Bell Labs, incluindo Ken Thompson, Dennis Ritchie e Douglas McIlroy. Sistemas Unix de hoje estão divididos em vários ramos, desenvolvidos ao longo do tempo pela AT & T, bem como vários fornecedores comerciais e organizações sem fins lucrativos.

A partir de 2007, o proprietário do marca é The Open Group, um consórcio padrões da indústria. Apenas os sistemas totalmente compatível com e certificados ao Single UNIX Specification está qualificado de uso da marca; outros são chamados "sistema semelhante a Unix" ou " Unix-like ".

Durante a década de 1970 e início de 1980, a influência do Unix em círculos acadêmicos levou à adoção em larga escala de Unix (particularmente da Variante BSD, originando da University of California, Berkeley) por startups comerciais, o mais notável dos quais é Sun Microsystems. Hoje em dia, para além de sistemas de certificados de Unix, Sistemas operacionais Unix-like, como Linux e BSD são comumente encontradas. Às vezes, "Unix tradicional" pode ser utilizado para descrever um sistema Unix ou um sistema operativo, que tem as características de ambos os Versão 7 ou Unix UNIX System V.

Visão global

Sistemas operativos Unix são amplamente utilizados em ambos e servidores postos de trabalho. O ambiente Unix ea modelo do programa cliente-servidor eram elementos essenciais para o desenvolvimento da Internet ea reformulação da computação como centrado em redes em vez de em computadores individuais.

Ambos Unix ea linguagem de programação C foram desenvolvidos pela AT & T e distribuído para instituições governamentais e acadêmicas, fazendo com que tanto a ser portado para uma variedade maior de famílias máquina do que qualquer outro sistema operacional. Como resultado, tornou-se sinônimo de Unix " sistemas abertos ".

Unix foi concebido para ser portátil, multi-tasking e multi-usuário em um configuração de compartilhamento de tempo. Unix sistemas são caracterizados por vários conceitos: a utilização de texto simples para o armazenamento de dados; um hierárquica sistema de arquivo; dispositivos que tratam e certos tipos de comunicação entre processos (IPC) como arquivos; e a utilização de um grande número de ferramentas de software, pequenos programas que podem ser amarrados juntos por meio de uma interpretador de linha de comando usando tubos, em vez de usar um único programa monolítico que inclui todas a mesma funcionalidade. Estes conceitos são conhecidos como o Filosofia Unix.

No Unix, o "sistema operacional" é composto de muitos destes utilitários, juntamente com o programa de controle mestre, o kernel. O kernel fornece serviços para iniciar e parar programas, lidar com a sistema de arquivos e outros comuns "baixo nível" tarefas que a maioria dos programas de compartilhamento, e, talvez mais importante, os horários de acesso ao hardware para evitar conflitos se dois programas tentar acessar o mesmo recurso ou dispositivo simultaneamente. Para mediar esse acesso, o kernel foi dada direitos especiais sobre o sistema, levando à divisão entre o espaço de usuário eo espaço do kernel.

O microkernel conceito foi introduzido em um esforço para inverter a tendência para kernels maiores e retornar a um sistema em que a maioria das tarefas foram concluídas por utilitários menores. Numa época em que um computador "normal" consistiu de um disco rígido para armazenamento e um terminal de dados para entrada e saída (I / O), o modelo de arquivo Unix funcionou muito bem como a maioria I / O foi "linear". No entanto, os sistemas modernos incluem redes e outros dispositivos novos. Como interfaces gráficas desenvolvida, o modelo de arquivo revelaram insuficientes para a tarefa de lidar com eventos assíncronos como os gerados por um rato, e na década de 1980 non-blocking I / O eo conjunto de mecanismos de comunicação entre processos foi aumentada ( soquetes, memória compartilhada, filas de mensagens, semáforos) e funcionalidades, tais como protocolos de rede foram removidos do kernel.

História

Na década de 1960, o Instituto de Tecnologia de Massachusetts, a AT & T Bell Labs, e General Electric trabalhou em um sistema operacional experimental chamado Multics (Multiplexed Informação e Serviços Computing), que foi projetado para ser executado no GE-645 computador mainframe. (Eventualmente, isso se tornou um produto comercial, embora as vendas não corresponderam às expectativas.) Multics foi um sistema operacional interativo com muitos novos recursos, incluindo melhor segurança.

AT & T Bell Labs puxado para fora do projeto Multics e implantado seus recursos em outros lugares. Um dos desenvolvedores da equipe de Bell Labs, Ken Thompson, continuou a desenvolver para o mainframe GE-645, e escreveu um jogo para esse computador chamado Viagem Espacial. No entanto, ele descobriu que o jogo foi muito lento na máquina GE e era caro, custando US $ 75 por execução no escasso tempo de computação.

Thompson, assim, re-escreveu o jogo em linguagem de montagem para Digital Equipment Corporation PDP-7 com a ajuda de Dennis Ritchie. Esta experiência, combinada com o seu trabalho no projeto Multics, levou Thompson para iniciar um novo sistema operacional para o PDP-7. Thompson e Ritchie levou uma equipe de desenvolvedores, incluindo Rudd Canaday, na Bell Labs desenvolvimento de um sistema de arquivos, bem como o novo sistema operacional em si multi-tasking. Eles incluíram um interpretador de linha de comando e alguns pequenos programas utilitários.

1970

Na década de 1970 o projeto foi chamado Unics, e, eventualmente, poderia apoiar dois usuários simultâneos. Brian Kernighan inventou esse nome como um contraste com Multics; a ortografia foi posteriormente alterado para Unix.

Até este ponto não tinha havido nenhum apoio financeiro do Bell Labs. Quando o Grupo de Pesquisa Ciência da Computação queria usar Unix em uma máquina muito maior do que o PDP-7, Thompson e Ritchie conseguiu negociar a promessa de adicionar capacidades de processamento de texto para Unix para uma PDP-11/20 da máquina. Isto conduziu a algum apoio financeiro de Bell. Pela primeira vez em 1970, o sistema operacional Unix foi oficialmente nomeado e correu sobre o PDP-11/20. Ele adicionou um programa de formatação de texto chamado roff e um editor de texto. Todos os três foram escritos em PDP-11/20 linguagem assembly. Bell Labs usou este "sistema de processamento de texto" inicial, composta de Unix, roff, e do editor, para processamento de texto de pedidos de patente. Roff logo evoluiu para troff, o primeiro programa de editoração eletrônica com um completo capacidade de diagramação. Manual do Programador O UNIX foi publicada em 03 novembro 1971 .

Em 1973, Unix foi reescrito na linguagem de programação C , ao contrário da noção geral no momento "que algo tão complexo como um sistema operacional, que deve lidar com eventos de tempo crítico, tinha de ser escrita exclusivamente em linguagem assembly". A migração de linguagem assembly para o de nível superior linguagem C resultou em muito mais software portátil, necessitando apenas de uma quantidade relativamente pequena de código dependente da máquina a ser substituído quando portar Unix para outro plataformas de computação.

AT & T fez Unix disponíveis para universidades e empresas comerciais, bem como a Governo dos Estados Unidos ao abrigo de licenças. As licenças incluídas todo o código fonte incluindo as partes dependentes da máquina do kernel, que estavam escritas no PDP-11 do código de montagem. Cópias das fontes do kernel do Unix anotados circulou amplamente no final de 1970, sob a forma de um livro muito copiado por John Lions da Universidade de New South Wales, o Comentário dos leões no UNIX 6th Edition, com o código-fonte, o que levou a um uso considerável de Unix como um exemplo educativo.

As versões do sistema Unix foram determinados por suas edições de manuais de utilizador, de modo que (por exemplo) "Quinto UNIX Edition" e "UNIX Versão 5" ambos têm sido utilizados para designar a mesma coisa. Desenvolvimento expandido, com versões 4, 5, e 6 a ser libertado por 1975. Estas versões adicionado o conceito de tubos, levando ao desenvolvimento de uma base de código mais modular, aumentando a velocidade de desenvolvimento ainda mais. Versão 5 e Versão 6 especialmente levou a uma infinidade de diferentes versões de Unix, dentro e fora do Bell Labs, incluindo PWB / UNIX, IS / 1 (o primeiro Unix comercial), e o Universidade do porto de Wollongong ao Interdata 7/32 (o primeiro não-Unix PDP).

Em 1978, UNIX / 32V, para De dezembro, em seguida, nova Sistema VAX, foi liberado. Por esta altura, mais de 600 máquinas estavam executando Unix em alguma forma. Versão 7 Unix, a última versão do Pesquisa Unix para ser lançado amplamente, foi lançado em 1979. Versões 8, 9 e 10 foram desenvolvidos durante os anos 1980, mas só foram liberados para algumas universidades, embora eles fizeram gerar artigos descrevendo o novo trabalho. Essa pesquisa levou ao desenvolvimento de Plan 9 from Bell Labs, um novo sistema distribuído portátil.

1980

Um estilo da década de 1990 início Unix ambiente de trabalho executando o X Window System interface gráfica do usuário. Mostrado uma série de aplicativos cliente comum a distribuição do MIT X Consortium, incluindo Gerenciador de Janelas de Tom, um X Terminal, Xbiff, xload, e uma gráfica navegador página manual.

AT & T licenciada UNIX System III, baseada principalmente na versão 7, para uso comercial, a primeira versão em 1982. Este lançamento também inclui suporte para o VAX. AT & T continuou a emitir licenças para versões mais antigas do Unix. Para encerrar a confusão entre todas as suas diferentes versões internas, a AT & T combinou-os em UNIX System V Release 1. Isto introduziu algumas características, tais como a editor vi e amaldiçoa a partir do Berkeley Software Distribution do Unix desenvolvido na Universidade da Califórnia, Berkeley. Isto também inclui suporte para o Western Electric 3B série de máquinas.

Uma vez que as condições comerciais mais recentes de licenciamento UNIX não eram tão favoráveis para uso acadêmico como as versões mais antigas do Unix, os pesquisadores de Berkeley continuou a desenvolver BSD Unix como uma alternativa ao UNIX System III e V, originalmente na arquitetura PDP-11 (a 2. xBSD libera, terminando com 2.11BSD) e mais tarde para o VAX-11 (as versões 4.x BSD). Muitas contribuições para Unix apareceu pela primeira vez em versões de sistemas BSD, nomeadamente a Shell C com controle de trabalho (modelado em ITS). Talvez o aspecto mais importante do esforço de desenvolvimento BSD foi a adição de TCP / IP código de rede ao Unix tradicional kernel. O esforço BSD produzido vários lançamentos importantes que continham código de rede: 4.1cBSD, 4.2BSD, 4.3BSD, 4.3BSD-Tahoe ("Tahoe" ser o apelido do Consolas Inc. Poder 6/32 arquitetura que foi o primeiro lançamento não-dezembro do kernel BSD), Net / 1, 4.3BSD-Reno (para coincidir com o "Tahoe" nomear, e que o lançamento era algo de um jogo) , Net / 2, 4.4BSD, e 4.4BSD-lite. O código de rede encontrada nestes lançamentos é o ancestral de muito código de rede TCP / IP em uso hoje, incluindo o código que mais tarde foi lançado em AT & T System V UNIX e as primeiras versões do Microsoft Windows . O acompanhamento Berkeley Sockets API é um padrão de fato para APIs de rede e tem sido copiado em várias plataformas.

Outras empresas começaram a oferecer versões comerciais do Sistema UNIX para os seus próprios mini-computadores e estações de trabalho. A maioria destes novos sabores de Unix foram desenvolvidos a partir da base System V sob licença da AT & T; no entanto, os outros foram baseados em BSD vez. Um dos principais desenvolvedores de BSD, Bill Joy, passou a co-fundar Sun Microsystems em 1982 e criado SunOS (agora Solaris) para a sua computadores estação de trabalho. Em 1980, a Microsoft anunciou sua primeira Unix para Microcomputadores de 16 bits denominado Xenix, que o Santa Cruz Operation (SCO) portado para o Intel processador 8086 em 1983, e, eventualmente, ramificada em Xenix SCO UNIX em 1989.

Por alguns anos, durante este período (antes Computadores compatíveis com PC MS-DOS se tornou dominante), observadores da indústria espera que o UNIX, com a sua portabilidade e capacidades ricas, era provável que se torne o sistema operacional padrão da indústria para microcomputadores. Em 1984 várias empresas estabeleceu o X / consórcio aberto com o objetivo de criar uma especificação de sistema aberto baseado em UNIX. Apesar do progresso inicial, o esforço de padronização caiu na " Guerras do UNIX ", com várias empresas a formação de grupos de normalização rivais. A norma relacionada com o Unix mais bem sucedido acabou por ser a IEEE de Especificação POSIX, concebido como um compromisso API prontamente implementado em ambas as plataformas BSD e System V, publicado em 1988 e logo mandatado pelo Governo dos Estados Unidos para muitos de seus próprios sistemas

AT & T adicionou vários recursos em UNIX System V, tal como bloqueio de arquivos, administração do sistema, riachos, novas formas de IPC, a Sistema de arquivos remoto e TLI. AT & T cooperou com a Sun Microsystems e entre 1987 e 1989 se fundiu características de Xenix, BSD, SunOS e sistema V em System V Release 4 (SVR4), independentemente da X / Open. Esta nova versão consolidou todas as características anteriores em um único pacote, e anunciou o fim de versões concorrentes. Além disso, aumentou as taxas de licenciamento.

Durante esse tempo, um número de fornecedores, incluindo a Digital Equipment, Sol, Addamax e outros começaram a construir versões confiáveis de UNIX para aplicações de alta segurança, principalmente projetado para aplicações militares e policiais.


1990

Em 1990, o Open Software Foundation lançou OSF / 1, a sua implementação padrão Unix, baseado em Mach e BSD. A Fundação foi iniciado em 1988 e foi financiado por várias empresas relacionadas com o Unix que pretendiam neutralizar a colaboração da AT & T e Sun no SVR4. Posteriormente, a AT & T e outro grupo de licenciados formaram o grupo " UNIX Internacional "a fim de neutralizar OSF. Esta escalada do conflito entre fornecedores concorrentes deu origem novamente para a frase" Unix guerras ".

Em 1991, um grupo de desenvolvedores do BSD (Donn Seeley, Mike Karels, Bill Jolitz, e Trent Hein) deixou a Universidade da Califórnia de Berkeley encontrado Design de Software, Inc ( BSDI). BSDI produziu uma versão comercial totalmente funcional do BSD Unix para a plataforma Intel barato e onipresente, que começou uma onda de interesse no uso de hardware barato para computação de produção. Pouco depois de sua fundação, Bill Jolitz deixou BSDI para perseguir distribuição de 386BSD, o ancestral software livre FreeBSD, OpenBSD , e NetBSD.

Em 1993, a maioria dos fornecedores comerciais tinham mudado suas variantes de Unix a basear-se System V com muitas características BSD adicionado no topo. A criação do Iniciativa COSE naquele ano pelos principais intervenientes no Unix, marcou o fim da fase mais notória das guerras do Unix, e foi seguido pela fusão da UI e OSF em 1994. A nova entidade combinada, que manteve o nome OSF, parou de trabalhar em OSF / 1 naquele ano. Por essa altura o único fornecedor de usá-lo era Digital, que continuou o seu próprio desenvolvimento, rebranding seu produto UNIX Digital no início de 1995.

Pouco depois de UNIX System V Release 4 foi produzido, a AT & T vendeu todos os seus direitos para UNIX para Novell. (Dennis Ritchie comparou isto à história bíblica de Esaú vende sua primogenitura para o proverbial " prato de lentilhas ".) Novell desenvolveu sua própria versão, UnixWare, fundindo sua NetWare com UNIX System V Release 4. Novell tentou usar isso para batalha contra Windows NT, mas seus principais mercados sofreram consideravelmente.

Em 1993, a Novell decidiu transferir o UNIX® marcas e direitos para a certificação X / Consórcio Abrir. Em 1996, X / Open se fundiu com OSF, criando o Open grupo. Vários padrões pelo Open Group agora definir o que é eo que não é um sistema operacional "UNIX", nomeadamente o pós-1998 Single UNIX Specification.

Em 1995, o negócio de administração e suporte as licenças UNIX existentes, além de direitos para desenvolver ainda mais a base de código do System V, foram vendidos pela Novell para a Operação Santa Cruz. Se Novell também vendeu os direitos de autor é actualmente objecto de litígio (veja abaixo).

Em 1997, a Apple Computer procurou uma nova fundação para o seu sistema operacional Macintosh e escolheu NEXTSTEP, um sistema operativo desenvolvido pela Next. O sistema operativo do núcleo, que se baseou na BSD eo Do kernel Mach, foi rebatizado Darwin depois que a Apple adquiriu. A implantação de Darwin em Mac OS X torna, de acordo com uma declaração feita por um funcionário da Apple em um Conferência USENIX, o sistema baseado em Unix mais utilizado no mercado de computadores desktop.

2000 até ao presente


Em 2000, SCO vendeu toda a sua negócios e ativos UNIX para Caldera Systems, que mais tarde mudou seu nome para O SCO Group. Este novo jogador, então, iniciou uma ação legal contra vários usuários e fornecedores de Linux. SCO alegou que o Linux continha código protegido por direitos autorais do Unix agora propriedade da The SCO Group. Outras alegações incluído violações de segredo comercial por IBM , ou violações de contrato por parte de antigos clientes de Santa Cruz desde que se converteram ao Linux. No entanto, a Novell contestado a alegação da SCO Group para manter direitos autorais sobre a base de código UNIX. De acordo com a Novell, a SCO (e, portanto, o Grupo SCO) são efetivamente operadores de franquia para Novell, que também retidos os direitos autorais do núcleo, direitos de veto sobre futuras actividades de licenciamento de SCO, e 95% da receita de licenciamento. O Grupo SCO não concordou com esta, ea disputa resultou na SCO v. Novell ação judicial. Em 10 de agosto de 2007 , uma grande parte do caso (o fato de que a Novell tinha os direitos autorais para UNIX, e que o Grupo SCO tinha indevidamente mantidos dinheiro que era devido a Novell) foi decidido em favor da Novell. O tribunal também decidiu que "SCO é obrigado a reconhecer renúncia aos créditos da SCO contra a IBM e Sequent da Novell". Após a decisão, a Novell anunciou que eles não têm interesse em processar pessoas com mais de Unix e declarou: "Nós não acreditamos que há Unix no Linux".

O Estouro da bolha pontocom levou a uma consolidação significativa de versões do Unix. Dos muitos sabores de Unix comerciais que nasceram na década de 1980, apenas a Solaris, HP-UX e AIX ainda estão fazendo relativamente bem no mercado, apesar do SGI IRIX persistiu por algum tempo. Destes, Solaris tem a maior quota de mercado.

Em 2005, Sun Microsystems lançou a maior parte do seu código do sistema Solaris (com base na UNIX System V Release 4) em um open source projeto chamado OpenSolaris. Novas tecnologias Sun OS, como o Sistema de arquivos ZFS são agora pela primeira vez lançado como código-fonte aberto através do projeto OpenSolaris; a partir de 2006 que gerou várias distribuições não-Sun, tais como SchilliX, BeleniX, Nexenta e MarTux.

Padrões

Começando no final de 1980, um esforço de padronização do sistema operacional aberto agora conhecido como POSIX fornecida uma linha de base comum para todos os sistemas operacionais; POSIX baseado IEEE em torno da estrutura comum dos principais concorrentes variantes do sistema Unix, publicando o primeiro padrão POSIX em 1988. No início de 1990 um esforço separado, mas muito semelhante foi iniciados por um consórcio da indústria, do Meio Ambiente Open Software Comum ( Iniciativa COSE), que eventualmente se tornou o Single UNIX Specification administrado por The Open Group). A partir de 1998, o Open Group e IEEE iniciou o Austin Group, para fornecer uma definição comum de POSIX e do Single UNIX Specification.

Em um esforço para a compatibilidade, em 1999, vários fornecedores de sistemas Unix concordaram com SVR4 de Executável e Linkable Format (ELF) como o padrão para arquivos de código binário e objetos. O formato comum permite a compatibilidade binária substancial entre os sistemas Unix que exploram a mesma arquitetura de CPU.

O Filesystem Hierarchy Standard foi criado para fornecer uma estrutura de diretório de referência para os sistemas operacionais Unix-like, especialmente Linux.

Componentes

O sistema Unix é composto por vários componentes que estão normalmente embalados em conjunto. Ao incluir - para além do do kernel de um sistema operacional - o ambiente de desenvolvimento, bibliotecas, documentos, eo, modificável código-fonte do portátil para todos esses componentes, Unix era um sistema de software auto-suficiente. Esta foi uma das principais razões pelas quais ele emergiu como uma importante ferramenta de ensino e aprendizagem e tem tido uma influência tão ampla.

A inclusão desses componentes não fez o grande sistema - a distribuição V7 UNIX original, consistindo de cópias de todos os binários compilados além de todo o código fonte e documentação ocupavam menos de 10 MB, e chegou em um único 9-track fita magnética. A documentação impressa, formatados a partir das fontes on-line, foi contido em dois volumes.

Os nomes e as localizações dos componentes do sistema de arquivos Unix mudou substancialmente em toda a história do sistema. No entanto, a implementação V7 é considerada por muitos a ter a estrutura canônica início:

  • Kernel - código-fonte em / usr / sys, composto por várias sub-componentes:
    • conf - configuração e partes dependentes da máquina, incluindo o código de inicialização
    • drivers de dispositivo para controle de hardware (e alguns pseudo-hardware) - dev
    • sys - sistema operacional do "kernel", manuseamento gerenciamento de memória, processo de agendamento, chamadas do sistema, etc.
    • arquivos de cabeçalho, que definem estruturas-chave dentro do sistema e invariáveis específicos do sistema importantes - h
  • Development Environment - As primeiras versões do Unix continha um ambiente de desenvolvimento suficiente para recriar todo o sistema a partir do código fonte:
    • cc - compilador de linguagem C (apareceu pela primeira vez em V3 Unix)
    • como - montador de linguagem de máquina para máquina
    • ld - vinculador, para combinar arquivos de objeto
    • lib - bibliotecas de código objeto (instalado em / lib ou / usr / lib) libc, a biblioteca de sistema com suporte C de tempo de execução, foi a biblioteca principal, mas sempre houve bibliotecas adicionais para coisas como funções matemáticas (libm) ou acesso ao banco. V7 Unix apresentou a primeira versão do moderno "Standard I / O" biblioteca stdio como parte da biblioteca do sistema. Implementações posteriores aumentou o número de bibliotecas significativamente.
    • fazer - gerente de construção (introduzido no PWB / UNIX), para efetivamente automatizar o processo de compilação
    • incluem - arquivos de cabeçalho para desenvolvimento de software, definindo interfaces padrão e invariantes do sistema
    • Outros idiomas - V7 Unix continha um Fortran-77 compilador, uma calculadora de precisão arbitrária programável (bc, cc), ea awk linguagem "script", e versões posteriores e implementações contêm muitos outros compiladores e conjuntos de ferramentas linguísticas. Lançamentos BSD cedo incluído Ferramentas Pascal, e muitos sistemas Unix modernos incluem também a GNU Compiler Collection, bem como ou em vez de um sistema de compilador proprietário.
    • Outras ferramentas - incluindo um gerenciador de objetos de código de arquivo (ar), símbolo de mesa-Lister (nm), ferramentas de compilador de desenvolvimento (por exemplo, lex & yacc) e ferramentas de depuração.
  • Comandos - Unix faz pouca distinção entre os comandos (programas de nível de usuário) para a operação e manutenção do sistema (por exemplo, cron), comandos de utilidade geral (por exemplo, grep), e mais aplicações de uso geral, tais como a formatação do texto e diagramação pacote. No entanto, algumas categorias principais são:
    • sh - O programável "shell" linha de comando intérprete, a principal interface do usuário no Unix antes sistemas de janela apareceu, e mesmo depois (dentro de uma "janela de comando").
    • Utilitários - o kit de ferramentas do núcleo do conjunto de comandos Unix, incluindo cp, ls, grep, localizar e muitos outros. Subcategorias incluem:
      • Utilitários de sistema - ferramentas administrativas, como mkfs, fsck, e muitos outros
      • Utilitários de usuários - Ferramentas de gestão do ambiente, tais como passwd, matar, e outros.
    • A formatação do documento - sistemas Unix foram usadas desde o início para os sistemas de preparação e de composição de documentos, e incluiu muitos programas relacionados, tais como nroff, troff, tbl, eqn, referem-se, e pic. Alguns sistemas Unix modernos também incluem pacotes tais como TeX e Ghostscript.
    • Gráficos - O subsistema enredo previstas instalações para a produção de lotes de vetores simples em um formato independente de dispositivo, com intérpretes específicas do dispositivo para exibir esses arquivos. Sistemas Unix modernos também incluem geralmente X11 como um sistema de janelas padrão e GUI, e muitos apoio OpenGL.
    • Comunicações - Os primeiros sistemas Unix não continha a comunicação inter-sistema, mas fez incluem o Static Wikipedia - Euskera programas de comunicação inter-usuário e escrever. V7 introduziu o sistema de comunicação inter-sistema precoce UUCP e sistemas que começam com 4.1c liberação BSD incluído Utilitários TCP / IP.
O comando 'homem' pode exibir uma 'página do homem para cada comando no sistema, incluindo o próprio.
  • Documentação - O Unix foi o primeiro sistema operacional para incluir toda a sua documentação on-line em formato legível por máquina. A documentação inclui:
    • homem - páginas de manual para cada comando, componente de biblioteca, chamada de sistema, arquivo de cabeçalho, etc.
    • doc - documentos mais longos, detalhando as principais subsistemas, tais como a linguagem C e troff

Unix impacto

O sistema Unix teve impacto significativo em outros sistemas operacionais.

Ele foi escrito em linguagem de alto nível, em oposição a linguagem assembly (que tinha sido considerado necessário para a implementação de sistemas de computadores antigos). Embora este seguiu o exemplo de Multics e Burroughs, era Unix que popularizou a idéia.

Unix tinha um modelo de arquivo simplificada drasticamente em comparação com muitos sistemas operacionais contemporâneos, tratando todos os tipos de arquivos como simples matrizes de bytes. O sistema de arquivos hierárquicos contidos serviços de máquinas e dispositivos (tais como impressoras, terminais, ou unidades de disco), fornecendo uma interface uniforme, mas à custa de ocasionalmente requerem mecanismos adicionais, tais como ioctl e modo bandeiras para acessar os recursos do hardware que não se encaixava no "fluxo de bytes" simples modelo. O Plano 9 do sistema operacional empurrou este modelo ainda mais longe e eliminou a necessidade de mecanismos adicionais.

Linux foi adaptado para iniciar a partir de CDs, Drives flash USB e cartões de memória.

Unix também popularizou o sistema de arquivos hierárquico com subdiretórios aninhados arbitrariamente, originalmente introduzidas pela Multics. Outros sistemas operacionais comuns da época tinha maneiras de dividir um dispositivo de armazenamento para vários diretórios ou seções, mas eles tinham um número fixo de níveis, muitas vezes, apenas um nível. Vários grandes sistemas operacionais proprietários, eventualmente adicionado capacidades subdiretório recursiva também modelado após Multics. Dezembro de "Grupo, usuário" hierarquia de RSX-11M evoluiu para Diretórios VMS, CP / volumes de M evoluiu para MS-DOS 2.0 + subdiretórios, e da HP MPE hierarquia group.account e IBM SSP e OS / 400 sistemas de bibliotecas foram dobradas em sistemas de arquivos POSIX mais amplas.

Fazer o interpretador de comandos de um programa em nível de usuário comum, com comandos adicionais fornecidos como programas separados, foi outra inovação Multics popularizado pelo Unix. O Unix shell usado o mesmo idioma dos comandos interativos como para scripting ( scripts shell - não havia job control language separado, como o da IBM JCL). Uma vez que os comandos shell e OS foram "apenas mais um programa", o usuário pode escolher (ou até mesmo escrever) sua própria concha. Os novos comandos pode ser adicionada sem alterar o próprio reservatório. Sintaxe de linha de comando inovadora do Unix para a criação de cadeias de processos produtor-consumidor ( gasodutos) fez um paradigma de programação poderoso ( coroutines) amplamente disponível. Muitos intérpretes de linha de comando mais tarde ter sido inspirado pelo shell Unix.

A hipótese simplificadora fundamental do Unix era seu foco em texto ASCII para quase todos os formatos de arquivo. Não houve editores "binários" na versão original do Unix - todo o sistema foi configurado usando scripts de comandos shell textual. O denominador comum no sistema I / O foi o byte - ao contrário sistemas de arquivos "baseada em recordes". O foco no texto para representar quase tudo feito pipes Unix especialmente úteis, e incentivou o desenvolvimento de ferramentas simples e gerais, que poderiam ser facilmente combinados para desempenhar tarefas mais complicadas ad hoc. O foco no 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 têm provado popular em áreas de aplicação, tais como linguagens de impressão ( PostScript), e na camada de aplicação do Protocolos da Internet, por exemplo, Telnet, FTP, SSH, SMTP, HTTP e SIP.

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 do sistema operacional amplamente implementado (POSIX, veja acima).

A linguagem de programação C logo se espalhou para além de Unix, e é agora onipresente em sistemas e aplicativos de programação.

Desenvolvedores Unix primeiros foram importantes em trazer a teoria da e modularidade reutilização em práticas de engenharia de software, gerando uma "Ferramentas de Software" movimento.

Unix desde que o protocolo de rede TCP / IP em computadores relativamente baratos, o que contribuiu 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. (Isso também expostas inúmeras falhas de segurança nas implementações de rede.)

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

Com o tempo, os principais desenvolvedores de Unix (e programas que corriam sobre ela) evoluiu de um conjunto de normas culturais para o desenvolvimento de software, normas que se tornou tão importante e influente como a tecnologia do próprio Unix; este foi designado por Filosofia Unix.

2038

Lojas Unix valores de tempo sistema como o número de segundos a partir da meia-noite 1 de Janeiro de 1970 (a " Unix Epoch ") em variáveis do tipo time_t , historicamente definido como "assinado inteiro de 32 bits". Em 19 de janeiro 2038, o horário atual vai rolar a partir de um zero seguido por 31 queridos ( 01111111111111111111111111111111 ) para um seguido por 31 zeros ( 10000000000000000000000000000000 ), que irá repor o tempo para o ano de 1901 ou 1970, dependendo da implementação, porque isso alterna o assinar bit. Como muitos aplicativos usam OS rotinas de biblioteca para cálculos de data, o impacto disso pode ser sentida muito mais cedo do que 2038; por exemplo, hipotecas de 30 anos pode ser calculado incorretamente início no ano 2008 .

Desde os tempos antes de 1970 raramente estão representados em Tempo Unix, uma solução possível que seja compatível com formatos binários existente seria redefinir time_t como "não assinado inteiro de 32 bits". No entanto, tal kludge apenas adia o problema para 07 de fevereiro 2106, e pode introduzir erros no software que compara as diferenças entre os dois conjuntos de tempo.

Algumas versões do Unix já abordou esta. Por exemplo, no Solaris em sistemas de 64 bits, time_t é de 64 bits, o que significa que o próprio sistema operacional e aplicativos de 64 bits irá lidar corretamente com datas para cerca de 292 bilhões de anos. Aplicativos de 32 bits existentes usando a 32-bit time_t continuar a trabalhar em sistemas Solaris de 64 bits, mas ainda são propensas ao problema 2038.

Sistemas operacionais Unix-like livre

Em 1983, Richard Stallman anunciou a GNU projeto, um esforço ambicioso para criar um software livre Sistema Unix-like; "Livre" em que todos os que receberam uma cópia estaria livre para usar, estudar, modificar e redistribuir. Projeto de desenvolvimento do kernel do próprio projeto GNU, GNU Hurd, não havia produzido um kernel funcionando, mas em 1992, Linus Torvalds lançou o Kernel do Linux como software livre sob a GNU General Public License. Em adição à sua utilização no Linux sistema operacional, muitos pacotes GNU - tais como o GNU Compiler Collection (e o resto do GNU toolchain), o Biblioteca GNU C ea Utilitários GNU fundamentais - passaram a desempenhar papéis centrais em outros sistemas Unix livres também.

Distribuições de Linux, compreendendo Linux e grandes coleções de software compatível tornaram-se populares tanto com usuários individuais e nos negócios. Distribuições mais populares incluem Red Hat Enterprise Linux, Fedora, SUSE Linux Enterprise, openSUSE, Debian GNU / Linux, Ubuntu, Mandriva Linux, Slackware Linux e Gentoo.

Um derivado livre BSD Unix, 386BSD, também foi lançado em 1992 e levou à NetBSD e Projetos FreeBSD. Com a liquidação de uma ação judicial 1994, que UNIX Systems Laboratories interposto da Universidade da Califórnia, Berkeley e Design de Software Inc. ( . USL v BSDi), foi esclarecido que Berkeley tinha o direito de distribuir BSD Unix - de graça, se assim o desejar. Desde então, BSD Unix foi desenvolvido em várias direções diferentes, incluindo OpenBSD e DragonFly BSD.

Linux e BSD agora estão rapidamente ocupando grande parte do mercado tradicionalmente ocupadas pelos sistemas operacionais proprietários Unix, assim como a expansão para novos mercados, como o desktop de consumo e dispositivos móveis e incorporados. Devido à modularidade do design do Unix, partilham fragmentos é relativamente comum;Consequentemente, a maioria ou todos os sistemas Unix e Unix-like incluir pelo menos algum código BSD, e sistemas modernos também incluem normalmente alguns utilitários GNU em sua distribuição.

Em 2005, Sun Microsystems lançou a maior parte do código-fonte para o sistema operacional Solaris, uma variante do sistema V, sob o nome OpenSolaris, tornando-se o primeiro sistema Unix comercial ativamente desenvolvido para ser de código aberto (vários anos antes, Caldera tinha lançado muitos dos mais velhos sistemas Unix sob uma educacional e, mais tarde licença BSD). Como resultado, uma grande quantidade de ex-proprietária código AT & T / USL está agora disponível gratuitamente.

Marca

Em outubro de 1993, Novell, empresa que detinha os direitos sobre a fonte do Unix System V na época, transferiu as marcas comerciais do Unix para o X / Empresa Open (agora The Open Group), e em 1995 vendeu as operações de negócios relacionados ao Papai Cruz Operation. Se Novell também vendeu os direitos de autor para o software real foi objecto de um processo federal 2006, SCO v Novell, que ganhou Novell.; o caso está sendo apelada. Unix fornecedor SCO Group Inc. acusado Novell de difamação de título.

O actual proprietário damarcaUNIX®é The Open Group, um consórcio padrões da indústria. Apenas os sistemas totalmente compatível com e certificados ao Single UNIX Specification qualificar como "UNIX" (os outros são chamados de "sistema Unix-like" ou "Unix-like ").

Por decreto do The Open Group, o termo "UNIX" refere-se mais a uma classe de sistemas operacionais do que para uma implementação específica de um sistema operacional; esses sistemas operacionais que satisfaçam do Open Group Single UNIX Specification deve ser capaz de suportar os UNIX® 98 ou 03 marcas UNIX® hoje, depois de o fornecedor do sistema operacional paga uma taxa para The Open Group. Sistemas licenciadas para uso da marca UNIX incluem AIX, HP-UX, IRIX, Solaris, Tru64 (anteriormente "Digital UNIX"), A / UX, Mac OS X 10.5 em Intel plataformas, e uma parte do z / OS.

Às vezes, uma representação como "Un * x", "* NIX", ou "* N? X" é usado para indicar todos os sistemas operacionais semelhantes ao Unix. Isto vem a partir da utilização do "*" e "?" caracteres como caracteres "coringa" em muitas utilidades. Esta notação é também usado para descrever outros sistemas Unix-like, por exemplo, Linux, BSD, etc., que não tenham cumprido os requisitos para a marca UNIX do Open Group.

O Grupo aberto, os pedidos que "UNIX" é sempre usado como um adjectivo seguido por um termo genérico como "sistema" para ajudar a evitar a criação de um marca genericized.

"Unix", foi a formatação original, mas o uso de "UNIX" continua a ser generalizada porque, de acordo comDennis Ritchie, ao apresentar o papel Unix original para o terceiro Sistemas operacionais Simpósio da AmericanAssociation for Computing Machinery ", tivemos um novo tipógrafo e troff apenas tinha sido inventado e que foram intoxicados por ser capaz de produzir pequenas tampas. "Muitos dos antecessores e contemporâneos do sistema operacional usado lettering tudo em maiúsculas, por isso muitas pessoas escreveu o nome em letras maiúsculas, devido à força do hábito.

Várias formas plurais de Unix são usados ​​para se referir a várias marcas de Unix e sistemas Unix-like. O mais comum é as "convencionais Unixes ", mas a cultura hacker que criou Unix tem uma propensão para uso lúdico da língua, e " Unices "(tratando como Unix Latina substantivo da terceira declinação) também é popular. A anglo-saxão forma plural "Unixen" não é comum, embora ocasionalmente vistos. Nomes de marcas comerciais podem ser registrados por entidades diferentes em diferentes países e leis de marca registada em alguns países permitem o mesmo nome de marca a ser controlada por duas entidades diferentes se cada entidade usa a marca registrada em categorias facilmente distinguíveis. O resultado é que o Unix tem sido usado como um nome de marca para diversos produtos, incluindo prateleiras de livros, canetas de tinta, cola garrafas, fraldas, secadores de cabelo e recipientes para alimentos.

Comandos Unix comum

Amplamente utilizado comandos Unix incluem:

  • Directory e criação de arquivos e de navegação:ls pwd cd mkdir rm rmdir cp encontrar mv toque
  • Visualização e edição de arquivos:mais menos emacs ed vi cabeça cauda
  • Processamento de texto:echo grep gato tipo uniq sed awk corte tr divisão printf
  • Comparação de arquivo:comm remendo cmp diff
  • Ferramentas shell Diversos:sim xargs teste
  • A administração do sistema:chmod chown ps su w que
  • Comunicação:Email telnet dedo ftp ssh
  • Autenticação:su de login passwd


Retirado de " http://en.wikipedia.org/w/index.php?title=Unix&oldid=228789085 "