Na primeira unidade da disciplina, vimos
uma breve evolução dos sistemas operacionais Windows.
Esta parte visa complementar o assunto
com os sistemas baseados em Unix.
Unix é um sistema operacional portátil,
multitarefa e multiusuário, originalmente criado por Ken Thompson, Dennis
Ritchie, Douglas McIlroy e Peter Weiner, que trabalhavam nos Laboratórios Bell (Bell Labs) da AT&T – final da década de 60.
Em 1969, Ken Thompson, usando um
ocioso computador PDP-7, começou a reescrever o embrião do Unix (o Multics) num conceito menos ambicioso,
batizado de Unics, usando linguagem de montagem (assembly)
montagem (assembly).
Mais tarde, Brian Kernighan rebatizou o
novo sistema de Unix.
Um marco importante foi estabelecido
em 1973, quando Dennis Ritchie e Ken Thompson reescreveram o Unix, usando a linguagem C, para um computador PDP-11.
Conteúdo complementar –
Sistemas baseados em UNIX
A linguagem C havia sido desenvolvida
por Ritchie para substituir e superar as limitações da linguagem B, desenvolvida por Thompson. O seu uso é considerado uma das principais razões para a rápida difusão do Unix
difusão do Unix.
Finalmente, ao longo dos anos 70 e 80
foram sendo desenvolvidas as primeiras distribuições de grande dimensão como os sistemas BSD (na Universidade de Berkeley na Califórnia) e os System III e Berkeley na Califórnia) e os System III e System V (nos Bell Labs).
Em 1983, após acrescentar vários
melhoramentos ao System III, a AT&T apresentava o novo Unix comercial, renomeando-o para System V.
Hoje, o Unix System V é o padrão
internacional de fato para o
desenvolvimento de variantes do Unix.
Atualmente, Unix (ou *nix) é o nome
dado a vários sistemas que partilham muitos dos conceitos dos Unix originais, sendo todos eles desenvolvidos em
torno de padrões como o POSIX
(Portable Operating System Interface) e outros.
Conteúdo complementar –
Sistemas baseados em UNIX
Alguns dos Sistemas Operativosderivados do Unix são: BSD (FreeBSD, OpenBSD e NetBSD), Solaris
(anteriormente conhecido por SunOS), IRIXG, AIX, HP-UX, Tru64, SCO, Linux (nas suas centenas de distribuições) e (nas suas centenas de distribuições), e até o Mac OS X (baseado em um núcleo Mach BSD chamado Darwin). Existem mais de quarenta sistemas operacionais *nix, instalados em desde celulares a supercomputadores, de relógios de supercomputadores, de relógios de pulso a sistemas de grande porte.
Conteúdo complementar –
Sistemas baseados em UNIX
Linux:
O Linux foi criado como um projeto de
um estudante finlandês chamado Linus Torvalds. Na época os sistemas
operacionais mais populares eram o
Unix, que era muito usado em empresas, o Mac OS, da Apple, muito popular entre os usuários domésticos que tinha uma interface muito amigável e superior ao do Windows em muitos aspectos, mas muito caro também e o Windows que na muito caro também, e o Windows, que na verdade era a opção pra quem não podia comprar um computador da Apple.
Linux:
Em 1988, Linus ingressou na
Universidade de Helsinki (Finlândia) no curso de Ciências da Computação. Após montar um computador passou a usar o MINIX.
O MINIX fora desenvolvido pelo
Professor Andrew S. Tanenbaum, um renomado professor de computação que é conhecido pelos diversos livros que escreve até hoje para a área de TI.
Conteúdo complementar –
Sistemas baseados em UNIX
Tanenbaum disponibilizou o MINIXprincipalmente para servir de auxílio no ensino de computação.
Dadas as suas finalidades acadêmicas,
não só o MINIX foi disponibilizado de maneira gratuita e livre, como também o seu código-fonte completo. Assim, os estudantes de computação podiam - e podem - estudá-lo inteiramente para
desenvolver suas habilidades ou mesmo para criar projetos derivados
Devido a observar as dificuldades deste
sistema (especialmente com relação ao uso de terminal para conexão), Linus resolveu criar um programa para a emulação de terminal que funcionasse independente do MINIX
independente do MINIX.
Na mesma época (1991), estudantes do
mundo todo que se interessavam por informática, e compartilhavam os ideais de que os programas deveriam ser livres para o uso e melhoria por todos
para o uso e melhoria por todos,
inspirados por Richard Stallman e seu projeto GNU.
Conteúdo complementar –
Sistemas baseados em UNIX
O projeto de Stallman (GNU), era ummovimento que visava a fornecer
software livre com qualidade.
O projeto GNU havia criado uma série de
ferramentas para programadores e estudantes, porém seu sistema
operacional propriamente dito ainda precisava de um Kernel.
Kernel é o núcleo de um SO, aquele que
faz o intermédio entre o hardware e os programas executados. Isso significa que a junção do Kernel mais os
softwares que tornam o computador
Concomitantemente com a necessidade
do GNU em desenvolver um Kernel, Linus Torvalds decidiu divulgar
abertamente o seu projeto. Para isso, publicou mensagens na Usenet (uma espécie de antecessora da Internet espécie de antecessora da Internet, baseada em troca de mensagens)
pedindo sugestões e colaborações para a sua iniciativa.
A partir de então, contando com o apoio
de diversos desenvolvedores de diversos desenvolvedores
espalhados pelo mundo, o Linux foi evoluindo e fora adotado pelo projeto GNU como seu Kernel.
Conteúdo complementar –
Sistemas baseados em UNIX
Linux ou GNU/Linux?
O Linux, por si só, é um Kernel. Sozinho,
um Kernel não tem muita utilidade. É necessário "juntá-lo" a um conjunto de
softwares para que tenhamos,
efetivamente, um sistema operacional em condições de uso. É aí que o projeto GNU entra.
O Linux que temos hoje é conhecido por
trabalhar em conjunto com software GNU. Por comodidade ou simplesmente desconhecimento, pessoas criaram o hábito de chamar todo o conjunto de
Distribuições Linux:
Há várias distribuições Linux, para os
mais diversos fins. Muitas, inclusive, fazem parte de negócios rentáveis, onde a empresa fornece, por exemplo, o
sistema operacional de graça, mas obtém receita a partir de serviços de suporte técnico.
Conteúdo complementar –
Sistemas baseados em UNIX
Algumas distribuições Linux: Ubuntu; Debian;
Fedora (ligada à Red Hat); Mandriva;
CentOS; Slackware.
Dica: informações sobre estas e outras
distribuições Linux no site distribuições Linux no site
Licenças:
Uma licença é, em poucas palavras, um
documento que explica como
determinado software pode ser utilizado. No que se refere a programas de código- fonte aberto, há vários tipos de licenças disponíveis. O Linux utiliza a GPL (GNU
Public Licence).
A GPL é uma licença criada pela Free
Software Foundation (organização
fundada por Richard Stallman) baseada nas liberdades que a entidade defende:
Conteúdo complementar –
Sistemas baseados em UNIX
Liberdade de executar o programa, para
qualquer propósito (liberdade zero).
Liberdade de estudar como o programa
funciona e adaptá-lo às suas
necessidades (liberdade 1), sendo o
acesso ao código-fonte um pré-requisito para esta aspecto.
Liberdade de distribuir cópias de forma
que você possa ajudar ao seu próximo (liberdade 2).
Liberdade de melhorar o programa e
liberar os seus aperfeiçoamentos, de modo que toda a comunidade se beneficie (liberdade três).
Dentre as opções abaixo, qual representa a melhor definição para Kernel?
a) Ele é o elemento responsável por
controlar a distribuição da memória física do computador.
b) Parte de um Sistema Operacional que tem como tarefa o gerenciamento dos
processos.
c) Kernel é um gerenciador de distribuições Linux.
Linux.
d) Componente central de um Sistema Operacional.