Distribuições e versões de um Sistema Operativo Open Source

Propaganda
Curso: Técnico Gestão e Programação de Sistemas
Informáticos
2010/2013
Formador:
Índice
Introdução .................................................................................................................................... 4
O que é Open Source? .............................................................................................................. 5
1 O que é Open Source? ............................................................................................................ 5
2 Características dos Projectos Open Source ............................................................................ 6
Características de um Sistema Operativo Open Source ................................................... 10
Linux: ...................................................................................................................................... 10
Distribuições e versões de um Sistema Operativo Open Source ..................................... 12
1Sistema Operativo Unix ......................................................................................................... 12
Distinguir entre distribuições e versões ................................................................................ 16
2 Distribuições de Linux .......................................................................................................... 16
2 Versões de Linux................................................................................................................... 17
Descrever a evolução histórica de um Sistema Operativo Open Source........................ 20
Mas porque o Linux é gratuito? .............................................................................................. 21
Licença GPL.............................................................................................................................. 22
GNU ......................................................................................................................................... 22
Comandos básicos do Linux .................................................................................................... 23
Explicar os processos de instalação e configuração de um S. O. Open Source ........... 26
Pré-Requisitos....................................................................................................................... 26
Requisitos Mínimos: ......................................................................................................... 27
Requisitos Recomendados: ............................................................................................ 27
Faça download do Ubuntu Lucid Lynx! ............................................................................. 29
Verifique o MD5 ................................................................................................................ 30
Grave o Ubuntu num CD ou numa pen USB! .................................................................. 30
Configure a BIOS ................................................................................................................. 31
Arranque do Ubuntu pelo CD ou pela pen ....................................................................... 32
Particionamento do disco .................................................................................................... 34
Noções básicas................................................................................................................. 34
Tamanhos das partições do Ubuntu.............................................................................. 34
Reduza a partição do Windows! .................................................................................... 35
Crie as partições necessárias para o Ubuntu! ............................................................. 36
Instalação do Ubuntu ........................................................................................................... 38
Configurações Pós-Instalação............................................................................................ 43
Página 2
Explicar os processos de Instalação e configuração de dispositivos e device drivers
num S. O. Open Source .......................................................................................................... 44
Device Drivers ......................................................................................................................... 44
Classificação de Drivers ........................................................................................................... 45
Implementação e Instalação de Device Drivers .............................................................. 46
Teste de Device Drivers ........................................................................................................... 48
Protecção e Segurança dos S. O. Open Source ................................................................. 49
Segurança ................................................................................................................................ 49
Protecção ................................................................................................................................ 51
Fiabilidade dos S. O. Open Source ....................................................................................... 53
Partilha de informação e comunicação entre computadores nos S. O. Open Source .. 55
Partilha de informação ............................................................................................................ 55
Comunicação ........................................................................................................................... 56
Como serão os S. O. Open Source na década 2020 ......................................................... 57
Conclusão .................................................................................................................................. 59
Bibliografia ................................................................................................................................. 60
Página 3
Introdução
Eu neste trabalho falo sobre o Sistema Operativo Open
Source. As características do Open Source, historiar, o seu
funcionamento procesos de instalação, de configuração, Protecção
e Segurança do Sistema Operativo Open Source, as fiabilidades,
Partilha de informação e comunicação entre computadores nos S.
O. Open Source, etc.
Página 4
O que é Open Source?
1 O que é Open Source?
Todo mundo já ouviu falar em
Linux: A adoção deste sistema
operacional é um fenômeno que
está ganhando um grande impulso
no mundo corporativo nos últimos
anos, chegando a desafiar a
gigante Microsoft. Mas por quê?
Como softwares
Open Source não
têm custo de
licença,
é
possível
se
investir mais em
serviços
e
treinamento,
e
assim
garantir
melhor
retorno
dos investimentos
em TI.
Linux é um sistema desenvolvido sob
o modelo Open Source: ele é um
software de utilização livre, para quem
quiser. E todos podem contribuir com
ele, seja no seu desenvolvimento,
seja na correção de erros, seja na
documentação, desde que a condição
de liberdade seja mantida. Este
paradigma revolucionou a maneira com que softwares são
desenvolvidos, baixou os custos de desenvolvimento e aumentou a
agilidade, resultando em softwares de excelente qualidade e em
constante evolução. E o Linux demonstrou que é possível levar este
conceito até chegar a um sistema operacional completo, de qualidade
superior aos disponíveis no mercado. Para saber mais sobre esta
maneira de desenvolver software, leia o excelente texto de Eric
Raymond "The Cathedral and the Bazaar".
Mas o Linux é apenas um exemplo entre tantos outros de softwares
complexos e de alta qualidade que este modo de desenvolver gerou.
Outros exemplos são:







Apache, o servidor Web mais utilizado no mundo
Sendmail, o servidor de e-mail mais robusto e seguro
BIND, servidor de DNS responsável pela quase totalidade dos
servidores de nomes da Internet
jBoss, servidor de aplicações compatível com JavaEE
PostgreSQL, servidor de base de dados SQL
gcc, o melhor compilador "C" que existe
etc, etc e etc...
Página 5
A lista é extensa, e cresce a cada dia, como podemos ver, por exemplo,
no site SourceForge.net. Na verdade, os primeiros projetos de
desenvolvimento de softwares livres datam de 1983 (veja no site do
projeto GNU), e desde lá, universidades e empresas têm apoiado de
maneira crescente este movimento.
2 Características dos Projectos Open Source
O processo de desenvolvimento de software open source tem sido um assunto
bastante discutido. Segundo Fuggeta (Fuggetta, 2003), este paradigma de
desenvolvimento é visto como um dos mais promissores para garantir
eficiência, qualidade e maturidade dos softwares. Mas o que é realmente um
software open source? Um software open source é definido como:
“Qualquer software cuja licença garanta ao seu usuário liberdade
relacionada ao uso, alteração e redistribuição. Seu aspecto fundamental é
o fato do código-fonte estar livremente disponível para ser lido, estudado
ou modificado por qualquer pessoa” (Fuggetta, 2003).
Os projectos open source possuem algumas características importantes
que os diferenciam dos projectos de desenvolvimento convencionais, que
são:
• Trabalho voluntário: a maioria dos desenvolvedores trabalha sem
nenhuma motivação financeira. A motivação dos colaboradores vem da
busca pelo aprendizado, da satisfação pessoal, o interesse pelo desafio
do projecto e o fato de compartilhar conhecimento com profissionais mais
experientes.
• Trabalho não é designado: as tarefas não são impostas a ninguém,
devido ao desenvolvimento inicialmente anónimo, isto é, onde as
pessoas não possuem vínculos nem se conhecem pessoalmente. As
pessoas trabalham em partes do projecto nas quais têm mais aptidão e
interesse.
• Motivação dos desenvolvedores: o voluntário possui interesse e
satisfação de trabalhar no projecto. Essa motivação pode vir da
satisfação pessoal, da necessidade de aprendizado ou mesmo a
necessidade de receber reconhecimento profissional.
• Não existem horários ou listas de entrega: como o trabalho é voluntário,
as pessoas trabalham em horários diversificados e contribuem da
maneira que podem, visto que não possuem qualquer compromisso com
o projecto.
• Lançamento de versões: como o trabalho é voluntário e não há
compromissos com prazos, o lançamento do produto ocorre quando a
equipe de coordenação do projecto, a ser discutido mais adiante, acha
que está adequado. Além disso, ainda pode existir imprevisibilidade do
Página 6
conteúdo das releases, pois nesse tipo de desenvolvimento é difícil
existir um cronograma bem definido do projecto.
• Testes: actividade não considerada tão importante em alguns projectos,
e quando existe, nem sempre está bem definida uma sistemática para os
testes de software.
• Planejamento: esta actividade nem sempre é possível, devido ao não
determinismo da colaboração. A participação em projectos open source
ocorre em diferentes níveis de participação e envolvimento. De acordo
com (Reis, 2003), a classificação dos usuários pode ser:
• Usuários não participantes: utilizam o software, mas não contribuem
para sua melhoria, isto é, não têm interesse em discutir e ajudar no
desenvolvimento do software mesmo quando encontram erros.
• Usuários participantes: contribuem activamente para o projecto,
informando erros e discutindo possíveis melhorias nas funcionalidades
existentes. Estes usuários são responsáveis por boa parte da melhoria
do software.
• Desenvolvedores esporádicos: usuários que contribuem de vez em
quando na implementação do projecto. Alguns membros da comunidade
open source têm o papel de desenvolvedor esporádico em uma grande
quantidade de projectos, contribuindo com soluções para problemas
simples.
• Desenvolvedores activos: contribuem activamente para o projecto, são
responsáveis por módulos específicos.

Equipe de Coordenação: esta equipe é responsável pelo agenciamento
do projecto, isto é, por tomar as decisões sobre os rumos do projecto
tais como: cronograma do projecto e dos lançamento das releases,
entrada de colaboradores na equipe, dentre outras atribuições.
Em projectos open source, existem vários níveis de participação e
envolvimentos dos voluntários, como:
 Programação;
 Indicação de falhas e melhorias;
 Documentação;
 Divulgação.
O desenvolvimento de software open source é visto como um estilo de
desenvolvimento pouco convencional, pois na maioria dos projectos não estão
definidos alguns mecanismos tradicionais para coordenação de projectos:
horários, projecto do sistema, planos, um processo definido, como por
exemplo, RUP (Rational Unified Process).
Página 7
Em um projecto open source é de suma importância se ter um
código legível e uma boa documentação, pois como o código fonte será
distribuído muitas outras pessoas terão acesso e necessitarão tê-lo para
poderem contribuir com alguma evolução. A qualidade do código nestes
projectos é mantida geralmente por uma grande quantidade de testes
paralelos (usuários testando o software e reportando bugs encontrados),
ao invés de testes sistemáticos (Godfrey & Tu, 2000). A documentação é
também parte importante no projecto e está intimamente relacionada ao
seu sucesso, isto é, à satisfatória evolução do projecto. É de extrema
importância que o projecto tenha uma boa documentação tanto para os
usuários quanto para os desenvolvedores, para assim existir uma
contribuição realmente activa de ambos.
Em (Crowston, Annabi et al, 2003) são mostradas algumas
medidas de sucesso para os projectos open source. Na Tabela 1 são
exibidas algumas dessas medidas de sucesso apresentadas em
(Crowston, Annabi et al, 2003).
Medidas de Sucesso
Indicadores

Qualidade do Sistema



Satisfação do usuário



Uso

Qualidade do Código (portatilidade,
consistência, coesão, usabilidade,
eficiência, manutenibilidade)
Qualidade da documentação
Participação nas listas de discussão
Sugestões para melhoria do
projecto
Indicação de erros
Número de usuários
Reuso de código
Downloads
Tabela 1: Medidas de sucesso para projectos open source
Página 8
Em geral, o ciclo de vida de um projecto open source é:
• Os idealizados (autor) do projecto escreve a versão inicial e publica na
Internet seu código fonte;
• Caso o software desperte interesse dos desenvolvedores (usuários), os
mesmos propõem modificações e melhorias ao autor;
• Autor analisa, filtra e incorpora no código as modificações que
considera melhores;
• Caso o autor não concorde, os pedidos de modificações são discutidos
pela comunidade;
• É publicada uma nova versão;
• Versão melhorada atrai novos usuários, novas sugestões;
• Com isso o projecto vai ganhando espaço e atraindo cada vez mais
colaboradores;
• Se o projecto não consegue atrair usuários (colaboradores), o projecto
“morre”.
Página 9
Características de um Sistema Operativo
Open Source
Linux:
Linux é um sistema operacional
compatível com Unix, duas de suas
características mais singulares que o
diferenciam de outros sistemas é a sua
acessibilidade, porque é livre, isto significa
que não deve pagar qualquer licença para
qualquer empresa que desenvolve software
uso. Sua segunda característica é que este
sistema é acompanhado pelo código fonte, este software foi projectado e
programado por uma multidão de técnicos e engenheiros em todo o
mundo e está em desenvolvimento contínuo e coordenado por Linus
Torvalds, que criou o projecto. Essa é a ira do sistema operacional Linux
está sendo desenvolvido por dia programas dia mais e mais aplicações
para ser usada lá, as plataformas que permitem o uso do Linux são: 386
-, 486 -, Pentium, Pentium Pro, Pentium II, Amiga e Atari.
Para aqueles que ainda estão perdidos e não entendem o que dizemos
que é o sistema operacional Linux, como o Windows, que visa
impulsionar o software livre com código fonte para que ele possa ser
modificado
por
qualquer
pessoa
indulging
criatividade.
As principais funções do sistema operacional Linux são: multi-tasking,
sistema multi-usuário, cascas de independência de dispositivos
programáveis de comunicação e, com relação à primeira, dizemos que o
Linux é capaz de rodar vários programas ao mesmo tempo, estão tendo
que parar para realizar cada pedido. conchas programável ligar o
comando de um usuário com Linux Kernel a ser programáveis e podem
ser modificados para atender as necessidades de cada pessoa, o
sistema multiusuário permite que vários indivíduos para aceder a
aplicações e recursos do sistema, ao mesmo tempo, e sua uma vez que
pode
executar
vários
programas
ao
mesmo
tempo.
O sistema operacional Linux suporta qualquer tipo de dispositivo, esta é
uma das principais vantagens que o software fornece uma altamente
adaptável, sem limitação, como outros sistemas operacionais, e,
finalmente, dizer que o Linux é o sistema mais flexível para conectar a
qualquer computador o mundo é que a Internet foi criada e desenvolvida
Página 10
no mundo do Unix e Linux, portanto, está velejando muito mais eficientes
quando. Ele tem uma paginação de memória virtual em disco usando
isso permite uma partição ou um arquivo, ou ambos com a capacidade
de adicionar mais áreas de comércio on the fly lixões do estado são
feitas para permitir a análise post mortem e depois usar em programas
depuradores são executados e os que foram abortados.
Vantagens
de
usar
o
sistema
operacional
Linux
Existem três principais vantagens que nos dá o sistema operacional
Linux, primeiro devemos notar que ele é robusto, estável e rápido,
tornando-a ideal para servidores e aplicações distribuídas, para isto
devemos acrescentar que ele não funciona perfeitamente em máquinas
muito
tecnológica.
Outra vantagem é que o sistema esteja livre, o que significa que não só é
livre, mas pode ser modificado e que possui uma grande quantidade de
aplicativos gratuitos na Internet, o Linux não é restrita a pessoas com
grande conhecimento de electrónica ou informática, este é que os
programadores têm desenhado incorporando assistentes de
configuração e de ajuda, e um sistema de gráficos. Um dos problemas
que podem ocorrer com o sistema operacional Linux é a sua
incompatibilidade com o Windows, por que não podemos ter instalado os
dois sistemas e, segundo, dizemos que na maioria das distribuições
Linux deve conhecer seu hardware quando você instala todos os
programas.
Página 11
Distribuições e versões de um Sistema
Operativo Open Source
1Sistema Operativo Unix
Desde que “fugiu” aos AT&T's Bell Laboratories, no inicio dos anos 70, o
sucesso do sistema operativo Unix deu origem a inúmeras e diferentes
versões: aqueles que tinham acesso (naquela altura gratuíto) ao sistema
Unix começaram a desenvolver as suas próprias versões, consoante as
suas necessidades. Universidades, institutos de pesquisa. Corpos
governamentais e companhias de computadores, todas começaram a
usar o poderoso sistema Unix para desenvolverem muitas das tecnologias
que hoje fazem parte do próprio sistema Unix.
Sistemas de controlo de produção, laboratórios de simulação e até mesmo
a Internet conheceram o seu inicio de “vida” com e por causa dos sistemas
Unix. Hoje em dia, sem estes sistemas, a Internet tornar-se-ia um pesadelo
para os seus utilizadores. Grande parte das chamadas telefónicas não
puderiam ser realizadas, o comercio electrónico seria extremamente lento e
nunca teria existido o “Jurassic Park”.
Nos finais dos anos 70, deu-se o auge da expansão do Unix. Por esta
altura alunos não-e pós-graduados cujo trabalho de laboratório tornou pioneiro
todas estas aplicações tecnológicas, alcançaram o poder de gerir o tomar
decisões dentro das companhias de fornecimento de sistemas de
computadores e entre os seus consumidores. Depressa, todos os grandes
fornecedores, e muitos pequenos também, comercializavam os seus próprios
sistemas Unix, optimizados para as especificidades dos seus computadores
potencializando as suas características. Os consumidores descobriram que,
embora os sistemas Unix estavam disponíveis em qualquer parte, raramente
estavam disponíveis para uso de indivíduos singulares e que era necessário
gastar muito tempo para que o sistema pudesse funcionar da melhor maneira,
tendo em conta o uso que lhe seria dado. A marca Unix estava em todo lado
mas ainda era incompatível com muitos produtos.
No inicio dos anos 80, o mercado do Unix já tinha crescido o suficiente
para que analistas e investigadores industriais começassem a ter em conta o
seu potencial efectivo. Agora, a pergunta que se colocava já não era “O que é o
sistema Unix?”, mas sim “Será que o sistema Unix é funcional no comercio e
nos negócios?”.
Entre o começo e os meados dos anos 80, o debate acerca do poder e
das fraquezas do sistema Unix endureceu, muitas vezes alimentado pelo
discurso dos próprios vendedores que procuravam proteger os seus valiosos
sistemas operativos, dizendo que os outros Unix eram inferiores ao seu. E,
num esforço para diferenciar cada vez mais os seus Unix dos restantes,
continuavam a desenvolver e adicionar novas características.
Página 12
Em 1984, outro factor veio trazer motivos de atenção para os sistemas
Unix. Um grupo de fornecedores, preocupados com a continua invasão aos
seus mercados e controlo de sistemas de interface pelas grandes companhias,
desenvolveram o conceito de “sistemas abertos”.
Sistemas abertos eram aqueles reuniriam especificações acordadas
previamente acordadas. Isto resultou na formação da X/Open Company Ltd,
cujo objectivo era a criação de um ambiente de sistemas abertos de fácil
compreensão. Eles declaram que os sistemas abertos seriam mais baratos que
os outros sistemas existentes, atraindo um vasto leque de aplicações e de
competição com iguais condições. A X/Open escolheu o sistema Unix como a
plataforma para a base dos sistemas abertos.
Embora o Unix fosse ainda propriedade da AT&T, esta companhia pouco
tinha ganho com a sua comercialização até meados de 1980. Foi então que a
X/Open mostrou claramente que uma única versão standard do Sistema Unix
seria o melhor para os interesses da indústria e seus clientes. A questão que
agora se levantava era “Que versão?”.
Numa acção com o intuito de unir o mercado em 1987, a AT&T anunciou
um pacto com a Sun Microsystems. Este pacto levou a que as restantes
indústrias vissem os seus mercados em perigo. Desta forma, a melhor solução
passava pela fusão das pequenas indústrias por forma a criarem o seu próprio
“novo” sistema operativo de sistema aberto. Esta fusão resultou numa nova
organização denominada de Open Software Foundation (OSF). Em resposta a
esta fusão, a facção AT&T/Sun formou a Unix Internacional.
O problema “guerra do Unix” dividiu os fornecedores por estes dois campos que
giram à volta dos dois principais sistemas operativos Unix: AT&T’s System V e o
sistema OSF chamado OSF/1. Entretanto, a X/Open Company continuava a dominar
todo o sistema, continuando o processo de standartização dos APIs necessários à
especificação de um sistema operativo aberto. Mais, ela começou a estudar áreas do
sistema que iam para além do nível de um sistema operativo, onde uma aproximação
standard traria novas funções para os fornecedores e consumidores, desenvolvendo ou
adoptando especificações para várias linguas, conectividade a base de dados e a
trabalhos em rede. Os resultados deste trabalho foram publicados em sucessivas
publicações da X/Open.
O XPG 4 foi lançado em Outobro de 1992. Durante este período, a X/Open
colocou no mercado um novo programa com alterações propostas pelos fornecedores.
Desde a publicação do XPG 4, a X/Open continuou a alargar as especificações dos
sistemas abertos, tendo em conta as necessidades do mercado. À medida que as
vantagens dos produtos da X/Open se foram tornando conhecidos e entendidos, grandes
organizações começaram a usar estes produtos como base para o design dos seus
sistemas. Em 1993, mais de $7 biliões foram gastos em produtos da X/Open. No ínicio
de 1997, esta quantia aumentou para mais de $23 biliões.
No ínicio de 1993, a AT&T vendeu o seu UNIX System Laboratories à
Novell, a qual andava à procura de um sistema operativo poderoso que
pudesse associar ao alcance do seu NetWare. Ao mesmo tempo, a companhia
Página 13
reconheceu que o trabalho nas especificações do sistema com um fornecedor
neutro facilitaria de futuro o reconhecimento do valor do Unix como a base dos
sistemas abertos. Desta forma, os diferentes constituintes do sistema Unix, que
outrora eram da posse de uma única entidade, encontram-se agora separados.
Em 1995, a SCO adquiriu o negócio do Sistema Unix à Novell,
continuando a desenvolver o seu código de programação.
Ainda em 1995, a X/Open introduziu no mercado a marca Unix 95 para
sistemas de computadores destinados a receber a Single UNIX Specification.
Durante mais de dez anos, desde o começo da X/Open, o Unix esteve
intimamente ligado aos sistemas abertos. A X/Open, agora parte da The Open
Group, continua a desenvolver o Single UNIX Specification e novos programas
a este associados em prol da comunidade IT. As especificações dos interfaces
das novas tecnologias tem vindo a permitirem que muitos sistemas possam
suportar a filosofia do Unix de pequenas, muitas vezes simples ferramentas,
que podem ser combimadas de várias maneiras para realizar tarefas muitas
vezes complexas. A estabilidade do sistema tem possibilitado o
desenvolvimento de uma gama variada de ferramentas. O movimento The
Open Source está a criar uma base estável e um resurgimento do entusiasmo
pela filosofia do Unix. De muitas maneiras, a Open Source pode ser vista como
a verdadeira fornecedora dos Open Systems e como aquela que assegurará o
seu desenvolvimento.
1969
O início
A história do Unix começou em 1969 quando Ken Thompson,
Dennis Richie e outros começaram a trabalhar no “little-used
PDP-7 in a corner” nos Laboratórios Bell, projecto esse que mais
tarde veio a originar o Unix.
1971
1ª Edição
Esta 1ª edição tinha um programa de tradução para PDP-11/20,
um sistema de ficheiros, fork(), roff e ed. Era usada para
processamento do texto de documentos patenteados.
1973
4ª Edição
O programa foi rescrito em C, o que o tornou portátil, alterando
a história dos OS’s.
1975
6ª Edição
Bastante conhecido como a versão 6, foi o primeiro programa a
ser largamente disponibilizado fora dos Laboratórios Bell. A
primeira versão BSD (1.x) foi feita a partir do V6.
1979
7ª Edição
Da autoria de Bourne constituiu, segundo o mesmo, um
melhoramento que superou todos os anteriores e posteriores
Unices. Tinha C e UUCP, tendo sido conduzido para o VAX. O seu
kernel tinha mais de 40 kilobytes (K).
1980
Xenix
A Microsoft apresenta Xenix. 32V e introduz o 4BSD.
1982
System III
AT&T's UNIX System Group (USG) lança o System III, que foi o
primeiro lançamento público fora dos Laboratórios Bell.
1983
System V
Computer Research Group (CRG), UNIX System Group (USG) e
um terceiro grupo unem-se originando o Unix System
Development Lab. O primeiro programa suportado por esta
união, o Unix System V, é anunciado pela AT&T.
1984
4.2BSD
A Universidade da Califórnia, em Berkeley lança o 4.2BSD. Esta
inclui o TCP/IP e novos sinais, entre muitas outras coisas.
1984
SVR2
É lançado o System V Release 2. Nesta altura há 100,000
instalações de Unix em todo o mundo.
Página 14
1986
4.3BSD
O 4.3BSD é lançado, o qual incluía o nome de servidor de
Internet.
1987
SVR3
É lançado o System V Release 3 incluindo STREAMS, TLI, RFS.
Nesta altura há 750,000 instalações de Unix em todo o mundo.
1988
É publicado o POSIX.1. São formadas a Open Software
Foundation (OSF) e a Unix International (UI).
1989
É formada a AT&T Unix Software Operation em ordem à
preparação do arranque da USL.
1989
SVR4
Surge o Unix System V Release 4 ships, que tende a unificar o
System V, o BSD e o Xenix.
1990
XPG3
A X/Open lança o XPG3 Brand.
1991
A Unix System Laboratories (USL) torna-se numa companhia
maioritariamente possuída pela AT&T. Linus Torvalds começa a
desenvolver o Linux.
1992
SVR4.2
A USL lança o UNIX System V Release 4.2. Em Outubro a
X/Open lança o XPG4 Brand. Em 22 de Dezembro a Novell
anuncia a sua intenção de adquirir a USL.
1993
4.4BSD
É feito o ultimo lançamento vindo de Berkeler: o 4.4BSD. A 16
de Junho a Novell adquire a USL.
Fins
de
1993
SVR4.2MP
A Novell transfere os direitos da marca registada “Unix” e o
Single Unix Specification para a X/Open. Em Dezembro a Novell
lança o SVR4.2MP, o lançamento final do System V pela USL
OEM.
1994
4.4-Lite
BSD 4.4-Lite eliminou toda a programação que infringia a
USL/Novell.
1995
UNIX 95
A X/Open lança o programa Unix 95. A Novell vende o negócio
da UnixWare à SCO.
1996
Forma-se o Open Group como fusão da OSF e a X/Open.
1997
2ª Versão do
Single UNIX
Specification
O Open Group lança a 2ª Versão do Single UNIX Specification, o
qual inclui suporte em tempo real, linhas de 64-bit e
processadores mais largos. Este é disponibilizado livremente na
Web.
1998
UNIX 98
O Open Group lança o UNIX 98 que inclui: Base, Workstation
and Server. Os primeiros produtos registados Unix98 são
lançados pela Sun, IBM and NCR. O movimento The Open
Source começa a sair com os anúncios da Netscape e da IBM.
1999
UNIX chega aos
30 anos
O sistema Unix alcança o 30º aniversário. É lançado o Linux 2.2.
O The Open Group e o IEEE unem esforços no desenvolvimento
do POSIX e do Single UNIX Specification. Dão-se as primeiras
conferências mundiais de Linux. Várias companhias de Open
Source lançam-se com sucesso no mercado do fornecimento.
2001
3ª Versão Single A 3ª versão do Single UNIX Se os esforços do IEEE POSIX, do
UNIX
The Open Group e de outras indústrias. É lançado o Linux 2.4. O
Specification
seu fornecimento passa um tempo difícil nos mercados.
Página 15
Distinguir entre distribuições e versões
2 Distribuições de Linux
Atualmente, um Sistema Operacional (em Portugal Sistema Operativo)
Linux ou GNU/Linux completo (uma "Lista de distribuições de Linux ou
GNU/Linux") é uma coleção de software livre (e por vezes não-livres)
criados por indivíduos, grupos e organizações de todo o mundo, incluindo
o núcleo Linux. Companhias como a Red Hat, a SuSE, a Mandriva
(união da Mandrake com a Conectiva) e a Canonical (desenvolvedora
do Ubuntu Linux), bem como projetos de comunidades como o Debian
ou o Gentoo, compilam o software e fornecem um sistema completo,
pronto para instalação e uso. Patrick Volkerding também fornece uma
distribuição Linux, o Slackware.
As distribuições do Linux ou GNU/Linux começaram a receber uma
popularidade limitada desde a segunda metade dos anos 90, como uma
alternativa livre para os sistemas operacionais Microsoft Windows e
Mac OS, principalmente por parte de pessoas acostumadas com o Unix
na escola e no trabalho. O sistema tornou-se popular no mercado de
Desktops e servidores, principalmente para a Web e servidores de
bancos de dados.
No decorrer do tempo, várias distribuições surgiram e desapareceram,
cada qual com sua característica. Algumas distribuições são maiores
outras menores, dependendo do número de aplicações e sua finalidade.
Algumas distribuições de tamanhos menores cabem num disquete com
1,44 MB, outras precisam de vários CDs, existindo até algumas versões
em DVD. Todas elas têm o seu público e sua finalidade, as pequenas
(que ocupam poucos disquetes) são usadas para recuperação de
sistemas danificados ou em monitoramento de redes de computadores.
De entre as maiores, distribuídas em CDs, podem-se citar: Slackware,
Debian, Suse, e Conectiva. O que faz a diferença é como estão
organizadas e pré-configuradas as aplicações. A distribuição Conectiva
Linux, por exemplo, tinha as suas aplicações traduzidas em português, o
que facilitou que usuários que falam a Língua Portuguesa tenham
aderido melhor a esta distribuição. Hoje esta distribuição foi incorporada
à Mandrake, o que resultou na Mandriva. Para o português, existe
também a distribuição brasileira Kurumin (Essa distribuição foi
descontinuada pelo seu mantedor), construída sobre Knoppix e Debian,
e a Caixa Mágica, existente nas versões 32 bits, 64 bits, Live CD 32
bits e Live CD 64 bits, e com vários programas open source:
OpenOffice.org, Mozilla Firefox, entre outros.
Página 16
Existem distribuições com ferramentas para configuração que facilitam a
administração do sistema. As principais diferenças entre as distribuições
estão nos seus sistemas de pacotes, nas estruturas dos diretórios e na
sua biblioteca básica. Por mais que a estrutura dos diretórios siga o
mesmo padrão, o FSSTND é um padrão muito relaxado, principalmente
em arquivos onde as configurações são diferentes entre as distribuições.
Então normalmente todos seguem o padrão FHS (File Hierarchy
System), que é o padrão mais novo. Vale lembrar, entretanto, que
qualquer aplicativo ou driver desenvolvido para Linux pode ser compilado
em qualquer distribuição que vai funcionar da mesma maneira.
Quanto à biblioteca, é usada a Biblioteca libc, contendo funções básicas
para o sistema Operacional Linux. O problema está quando do
lançamento de uma nova versão da Biblioteca libc, algumas das
distribuições colocam logo a nova versão, enquanto outras aguardam um
pouco. Por isso, alguns programas funcionam numa distribuição e
noutras não. Existe um movimento LSB (Linux Standard Base) que
proporciona uma maior padronização. Auxilia principalmente vendedores
de software que não liberam para distribuição do código fonte, sem tirar
características das distribuições. Os sistemas de pacotes não são
padronizados.
2 Versões de Linux
Debian
Especialistas em Linux dizem que, embora os desenvolvedores do
Debian não façam questão de deixar o software com a cara que
gostariam, eles permitem que o usuário faça isso tranquilamente.
Programas para as actividades quotidianas podem ser baixados
rapidamente pelo Debian Etch, a partir do repositório de aplicativos
do desenvolvedor. O sistema tem uma interface simples e
personalizável.
Aplicativos (equivalência) OpenOffice.org Writer (Word),
OpenOffice.org Cal (Excel), OpenOffice.org Impress (PowerPoint),
Konqueror e Firefox (Internet Explorer), MPlayer (Windows Media
Player), K3b (Nero)
Página 17
Fedora Core 6
Mais conhecido como Zod, o sistema é fácil de ser instalado e conta
com Desktop 3D. Netsa versão, o software traz gerenciadores de
pacotes aperfeiçoados, aplicações desktop, avanços na segurança,
facilidades de instalação do software e da gerência e ferramentas de
localização.
Aplicativos (equivalência) OpenOffice.org Writer (Word),
OpenOffice.org Cal (Excel), OpenOffice.org Impress (PowerPoint),
Gimp (Photoshop), K3b (Nero), Totem e Rythmbox (Windows Media
Player), Firefox (Internet Explorer), Thunderbird (Outlook)
Kurumin 7
Desenvolvido por brasileiros, é tido como uma das distros mais
adequadas para usuários iniciantes. Possui expressiva comunidade
de usuários no país e boas páginas de suporte na Internet, além de
fórum para troca de dúvidas e informações em português. Possui
também uma versão Light, mais leve, que ocupa menos memória —
ideal
para
PCs
antigos
Aplicativos (equivalência) KOffice Office Suite (pacote Office),
Konqueror (Internet Explorer), Clica-Aki (Painel de Controle
centralizado)
Mandriva Discovery
De fácil instalação, o sistema permite dual boot e possui interface
simples e amigável. Para os fãs de games, a versão inclui jogos e
suporta os drivers do Windows. Traz softwares para uso diário,
como mensagens instantâneas, navegador de Internet, e-mail e
pacote
de
aplicativos,
entre
outros.
Aplicativos (equivalência) OpenOffice.org Writer (Word),
OpenOffice.org Cal (Excel), OpenOffice.org Impress (PowerPoint),
Kontact, Evolution, Mozilla Thunderbird (Outlook), Mozilla Firefox,
Konqueror (Internet Explorer), Kopete, Gaim (MSN Messenger),
Kaffeine e Amarok (Windows Media Player), Gimp (Adobe
Photoshop)
Página 18
OpenSUSE 10.2
Esta distribuição é talvez uma das mais simples de usar. Após
instalada, o usuário verá um desktop muito bem organizado — é
possível organizar o Kickoff (equivalente ao Menu Iniciar, no
Windows) da forma como melhor lhe convier. O Fedora Core traz
um menu diferente, mas muito prático, que permite ao susuário
fazer buscas por aplicativos em seu micro. O YaST (Yet another
Setup Tool) também não pode passar em branco. O aplicativo reúne
todas as tarefas de administração do sistema. O repositório de
aplicativos do Fedora também traz soluções de sobra.
Aplicativos (equivalência) O sistema operacional vêm sem
nenhum aplicativo extra. Mas todos eles podem ser baixados
facilmente no repositório oficial do SUSE Linux.
Ubuntu 6.10
Interface muito parecida com a do Windows. Entre as distribuições,
esta é, sem dúvidas, a de interface mais amigável e intuitiva. Traz
sistema de ajuda, com dicas e um banco de dados com as dúvidas
mais comuns — exatamente como acontece nas soluções da
Microsoft. O sistema traz o pacote de aplicativo OpenOffice.
Aplicativos (equivalência) Writer (Word), Calc (Excel), Gimp
(Photoshop), Firefox (Internet Explorer), Rhythmbox Media Player
(Nero), Totem (Windows Media Player)
Página 19
Descrever a evolução histórica de um
Sistema Operativo Open Source
O nome Linux surgiu da mistura de Linus + Unix. Linus é o nome do
criador do Linux, Linus Torvalds. E Unix, é o nome de um sistema
operacional de grande porte, no qual contaremos sua história agora, para
que você entenda melhor a do Linux.
A origem do Unix tem ligação com o sistema operacional Multics,
projectado na década de 1960. Esse projeto era realizado pelo
Massachusets Institute of Technology (MIT), pela General Eletric (GE) e
pelos laboratórios Bell (Bell Labs) e American Telephone na Telegraph
(AT&T). A intenção era de que o Multics tivesse características de tempo
compartilhado (vários usuários compartilhando os recursos de um único
computador), sendo assim, o sistema mais arrojado da época. Em 1969,
já existia uma versão do Multics rodando num computador GE645.
Ken Thompsom era um pesquisador do Multics e trabalhava na Bell
Labs. No entanto, a empresa se retirou do projecto tempos depois, mas
ele continuou seus estudos no sistema. Desde então, sua ideia não era
continuar no Multics original e sim criar algo menor, mas que
conservasse as idéias básicas do sistema. A partir daí, começa a saga
do sistema Unix. Brian Kernighan, também pesquisador da Bell Labs, foi
quem deu esse nome.
Em 1973, outro pesquisador da Bell Labs, Dennis Ritchie, rescreveu todo
o sistema Unix numa linguagem de alto nível, chamada C, desenvolvida
por ele mesmo. Por causa disso, o sistema passou a ter grande
aceitação por usuários externos à Bell Labs.
Entre 1977 e 1981, a AT&T, alterou o Unix, fazendo algumas mudanças
particulares e lançou o System III. Em 1983, após mais uma série de
modificações, foi lançado o conhecido Unix System IV, que passou a ser
vendido. Até hoje esse sistema é usado no mercado, tornando-se o
padrão internacional do Unix. Esse sistema é comercializado por
Página 20
empresas como IBM, HP, Sun, etc. O Unix, é um sistema operacional
muito caro e é usado em computadores poderosos (como mainframes)
por diversas multinacionais.
Qual a relação entre o Unix e o Linux, ou melhor, entre o Unix e
Linus Torvalds?
Para responder essa pergunta, é necessário falar de outro sistema
operacional, o Minix. O Minix é uma versão do Unix, porém, gratuita e
com o código fonte disponível. Isso significa que qualquer programador
experiente pode fazer alterações nele. Ele foi criado originalmente para
uso educacional, para quem quisesse estudar o Unix "em casa". No
entanto, vale citar que ele foi escrito do “zero” e apesar de ser uma
versão do Unix, não contém nenhum código da AT&T e por isso pode ser
distribuído gratuitamente.
A partir daí, “entra em cena” Linus Torvalds. Ele era um estudante
de Ciências da Computação da Universidade de Helsinki, na Filândia e
em 1991, por hobby, Linus decidiu desenvolver um sistema mais
poderoso que o Minix. Para divulgar sua idéia, ele enviou uma
mensagem a um grupo pela Usenet (uma espécie de antecessor da
Internet). A mensagem pode ser vista no final deste artigo. No mesmo
ano, ele disponibilizou a versão do kernel (núcleo dos sistemas
operacionais) 0.02 e continuou trabalhando até que em 1994
disponibilizou a versão 1.0. Até o momento em que este artigo estava
sendo
escrito,
a
versão
actual
era
a
2.6.
O Linux é um sistema operacional livre e é uma re-implementação das
especificações POSIX (padronização da IEEE, Instituto de Engenharia
Elétrica e Eletrônica) para sistemas com extensões System V e BSD.
Isso significa que o Linux é bem parecido com Unix, mas não vem do
mesmo lugar e foi escrito de outra forma.
Mas porque o Linux é gratuito?
Linus Torvalds, quando desenvolveu o Linux, não tinha a intenção de
ganhar dinheiro e sim fazer um sistema para seu uso pessoal, que
atendesse suas necessidades. O estilo de desenvolvimento que foi
Página 21
adoptado foi o de ajuda colectiva. Ou seja, ele coordena os esforços
colectivos de um grupo para a melhoria do sistema que criou. Milhares
de pessoas contribuem gratuitamente com o desenvolvimento do Linux,
simplesmente pelo prazer de fazer um sistema operacional melhor.
Licença GPL
O Linux está sob a licença GPL, permite que qualquer um possa usar os
programas que estão sob ela, com o compromisso de não tornar os
programas fechados e comercializados. Ou seja, você pode alterar
qualquer parte do Linux, modificá-lo e até comercializá-lo, mas você não
pode fechá-lo (não permitir que outros usuários o modifiquem) e vendêlo.
GNU
Mas a história do Linux não termina por aqui. É necessário também
saber o que é GNU. GNU é um projecto que começou em 1984 com o
objectivo de desenvolver um sistema operacional compatível com os de
padrão Unix. O Linux em si, é só um kernel. Linus Torvalds, na mesma
época que escrevia o código-fonte do kernel, começou a usar programas
da GNU para fazer seu sistema. Gostando da ideia, resolveu deixar seu
kernel
dentro
da
mesma
licença.
Mas, o kernel por si só, não é usável. O kernel é a parte mais importante,
pois é o núcleo e serve de comunicador entre o usuário e o computador.
Por isso, com o uso de variantes dos sistemas GNU junto com o kernel, o
Linux
se
tornou
um
sistema
operacional.
Mas você pode ter ficado confuso agora. O que é o Linux então? O que é
GNU? Simplesmente, várias pessoas uma versões modificadas dos
sistemas GNU, pensando que é o Linux em si. Os programadores que
trabalham com ele, sabem que o Linux, é basicamente o kernel,
conforme já foi dito, mas todos, chamam esse conjunto de Linux (há
quem
defenda
o
uso
de
GNU/Linux).
Finalizando, o projecto GNU é um dos responsáveis pelo sucesso do
Linux, pois graças à “mistura” de seus programas com o kernel
desenvolvido por Linus Torvalds, o Linux vem mostrando porque é um
sistema operacional digno de habilidades insuperáveis por qualquer outro
sistema.
Página 22
Comandos básicos do Linux
Alguns comandos que você verá nesta página, equivalem aos utilizados
no DOS. Se você não conhece o DOS, clique aqui e veja um tutorial que
ensina a trabalhar com ele. No entanto, saiba que conhecendo ou não o
DOS, você poderá estranhar bastante os comandos do Linux ou
simplesmente não ter dificuldade alguma. Tudo depende de você.
Essencialmente, trabalhar com o Linux é uma questão de prática e logo
você ficará bem familiarizado.
[root@localhost /root]#
Você sabe o que significa isso aí em cima? O Linux usa uma estrutura
diferente de organização em seu sistema de arquivos*. Por isso, em vez
da sua pasta ser c:arquivospastaarquivo.txt, simplesmente no Linux,
pode ser /home/pasta/arquivo.txt. Para você entender melhor, vamos
analisar o prompt do Linux:
[root@localhost /root]#
usuário - directório / local (PC ou rede) - modo usuário
Usuário: No Linux, cada pessoa precisa ter uma conta de usuário.
Uma conta de usuário indica um nome e senha que devem ser
utilizados para se conectar no sistema. Se o nome escolhido por
você for, por exemplo, Fulano, em vez de root aparecerá fulano no
lugar.
Usuário "root" (ou super-usuário): é quem tem acesso irrestrito ao
sistema. Quando você se conecta como usuário root, você poderá
fazer qualquer operação no Linux, como alterações de configuração
do sistema, apagar ou modificar arquivos importantes, etc. Por isso,
se conectar como root é muito arriscado, já que você pode causar
algum dano sem querer.
Tendo isso em mente, nunca se conecte como root a não ser que
seja mesmo necessário. Para usar o Linux no dia-a-dia, conecte-se
com uma conta de usuário comum, assim não haverá risco de
danos. Também não se esqueça de guardar muito bem a senha do
root, pois se alguém descobrir, poderá destruir o sistema.
localhost /root : é o local (directório) onde você está no momento
(/root é padrão e equivale a C: no DOS).
Modo usuário: indica quem está usando a máquina, se um usuário
comum ou o super-usuário. Veja:
# - modo super-usuário
Página 23
$ - modo usuário
* Sistema de arquivos é um local onde os arquivos são directórios
são guardados. Consiste em uma área formatada em um dispositivo
como um HD. Exemplos de sistema de arquivo: ext2/ext3 (Linux),
FAT (DOS/Windows), NTFS (Windows NT/2000/XP), etc.
LINHA DE COMANDO
Antes de vermos os comandos em si, é necessário saber o que é
Linha de Comando. Trata-se de um modo de trabalho com
caracteres, onde você digita o comando e o executa pressionando
"Enter" no teclado. Mas você também pode usar uma linha de
comando em um ambiente gráfico. Se você usar o KDE por
exemplo, pode procurar o aplicativo KDE Terminal para abrir uma
janela com linha de comando. Mas isso vária de acordo com a
versão do seu Linux. Mesmo assim não se preocupe, pois a linha de
comando é muito fácil de se achar.
OS COMANDOS BÁSICOS
Vejamos agora os comandos básicos do Linux, seguidos de uma
breve explicação:
• (qualquer comando) --help: mostra o HELP (arquivo de ajuda) do
comando que você digitou;
• ls: lista os arquivos e directórios da pasta (DIR no DOS);
• clear: limpa a tela (CLS no DOS);
• cd ___ : entra em um directório (igual ao DOS);
• cd: vai directo para o directório raiz do usuário conectado;
• abre uma linha de comando "livre" , onde você pode digitar um
comando extenso (digite q e clique em entra para sair);
• pwd: mostra o directório inteiro que você está;
• cat: igual ao TYPE no DOS;
• df: Mostra as partições usadas ou livres do HD;
• |more: lista o arquivo com pausa de linha em linha (exemplo: CAT
leiame |more)
• |lpr: imprime o arquivo listado;
• free: mostra a memória do computador (MEM no DOS);
• shutdown: desliga o computador:
• shutdown -r now : reinicia o computador;
• shutdown -h now : desliga o computador (só desligue quando
aparecer escrito "system halted" ou algo equivalente);
• OBS: O NOW pode ser mudado. Por exemplo: shutdown -r +10 e o
sistema irá reiniciar daqui a 10 minutos).
• Reboot: reinicia o sistema instantaneamente (pouco
recomendável, preferível shutdown -r now). Use somente em
emergências;
• startx: inicia o X-Windows (interface gráfica) do Linux;
Página 24
• kde: Inicia a Interface gráfica K Desktop Enviroment;
• mkdir: cria um diretório (MD no DOS);
• rmdir: destrói um diretório VAZIO (RD no DOS);
• rm: apaga um arquivo (DEL no DOS);
• rm –r: apaga um diretório;
• who: mostra quem está usando a máquina;
• wc: conta a quantidade de:
• wc -c arquivo : quantidade de bytes
• wc -w arquivo : quantidade de palavras
• wc -l arquivo : quantidade de linhas;
• date: mostra data e hora;
• telnet: inicia a TELNET;
• m: abre o MINICOM e permite configurar o modem;
• type: explica um determinado arquivo do sistema;
• file: descreve um determinado arquivo;
• find / - name ____ : procura arquivo "____";
• useradd nome_do_novo_usuário: cria uma nova conta usuário;
• passwd nome_do_usuário: cria ou modifica a senha do usuário;
• userdel -r nome_do_usuário: apaga um usuário;
• su: passa para o superusuário (perceba que no prompt irá mudar o
$ pelo #);
• sndconfig: permite configurar a placa de som;
• TAR: arquivo para criar Backups:
• TAR –c: cria
• TAR –x: restaura
• TAR –v: lista cada arquivoTAR –t: lista os arquivos de backups;
• write: escreve mensagens para outro usuário em rede;
• mv: move arquivos;
• linuxconf: configuração do Linux;
• alias: possibilita a criação de comandos simples;
• &: coloca o comando desejado em background, ou seja, trabalha
enquanto você faz outra coisa no computador;
• ps: relata os processos em execução;
• kill: encerra um ou mais processos em andamento;
• history: mostra os comandos que o usuário já digitou;
• lpr: imprime um arquivo (exemplo: lpr arquivo);
• lpq: mostra o status da fila de impressão;
• lprm: remove trabalhos da fila de impressão;
• mtools: permite o uso de ferramentas compatíveis com DOS. Após
digitar o comando, você verá que todo comando do DOS terá um M
na frente. Isso é normal.
Página 25
Explicar os processos de instalação e
configuração de um S. O. Open Source
O sistema operativo Ubuntu Lucid Lynx é cada vez mais usado pelos
utilizadores pelo facto de ser um sistema limpo, muito seguro, bastante
prático e actualmente bastante interligado às redes-sociais. Actualmente,
depois de instalar o novo Ubuntu 10.04 Lucid Lynx, tem logo disponível
todas as aplicações que um utilizador normal precisa, desde aplicações
de escritório (como processadores de texto, equivalente ao Word, e
folhas de cálculo, semelhante ao Excel), a aplicações de Internet
(Firefox, messengers, e-mail), aplicações de desenho e edição de
imagem e, claro, aplicações de multimédia para ouvir música e ver
filmes. Todas essas aplicações começam a ter uma certa interligação
que proporcionam um bem estar superior ao utilizador, pois tudo é
automático: praticamente não é preciso instalar drivers, existem
aplicações excepcionais para Twitter e Facebook e, depois de algumas
pequenas configurações fica com um sistema operativo Excelente.
Este artigo tem como objectivo explicar a qualquer utilizador como pode
instalar o Ubuntu 10.04 Lucid Lynx. As explicações são pormenorizadas
e fraccionadas por secções permitindo explicar a qualquer utilizador, seja
ele já minimamente experiente em Ubuntu ou completamente novo para
este sistema operativo. O artigo começa por descrever os pré-requisitos
ao nível de Hardware que o Ubuntu exige, de seguida explica como deve
proceder se quiser manter o seu Windows e não perder os dados e por
fim explica todo o processo de instalação do Ubuntu e particionamento
dos discos. No final do artigo ainda ainda tem um bónus de dicas que
são importantes depois de instalar o Ubuntu.
Pré-Requisitos
Antigamente, o Ubuntu era um sistema básico, demasiado simplista e por
isso exigia muito pouco dos computadores. Actualmente a enorme
quantidade de funcionalidades que tornam toda a utilização do Ubuntu
automática e bastante bonita visualmente fazem com que os requisitos
ao nível de hardware sejam um pouco superiores.
Página 26
Devido a esse facto, torna-se imprescindível apresentar esta secção no
artigo de modo a posicionar você, futuro utilizador do Ubuntu, dentro da
normalidade que é o Ubuntu. Sendo assim, é garantido que se seguir os
requisitos recomendados terá um sistema bastante estável e rápido
(atenção: estes requisitos descritos não são oficiais, são apenas opinião
minha fundamentada numa vasta experiência neste sistema operativo).
Requisitos Mínimos:
Como requisitos mínimos, o Ubuntu necessita, ao nível de hardware, das
configurações apresentadas a seguir. Deve ter em atenção que estes
requisitos são mesmo mínimos, o que significa que o seu Ubuntu
certamente não funcionará com a fluidez normal de um computador mais
actual.




Processador: 700MHz;
Memória RAM: 512MB;
Disco: 4GB;
Placa Gráfica: qualquer placa gráfica (funcionamento do sistema
de efeitos visuais poderá estar condicionado conforme a placa
gráfica)
Requisitos Recomendados:
Preferencialmente, o seu computador deverá ter pelo menos as
características apresentadas a seguir. Tal como foi referido no início
desta secção, salvo raras excepções, se tiver um computador
equivalente ou superior a estas características, o seu Ubuntu irá
funcionar perfeitamente.




Processador: 1.2GHz;
Memória RAM: 1GB;
Disco: 10GB (espaço suficiente praticamente para ter todos os
programas que quer, nunca precisei de mais!)
Placa Gráfica: De preferência nVidia (porque tem bons drivers do
próprio fabricante!) e, para ter todas as capacidades dos efeitos
visuais deve ter no mínimo uma Geforce6, no entanto, o
funcionamento de uma geforce4, chega para os efeitos visuais
comuns. Quanto à ATI, recomendo no mínimo um R300, mas
tenha em atenção que esta marca de placas gráficas tem muitos
problemas de drivers para Ubuntu!. Quanto aos utilizadores da
excelente placa gráfica integrada Intel, qualquer uma superior à
GMA 3000 terá bons resultados, aliás nem será preciso instalar
drivers!
Página 27
Se tem o Windows instalado e ainda não tem as partições prontas
para instalar o Ubuntu, recomendo desde já que deixe o seu computador
a desfragmentar. Aliás, o melhor será mesmo você desfragmentar o seu
computador mais que uma vez. Porquê? Simplificando a teoria, o
Windows quando grava ficheiros no disco, grava-os de uma forma
dispendiosa, ou seja, por todo o disco, pondo os ficheiros espalhados
pelos vários sectores do seu disco. Ora, ao criar as partições, estas vão
partir o disco o que poderá resultar em perda de dados, principalmente
todos esses ficheiros espalhados pelo disco.
O que a desfragmentação vai fazer é organizar e juntar todos esses
ficheiros espalhados pelo disco, diminuindo substancialmente a
probabilidade de perder dados. Sendo assim, utilize o seu programa
preferido do Windows para desfragmentar o disco enquanto que lê o
resto do artigo. De salientar que mais à frente, na criação das partições,
deverá ter espaço suficiente para as criar ou, obviamente, vai perder os
dados, por isso, se necessário, faça limpeza do seu disco por exemplo
através de Backups! Como existe sempre uma pequena probabilidade
de perder dados ao criar partições, é aconselhável fazer Backups de todo
o disco.
Página 28
Faça download do Ubuntu Lucid Lynx!
Enquanto que lê este artigo e desfragmenta o seu disco, convém
também pôr o seu computador a fazer download da imagem do Ubuntu
para depois gravar num CD ou numa pen. Como o download é grande,
convém que você ponha fazer o mais rápido possível para depois não ter
de esperar. Das várias versões do Ubuntu existentes, apresento as duas
principais versões de seguida. Uma é para computadores com
arquitecturas 32Bits e outra é para arquitecturas 64Bits. Assim, conforme
o seu computador, clique num dos links a seguir para fazer download:


Ubuntu 10.04 Lucid Lynx 32Bits;
Ubuntu 10.04 Lucid Lynx 64Bits.
Se achar que o download está a ser demasiado lento, visite o site oficial
do Ubuntu e escolha um servidor mais perto de sua casa, seleccionando
a localização adequada.
Para além destas duas formas anteriores, pode também obter o CD do
Ubuntu em sua casa. Este serviço está disponível para qualquer parte do
mundo e é totalmente gratuito. Apenas tem um pequeno problema:
demora no mínimo cerca de 3 a 4 semanas. Se estiver disposto a
esperar este tempo, então visite este site e peça já o seu CD!
Página 29
Verifique o MD5
No final da transferência, convém que você confirme se o download foi
bem sucedido e sem erros. Para tal, verifique o MD5 do ficheiro que fez
download. De seguida apresenta-se os MD5 das duas versões
disponibilizadas acima que deverá comparar com o MD5 dos seus
ficheiros:
3e0f72becd63cad79bf784ac2b34b448
ubuntu-10.04-desktopamd64.iso
d044a2a0c8103fc3e5b7e18b0f7de1c8 - ubuntu-10.04-desktop-i386.iso
Grave o Ubuntu num CD ou numa pen USB!
Depois de ter feito download da imagem do Ubuntu, deverá gravá-la ou
num CD ou numa pen drive. Se gravar num CD, deverá utilizar um
programa próprio de gravação de imagens (atenção, não insira o ficheiro
.iso dentro de um CD, mas sim utilize a opção de gravação de imagens
do programa que tiver a utilizar!).
A minha recomendação é utilizar uma pen (com tamanho mínimo de um
1GB). Assim, evita o gasto de um CD e o processo de instalação é muito
mais rápido. Se desejar gravar a imagem numa pen drive, recomendo a
leitura deste artigo que explica todos os pormenores desse processo:
Página 30
Configure a BIOS
Actualmente os novos computadores vêm com a BIOS programada para
arrancar primeiro por CD e por pen USB antes do disco, por isso, em
princípio, o seu computador irá arrancar automaticamente pelo CD ou
pela pen, conforme a maneira que escolheu para instalar o Ubuntu. No
entanto, o seu computador pode não arrancar por nenhum deles, nesse
caso, deverá configurar a BIOS para que arranque da maneira que
precisa para instalar o Ubuntu.
Existe uma infinidade de BIOS diferentes e seria preciso muito
mais que artigo para abordar todas os aspectos necessários para
configurar uma BIOS para arrancar ou pelo CD ou pela pen. Por
esse motivo, isso não é abordado neste artigo, no entanto,
recomendo esta página que provavelmente o ajudará (página em
inglês):
No caso de não ajudar, procure no Google pelo seu modelo, como
conseguir mudar a BIOS da sua motherboard para arrancar pela pen ou
pelo CD do Ubuntu.
Página 31
Arranque do Ubuntu pelo CD ou pela pen
Depois de ter a BIOS configurada e o CD ou a pen prontos, reinicie o
computador para ele arrancar ou pelo CD ou pela pen. Se tudo correr
bem, irá aparecer uma janela semelhante à seguinte ou deverá carregar
imediatamente na tecla ESC (ou escape):
Caso não tivesse carregado no escape, o Ubuntu iria arrancar sozinho
para o modo de instalação do Ubuntu, onde faria as várias perguntas
para proceder à instalação. No entanto, esse modo não é tão bom
quanto o que é descrito neste artigo, por dois motivos: Não permite a
escolha da língua portuguesa nas perguntas e não permite estar a
instalar o Ubuntu e a navegar na Internet, por exemplo.
Caso não tivesse carregado no escape, o Ubuntu iria arrancar sozinho
para o modo de instalação do Ubuntu, onde faria as várias perguntas
para proceder à instalação. No entanto, esse modo não é tão bom
quanto o que é descrito neste artigo, por dois motivos: Não permite a
escolha da língua portuguesa nas perguntas e não permite estar a
instalar o Ubuntu e a navegar na Internet, por exemplo.
Página 32
Ao seleccionar esta opção, o Ubuntu irá carregar-se na memória e então,
depois de algum tempo de espera, o utilizador não só poderá instalar o
novo Ubuntu Lucid Lynx, mas também poderá experimentá-lo, verificar
se tudo é compatível e ir à Internet, a este site, para continuar a
instalação descrita neste artigo!
Página 33
Particionamento do disco
Noções básicas
Se só tem o Windows instalado, terá de reduzir a partição do Windows
para criar algumas outras partições necessárias para o perfeito
funcionamento do Ubuntu. Essa redução terá de ser inferior ao espaço
livre, se não, obviamente, perderá dados. Também deverá ter noção que,
tal como refiro no início deste artigo, deverá desfragmentar a partição
que irá reduzir para não perder os dados.
Quanto às partições necessárias para o Ubuntu, o meu
conselho é utilizar 3 partições para o Ubuntu, no entanto, caso não
seja possível, poderá prescindir de uma delas, a chamada Swap.
Esta minha recomendação deverá ser seguida de forma a ter um
Ubuntu com uma organização excelente que permitirá num futuro
poder actualizar para novas versões do Ubuntu sem perder dados,
nem sequer ter de fazer cópias de segurança! Isso será possível
pois irá ter uma partição dedicada aos seus dados e às
configurações do Ubuntu. Assim, quando quiser instalar outro
Ubuntu, ele irá automaticamente buscar essas configurações a essa
partição
Tamanhos das partições do Ubuntu
Para além da partição do próprio Ubuntu e da partição dos dados, é
aconselhável que faça também uma partição “Swap“, que servirá como
ajuda da memória RAM aquando de possíveis excessos de memória
usada (é também importante para o Ubuntu hibernar). Esta partição
deverá ter o dobro do tamanho da RAM que o seu computador tem, no
entanto, não acho necessário a criar uma partição superior a 2GB. Como
no meu caso tenho 1GB de RAM, neste artigo a partição da SWAP irá ter
2GB de espaço. Esta partição, nos computadores novos que têm mais de
1GB de memória, poderá ser abdicada em prol de mais espaço para os
seus dados.
Quanto à partição do Ubuntu, normalmente denominada, partição da
“Raiz”, esta deverá ter o tamanho referido nos pré-requisitos. No mínimo
deverá ter 4GB. A minha recomendação é 10GB, pois assim terá espaço
para instalar muitos programas. Por exemplo eu nunca tive problemas de
Página 34
espaço e instalo muitos programas para poder fazer artigos para este
blog.
Quanto à partição dos seus dados, denominada “home”, esta deverá ter
o espaço necessário para os seus dados (músicas, documentos, filmes,
etc.).
Normalmente o que faço é o seguinte: reduzo o máximo de espaço
possível da partição do Windows, crio a partição da Raiz de 10GB, crio a
partição SWAP conforme a memória, normalmente de 2GB, e o restante
fica para a “home”.
Reduza a partição do Windows!
Para começar, como ainda não tem nenhuma partição e precisa de
alocar espaço do disco para criar as novas partições, vai reduzir a
partição do Windows. Novamente, tenha em atenção que pode perder
dados nesta parte do procedimento, por isso, desfragmente o disco e
faça cópias de segurança da informação importante.
Para fazer o particionamento, será utilizado o programa Gparted que já
está instalado no Ubuntu que você tem actualmente em memória. Esse
programa está disponível em Sistema→Administração→GParted.
Todas as mudanças que fizer só serão aplicadas quando clicar no botão
“Aplicar”, até lá poderá fazer e refazer partições à vontade.
Depois de abrir o Gparted, seleccione o disco a particionar (se tiver mais
que um poderá distingui-los pelo tamanho) e clique no botão
“Redimensionar/Mover a partição seleccionada“. Deverá reduzir a
partição o suficiente para criar as outras partições. No meu caso, irei
fazer uma partição de 10GB para a raiz, uma de 2GB para a SWAP e
outra de 43GB para a “Home”, totalizando 55GB para o Ubuntu e 20GB
Página 35
porque sei que tenho menos de 20GB de informação no disco. Para
definir o espaço livre que quer no final basta escrever o valor (em
MegaBytes) na caixa de texto intitulada “Espaço Livre Subsequente
(MiB)“. Pode aproveitar e etiquetar a partição para saber, quando aplicar
as mudanças, se fez tudo bem.
Crie as partições necessárias para o Ubuntu!
Agora que tem espaço para criar partições, seleccione a secção
intitulada “Sem alocação” e clique no primeiro botão da barra, tal como
na imagem seguinte, intitulado “Criar uma nova partição no espaço
por alocar seleccionado“.
Na nova janela, deverá escolher o tamanho que quer para o Ubuntu, ou
seja, para a partição da Raiz do Ubuntu. Para além de definir o tamanho
dela na caixa de texto “Novo Tamanho (MiB)“, deverá também definir o
“Sistema de Ficheiros” como Ext4! Depois de definir esses dois valores,
clique no botão “Adicionar“. Sugiro também que dê um nome a esta
partição, apenas para no final ter noção de que fez tudo correctamente.
No meu caso, dei-lhe o nome de “Raiz”.
Página 36
De seguida, volte a seleccionar a secção cinzenta denominada “Sem
alocação” e clique novamente no primeiro botão da barra para criar mais
uma partição. Neste caso vai criar a partição SWAP, que não é
estritamente necessário ter, mas que eu recomendo a ter! Sendo assim,
tal como disse no início desta secção do artigo, é recomendável que esta
partição tenha o dobro da RAM, no entanto, penso que não seja preciso
mais de 2GB. Pensando exactamente dessa maneira, no meu caso, criei
uma partição de 2GB, tal como pode ver na imagem a seguir, onde
escrevi o valor 2000 na caixa de texto “Novo Tamanho(MiB)“. Depois de
definir o tamanho, tem de definir o “Sistema de Ficheiros” para o tipo
Linux-Swap. De salientar que voltei a pôr o seu nome no campo
Etiqueta, neste caso “Swap”.
Por fim, volte a seleccionar a secção com o nome “Sem alocação” e
clique novamente o no primeiro botão para definir o tamanho da partição
da “home”. Como já estão todas as partições feitas excepto esta, não
precisa de definir o seu tamanho pois o Gparted define automaticamente
o máximo possível. Apenas precisa de definir o “Sistema de Ficheiros”
para o tipo ext4! Sugiro que dê também um nome a esta partição.
Depois deste processo todo, o Gparted deverá ter uma lista de partições
semelhante à seguinte:
Página 37
No final, depois de ter a certeza de todas as partições criadas, deverá
clicar no botão “Aplicar todas as Operações” (o botão com a imagem
de um visto) de modo a proceder ao particionamento. Ao clicar nesse
botão, ser-lhe-á perguntado se tem a certeza que quer realmente criar
essas partições.
início e deverá esperar até ao fim, sem fazendo qualquer interrupção de
modo a não haver erros no processo.
Instalação do Ubuntu
Agora que tem as partições prontas a serem utilizadas, pode proceder à
instalação do Ubuntu. Para tal, dê duplo clique no ícone da área de
trabalho intitulado “Instalar Ubuntu 10.04 LTS“
Na nova janela, deverá seleccionar a linguagem pretendida que em
princípio será seleccionada automaticamente pois já a escolheu aquando
do arranque do Ubuntu pelo CD ou pen. Clique no botão “Avançar” para
prosseguir.
Página 38
Na janela seguinte, deverá escolher a sua localização geográfica de
modo a ter o fuso horário correcto. Depois de seleccionar a localização,
volte a clicar no botão “Avançar“.
No passo 3, deve seleccionar o teclado correcto. Este passo é muito
importante pois existem muitos modelos de teclados e muitos deles têm
poucas diferenças mas que são importantes no dia-a-dia. Por isso, deve
utilizar a caixa de texto que se encontra na parte inferior da janela para
testar o teclado. Experimente escrevendo símbolos do teclado,
nomeadamente o ‘€’, o ‘@’, ‘*’ e as letras com acentos (‘Á’,'à’ e ‘ç’). No
caso de o teclado não ser exactamente o que o Ubuntu seleccionou por
si, então seleccione a opção “Adivinhar o mapeamento de teclas” e
responda às questões pedidas pelo Ubuntu. Depois de ter o teclado bem
definido, clique no botão “Avançar“.
Página 39
No passo 3, deve seleccionar o teclado correcto. Este passo é muito
importante pois existem muitos modelos de teclados e muitos deles têm
poucas diferenças mas que são importantes no dia-a-dia. Por isso, deve
utilizar a caixa de texto que se encontra na parte inferior da janela para
testar o teclado. Experimente escrevendo símbolos do teclado,
nomeadamente o ‘€’, o ‘@’, ‘*’ e as letras com acentos (‘Á’,'à’ e ‘ç’). No
caso de o teclado não ser exactamente o que o Ubuntu seleccionou por
si, então seleccione a opção “Adivinhar o mapeamento de teclas” e
responda às questões pedidas pelo Ubuntu. Depois de ter o teclado bem
definido, clique no botão “Avançar“.
esteve a criar na secção anterior deste artigo. Quando o Ubuntu
apresentar as partições, deverá seleccionar as devidas partições e definir
os seus atributos, clicando no botão “Modificar…“:

A partição com o tipo de ficheiros ext4 com 10GB de tamanho, é a
partição do Ubuntu e seus programas. Então, seleccione-a e clique
no botão “Modificar…“. É-lhe apresentado uma janela onde
deverá preencher da maneira seguinte:
o Tamanho da nova partição em megabytes (1000000
bytes): manter o valor;
o Utilizar como: seleccione a opção “Sistema de ficheiros
Ext4 com journal”;
o Formatar a partição: Ponha o visto!
o Mount point: nesta parte deve seleccionar a opção “/”, que
indica que esta partição será a raiz do Ubuntu.
Depois disso, clique no botão OK.
Página 40

A partição com o tipo de ficheiros ext4 mas com o tamanho diferente de
10GB, ou seja, a partição que criou para home, deverá ser modificada
para o seguinte:
o Tamanho da nova partição em megabytes (1000000 bytes):
manter o valor;
o Utilizar como: seleccione a opção “Sistema de ficheiros Ext4
com journal”;
o Formatar a partição: Ponha o visto caso tenha criado esta
partição. No caso de estar apenas a actualizar o seu computador
para esta nova versão do Ubuntu, então não ponha este visto, de
modo a que o novo Ubuntu busque as várias configurações do
seu Ubuntu anterior;
o Mount point: nesta parte deve seleccionar a opção “/home”, que
indica que esta partição será a raiz do Ubuntu.
Depois disso, clique no botão OK.

Por fim, quanto à partição do tipo Swap, não precisa de modificar nada,
pois o Ubuntu sabe o que fazer com ela automaticamente.
No final deste procedimento, a lista de partições deverá ter as características
das partições semelhantes às da imagem acima. Depois de verificar se tudo
está correcto, clique no botão “Avançar“!
Página 41
O passo seguinte pede-lhe alguma informação pessoal. Deverá digitar o seu
Nome, o Utilizador, que servirá depois para fazer o login no Ubuntu, e a senha,
que deverá ser fácil de memorizar mas ao mesmo tempo complexa de modo a
que não possam entrar no seu sistema facilmente. Depois de preencher esses
dados, clique no botão “Avançar” para prosseguir ao passo seguinte.
O passo 7 serve para você, se quiser, migrar os seus documentos de outros
sistemas operativos para esta nova instalação do Ubuntu. Serve, por exemplo,
para passar os favoritos do seu Windows para o Firefox do seu novo Ubuntu.
Se quiser migrar algum desses dados listados, basta pôr um visto e clicar no
botão “Avançar“.
O passo final, o passo 8, serve para você rever todas as opções que escolheu
e, caso precise de uma proxy, permite defini-la. No caso de precisar de definir a
proxy, essas opções estão disponíveis através do botão “Avançado…“. No
caso de não precisar de proxy ou nem saber o que isso seja, então não se
preocupe e clique no botão “Instalar” para começar a instalação do Ubuntu.
Página 42
Enquanto a instalação está em processamento, pode navegar na Internet, ou
mesmo jogar algum jogo disponível por este Ubuntu no menu
Aplicações→Jogos.
Quando a instalação estiver concluída com sucesso, ser-lhe-á apresentada a
janela seguinte a pedir para reiniciar o Ubuntu para puder utilizar o seu novo
Ubuntu!
Configurações Pós-Instalação
Depois de ter o Ubuntu instalado, aconselho a instalar todos os codecs
necessários para poder ouvir quase qualquer tipo de música e de vídeo, bem
como qualquer ficheiro compactado que lhe possa aparecer. Para além disso,
este seu Ubuntu, ainda não tem a máquina virtual Java para poder abrir
determinadas aplicações desse tipo nem tem o Flash da Adobe para poder ver
vídeos do Youtube. Muitas outras dicas e recomendações poderá encontrar na
página referida a seguir que tornará o seu Ubuntu, num dos sistemas
operativos mais completos que poderá ter:
23 primeiros passos depois de instalar o Ubuntu Lucid Lynx
Página 43
Explicar os processos de Instalação e
configuração de dispositivos e device
drivers num S. O. Open Source
Device Drivers
Quase toda operação de sistema é mapeada para um dispositivo físico.
Com exceção do processador, da memória e de mais alguns poucos
elementos, toda e qualquer operação de controle de dispositivo é feita
por um código que é específico para o dispositivo que está sendo
acessado. Esse código é chamado device driver. Portanto, device drivers
são a parte do sistema operacional que gerência a comunicação com os
dispositivos. A figura a seguir ilustra bem essa definição.
Os device drivers têm um papel especial no relacionamento com o kernel
do Linux. Eles são os responsáveis por:
 Fazer um hardware específico responder a comandos bem
definidos vindos do sistema operacional;
 Esconder completamente da interface de programação os
detalhes de como o hardware funciona (evitando programação
em baixo nível - uso de portas);
 Aumentam a velocidade de I/O, porque eles geralmente são
otimizados;
 Gerenciam erros de hardware e software na comunicação;
 Permitem o acesso simultâneo ao hardware por vários
processos.
Página 44
O kernel deve ter embutido nele os principais device drivers, como por
exemplo aqueles que acessam o mouse e o teclado.
As actividades dos usuários são realizadas por meio de um conjunto de
chamadas padronizadas que são independentes do driver em específico.
Mapear essas chamadas padronizadas com o driver específico do
hardware é o papel do device driver. Essa interface é tal que os drivers
podem ser construídos separadamente do resto do kernel e então
"plugados" em tempo de execução quando solicitados.
Outro ponto importante sobre device drivers é que eles devem ser
responsáveis pelo mecanismo (ou funcionamento) e não pelo controle de
acesso aos dispositivos. Por exemplo, um driver deve fazer um disco
rígido externo ser acessado, mas quem controla as permissões de
acesso a esse disco não é o driver propriamente dito. Resumindo, o
programador de um driver deve se preocupar em fazer o dispositivo
funcionar e deixar para a aplicação a tarefa de controlar o uso do
dispositivo.
Apesar disso, muitos drivers são lançados juntamente com um software
que ajuda o usuário a configurar seu dispositivo. Estes softwares podem
variar desde simples opções que devem ser setadas na linha de
comando até sofisticadas telas de interface com várias opções de
customização possíveis.
Classificação de Drivers
Pode-se classificar os drivers em quatro categorias segundo o tipo de
dado que é gerenciado por eles e como eles o fazem. Os tipos são:




Character Drivers: Transmitem informações do usuário para o
dispositivo (ou vice-versa) byte a byte. Ex.: impressora (/dev/lp);
Block Drivers: Transmitem informação bloco por bloco. Ou seja,
os dados vão chegando e sendo armazenados num buffer e,
quando este está lotado, ocorre a transmissão. Ex.: Discos Rígidos
IDE (/dev/fd0);
Terminal Drivers: São drivers que, por exemplo, gerenciam
janelas de ambiente e o console;
Streams: Feitos para altas velocidade de tráfego de dados.
Página 45
Implementação e Instalação de Device Drivers
Implementar um driver não é uma tarefa tão simples. Por exemplo, ela
requer habilidade com programação em baixo nível (portas e
interrupções) e, para debugar um programa, não se pode usar debuggers
ou funções do C como printf. Para construir um driver, deve-se seguir os
passos abaixo:




Programar os arquivos fonte do driver, tendo especial cuidado com
a interface com o kernel;
Integrar o driver no kernel, incluindo na fonte do kernel chamadas
para as funções do driver;
Configure e compile o novo kernel;
Teste o driver escrevendo um programa de usuário.
A primeira tarefa para implementar o código fonte de um driver é
selecionar um nome que o identifique unicamente. No nosso caso,
suponha que o nome do driver seja yano. Considerando que o driver sejá
do tipo character driver, seu código fonte deverá fica na pasta
/usr/src/linux/drivers/char/yano.c,
e
seu
cabeçalho
em
/usr/include/linux/yano.h.
A segunda tarefa é implementar as funções. Nesse ponto, vale lembrar
que as funções da biblioteca padrão do C (stdio.h) não estão disponíveis.
Além disso, o tamanho da pilha é limitado e algumas operações com
ponto flutuante não podem ser realizadas.
Após escrever o código do driver, é necessário integrá-lo ao kernel. Para
isso, basta fazer os seguintes passos:




Adicione chamados do kernel para o novo driver;
Adicione o driver à lista de drivers;
Altere os scripts de compilação;
Compile o driver novamente.
Página 46
O kernel do Linux provê a API USB core, que gerencia grande parte da
complexidade. Ela possui uma espécie de canal chamado Endpoint, a
forma
mais
básica
de
comunicação
USB.
Os endpoints USB só transferem dados numa única direção. São elas:


Do computador para o dispositivo – OUT endpoint
Do dispositivo para o computador – IN endpoint
Os endpoints podem ser classificados quanto ao modo de transmissão de
dados. Suas categorias são:











Control – são usados para informações de configuração do próprio
dispositivo. Todo dispositivo USB possui um endpoint chamado
“endpoint 0”, usado pelo USB core para configurar o dispositivo em
“tempo de inserção”.
Interrupt – usados para transmitir pequenas quantidades de dados,
a cada vez que o computador pede algum dado ao dispositivo.
Estes endpoints foram primeiro método de transporte de dados para
teclados e mouses USB.
Bulk – estes endpoints são usados para transferir grandes
quantidades de dados. São normalmente bem maiores que os
“Interrupt endpoints”. São utilizados quando se necessita de uma
transferência de grande quantidade de dados sem perdas.
Utilizados em impressoras, dispositivos de armazenamento.
Isochronous – também pode transferir grande quantidade de dados,
mas não tem a garantia de transmissão de todos os dados como o
bulk endpoint. Entretanto, pode manter uma taxa de transferência
de dados constante. Mais usados em dispositivos de tempo real,
como dispositivos de áudio e vídeo.
Control e Bulk são utilizados para transferências assíncronas,
enquanto Interrpt e Isochronous são usados em transferências
síncronas.
Os endpoints USB são encapsulados em interfaces. É esta interface
que o USB core passa ao USB driver e que o USB driver utiliza para
fazer o devido controle.
As interfaces USB, por sua vez, são encapsuladas em
configurações. Um dispositivo USB pode ter várias configurações
alternando entre elas para mudar o estado do dispositivo.
Nos sistemas Linux, os device drivers são distribuídos normalmente
de três modos:
Um patch para uma versão específica de kernel;
Um módulo carregável;
Um script de instalação que aplica os patches apropriados.
O meio mais comum é o primeiro, através do patch para aquela versão.
Geralmente,
os
patches
são
aplicados
pelo
comando:
cd usr/src/linux ; patch –p1 < arquivo_patch
Página 47
Teste de Device Drivers
Quando for necessário realizar testes, caso não esteja disponível o
hardware correspondente ao device driver projetado, a idéia para o teste
é testar o fluxo das várias funções auxiliares nas baixas camadas e testar
os pontos de entrada do device driver. O código de teste verificará a
lógica e os fluxos de controle utilizados. Para os pontos de entrada do
dispositivo e funções auxiliares, substituímos por funções dummy (seria
uma função com o mínimo código necessário, apenas para atender ao
tipo de retorno exigido). Desta forma, nós estamos, no fundo, testando o
device driver com um hardware virtual, utilizando as funções dummy.
Caso o hardware já esteja disponível, podemos então remover as
funções dummy utilizadas na fase inicial de testes e os testes são feitos
utilizando o próprio hardware.
Entretanto, é importante efetuar os testes antes de conectar o hardware,
utilizando as funções dummy. Isto evita, por exemplo, que o dispositivo
seja conectado num sistema que eventualmente apresente algum bug,
atrapalhando assim o teste efetivo do device driver com o seu respectivo
dispositivo. Essas possíveis falhas seriam descobertas na fase inicial de
teste.
Página 48
Protecção e Segurança dos S. O. Open
Source
Segurança
Historicamente, o sistema operacional UNIX oferecia apenas
dois níveis de privilégio a usuários e administradores: um único
usuário principal, todo-poderoso, e qualquer número de usuários
sem privilégio algum. Os servidores de hoje, entretanto, executam
centenas de aplicativos diferentes, administrados por vários grupos
de pessoas - todas com variadas necessidades de acesso e níveis
de habilidades. Não é aconselhável oferecer a todos esses
administradores pleno acesso a cada servidor e aplicativo. Isso
geraria riscos à segurança e ao sistema, devido à possibilidade de
ocorrer
falha
humana.
A abordagem de dois tipos de privilégios também não inclui
desenvolvedores que precisam de privilégios especiais, seja para
instalar aplicativos, seja para usar certas ferramentas de depuração
no desenvolvimento e na produção. Os administradores do UNIX
tradicionalmente contornaram esses problemas através de utilitários,
desenvolvidos internamente ou por terceiros, que são executados
usando todos os privilégios e que permitem que determinados
usuários realizem outras tarefas além de seu nível de privilégio
normal. Como essas abordagens não são integradas fortemente ao
sistema operacional, tornam-se riscos à segurança, se têm defeitos.
Além disso, exigem que os clientes lancem mão de soluções
paliativas no sistema operacional - e inclusive ocultem ou desativem
os
recursos
incorporados.
A Sun sempre adotou uma abordagem à segurança diferente da de
seus concorrentes. Ela incorpora a segurança a cada produto, em
vez relegá-la a segundo plano. É esse exatamente o caso do Solaris
10, que oferece uma alternativa ao tudo ou nada do modelo do
superusuário todo-poderoso, integrando a segurança do privilégio
mínimo diretamente ao sistema operacional. Com essa nova
funcionalidade, o Solaris continua sendo o único sistema
operacional UNIX a oferecer esse modelo de segurança totalmente
integrado ao kernel e aos componentes associados, enquanto põe à
disposição total compatibilidade com o ambiente UNIX e os
aplicativos
existentes.
Cada aplicativo Solaris tem uma lista rigorosa de privilégios
específicos impostos pelo kernel, em vez de um único privilégio
Página 49
principal de todo-poderoso. Além disso, cada serviço Solaris foi
convertido para que use o mínimo de privilégios necessários,
tornando ainda mais difícil a invasão do sistema por hackers e a
exploração dos serviços. Os administradores podem atribuir grupos
de privilégios a funções que correspondem a seus processos de
negócios
para
diferentes
tipos
de
administradores
e
desenvolvedores.
O Solaris 10 também inclui inúmeras tecnologias de segurança para
complementar o privilégio mínimo, como o RBAC (controle de
acesso baseado em funções), para serviços individuais, a rede
segura IPSec (Internet Protocol Security) e uma ampla variedade de
serviços criptográficos que se adaptam, automaticamente, a cada
plataforma de hardware e a otimizam. Esses recursos de segurança
não exigem alterações nos aplicativos: os administradores podem
controlar, dinamicamente, os atributos de segurança dos aplicativos
existentes. E mais: os atributos de segurança do privilégio mínimo
são incorporados a todos os novos recursos do Solaris 10, incluindo
o DTrace, ZFS, Solaris Containers e PSH.
Página 50
Protecção
Depois que o ótimo site Linha Defensiva linkou em sua home page a
minha análise de segurança de seis meses do Windows
Vista (obrigado pelo link!), eu comecei a receber uma certa quantidade
de flame mail de fanboysde outros sistemas operacionais. Acho melhor
então dizer de uma vez no blog o que eu penso sobre comparações de
segurança entre os diversos sistemas operacionais e sobre processo de
desenvolvimento seguro.
Primeiro, acho que só faz sentido comparar a segurança oferecida por
um ou outro sistema operacional dentro de um contexto de uma
organização e de um cenário de uso específico. O sistema operacional
usado é só um dos diversos componentes de uma solução, e para avaliar
qual o sistema operacional mais adequado em termos de segurança é
preciso analisar os riscos existentes naquele cenário, entender o nível de
risco tolerável para a organização, e então ver qual sistema apresenta os
menores níveis de risco.
Ainda assim podemos ter situações onde sistemas operacionais
diferentes apresentam níveis de risco distintos, mas que estão todos
dentro do tolerável pela empresa. Neste caso os sistemas todos são
"seguros" o suficiente para serem utilizados, e determinar o mais seguro
passa a ser irrelevante.
Por isso eu acredito que é um verdadeiro atestado de ignorância alguém
dizer de forma genérica que "sistema x é mais seguro que o sistema y".
E talvez seja por isso que em geral essa afirmação venha
sempre acompanhada de outras bobagens ("sistema x não tem vírus",
blah blah blah). Nem eu nem a Microsoft fazemos afirmações deste tipo,
ainda mais com base no número de vulnerabilidades encontradas em um
sistema.
Agora, o número de vulnerabilidades encontradas serve sem dúvida para
avaliar a segurança do processo de desenvolvimento de um software.
Para relembrar, o objectivo de um processo de desenvolvimento seguro
é entregar um software sem vulnerabilidades para o usuário. E sabendo
que este é um objectivo na prática inatingível, procurar diminuir a
criticidade das vulnerabilidades eventualmente encontradas. Por isso o
número de vulnerabilidades encontradas é uma excelente métrica para o
seu processo de desenvolvimento seguro, e o número de
vulnerabilidades críticas encontradas é uma métrica ainda melhor.
O fato do Windows Vista ter menos vulnerabilidades críticas que o
Windows XP é portanto um testemunho do quanto o processo de
desenvolvimento seguro da Microsoft melhorou entre o Windows XP e o
Página 51
Windows Vista. Ainda mais se você levar em conta que o código do Vista
é bem maior e mais complexo do que o do Windows XP.
O problema de comparar estes números com os dos demais sistemas
citados no relatório é que nestes outros simplesmente não existe um
processo de desenvolvimento seguro. Nenhum esforço é feito
sistematicamente
para
entregar
um
software
com
menos
vulnerabilidades para o usuário. A abordagem usada tem sido a de
lançar o software de qualquer maneira, e depois tentar corrigir o mais
rápido possível as vulnerabilidades que forem encontradas (e o grande
número de vulnerabilidades torna o processo de correcção mais
lento). Como não existe um processo não existe como aprender com os
erros, não existe chance de uma melhoria gradual, e principalmente não
faz sentido falar em métricas.
A verdadeira pergunta que deve ser feita a luz deste relatório não é
portanto qual é o sistema operacional mais seguro, e sim o que o
fornecedor do sistema operacional está fazendo para reduzir o
número de vulnerabilidades encontradas. A Microsoft está fazendo
isso. Ao invés de tentar desqualificar os números, me diga o que o
fornecedor do seu sistema operacional preferido está fazendo.
Agora de volta à programação normal.
UPDATE: Corrigi a referência acima aos outros sistemas operacionais.
Estava me referindo somente aos sistemas incluídos na comparação
feita pelo Jeff Jones, e não a todos os sistemas em geral. Sim, eu
conheço o projecto OpenBSD, que foi o pioneiro de muitas das técnicas
que a Microsoft usa hoje. Porque outros sistemas não seguem o
exemplo do OpenBSD é o que eu não entendo.
Página 52
Fiabilidade dos S. O. Open Source
Para disseminar ainda mais o Linux nas pequenas, médias e
grandes empresas, os clientes e usuários do pinguim devem ter
certeza de que o desempenho e confiabilidade da plataforma Open
Source são superiores ou idênticas aos das tecnologias
proprietárias existentes no mercado de hoje. A Microsoft está
tentando convencer as pessoas de que o Windows supera o Linux,
apesar dos anos de experiência demonstrarem o contrário.
AFIRMAÇÃO: As plataformas proprietárias apresentam melhor
desempenho e confiabilidade que o Linux e o OSS (software livre).
OS FATOS:



Em uma recente pesquisa da revista Information Week Research,
41% dos 281 profissionais de TI das empresas que utilizam
software open source. Outros 42% declaram a utilização de
bancos de dados de produção desenvolvidos com software livre e
ainda outros 33% estão pensando em utilizar Linux e Open Source
em seus bancos de dados.
De acordo com esta mesma pesquisa de InformationWeek, o Linux
predomina como software open source mais utilizado no momento.
Cerca de 70% dos 420 profissionais de TI já usavam o sistema do
pinguim e esse contingente era de 56% um ano atrás. 82% das
287 empresas que executam o Linux usam o sistema
principalmente em servidores web ou de intranet. O
desenvolvimento de aplicativos, o gerenciamento de bancos de
dados e a hospedagem de e-mail e mensagens também são
predominantes neste ambiente corporativo de servidores. Três
quartos destes profissionais que declaram usar Linux em
servidores, o fazem pelo desempenho e confiabilidade oferecidos
pelo sistema operacional.
O primeiro indicador de desempenho do SuSE Linux Enterprise
Server 9 e IBM DB2 Universal Database Express Edition, definiu
um novo recorde mundial para o melhor desempenho de preço em
U$ 1,61/tpmC (transações por minuto) em um servidor HP
ProLiant. Este resultado demonstra não só a capacidade do SuSE,
Página 53



mas do Linux em gerenciar requisitos corporativos de clientes com
um alto desempenho e baixo custo.
Um outro recorde mundial de baixo custo foi definido pela Oracle,
NEC e Intel. Em um servidor com 32 CPUs Intel Itanium II, com
SuSE Linux Enterprise Server 9 de 64 bits da Novell, Oracle
Database 10g. Esta super máquina é 18% mais rápida e 22% mais
econômico que o Microsoft SQL Server Enterprise Edition no
Windows Server 2003 Datacenter Edition.
Testes realizados pela IT Week Labs em 2003 indicam "que a
versão mais recente do arquivo Samba de código-fonte aberto e
software de servidor de impressão ampliou a lacuna de
desempenho que a separa da alternativa comercial do Windows.
Os gerentes de TI afirmam que o melhor desempenho do Samba
indica que ele pode utilizar servidores mais econômicos do que
seria possível com o software Windows. E se eles executam o
Samba em um ambiente totalmente de código-fonte aberto, como
no Linudoj2x, podem eliminar os custos de licenças de servidor
Windows".
Em meados de Outubro de 2004, uma pesquisa realizada pena
NetCraft
(http://www.newsfactor.com/story.xhtml?story_id=27381)
revelou que o web server Apache ainda é a plataforma de
servidores Web dominante, com um total de 37,6 milhões de
instalações, seguido do IIS com 11,7 milhões
Página 54
Partilha de informação e comunicação
entre computadores nos S. O. Open
Source
Partilha de informação
Entramos já a algum tempo na era da informação, e isso é
uma verdade incontestável. É fato também que o mundo é movido
por esta.
Partindo desse princípio, sabendo da extrema importância que a
informação exerce sobre tudo e sobre todos, surge uma dúvida.
Porque muitas pessoas ainda relutam em compartilhar informação?
Infelizmente a maioria das pessoas ainda olha essa filosofia como
perda de espaço no mercado de trabalho. Ao contrário, quando se
compartilha o conhecimento, a equipe cresce como um todo, e isso
é sem dúvida bom para todos. Uma equipe eficiente é uma equipe
empregada.
Ao compartilhar, você está aumentando o campo de dúvidas e
ideias em torno do assunto. A tendência nesse caso é o
crescimento.
Existem óptimas iniciativas de pessoas e empresas nesse sentido.
O movimento Open Source é uma delas, onde o Linux é um dos
seus grandes representantes. Um grupo de pessoas espalhadas
pelo mundo, que se ajudam implementando novos pacotes e/ou
melhorando os já existentes, apenas pelo prazer de poder ajudar.
Uma paixão que ganha forma em um sistema operacional seguro e
eficiente e de vários softwares com os mais variados usos.
Junto ao Open Source podemos notar várias ferramentas que
visam a partilha de informações e conhecimento, como WordPress(
Gerencia de conteúdo ), PhpBB
( Fórum), Groupware (
Gerencia de equipes e projectos ), entre outras.
Página 55
Comunicação
A comunicação entre processos (do inglês: Interprocess
Comunication ou IPC), é o grupo de mecanismos que permite aos
processos em execução a transferirem informação entre si.
O OpenSolaris fornece quatro facilidades de comunicação entre
processos (4). Essas facilidades permitem aos processos e threads
compartilhar dados, trocar informações entre si, e sincronizar o
acesso à recursos compartilhados. O desenvolvimento do sistema
de comunicação entre processos (IPC) iniciou nas primeiras versões
do UNIX System V, da AT&T. Posteriormente um sistema
fornecendo as mesmas funcionalidades surgiu nos padrões POSIX.
Por este motivo o openSolaris possui tanto o sistema de IPC do
System V quanto o do padrão POSIX. A seguir veremos os tipos de
comunicação
entre
processos
disponíveis
actualmente.
Página 56
Como serão os S. O. Open Source na
década 2020





Valor para o acionista como estratégia : Na minha opinião, a mais
infeliz das idéias. Como diz o artigo: “valor para o acionista deve ser
consequência, e não uma estratégia.” Lembro-me de um artigo do
professor Mintzberg escreveu no final de 2007 em que ele afirmava
que enquanto as empresas não se conscientizassem de que elas
faziam parte de uma comunidade e que suas ações afetavam e eram
afetadas por esse ambiente, não conseguiríamos evitar a catástrofe
que estava por vir. A resposta a essa estratégia foi a maior crise
financeira desde 1929;
TI como comoditie : O assunto do momento em termos de tecnologia
chama-se Cloud Computing. Isso tem a ver com o sonho de todo
administrador de querer trabalhar apenas com custos variáveis. O
artigo apresenta uma visão interessante de que essa onda teve início
com o Bug do milênio que obrigou a ter uma atenção muito grande
com os sistemas legados onerosos;
Aumento do poder do consumidor : Em 2006, a revista “The
economist” elegeu o consumidor como a personalidade do ano. Tem
tudo a ver com uma série de evoluções tecnológicas e sociais que
fizeram com que a voz do cliente ficasse cada vez mais alta. Tal fato é
potencializado pelo crescimento veloz das redes sociais e o
surgimento da geração Y;
Gestão de risco empresarial : O 11 de setembro de 2001 mudou muita
coisa nesse campo. Apenas para lembrar, haviam empresas que
funcionava em uma das torres e possuia seu backup na outra torre.
Esse acontecimento fez com que fossem revisadas várias normas
nesse campo. Uma delas é a necessidade de as empresas
financeiras adotarem procedimentos de disaster recovery, sob pena
de perder capacidade de investimento. Como exemplo de medida,
podemos citar a construção de Datacenters foram de um raio de 10
quilômetros a partir da central de processamento de empresas
financeiras, além de outras medidas de contigenciamento e
recuperação imediata para mitigar o risco sistêmico no setor
financeiro;
A organização criativa : Como já disse no post anterior, a pessoas
passaram a estar novamente no centro do processo. Voltaram a ser a
força motriz da economia devido a necessidade de inovação. A
questão é como estruturar nossas organizações orientadas a melhor
produtividade criativa e inovadoras das pessoas, uma vez que tudo
que foi em termos de modelo de gestão foi pensado para tornar mais
eficiente a produção de máquinas? Por essa razão, cresce a
importância de conceitos como Enterprise 2.0 e Gestão 2.0, como
Página 57






bem citou o Jorge Carvalho no seu último post no blog da HSM
(Clique aqui para acessar);
Open source : Aqui devemos dar todo o crédito ao criador do Linux,
Linus Torvalds, pois foi a partir do modelo de colaboração para
construção Linux é que ganhou força conceitos como Wikipedia,
Redes Sociais, software livre, inovação aberta;
Going Private : O fator “Enron” desestimulou a administração de uma
empresa como se fosse um orgão público. Cresce a importância do
capital
privado
como
investimento
nas
empresas
e,
consequentemente, cresce a importância de mecanismos de gestão
mais transparentes como governança corporativa;
High potentials : As empresas de consultoria e as que são baseadas
em conhecimento já sabiam disso há algum tempo, mas na última
década, o resto do mundo corporativo acordou para o fato de que
alguns gerentes são mais iguais do que outros. A partir daí, foram
criados programas para identificar gerentes que pensavam de forma
diferente e inovadora da grande maioria. Quem ganhou com isso foi a
indústria de Coaching Executivo;
Competição baseada em análise : Aqui o assunto é o BI (Business
Inteligence). Na minha opinião, ainda não está consolidada essa
tendência e ainda precisa evoluir muito, não como ferramenta, mas
sim no uso e na visão de como utiliza-la melhor pelos gestores das
empresas. Já se fala em Business Analytics, mas esse é um assunto
para um outro post;
Inovação reversa : A maior história aqui é o amadurecimento do
conceito de globalização, particularmente no que diz respeito às
economias emergentes. A maioria das grandes corporações, em
2000, viu-os primeiramente como uma fonte de recursos naturais e,
cada vez mais trabalho, mais barato. Então, como o aumento do
emprego alimentou o desenvolvimento da classe média, as cidades
da Índia e da China passaram a representar mercados valiosos.
Agora, esses não-consumidores nos EUA estão chegando para o
primeiro plano. Empresas como a GE ea Microsoft estão fazendo R &
D nos mercados emergentes, Otimizando a essas preferências e
restrições, e em seguida, trazendo os resultados de volta para casa;
Sustentabilidade : Mais do que tudo, os primeiros dez anos do século
21 será lembrado como a década que os negócios começaram a
serem verdes. Daqui a dez anos, quando alguém revisitar esse artigo
da Harvard, poderão dizer que 2010-2020 foi a década de
sustentabilidade, mas a idéia estava no ar antes de 2010, pois foi a
década em que esse conceito realmente pegou. Na minha opinião,
não devemos enxergar o conceito de sustentabilidade aplicado
apenas a questão ecológica, mas sim a vários aspectos da economia,
principalmente em relação a valorizar a visão de longo prazo em
detrimento da visão de curto prazo e, também, a valorizar a
colaboração ao invés da competição.
Página 58
Conclusão
É um programa grátis, porem que não é de código aberto,
sendo restrita a sua alteração devido aos direitos autorais impostos
pelo fabricante.
Open source são programas que funcionam para qualquer
tipo de usuário, já sistemas proprietários funcionam somente em
parâmetros impostos pelo fabricante, como exemplo um programa
que só funciona em um determinado tipo de placa hardware.
Página 59
Bibliografia
http://www.dragteam.info/forum/informacoes-dicas-e-tutoriais-geral/25097verdadeira-historia-do-linux.html~
http://www.conectway.com.br/rokjr/cursos/seguranca/baixaarq/Informatica_Apost0
3_SO.pdf
http://opensource.ptfreehosting.com/?cat=11
http://pt.wikipedia.org/wiki/Controlador_de_dispositivo
http://pplware.sapo.pt/windows/software/10-sistemas-operativos-pouco-falados/
Página 60
Download