Você está na página 1de 56

UNIVERSIDADE ESTADUAL DE GOIÁS

UNIDADE UNIVERSITÁRIA DE PORANGATU


BACHARELADO EM SISTEMAS DE INFORMAÇÃO

SISTEMAS OPERACIONAIS MODERNOS:


UNIX X WINDOWS

Luciana Alves de Paula Vieira


Thiago Eterno Feitosa Ferreira

Porangatu/GO
Dezembro/2010
Luciana Alves de Paula Vieira
Thiago Eterno Feitosa Ferreira

SISTEMAS OPERACIONAIS MODERNOS:


UNIX X WINDOWS

Trabalho de Curso (TC) apresentado a Unidade


Universitária da UEG de Porangatu como requisito
para obtenção do titulo de graduação.
Orientador: Fernando Bonifácio
Coordenadora: Ana Amélia

Porangatu/GO
Dezembro/2010

UNIVERSIDADE ESTADUAL DE GOIÁS


UNIDADE UNIVERSITÁRIA DE PORANGATU
2
TERMO DE APROVAÇAO

SISTEMAS OPERACIONAIS MODERNOS:


Unix X Windows

Concluintes:
Luciana Alves de Paula Vieira
Thiago Eterno Feitosa Ferreira

Trabalho de Curso (TC) apresentado a banca examinadora em 07/12/2010,


constituída pelos professores:

Fernando Bonifácio-----------------------------------------------------------------Orientador/ UEG

Eliene Araújo----------------------------------------------------------------------------Membro/ UEG

Andréia Marquez----------------------------------------------------------------------Membro/ UEG

Porangatu, 07 de dezembro de 2010.

FICHA CATALOGRÁFICA

VIEIRA, Luciana Alves De Paula. FEITOSA, Thiago Eterno.


Sistemas Operacionais Modernos: Unix x Windows. Porangatu 2010.
(UEG / UnU Porangatu, Bacharelado em Sistemas de Informação, 2010).

Monografia. Universidade Estadual de Goiás, Unidade Universitária de Porangatu.


1
Departamento de Sistemas de Informação.

1. Sistemas Operacionais 2. Unix x Windows 3. Vantagens e Desvantagens dos SO’s


4. Pesquisa de Campo

REFERÊNCIA BIBLIOGRÁFICA

VIEIRA, Luciana Alves de Paula. FERREIRA, Thiago Eterno Feitosa. Sistemas


Operacionais Modernos: Unix x Windows. Porangatu, 2010. 56 p. Monografia –
Curso de Sistemas de Informação, Unidade Universitária de Porangatu,
Universidade Estadual de Goiás.

CESSÃO DE DIREITOS

NOME DOS AUTORES: Luciana Alves de Paula Vieira, Thiago Eterno Feitosa
Ferreira
TÍTULO DO TRABALHO: Sistemas Operacionais Modernos: Unix x Windows
GRAU/ANO: Graduação /2010.

É concedida à Universidade Estadual de Goiás permissão para reproduzir cópias


deste trabalho, emprestar ou vender tais cópias para propósitos acadêmicos e
científicos. O autor reserva outros direitos de publicação e nenhuma parte deste
trabalho pode ser reproduzida sem a autorização por escrito do autor.

Luciana Alves de Paula Vieira


Avenida Doutor Boussu Q. 08 L. 04, Centro
CEP 76490-000– Mara Rosa – GO – Brasil

Thiago Eterno Feitosa Ferreira


Rua São Paulo S/N Centro
CEP 76490-000– Mara Rosa – GO – Brasil

2
Dedicamos este trabalho
primeiramente a Deus, pois sem ele
nada seria possível. E ao nosso
orientador Fernando Bonifacio.

2
AGRADECIMENTOS

Senhor, as dificuldades não foram poucas...


Os desafios foram muitos...
Os obstáculos, muitas vezes, pareciam intransponíveis.
Muitas vezes nos sentimos só, e, assim, o estivemos...
O desânimo quis contagiar, porém, a garra e a tenacidade foram mais fortes,
sobrepondo esse sentimento, fazendo-nos seguir a caminhada, apesar da
sinuosidade do caminho.
Agora, ao olharmos para trás, a sensação do dever cumprido se faz presente
e podemos constatar que as noites de sono perdidas, as viagens e visitas
realizadas; o cansaço dos encontros, os longos tempos de leitura, digitação,
discussão; a ansiedade em querer fazer e a angústia de muitas vezes não o
conseguir, por problemas estruturais; não foram em vão.
Aqui estamos, como sobreviventes de uma longa batalha, porém, muito mais
fortes e hábeis, com coragem suficiente para mudar a nossa postura, apesar
de todos os percalços...
Por isso, te agradecemos Senhor, por ter nos dado a oportunidade de concluir
este curso superior.
Agradecemos também ao nosso orientador Fernando Bonifácio, pelo
constante apoio, incentivo, dedicação e amizade.
Aos nossos familiares e amigos pelo incentivo e apoio nos momentos de
dificuldades.
A todos, os sinceros agradecimentos.

1
RESUMO

Tanto o Windows como o Unixsão Sistemas Operacionais, portanto podem ser


utilizados para a mesma finalidade (abrir o conteúdo de um pendrive, imprimir uma
apostila, conectar a internet, enviar e receber e-mails). A maior diferença entre estes
dois Sistemas Operacionais, é que o Unix possui o código fonte aberto, por isso, é
considerado um Software Livre. Já o Windows não tem seu código fonte aberto, e
também exige o pagamento de Licença para Uso, o que significa que, quem compra
o Windows, na verdade está apenas pagando uma licença para usar, não sendo
considerado dono deste programa, por isso não pode ser feito cópias do Windows.
Uma das vantagens do Linux é o fato de possuir o Código fonte aberto, sendo
possível fazer uma adaptação ou correção de erros deste programa pelo usuário,
levando em consideração o conhecimento da linguagem de programação. Outra
vantagem é que você pode encontrar o Linux na Internet sem cobrança, ou seja,
gratuito. Mas é importante lembrar que nem todo Software Livre é gratuito, pois você
pode baixar o Linux gratuito na Internet, e por ser um Software Livre você tem o
direito de fazer cópias e cobrar uma taxa qualquer para distribuir. Uma das
desvantagens do Linux, é que hoje fabricantes de periféricos e programas não estão
ainda criando seus equipamentos para ser usado em Linux, sempre criam baseados
na linguagem do Windows, que já é um programa consolidado no mercado. Por isso
alguns programas como o Corel Draw, Photoshop, Microsoft Office, teoricamente
não poderão ser instalados na plataforma Linux, mas para isso os desenvolvedores
do Linux, fizeram parcerias com outras organizações sem fins lucrativos, para criar
programas que possam substituir os programas que só rodam no Windows.

Palavras-chave: Sistema Operacional, Windows, Unix, Linux, Software Livre,


Código fonte.

ABSTRACT

7
Both Windows and Linux are operating systems, so can be used for the same
purpose (to open the contents of a USB key, a print book, connect to the Internet,
send and receive e-mails). The biggest difference between these two operating
systems is that Linux has open source code, so it is considered a Free
Software. Since Windows does not have its source code open, and also requires the
payment of Use License, which means that those who buy Windows, and you're just
paying for a license to use, not being regarded as the owner of this program, so
no can be made copies of Windows. One of the advantages of Linux is the fact of
having the code open source, and can make an adjustment or correction of errors of
this program by the user, taking into account the knowledge of the programming
language. Another advantage is that you can find Linux on the Internet without
charge, or free. But it is important to remember that not all Free Software is free
because you can download Linux free from the Internet, and being a free software
you have the right to make copies and charge a fee for any distribution. One of the
downsides of Linux today is that manufacturers of computer peripherals and
programs are not yet creating their equipment to be used on Linux, always create
Windows-based language, which is already a consolidated program on the
market. So some programs such as Corel Draw, Photoshop, Microsoft Office,
theoretically cannot be installed on the Linux platform, but for that Linux developers,
have partnered with other nonprofit organizations to create programs that can
replace the programs that only run on Windows.

Keywords: Operating System, Windows, Linux, Free Software, Source Code.

LISTA DE GRAFICOS

Gráfico 1 – Pessoas que possuem qualquer curso de informática ...................46


Gráfico 2 - Tempo diário de computador............................................................47
Gráfico 3 – Pessoas que ouviram falar sobre Linux...........................................47
9
Gráfico 4 – Pessoas que usam Windows e Linux..............................................48
Gráfico 5 – Pessoas satisfeitas com SO usado.................................................48
Gráfico 6 – Características a serem melhoradas no SO....................................49

LISTA DE ABREVIATURAS E SIGLAS

Siglas Descrição

AT&T Empresa que desenvolveu o Unix


MS-DOS Microsoft Operating System-Sistema Operacional de Disco
SG Silberschatz

9
DAV Davis
SHA Shay
IHC Interface Humano - Computador
IBM PC Internacional Business Machines
READ Ler
WRITE Escrever
LSI Large Scale Integration - Integração em larga escala
REAL TIME Tempo Real
CPU’s Unidade Central de Processamento
E/S Entrada/Saída
SMP Symetric Multiprocessors
NUMA Nom Uniform Memory Access
SORS Sistemas Operacionais de Rede
I/O Input/Output
GPL General Public License
FSF Free Software Foundation
IEEE Instituto de Engenheiros Elétricos e Eletrônicos
POSIX Portable Operating Systems Interface Unix
MIT Massachussets Institute Of Technology
MULTICS Multiplexed Information and Computing Service
PDP Programmed Data Processor
BSD Berkeley Software Distribution
SVR Stevie Ray Vaughan
TCP/IP Transmission Protocol Control Protocol/Internet
MB Mega Byte
SO Sistema Operacional
FAT File Allocation Table
USB Universal Serial Bus
NTFS New Technology File System

SUMÁRIO

TERMO DE APROVAÇAO......................................................................III
FICHA CATALOGRÁFICA......................................................................IV
AGRADECIMENTOS.............................................................................VI
RESUMO...........................................................................................VII
ABSTRACT.......................................................................................VIII
LISTA DE GRAFICOS...........................................................................IX
LISTA DE ABREVIATURAS E SIGLAS......................................................X

9
INTRODUÇÃO....................................................................................13
1. SISTEMA OPERACIONAL.................................................................15
1.1 DEFININDO O SISTEMA OPERACIONAL.........................................................................15
1.1.1 O SISTEMA OPERACIONAL VISTO COMO UMA MÁQUINA ESTENDIDA.....................................16
1.1.2 O SISTEMA OPERACIONAL VISTO COMO UM GERENTE DE RECURSOS...................................17
1.2 EVOLUÇÃO DOS SISTEMAS OPERACIONAIS....................................................................18
1.2.1 PRIMEIRA GERAÇÃO (1945-1955) VÁLVULAS E PAINÉIS CONECTORES.............................18
1.2.2 SEGUNDA GERAÇÃO (1955-1965): TRANSISTORES E SISTEMAS DE LOTES........................19
1.2.3 TERCEIRA GERAÇÃO (1965-1980): CIS E MULTIPROGRAMAÇÃO...................................19
1.2.4 QUARTA GERAÇÃO (1980-HOJE): COMPUTADORES PESSOAIS.........................................19
1.3 TIPOS DE SISTEMAS OPERACIONAIS...........................................................................19
1.3.1 SISTEMAS MONOPROGRAMÁVEIS / MONOTAREFA..........................................................19
1.3.2 SISTEMAS MULTIPROGRAMÁVEIS / MULTITAREFA..........................................................20
1.3.3 SISTEMAS BATCH.............................................................................................21
1.3.4 SISTEMAS DE TEMPO COMPARTILHADO.....................................................................21
1.3.5 SISTEMAS DE TEMPO REAL..................................................................................22
1.3.6 SISTEMAS COM MÚLTIPLOS PROCESSADORES..............................................................22
1.3.7 SISTEMAS FORTEMENTE ACOPLADOS.......................................................................23
1.3.8 SISTEMAS FRACAMENTE ACOPLADOS.......................................................................23
1.4 PRINCIPAIS ATIVIDADES DE UM SISTEMA OPERACIONAL.....................................................24
1.4.1 GERENCIA DE PROCESSOS...................................................................................24
1.4.1.1 ESTADO DOS PROCESSOS.................................................................................25
1.4.2 GERÊNCIA DE MEMÓRIA.....................................................................................25
1.4.3 GERENCIAMENTO DE I/O....................................................................................26
1.5 SOFTWARE LIVRE................................................................................................27
1.5.1 O QUE É SOFTWARE LIVRE.................................................................................27
1.5.2 HISTORIA DO SOFTWARE LIVRE.............................................................................28
1.5.3 PORQUE USAR SOFTWARE LIVRE?.........................................................................29
1.5.3.1 ARGUMENTO MACROECONÔMICO........................................................................30
1.5.3.2 ARGUMENTO DE SEGURANÇA.............................................................................30
1.5.3.3 ARGUMENTO DA AUTONOMIA TECNOLÓGICA............................................................30
1.5.3.4 ARGUMENTO DA INDEPENDÊNCIA DE FORNECEDORES..................................................31
1.5.3.5 ARGUMENTO DEMOCRÁTICO..............................................................................31
2. UNIX.............................................................................................32
2.1 A HISTÓRIA DO UNIX...........................................................................................32
2.1.1 CARACTERÍSTICAS DO UNIX.................................................................................35
2.2 HISTÓRIA DO MICROSOFT WINDOWS.........................................................................36
2.2.1 PRINCIPAIS VERSÕES.........................................................................................37
3. VANTAGENS E DESVANTAGENS DOS SISTEMAS OPERACIONAIS........41
3.1 CONFIABILIDADE.................................................................................................41
3.2 SEGURANÇA......................................................................................................42
3.3 PORTABILIDADE..................................................................................................42
3.4 ESTABILIDADE....................................................................................................43
3.5 ROBUSTEZ.......................................................................................................43
3.6 USABILIDADE.....................................................................................................43
3.7 DISTRIBUIÇÃO LIVRE OU PROPRIETÁRIA.........................................................................45
4. PESQUISA DE CAMPO.....................................................................46
4.1 INTRODUÇÃO.....................................................................................................46
4.2 RESULTADOS DA PESQUISA.....................................................................................46
CONSIDERAÇOES FINAIS....................................................................51
REFERENCIAS...................................................................................53
APÊNDICE.........................................................................................54
APÊNDICE A – PESQUISA DE CAMPO SOBRE SISTEMAS OPERACIONAIS.........................................54
Apêndice A – Pesquisa de Campo Sobre Sistemas Operacionais
9
INTRODUÇÃO

Há algumas décadas, os computadores possuíam características muito


limitadas como, baixa capacidade de memória, processamento, etc. Como tinham
poucos recursos, eram necessários programadores que realmente conhecessem a
fundo suas características, para extrair o máximo de desempenho, confiabilidade e
capacidade de armazenamento da máquina. Foi em meio a esse cenário que um
pesquisador da Bell Labs chamado Ken Thompson iniciou o desenvolvimento do
sistema operacional Unix que passou a ser proprietário da AT&T.
Um sistema operacional, nada mais é do que um conjunto de programas que
gerenciam os recursos básicos de um computador. Ele é responsável por controlar a
parte física do computador fazendo a interface entre o usuário e os programas. Ken
Thompson criou um sistema operacional rápido, seguro, eficiente, multitarefa e
multiusuário, mas da mesma forma que os programadores da sua época, não se
preocuparam em criar mecanismos que facilitassem a utilização do sistema por
usuários “leigos”. Na verdade, naquela época talvez nem existissem tais usuários,
pois computadores eram utilizados apenas por grandes empresas e nos meios
científicos e acadêmicos.
Com a chegada dos microcomputadores por volta de 1981 e a sua utilização
por usuários considerados “leigos”, surgiu à necessidade de desenvolver sistemas
mais amigáveis que facilitassem a utilização do sistema. O MS-DOS da Microsoft
trouxe estas características, mas deixou de lado a robustez, a eficiência e a
capacidade de ser multitarefa e multiusuário como o Unix. Foi quando em 1990, um
jovem estudante finlandês chamado Linus Torvalds baseando-se no clone do Minix
que por sua vez era quase um clone do Unix, desenvolveu o kernel Linux juntamente
com várias pessoas ao redor do mundo que o ajudaram a incluir suporte ao
hardware, aos programas auxiliares, às interfaces gráficas, etc, para que tudo
funcionasse sem problemas.
Este trabalho verifica vantagens e desvantagens dos sistemas Unix e
Windows, possibilitando a disseminação das tecnologias empregadas nos sistemas.
Traz características estruturais presentes em todos os sistemas operacionais, que
são de grande valor, para o compreendimento destes, e outros softwares da
categoria. Busca inovar, trazendo novos recursos e benefícios, no âmbito da
tecnologia, à tona. Constituir opiniões concretas no público de usuários, com base
13
em informações consistentes. Gerar maiores debates sobre a qualidade deste e
outros produtos do gênero. Demonstrar, por meio dos usuários de SO, quais as
tendências e influências destes na avaliação do programa.
Serve como base para pesquisas e aprendizado tanto pelos acadêmicos e
profissionais da área quanto ao usuário avançado em SO. A análise das tecnologias
envolvidas e comparações entre os sistemas respondem as diversas duvidas do
usuário que deseja aprender mais ou ate mesmo trocar de SO, mas não o faz por
não ter conhecimento aprofundando do tema. A leitura desta pesquisa cientifica
poderá responder as dúvidas impostas pelo leitor.
O trabalho em questão é baseado em pesquisas em livros e internet, com
base em referencial bibliográfico e artigos científicos. Foram feitas também
instalações de ambos os sistemas em computadores e notebooks para analises e
comparações. Pesquisas com grupos de usuários para analisar o ponto de vista
entre os sistemas desconhecidos por eles e o Windows. Desenvolvimento das
facilidades e complicações em cada sistema e gerar um relatório no qual teremos o
sistema de maior uso para o usuário final.
Dentro deste contexto, o objetivo é analisar se os Sistemas baseados em
Unix (Linux, Mac Os entre outros) são uma alternativa de sistema operacional para a
realização de tarefas básicas em relação ao sistema operacional Microsoft Windows
e verificar a eficiência na realização das tarefas, a segurança, integridade dos
dados, e desempenho em relação ao Microsoft Windows.
Para tanto, o primeiro capitulo define o que é um Sistema Operacional, fala da
sua evolução cita as principais atividades, traz o conceito de Software Livre, breve
histórico e, mostra porque utilizar um Software Livre.
O segundo conceitua o Unix, conta a sua historia, cita as características,
conceitua Windows, conta a sua historia juntamente co as principais versões.
O terceiro trata das vantagens e desvantagens dos Sistemas Operacionais,
bem como: confiabilidade, segurança, portabilidade, estabilidade, robustez e
usabilidade. E a diferença entre distribuição livre ou proprietária.
E para finalizar provamos tudo com uma pesquisa de campo no quarto
capitulo.

14
1. SISTEMA OPERACIONAL

1.1 Definindo o Sistema Operacional

Um sistema operacional é um programa que controla a execução dos


programas de aplicação e atua como uma interface entre o usuário do
computador o hardware do computador. Um sistema operacional pode ser
pensado como tendo dois objetivos ou desempenhando duas funções:
conveniência, pois faz o sistema computacional mais conveniente de usar; e
eficiência, pois permite que os recursos do sistema computacional sejam
usados de maneira eficiente. (STALLING,1996, p. 222).

Silberschatz utiliza praticamente a mesma definição, indicando que um


sistema operacional é um ambiente intermediário entre o usuário e o hardware do
computador no qual programas podem ser executados de forma conveniente e
eficiente [SG00, p. 23]. Davis [DAV91], Shay [SHA96] e outros também apresentam
idéias semelhantes.
Tanenbaum, por sua vez, define um sistema operacional através de uma ótica
ligeiramente diferente:

O mais fundamental de todos os programas do sistema é o sistema


operacional que controla todos os recursos computacionais e prove uma
base sobre a qual programas de aplicação podem ser escritos.
(TANENBAUM 1992, p. 1).

Os sistemas operacionais são uma camada de software que ”envolve” os


componentes físicos de um computador, intermediando as interações entre estes
componentes e os usuários ou os programas dos usuários. Neste sentido é
apropriado considerar que os sistemas operacionais podem ser vistos como uma
extensão do próprio computador ou como gerenciadores dos recursos existentes
neste computador.
A despeito do tipo, sofisticação ou capacidades do computador, um sistema
operacional deve atender aos seguintes princípios:
1. Oferecer os recursos do sistema de forma simples e transparente;
2. Gerenciar a utilização dos recursos existentes buscando seu uso eficiente em
termos do sistema e;
3. Garantir a integridade e a segurança dos dados armazenados e processados
no sistema e também de seus recursos físicos.
Alem destes objetivos, um sistema operacional também deve proporcionar
uma interface adequada para que ele possa ser utilizado pelos seus usuários.
Historicamente as primeiras interfaces dos sistemas operacionais eram baseadas
em um conjunto de palavras-chave (comandos) e mensagens de dialogo que
permitiam a execução de tarefas e a comunicação entre homem (o operador) e
maquina. Estes comandos e mensagens definiam a Interface Humano-Computador
(IHC) daquele sistema. Atualmente as interfaces baseadas em modo texto estão em
desuso, sendo substituídas por interfaces gráficas mais modernas e simples que
buscam facilitar a utilização do computador através de sua aparência atraente e uso
intuitivo.
O sistema operacional realiza duas funções que não possuem nenhuma
relação uma com a outra, vejamos:

1.1.1 O Sistema Operacional visto como uma Máquina Estendida

A arquitetura (conjunto de instruções, organização da memória, estrutura de


entrada/saída e estrutura do barramento) da maioria dos computadores é bastante
primitiva e difícil de programar, em especial a entrada/saída. Para tornar este ponto
mais claro, vamos examinar rapidamente como é feita a entrada/saída em uma
unidade de disco flexível, usando o chip controlador NEC PD765, que é utilizado no
IBM PC. O PD765 tem 16 comandos, cada um deles especificado pela carga de
entre um e nove bytes no registrador do dispositivo. Tais comandos são para
leitura/escrita de dados, movimento da cabeça, formatação de trilhas e inicialização,
sensoriamento, reinicialização e calibração do controlador e do driver do disquete.
Os comandos mais básicos são o READ e o WRITE, cada um dos quais
requerendo 13 parâmetros, acondicionados em 9 bytes. Tais parâmetros especificam
o endereço do bloco a ser lido do disco, o número de setores por trilha, o modo de
gravação no meio físico, o espaçamento entre setores, entre outras coisas. Quando
a operação se completa, o chip controlador retorna ao processador, 23 campos de
estado, acondicionados em 7 bytes. Como se isto não bastasse, o programador da
unidade de disco flexível tem de se preocupar com o fato do motor do disco estar
ligado ou desligado. Se o motor estiver desligado, ele precisa ser ligado antes que o

15
dado possa ser lido ou gravado. O motor não pode permanecer ligado por muito
tempo sob pena de danificar o disquete. Desta forma, o programador é forçado a
optar entre desligar/ligar constantemente o motor, com um consumo excessivo de
tempo, e a possibilidade de danificar o disquete, com a conseqüente perda das
informações nele armazenadas. Fica claro que o programador não quer ou não pode
envolver-se com detalhes da programação das unidades de disco flexível. O
programador deseja lidar com uma abstração de alto nível e bastante simples. No
caso dos discos, uma abstração típica poderia fazer com que o disco fosse visto
como uma coleção de arquivos identificados por nome. Cada arquivo deve ser
aberto para leitura ou escrita, em seguida deve ser lido ou escrito e finalmente deve
ser fechado. Detalhes a respeito do tipo de modulação a ser usado no processo de
gravação ou a respeito do estado corrente do motor não devem aparecer na
abstração apresentada ao usuário.
O programa que esconde o verdadeiro hardware do usuário e apresenta-lhes
um esquema simples de arquivos identificados que podem ser lidos ou escritos é o
sistema operacional. Da mesma forma que o sistema operacional isola o usuário dos
detalhes da operação do disco, ele também trata de uma série de outras questões
tais como interrupções, os temporizadores, a gerência da memória e outras. Em
cada caso, a abstração apresentada ao usuário do sistema operacional é mais
simples e mais fácil de utilizar que o próprio hardware.
Neste aspecto, a função do sistema operacional é a de apresentar ao usuário
uma máquina estendida ou máquina virtual equivalente ao hardware, porém muito
mais simples de programar.

1.1.2 O Sistema Operacional visto como um Gerente de Recursos

O mais fundamental de todos os programas do sistema é o sis- tema


operacional que controla todos os recursos computacionais e provê uma
base sobre a qual programas de aplicação podem ser escritos.
(TANENBAUM 1992, p. 1).

O conceito do sistema operacional como fornecedor de uma interface


conveniente aos seus usuários é uma visão top-down. Uma visão alternativa,
bottom-up, mostra o sistema operacional como um gerente de recursos de hardware
disponíveis na máquina. Os computadores modernos são compostos de
processadores, memórias, temporizadores, discos, terminais, dispositivos de fita

16
magnética, interfaces de rede, impressoras e outros dispositivos. Nesta visão, a
função do sistema operacional é a de fornecer um esquema de alocação dos
processadores, das memórias e dos dispositivos de entrada/saída entre os vários
processos que competem pela utilização de tais recursos.
Imagine o que poderia acontecer se três processos, rodando em um dado
computador, resolvessem imprimir suas saídas simultaneamente na mesma
impressora. As três primeiras linhas da listagem poderiam ser do processo 1, as
seguintes do processo 2 e assim por diante, até que os três terminassem a
impressão. Fica claro que tal situação não é admissível em nenhum sistema que se
preze. O sistema operacional tem por função colocar ordem neste caos potencial,
armazenando em disco todas as saídas destinadas à impressora, durante a
execução dos processos.
No caso do computador possuir múltiplos usuários, a necessidade de
gerência e proteção da memória, dos dispositivos de entrada/saída e dos demais
recursos do sistema fica ainda mais aparente.
Pelo exposto acima, esta outra visão da função de um sistema operacional
mostra que sua tarefa principal é a de gerenciar os usuários de cada um dos
recursos da máquina, contabilizando o tempo de uso de cada um e garantindo o
acesso ordenado de usuários a recursos através da mediação dos conflitos entre as
requisições dos diversos processos usuários do sistema.
O desenvolvimento dos sistemas operacionais pode ser mais bem observado
e compreendido quando acompanhamos a historia do próprio computador.

1.2 Evolução dos Sistemas Operacionais

1.2.1 Primeira Geração (1945-1955) Válvulas e Painéis Conectores

Os primeiros grandes computadores desenvolvidos com válvulas não existiam


os sistemas operacionais. O operador reservava um período de tempo para ir ate as
conexões da maquina e realizar as operações certas para que a máquina
conseguisse realizar os cálculos.

1.2.2 Segunda Geração (1955-1965): Transistores e Sistemas de Lotes

16
Os computadores começaram a ser desenvolvidos e construídos com os
transistores, dessa forma os computadores começaram a ser comercializados
devido ao seu desempenho e confiabilidade. Surgiram sistemas operacionais
capazes de interpretar os cartões perfurados e gerar fitas de entrada e saída.

1.2.3 Terceira Geração (1965-1980): CIs e Multiprogramação

A IBM desenvolveu uma linha de maquinas System/360. 360 era uma linha de
maquinas totalmente compatível em nível de software o que mudava então era o
hardware das máquinas. O 360 foi à primeira linha de computadores a usar circuitos
integrados.

1.2.4 Quarta Geração (1980-hoje): Computadores Pessoais

Foi marcada principalmente pelo desenvolvimento dos circuitos LSI (Large


Scale Integration- integração em larga escala) chips com milhares de transistores
por centímetro quadrado de silício permitiu uma evolução tanto na parte de hardware
como de software.

1.3 Tipos de Sistemas Operacionais

1.3.1 Sistemas Monoprogramáveis / Monotarefa

Os primeiros sistemas operacionais eram tipicamente voltados para a


execução de um único programa. Qualquer outra aplicação, para ser executada,
deveria aguardar o término do programa corrente. Os sistemas monoprogramáveis
se caracterizam por permitir que o processador, a memória e os periféricos
permaneçam exclusivamente dedicados à execução de um único programa.

Os sistemas monoprogramáveis estão tipicamente relacionados ao


surgimento dos primeiros computadores na década de 1960.

Neste tipo de sistema, enquanto um programa aguarda por um evento, como


a digitação de um dado, o processador permanece ocioso, sem realizar qualquer
tipo de processamento. A memória é subutilizada caso o programa não a preencha

17
totalmente e os periféricos estão dedicados a um único usuário, nem sempre
utilizados de forma integral.

Comparados a outros sistemas, os sistemas mono programáveis são de


simples implementação, não existindo muita preocupação com problemas
decorrentes do compartilhamento de recursos.

1.3.2 Sistemas Multiprogramáveis / Multitarefa

A maioria dos sistemas modernos opera em regime de multiprogramação,


isto é, mais de um programa em execução simultânea na memória. A
existência nesses sistemas de periféricos assíncronos e com velocidades
de operação as mais diversas tornou economicamente necessário introduzir
a multiprogramação a fim de utilizar de maneira mais eficiente os recursos
do sistema (GUIMARÃES 1986, p.71).

Os sistemas Multiprogramáveis são uma evolução dos sistemas mono


programáveis. Neste tipo de sistema, os recursos computacionais são
compartilhados entre os diversos usuários e aplicações.

Neste tipo de sistema, enquanto um programa espera por uma operação de


leitura ou gravação em disco, outros programas podem estar sendo processados
neste mesmo intervalo de tempo. Neste caso, podemos observar o
compartilhamento de processador e de memória. O sistema operacional se
preocupa em gerenciar o acesso concorrente aos seus diversos recursos, como
memória, processador e periféricos, de forma ordenada e protegida, entre os
diversos programas.

As vantagens do uso de sistemas Multiprogramáveis são a redução do tempo


de resposta das aplicações processadas no ambiente e de custos, a partir do
compartilhamento dos diversos recursos do sistema entre as diferentes aplicações.
Os sistemas Multiprogramáveis, apesar de mais eficientes que os
monoprogramáveis, são de implementação muito mais complexa.

A partir do número de usuários que interagem com o sistema, podemos


classificar os sistemas Multiprogramáveis como monousuário ou multiusuário.
Sistemas monousuário são encontrados em computadores pessoais e estações de
trabalho, onde há apenas um único usuário interagindo com o sistema. Neste caso
existe a possibilidade da execução de diversas tarefas ao mesmo tempo como a
edição de um texto, uma impressão e o acesso à Internet. Sistemas multiusuários

16
são ambientes interativos que possibilitam diversos usuários conectarem-se ao
sistema simultaneamente.

Os sistemas Multiprogramáveis podem ser classificados pela forma com que


suas aplicações são gerenciadas, podendo ser divididos em sistemas batch, de
tempo compartilhado ou de tempo real.

1.3.3 Sistemas Batch

Os sistemas batch foram os primeiros tipos de sistemas operacionais


Multiprogramáveis a serem implementados na década de 1960. Os programas,
também chamados de Jobs, eram submetidos para execução através de cartões
perfurados e armazenados em disco ou fita, onde aguardavam para serem
processados. Posteriormente, em função da disponibilidade de espaço na memória
principal, os Jobs eram executados, produzindo uma saída em disco ou fita.

O processamento batch tem a característica de não exigir a interação do


usuário com a aplicação. Todas as entradas e saídas de dados são implementadas
por algum tipo de memória secundária, geralmente arquivos em disco.

Esses sistemas, quando bem projetados, podem ser bastante eficientes,


devido à melhor utilização do processador.

1.3.4 Sistemas de Tempo Compartilhado

Os sistemas de tempo compartilhado (time-sharing) permitem que diversos


programas sejam executados a partir da divisão do tempo do processador em
pequenos intervalos, denominados fatia de tempo (time-slice). Caso a fatia de tempo
não seja suficiente para a conclusão do programa, esse é interrompido pelo sistema
operacional e substituído por outro, enquanto fica aguardando por uma nova fatia de
tempo. O sistema cria um ambiente de trabalho próprio, dando a impressão de que
todo o sistema está dedicado, exclusivamente, para cada usuário.

Geralmente, sistemas de tempo compartilhado permitem a interação dos


usuários com o sistema através de terminais que incluem vídeo, teclado e mouse.
Devido a esse tipo de interação, os sistemas de tempo compartilhado também
ficaram conhecidos como sistemas on-line.

16
1.3.5 Sistemas de Tempo Real

Os sistemas de tempo real (real-time) são implementados de forma


semelhante à dos sistemas de tempo compartilhado. O que caracteriza a diferença
entre os dois tipos de sistemas é o tempo de resposta exigido no processamento
das aplicações.

Enquanto nos sistemas de tempo compartilhado o tempo de resposta pode


variar sem comprometer as aplicações em execução, nos sistemas de tempo real os
tempos de resposta devem estar dentro de limites rígidos, que devem ser
obedecidos, quando bem projetados, podem ser bastante eficientes, devido à melhor
caso contrário poderão ocorrer problemas irreparáveis.

Nestes sistemas não existe a idéia de fatia de tempo. Um programa utiliza o


processador o tempo que for necessário ou até que apareça outro mais prioritário.

Esses sistemas normalmente estão presentes em aplicações de controle de


processos, como no monitoramento de refinarias de petróleo ou controle de tráfego
aéreo.

1.3.6 Sistemas com Múltiplos Processadores

Os sistemas com múltiplos processadores caracterizam-se por possuir duas


ou mais CPU’s interligadas e trabalhando em conjunto. A vantagem desse tipo de
sistema é permitir que vários programas sejam executados ao mesmo tempo ou que
um mesmo programa seja subdividido em partes para serem executadas
simultaneamente em mais de um processador.

Com múltiplos processadores foi possível a criação de sistemas


computacionais voltados principalmente para o processamento científico aplicado,
por exemplo, no desenvolvimento aeroespacial, metereologia, simulações, etc.

Os conceitos aplicados ao projeto de sistemas com múltiplos processadores


incorporam os mesmos princípios básicos e benefícios apresentados na
multiprogramação, além de outras características e vantagens específicas como
escalabilidade, disponibilidade e balanceamento de carga.

Um fator chave no desenvolvimento de sistemas operacionais com múltiplos


processadores é a forma de comunicação entre as CPU’s e o grau de
15
compartilhamento da memória e dos dispositivos de E/S. Em função desses fatores,
podemos classificar os sistemas com múltiplos processadores em fortemente
acoplados e fracamente acoplados.

1.3.7 Sistemas Fortemente Acoplados

Nos sistemas fortemente acoplados (tightly coupled) existem vários


processadores compartilhando uma única memória física (shared memory) e
dispositivos de entrada/saída, sendo gerenciados por apenas um sistema
operacional. Em função destas características, os sistemas fortemente acoplados
também são conhecidos como multiprocessadores.

Os sistemas fortemente acoplados podem ser divididos em SMP (Symetric


Multiprocessors) e NUMA (Non-Uniform Memory Access). Os sistemas SMP
caracterizam-se pelo tempo uniforme de acesso à memória principal pelos diversos
processadores. Os sistemas NUMA apresentam diversos conjuntos reunindo
processadores e memória principal, sendo que cada conjunto é conectado aos
outros através de uma rede de interconexão. O tempo de acesso à memória pelos
processadores varia em função da sua localização física.

1.3.8 Sistemas Fracamente Acoplados

Os sistemas fracamente acoplados (loosely-coupled) caracterizam-se por


possuir dois ou mais sistemas computacionais conectados através de linhas de
comunicação. Cada sistema funciona de forma independente, possuindo seu próprio
sistema operacional e gerenciando seus próprios recursos. Em função destas
características, os sistemas fracamente acoplados também são conhecidos como
multicomputadores.

Com base no grau de integração dos hosts da rede, podemos dividir os


sistemas fracamente acoplados em sistemas operacionais de rede e sistemas
distribuídos. A grande diferença entre os dois é a capacidade do sistema operacional
em criar uma imagem única dos serviços disponibilizados pela rede.

Os sistemas operacionais de rede (SORs) permitem que um host compartilhe


seus recursos com os demais hosts da rede. Além disso, os usuários têm o
conhecimento dos hosts e seus serviços.

16
1.4 Principais Atividades de Um Sistema Operacional

1.4.1 Gerencia de Processos

Um processo computacional ou simplesmente processo pode


ser entendido como uma atividade que ocorre em meio
computacional, usualmente possuindo um objetivo definido,
tendo duração finita e utilizando uma quantidade limitada de
recursos computacionais. (Jandl Jr 2004, p.21).

Um processo computacional ou simplesmente processo pode ser entendido


como uma atividade que ocorre em meio computacional, usualmente possuindo um
objetivo definido, tendo duração finita e utilizando uma quantidade limitada de
recursos computacionais.
A definição explica muito bem o que um processo é apenas as atividades
que acontecem em um sistema computacional, a duração é finita não existe
processo imediato todo processo por mínimo que seja o tempo de execução utiliza
um determinado tempo para ser executado e todo processo utiliza um determinado
numero de recursos computacionais existentes.
Podemos entender que um processo nada mais é do que um programa em
execução. Uma impressão de um documento é um processo, compilação de um
programa é um processo, toda atividade manual ou automática que ocorre dentro de
um computador pode ser descrito como um processo computacional.
Hoje em dia todos os computadores são capazes de realizar diversas tarefas
ao mesmo tempo, onde cada uma destas tarefas abrange um ou mais processos.
Para conseguirem realizar diversas tarefas ao mesmo tempo os computadores são
multiprogramados, o processador é chaveado de processo em processo em
pequenos intervalos de tempo, o processador executa um programa durante um
pequeno intervalo de tempo para depois executar outro programa por outro pequeno
intervalo de tempo e assim sucessivamente. Num instante qualquer o processador
estará executando apenas um dado programa, mas em um intervalo maior de tempo
ele terá executado trechos de vários programas, criando assim algo chamado
paralelismo.
Este paralelismo é chamado de paralelismo virtual, hoje em dias com
processadores que possuem vários núcleos ou supercomputadores que possuem
mais de um processador é possível a existência do paralelismo verdadeiro.

15
1.4.1.1 Estado dos processos

Dado que um processo pode ser considerado como um programa em


execução, num sistema computacional multiprogramado podemos identificar três
estados básicos de existência de um processo:
Pronto (Ready) Situação em que o processo está apto a utilizar o
processador quando este estiver disponível. Isto significa que o processo pode ser
executado quando o processador estiver disponível.
Execução (Running) Quando o processo está utilizando um processador
para seu processamento. Neste estado o processo tem suas instruções
efetivamente executadas pelo processador.
Bloqueado (Blocked) Quando o processo está esperando ou utilizando um
recurso qualquer de E/S (entrada e saída). Como o processo devera aguardar o
resultado da operação de entrada ou saída, seu processamento fica suspenso até
que tal operação seja concluída.

1.4.2 Gerência de Memória

Um Computador é composto de três partes fundamentais: O processador, os


dispositivos de entrada/saída e a memória - John Von Neumann.

Esta estrutura citada por John Von Neumann mudou radicalmente o conceito
de computador, afirmando que o programa deveria ser armazenado na memória
junto com os dados, transformando maquinas sofisticadas de calcular existentes em
uma nova espécie de maquina completamente diferente, mais genérica e capaz de
lembrar seqüências de comandos previamente fornecidas, executando-as fielmente.
Este novo conceito permitiu construírem-se computadores capazes de
executar diferentes seqüências de instruções sem a alteração de seu hardware, o
que não acontecia com os gigantes maquina de calcular da época.
Quando Von Neumann propôs o computador como uma maquina capaz de
memorizar as instruções, já existia tecnologia para programarem-se os primeiros
circuitos processadores e os dispositivos básicos de entrada e saída de dados, mas
não se sabia como se iriam construir dispositivos de memória, só após vários anos
que o primeiro circuito de memória foi desenvolvido.
A arquitetura de Von Neumann o processador executa estas funções:
15
• Busca de uma instrução (ciclo de fetch ou opcode fetch);
• Descodificação da Instrução (ciclo de instruction decode);
• Execução da instrução (ciclo de instruction execution).

A arquitetura computacional baseada nesses três elementos básicos mesmo


que com diversas dificuldades ainda é a melhor encontrada para a computação,
lembrando que a memória citada acima é a memória que troca dados diretamente
com o processador durante o ciclo de execução de seus comandos mais básicos, ou
seja, discos magnéticos e pendrives não devem ser confundidos com a memória
básica do computador.

A memória primaria possui interação direta com o processador, ou seja, ela


fica diretamente conectada aos seus barramentos, já a memória secundária
necessita de circuitos ou mecânica extra para que os dados presentes no
barramento do processador sejam gravados em sua mídia e vice-versa

1.4.3 Gerenciamento de I/O

I/O (Input/Output) ou E/S (Entrada/Saída) representa todos os dispositivos


eletromecânicos, eletrônicos e ópticos que são integrados a um sistema
computacional com o propósito de realizar a comunicação do processador e
memória com o meio externo. O computador seria uma maquina inútil caso não
existissem meios de realizarem-se as operações de entrada e saída.

“Os dispositivos de I/O, dispositivos periféricos ou apenas periféricos podem


ser classificados de forma ampla em três categorias’’. (STALLING, 1996, p. 179):

Human-Readable: Dispositivos apropriados para serem utilizados por


usuários do computador tais como o teclado, o mouse ou o monitor de vídeo.
Machine-Readable: São aqueles projetados para interligação do computa-
dor com outros equipamentos, tais como unidades de disco, CD-ROM ou fita
magnética.

17
Communication Destinado a realizar a comunicação do computador com
outros dispositivos remotos, tais como placas de rede ou modems.

1.5 Software Livre

1.5.1 O que é Software Livre

Existe a expressão em inglês para designar o que se chama nesse trabalho,


de software livre: Free Software1. O Termo Free Software costuma causar
alguma confusão em inglês, pois a palavra Free é freqüentemente
associada a “grátis”. Porém não é essa a filosofia dos idealizadores do Free
Software Foundation. A palavra Free significa liberdade porque leva em
consideração a liberdade e não o preço (FERRAZ, 2002, p. 8).

Inicialmente iremos desfazer um mal-entendido. Software livre não significa


software grátis. Software livre é uma questão de liberdade e não de preço. Segundo
(GNU, 2005) “Software livre se refere à liberdade dos usuários executarem,
copiarem, distribuírem, estudarem, modificarem e aperfeiçoarem o software.” GNU
(2005) especifica:

• A liberdade de executar o programa, para qualquer propósito;


• A liberdade de estudar como o programa funciona, e adaptá-lo para as suas
necessidades. Acesso ao código-fonte é um pré-requisito para esta liberdade;
• A liberdade de redistribuir cópias de modo que você possa ajudar ao seu
próximo;
• A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos,
de modo que toda a comunidade se beneficie. Acesso ao código-fonte é um
pré-requisito para esta liberdade.

Somente será considerado Software Livre o software que garanta as 4


liberdades apresentadas acima.

Para a proteção dos desenvolvedores foi criada a licença GPL (General


Public License), criada pela FSF (Free Software Foundation). A GPL permite que
programas sejam distribuídos e reaproveitados, mantendo, porém, os direitos do
autor, e sem permitir que essa informação seja usada de maneira indevida. A licença
não permite, por exemplo, que o código seja apoderado por outra pessoa, ou que
15
sejam impostos sobre ele restrições que impeçam a distribuição da mesma maneira
(livre) que foi adquirido.

Na GPL existe o conceito de copyleft. Trata-se se usar o conceito de


copyright que restringe o direito de cópia, para assegurar o seu inverso, a liberdade
de copiar (Silveira, 2004). A copyleft garante as 4 liberdades para o software livre
mostradas anteriormente e impõe uma restrição importante: nenhum software dele
derivado poderá se tornar um software proprietário.

A filosofia do Software Livre também defende o compartilhamento do


conhecimento bem como o trabalho colaborativo no desenvolvimento da tecnologia
e da ciência, procurando assegurar o direito autoral aos autores, bem como a
liberdade de cada um de contribuir ou apenas usufruir desta sem limitar a liberdade
dos demais.

1.5.2 Historia do Software Livre

Durante as décadas de 60 e 70, o software era visto como um complemento


do hardware para tornar os computadores úteis. No final dos anos 70, as empresas
começaram a impor algumas restrições no uso do software. E a partir daí a idéia da
construção de um sistema operacional livre foi ganhando cada vez mais adeptos e
vários componentes do Sistema Operacional foram desenvolvidos.

Atualmente, é possível encontrar software livre para praticamente todas as


finalidades. Desde as necessidades de um usuário doméstico até encontrar software
que rodam em servidores de grandes empresas.

Quem escolhe uma distribuição Linux livre, não paga taxa de atualização e
os custos referentes à atualização como treinamentos, Conversões de
programas e aquisição de equipamentos são inferiores Devido à
compatibilidade com as versões anteriores (ARAUJO, 2006, p. 01).

1.5.3 Porque Usar Software Livre?

Existem diversas razões para o uso do software livre, inicialmente citaremos


algumas de cunho individual:

• Poder utilizar o software para qualquer finalidade;


• Ter acesso ao código fonte e poder modificá-lo, sem quaisquer restrições;
16
• Poder copiá-lo e executá-lo em quantas máquinas desejar;
• Poder distribuí-lo, sem violar, é claro, essas liberdades a que todos têm
direito;
• Ter o seu computador equipado com software de qualidade a um custo baixo
ou nulo;
• Não ficar preso às restrições impostas pelas licenças de softwares
proprietários;
• Não ficar dependente de novas versões com preços abusivos que
eventualmente apresentam incompatibilidades com versões antigas;
• Não ficar dependente de um fornecedor;
• Ficar livre da pirataria;
• Incentivar o desenvolvimento de tecnologia local;
• Interagir e compartilhar soluções com sua comunidade seja físico ou virtual;
• Lutar contra o monopólio de grandes corporações que tentam se apropriar do
conhecimento intelectual coletivo para benefício próprio.

Além dos fatores apresentados Silveira (2004) nos apresenta 5 argumentos


para que um país em desenvolvimento como o Brasil adote o software livre:

1) Argumento macroeconômico;
2) Argumento de segurança;
3) Argumento da autonomia tecnológica;
4) Argumento da independência de fornecedores;
5) Argumento democrático.

Em seguida, iremos detalhar cada um dos argumentos:

1.5.3.1 Argumento Macroeconômico

A adoção do software livre permite reduzir de maneira drástica o envio de


royalties pelo pagamento de licenças de software, gerando maior sustentabilidade
do processo de inclusão digital da sociedade brasileira e de informatização e
modernização de empresas e instituições.

1.5.3.2 Argumento de Segurança

15
O modelo de software proprietário se afirma na ausência de transparência do
seu código-fonte, que deve permanecer fechado e escondido de seu usuário.
Usando o software livre, o governo pode analisar todo o código que adquire.
Também pode retirar rotinas duvidosas que estariam presentes no software em uso
e alterar estes softwares para aumentar o nível de segurança.

1.5.3.3 Argumento da Autonomia Tecnológica

A adoção de software livre amplia as condições de autonomia e capacitação


tecnológica do país, na medida em que permite que os usuários nacionais sejam
desenvolvedores internacionais. Além disto, o acesso à documentação e ao código-
fonte possibilita que os especialistas brasileiros acompanhem a evolução do
software e se capacitem para alterá-lo de acordo com os interesses de cada
organização.

1.5.3.4 Argumento da Independência de Fornecedores

Como o software livre traz o código fonte aberto, quando o governo opta por
seu uso este escapa do aprisionamento posterior à empresa que tenha desenvolvido
um software para o seu uso.

1.5.3.5 Argumento Democrático

As tecnologias de informação e comunicação estão se consolidando como


meio de expressão do conhecimento, de expressão cultural e de transações
econômicas. A limitação do acesso à informação restringe o direito de expressão e
de compartilhamento de conhecimento.

15
17
2. UNIX

2.1 A História do Unix

A história do Unix começou no final da década de 1960 e início de 1970, em


uma época em que os computadores eram grandes, caros e de difícil acesso a
pessoas comuns.
O Unix foi projetado para ser executado em computadores de grande
capacidade, ou seja, mini e supercomputadores, pois somente estas
máquinas poderiam oferecer recursos necessários para o ambiente gerado
pelo sistema operacional. (ALVARES, NASU, LANARI, MARIN, 1996, p.14)

Havia poucos computadores e vários pesquisadores necessitando dos


recursos destes para poderem dar andamento aos seus trabalhos, e os sistemas
operacionais da época não satisfaziam às necessidades desses profissionais. Era
então, imprescindível desenvolver um sistema operacional multiusuário, multitarefa,
que pudesse ser convertido para diferentes plataformas de hardware.

O Unix é um sistema operacional multiusuário, pois permite que vários


usuários utilizem o mesmo computador ao mesmo tempo, por meio de terminais
remotos, e também um sistema operacional multitarefa, pois permite que vários
programas sejam executados simultaneamente.

Inicialmente o Unix foi escrito em linguagem Assembly, que varia muito de um


computador para outro. A necessidade de converter o Unix para diversas
plataformas de hardware levou à criação de uma linguagem de programação na qual
qualquer programa pudesse ser convertido facilmente, com pouca ou nenhuma
alteração, para qualquer uma das plataformas. Essa linguagem foi denominada C,
que mesmo nos dias de hoje, continua moderna e poderosa. Logo o Unix foi
reescrito em C e convertido para as mais diversas plataformas de hardware, sendo
executado atualmente tanto em computadores de bolso como em
supercomputadores.

No início, o UNIX era distribuído gratuitamente pela AT&T (empresa que o


desenvolveu) para as universidades. Mais tarde, porém, percebendo o sucesso do
Unix no meio comercial, a AT&T logo passou a disponibilizá-lo por um preço muito
alto. Logo em seguida, departamentos de ciência da computação de diversas
universidades no mundo inteiro começaram a desenvolver programas comerciais
para o Unix, criando um grande número de usuários e desenvolvedores de utilitários
e programas.

Entre os vários pesquisadores que desenvolveram o Unix, destaca-se o grupo


da Universidade da Califórnia, em Berkeley, que em 1975 licenciou a versão 6 da
AT&T, fez diversos aprimoramentos e relançou-o como Unix BSD.
Conseqüentemente, os dois maiores centros de desenvolvimento do Unix são a
AT&T e Berkeley.

Na década de 80, surgiram muitas versões comerciais do Unix, como Sun OS


e Solaris, da Sun Microsystems, AIX, da IBM, OSF/1 (hoje chamado de digital Unix),
da Digital, IRIX, da Silicon Graphics, e HP-UX, da Hewlett Packard.Todas essas
versões são baseadas nas versões da AT&T e de Berkeley, freqüentemente com
muitos cruzamentos e acréscimos, resultando em uma confusão de versões do Unix,
porém, em 1990, o IEEE (Instituto de Engenheiros Elétricos e Eletrônicos) começou
a desenvolver o padrão POSIX (Portable Operating Systems Interface Unix) para
uniformizar as características dos sistemas Unix.
Apesar de ter sido desenvolvido para lidar com dispositivos e caracteres,
UNIX foi pioneiro na área de gráficos em estações de trabalhos. As primeiras
interfaces gráficas para usuários (GUI) foram projetadas e utilizadas em
sistemas operacionais UNIX, desenvolvidas pelo MIT. (ALVARES, NASU,
LANARI, MARIN, 1996, p.14)

Até meados da década de 80, o Unix ainda não possuía uma interface gráfica
própria. Porém, com o advento do X Window System (sistemas de janela X),
desenvolvido pelo MIT (Massachussets Institute Of Technology), ele passou a dispor
de um sistema gráfico do tipo cliente-servidor e independente de arquitetura do
computador.

Em 1988, o controle do X Window System foi passado para o X Consorcium


(Consórcio X), organização sem fins lucrativos criada para garantir a evolução do X.

Evolução do Unix.

As raízes do UNIX datam dos meados dos anos 60, quando a AT&T,
Honeywell, GE e o MIT embarcaram em um massivo projeto para desenvolvimento
de um utilitário de informação, chamado Multics (Multiplexed Information and
Computing Service). Multics era um sistema modular montado em uma bancada de
processadores, memórias e equipamentos de comunicação de alta velocidade. Ele
permitia que partes do computador pudessem ser desligadas para manutenção sem

33
que outras partes ou usuários fossem afetados. O objetivo era prover serviço 24
horas por dia e 365 dias por ano, ou seja, um computador que poderia ser tornado
mais rápido adicionando mais partes.

Em 1969, o projeto estava muito atrasado em relação ao seu cronograma e a


AT&T resolveu abandoná-lo. Mas o projeto continuou no MIT.

Neste mesmo ano, Ken Thompson, um pesquisador da AT&T que havia


trabalhado no Projeto Multics, pegou um computador PDP-7 para pesquisar algumas
idéias do Multics por conta própria. Logo Dennis Ritchie, que também trabalhou no
Multics, se juntou a ele. Enquanto Multics tentava fazer várias coisas, o UNIX
tentava apenas rodar bem os programas.

Em 1973 o UNIX foi reescrito em C, talvez o fato mais importante da história


deste sistema operacional. Isto significava que o UNIX poderia ser portado para
novo hardware em meses, e que mudanças eram fáceis. A linguagem C foi projetada
para o sistema operacional UNIX, e, portanto há uma grande sinergia entre C e
UNIX.

Em 1975 foi lançada a V6, que foi a primeira versão de UNIX amplamente
disponível fora dos domínios do Bell Labs, especialmente em universidades. Este foi
o início da diversidade e popularidade do UNIX. Nesta época a Universidade de
Berkley comprou as fontes do UNIX e alunos começaram a fazer modificações ao
sistema.

Em 1978 saiu a série 3BSD, que teve uma importante contribuição, virtual
memory.

Em 1979 saiu a V7. Esta foi a primeira versão vendida comercialmente do


sistema, usada principalmente por universidades.

Em 1983 é lançado o System V da AT&T e o 4.2 BSD. O SV incluía o pacote


IPC (shm, msg, sem) para comunicação entre processos. Surgiram outras versões
do SV com a inclusão de novas características como sharedlibs no SVR4.O 4.2BSD
foi talvez uma das mais importantes versões do UNIX. O seu software de conexão
de redes tornava muito fácil a tarefa de conectar computadores UNIX a redes locais.
Nessa versão é que foram integrados os softwares que implementam TCP/IP e
sockets.

Em 1988 foi lançado o SVR4 incorporando as seguintes características:

34
• BSD: TCP/IP, sockets, csh, ...

• SVR3: sysadmin,...

• SunOs: NFS, OpenLook GUI, X11/NeWS, virtual memory subsystem with


memoy mapped files, shared libraries (!= SVR3)

• Ksh

• O 4.4BSD foi lançado em 1992 para várias plataformas: HP 9000/300, Sparc,


386, DEC e outras, mas não em VAX. Entre as novas características estão:

• Novo sistema de memória virtual baseado em Mach 2.5

• Suporte ISO/OSI (baseado em ISODE)

A Sun Microsystem também lançou a sua versão do UNIX a partir do BSD.


Isto ocorreu até a versão SunOs 4.x. A nova versão, SunOs 5.x está baseada no
SVR4, embora tenha herdado algumas características do SunOs 4.x. O novo
sistema operacional da Sun, Solaris 2.x, é um SO que engloba SunOs 5.x, Open
Network Computing e Open Windows. É o solaris que provê o pacote de
compatibilidade entre os BSD/SunOs e o SVR4/SunOs 5.x.
A Microsoft também lançou uma versão do UNIX, chamada XENIX, que
rodava em PCs. Este sistema era inicialmente baseado na Versão 7, depois herdou
características dos SIII e depois do SV.

2.1.1 Características do Unix

O Unix é o único sistema modular, que permite aos programadores ou


usuários avançados, acrescentar ou remover partes para adaptá-lo as suas
necessidades, Os programas em unix sao como quebra-cabeça: os módulos se
encaixam como conexões padrão, você pode tirar um módulo, trocar por outro ou
ate mesmo expandir adicionando mais módulos. O sistema Unix de cada
desenvolvedor é único. Ele pode adaptar o sistema de acordo com suas
necessidades
O Sistema Unix é um sistema Multitarefa, varias tarefas podem ser
executadas de uma só vez, é multiusuário, podem-se conectar vários terminais em
um servidor e cada usuário através da sua conta acessar o sistema e realizar
trabalhos, pesquisas e etc.

32
O sistema Unix também possui algumas particularidades em outras partes
do sistema, estas são:

1. Ambiente Shell: O Unix possui dois shells, o Bourne e o Shell C, no Unix o


shell permite a escrita de caracteres especiais (* ? [...]) em nomes de arquivos
e permite o uso de arquivos que começam com ponto, são os chamados
arquivos escondidos: .logout, .login, etc.
2. Sistema de Arquivos: O Sistema de Arquivos do Unix é hierárquico, para
implementar ele usa um arquivo especial conhecido como diretório, além
destes o Unix também utiliza outros “arquivos” especiais que na verdade não
são realmente arquivos, mas dispositivos, como drives de disco.
3. Arquivos: Tudo no Unix é um arquivo (programas, dados, diretórios, disco,
teclado, impressora, etc.). O unix considera a diferença entre maiúscula e
minúscula, não é colocada a extensão do arquivo no nome, se o arquivo tiver
extensão ela é utilizada apenas como identificação.
4. Permissões e Propriedades dos Arquivos: Todo arquivo tem um
proprietário. O superproprietário pode alterar a posse dos arquivos se
necessário. O proprietário dos arquivos pode definir permissões de acesso ao
arquivo.
5. E-Mail: O Unix possui um controle de e-mails o usuário pode cadastrar seu e-
mail para receber e enviar mensagens.
O Unix é um sistema usado de tantas maneiras que o sistema operacional
básico gerou inúmeras implementações. Uma implementação é uma versão
adaptada ao sistema para um computador específico.

2.2 História Do Microsoft Windows

A palavra Windows em inglês significa janelas. A sua interface é baseada


num padrão de janelas que exibem informações e recebem respostas dos
utilizadores através de um teclado ou de cliques do mouse.
Este padrão de interface não foi, no entanto, criado pela Microsoft. O registro
da marca Windows foi legalmente complicado, pelo fato de essa palavra ser de uso
corrente em inglês.

32
A Microsoft começou o desenvolvimento de um Gerenciador de Interface
(subseqüente renomeado Microsoft Windows) em setembro de 1981. O Windows só
começa a ser tecnicamente considerado como um SO a partir da versão Windows
NT, lançada em Agosto de 1993. O que havia antes eram sistemas gráficos sendo
executados sobre alguma versão dos sistemas compatíveis com DOS, como MS-
DOS, PC-DOS ou DR-DOS. Somente o MSDOS era produzido pela própria
Microsoft.
O MS-DOS é um sistema operativo que não dispõe de interface gráfica,
funciona através de comandos de texto introduzidos no teclado pelo utilizador. O
Windows surgiu inicialmente como uma interface gráfica para MS-DOS, que permitia
correr programas em modo gráfico, o que permitiu a utilização do mouse, que até a
altura era considerado supérfluo em computadores de tipo IBM-PC.

2.2.1 Principais Versões

O Windows 3.0 foi o primeiro sucesso amplo da Microsoft e foi lançado em


22 de Maio de 1990. Ao contrário das versões anteriores, ele era um Windows
completamente novo. Tecnicamente, esta versão é considerada o primeiro sistema
gráfico da empresa. Era um sistema gráfico de 16 bits, mas ainda precisava ativar
primeiro o MS-DOS para ativar o Windows. Substituiu o MS-DOS Executive pelo
Gerenciador de Programas e o Gerenciador de Arquivos que simplificavam as
aplicações e tornava o sistema mais prático. Melhorou bastante a interface, o
gerenciamento de memória e o sistema multitarefa. Conseguiu ultrapassar o limite
de 1 MB do MSDOS e permitiu a utilização máxima de 16 MB de aplicações.
Naquela época era o único possível de compatibilizar todos os programas das
versões anteriores.

34
Windows 95: É o primeiro S.O. de 32 bits e foi lançada em 24 de Agosto de
1995. Ele era um Windows completamente novo, e de nada lembra os Windows da
família 3.xx. O salto do Windows 3.0 ao Windows 95 era muito grande e ocorreu
uma mudança radical na forma da apresentação da interface. Introduziu o Menu
Iniciar e a Barra de Tarefas. Nesta versão, o MS-DOS perdeu parte da sua
importância visto que o Windows já consegue activar-se sem precisar da
dependência prévia do MS-DOS. As limitações de memória oferecidas ainda pelo
Windows 3.0 foram praticamente eliminadas nesta versão. O sistema multitarefa
tornou-se mais eficaz. Utilizava o sistema de ficheiros FAT-16 (VFAT). Os ficheiros
(arquivos) puderam a partir de então ter 255 caracteres de nome (mais uma
extensão de três caracteres que indica o programa que abre o arquivo). Existe uma
outra versão do Windows 95, lançada no início de 1996, chamada de Windows 95
OEM Service Release 2 (OSR 2), com suporte nativo ao sistema de arquivos FAT32.
Já o Windows 95, a partir da revisão OSR 2.1, incluía o suporte nativo ao
Barramento Serial Universal (USB).

Windows 98: Esta versão foi lançada em 25 de Junho de 1998. Foram


corrigidas muitas das falhas do seu antecessor. A maior novidade desta versão era a
completa integração do S.O com a Internet. Utilizava a Internet Explorer 4. Introduziu
o sistema de arquivos FAT 32 e começou a introduzir o tele trabalho (só foi possível
devido à integração da Web). Melhorou bastante a interface gráfica. Incluiu o suporte
a muitos monitores e ao USB (Universal Serial Bus). Mas, por ser maior do que o
Windows 95 e possuir mais funções eram também mais lentos e mais instáveis.
Nessa versão, nasce a restauração de sistema via MS-DOS (Scanreg.exe /restore).
A restauração de sistema visava corrigir problemas retornando o computador a um
estado anteriormente acessado (ontem, antes de ontem, etc).
Windows 98 Segunda Edição: (Windows 98 SE). Foi lançada em 1999 e
esta versão visava corrigir as falhas (bugs) e resolver os problemas de instabilidade
do Windows 98. Incluía drivers e programas novos. Substituiu a Internet Explorer 4
pela versão 5, que era mais rápida, e introduziu a Internet Connection Sharing, que
permite a partilha de uma rede de internet para muitos computadores. Acrescentou
também o NetMeeting 3 e suporte a DVD. Muitos utilizadores classificam este
sistema como um dos melhores da Microsoft, apesar de ser tratar de um sistema
operacional sem suporte a multitarefa real, e ainda tendo o DOS como o seu núcleo
principal.
34
Windows ME: Foi lançado pela Microsoft em 14 de Setembro de 2000, sendo
esta a última tentativa de disponibilizar um sistema baseado, ainda, no antigo
Windows 95. Essa versão trouxe algumas inovações, como o suporte às máquinas
fotográficas digitais, aos jogos multi jogador na Internet e à criação de redes
domésticas (home networking). Introduziu o Movie Maker e o Windows Media Player
7 (para competir com o Real Player) e atualizou alguns programas. Possuía a
Restauração de Sistema (um programa que resolvia problemas e corrigia bugs).
Introduziu a Internet Explorer 5.5. Algumas pessoas crêem que este foi apenas uma
terceira edição do Windows 98 e que foi apenas um produto para dar resposta aos
clientes que esperavam por uma nova versão. Muitas pessoas achavam-no
defeituoso e instável, o que seria mais tarde comprovado pelo abandono deste
segmento em função da linha OS/2-NT4-2000-XP, criada originalmente pela IBM e
posteriormente adquirida pela Microsoft. Na mesma época, foi lançada uma nova
versão do Mac OS X e a Microsoft, com receio de perder clientes, lançou o Windows
ME para que os fãs aguardassem o lançamento do Windows XP.
Windows XP:Lançada em 25 de Outubro de 2001 e é também conhecida
como Windows NT 5.1. Roda em formatações FAT 32 ou NTFS. A sigla XP deriva
da palavra experiência.
Uma das principais diferenças em relação às versões anteriores é quanto à
interface. Trata-se da primeira mudança radical desde o lançamento do Windows 95.
Baseada no antigo OS/2 da IBM, cujos direitos foram comprados pela Microsoft, e,
seguindo a linha OS/2-NT-2000-XP, a partir deste Windows, surgiu uma nova
interface, abandonando o antigo formato 3D acinzentado.
Esta versão do Windows foi considerada como a melhor versão já lançada
pela Microsoft para usuários domésticos, possui uma interface totalmente simples a
inovadora. Um dos problemas é seu consumo, ele só pode ser instalado em
estações com mais de 128MB de memória, e cada vez que a Microsoft lança uma
nova versão, é cada vez maior e mais abstraído do hardware.
Versões: Home, Professional, Tablet PC Edition, Media Center Edition,
Embedded, Starter Edition e 64-bit Edition. O nome de código desta versão, antes
do lançamento era Whistler.
Windows Vista: Também conhecido como Windows NT 6.0, pelo nome de
código Longhorn e pelo próprio nome oficial Vista, tem seis versões, uma delas
simplificada e destinada aos países em desenvolvimento. O Windows Vista começou

36
a ser vendido em 30 de Janeiro de 2007. As seis edições diferentes do Windows
Vista foram projetadas para se ajustar ao modo como você pretende usar seu PC.
Ele tem uma interface intitulada Aero, com recursos de transparência, que não existe
na Versão Starter e um sistema de alternância 3D de janelas chamado Flip 3D, que
é ativado pelo atalho Logotipo do Windows + Tab.
Versões do Windows Vista: Windows Vista Business, Windows Vista
Enterprise, Windows Vista Home Premium, Windows Vista Ultimate, Windows Vista
Home Basic.

Windows Seven:. Foi primeiro sistema da Microsoft com um beta publico


lançado. Milhões de downloads foram feitos. O marketing da Microsoft se
transformou em um dos maiores eventos de lançamento de um sistema operacional
já esperado.
O lançamento tão recente de um novo Windows foi devido a mal aceitação do
Windows vista pelo publico, considerado como um sistema “pesado”, fator que o fez
não ser bem executado em maquinas que não eram atuais, e varias
incompatibilidades com programas antigos fizeram o que seria o sucessor definitivo
do Windows XP, fosse um vilão na historia da Microsoft.
O Windows 7, foi otimizado para ser tão belo quanto o Windows Vista, alem
de ser rápido como Windows XP. Só em gráficos o Seven utiliza dos mesmos efeitos
que o Vista porem utiliza apenas 50% dos recursos pedidos pelo seu antecessor, um
sistema mais compatível com programas antigos, e que tem um desempenho bem
aceitável em maquinas mais fracas em processamento.
Apesar de já existirem versões em 64bits tanto no XP como no Vista, é o no
Windows 7 que a computação em 64bits ganhou uma proporção muito maior, os
motivos alem da tecnologia ter ficado mais barata é a capacidade do sistema
trabalhar com as duas arquiteturas sem perder desempenho 32bits como em ser
mais rápido em 64bits. Há comparações na internet em que programas em 32bits
rodam mais rápido em um Windows 7 64bits do que em um Windows XP 32bits.
Foram lançadas varias versões do sistema, com recursos reduzidos em cada
versão destinada a um tipo de público, a versão final denominada Ultimate como no
vista, abrange todos os recursos disponíveis.

33
34
3. VANTAGENS E DESVANTAGENS DOS SISTEMAS
OPERACIONAIS

As empresas brasileiras têm um índice de adoção de software aberto em sua


infraestrutura de TI muito maior do que a média mundial. Entre as grandes
corporações, a relação de companhias que utilizam algum tipo de software livre
chega a 61%.
Os dados são de um estudo publicado pelo CGI.br, que levantou o uso de
Tecnologia de Informação e Comunicação no mercado corporativo em 2008.
Segundo a pesquisa, considerando as empresas de todos os portes, 26% delas
utilizam software de código aberto em sua estrutura de TI.
Se comparada à média de outros países, em que a adoção não chega a 10%
no mercado corporativo, “pode-se dizer que, o Brasil está muito bem na adoção de
software livre”, afirma o coordenador do Comitê Gestor da Internet no Brasil,
Augusto Cesar Gadelha.
Foram consultadas 3,5 mil empresas que atuam no Brasil, acima de 10
funcionários, de todas as regiões do país. Entre as empresas médias, a adoção
chega em 44% das companhias. O que puxa para baixo o percentual geral são as
pequenas empresas. Elas possuem uma representatividade muito grande na
amostragem e apenas 22% delas utilizam software livre.

3.1 Confiabilidade

A estrutura do sistema operacional afeta diretamente na sua confiabilidade, a


confiabilidade de um sistema operacional hoje em dia se caracteriza pelos seguintes
tópicos:
1. Reduzir o numero de faltas criticas - uma das estratégias muito importante
nesta questão é um kernel muito pequeno. é bem entendido que mais
código significa mais bugs, assim significa menos bugs no kernel.
2. Limitar estragos que cada bug pode causar – Reduzir o tamanho do kernel
não reduz a quantidade de código presente. Apenas desloca uma grande
parte dele para o modo usuário. Entretanto, esta mudança tem um efeito
profundo na confiabilidade. Código de kernel tem acesso completo ara tudo
o que a máquina pode fazer.
3. Recuperar falhas comuns – se tivermos a capacidade de detectar o
termino ou queda de um driver ou serviço do sistema será possível
automaticamente recuperá-lo através do seu reinício.

3.2 Segurança

O Linux tem características de segurança bem superiores por ter se


baseado no Unix que desde o começo preocupou-se com esta questão. O Windows
parece ter se preocupado como isto só depois de ter sido projetado. No Linux
quando baixamos um arquivo ou copiamos de outro computador, as permissões de
execução do arquivo são retiradas. Desta forma, quem define se um programa
executa ou não é o dono do arquivo. Isso previne que vírus possam infectar a
máquina, apesar de que o número de vírus conhecidos para o Linux é muito
pequeno. No Windows, o número de vírus conhecidos é enorme. Como o código
fonte do Linux é disponibilizado, milhares de pessoas podem encontrar

vulnerabilidades e apontar as correções. Os hackers são bem-vindos já que são


eles que contribuem com a estabilidade do sistema. No Windows, o código é
mantido secreto como um meio de esconder as vulnerabilidades.

3.3 Portabilidade

Segundo Hisham H. Muhammad “O conceito de portabilidade, adquire, com o


modelo de desenvolvimento de software livre, novas proporções. Software proprietários
normalmente são desenvolvidos visando as arquiteturas de hardware e software
dominantes no Mercado e manter uma equipe de desenvolvimento e testes para
arquiteturas menos utilizadas é inviável para a maioria das empresas, mesmo que na
prática, garantir a portabilidade de um programa muitas vezes envolva apenas cuidados
triviais.”
O Linux e sistemas Unix hoje em dia não enfrentam um fantasma da portabilidade
pela falta de drivers, kexts e etc. As distribuições Linux estão cada vez mais completa
com bando de dados de drivers existentes e a cada hardware novo Lançado em pouco
tempo já se obtém o drive para rodar em ambiente Linux.
No caso do Windows, por mais problemático que alguns drivers tenham sido o
ambiente da portabilidade para ele sempre foi enorme, o mercado voltado para ele
sempre o ajudou, qualquer desktop mundial hoje em dia tem capacidade para rodar
algum sistema Windows já feito, tanto faz o mais antigo ou o mais recente.
42
3.4 Estabilidade

Em questões de estabilidade o Unix reina supremo, mesmo com o crescimento da


estabilidade do Microsoft Windows em suas ultimas versões: Windows Xp, vista e
principalmente o Windows 7, dificilmente se tem noticia de um usuário Linux reclamando
de instabilidade ou um usuário Mac Os X que tem certificado Unix reclamando de
travamentos. Um exemplo de estabilidade são os computadores Alpha Digital com Linux,
ligados em rede, renderizaram as cenas do filme Titanic, durante 3 meses,
ininterruptamente. Em grandes empresas, geralmente os servidores são Linux.

3.5 Robustez

O Linux herda quase todas características do Unix e por isso é mais robusto e
resistente a falhas do sistema. Normalmente, um erro de um aplicativo não fecha todo
o sistema como frequentemente ocorre no Windows em que surge uma famosa tela
azul e o sistema é reiniciado. Dificilmente uma atualização do sistema ou instalação
de um novo aplicativo exige uma reinicialização a não ser, por exemplo, que o
kernel tenha sido atualizado. Acontece normalmente de um serviço ou aplicativo ser
reiniciado e não o sistema todo como acontece a cada nova instalação de um
aplicativo no Windows. “Isso [fatores acima] pode ser muito importante para grandes
organizações e empresas, onde mesmo alguns minutos fora do ar podem significar
grandes perdas” (ARAÚJO, 2006).

3.6 Usabilidade

Linux vem sendo utilizado largamente nas universidades brasileiras.


No princípio sua utilização se devia a carência de recursos das universidades
públicas e ao fato de ser gratuito e de rodar em máquinas de baixo custo,
como computadores pessoais. Entretanto, as universidades perceberam o seu
verdadeiro potencial: um sistema veloz, robusto e confiável e que permite ensinar
aos estudantes como realmente funcionam os computadores. Muitas aplicações
desenvolvidas em universidades exigem processamento intensivo de dados,
principalmente numéricos. O Linux é superior em processamentos pesados.

42
“A Faculdade de Saúde Pública da USP, por exemplo, usa o sistema desde
1996, no processamento de dados em programas de modelagem molecular -
que envolvem uma série de simulações, destinadas a permitir que os
pesquisadores entendam a conformação e o comportamento das moléculas em
determinados meios.“É uma quantidade de cálculos muito grande, por causa
do número de átomos de cada molécula", diz o professor José Alfredo Gomes
Arêas, do grupo de Modelagem Molecular da faculdade.”
“Ele conta que, antes, esse trabalho era executado na máquina Cray do
Laboratório Central de Computação Avançada da USP. Depois que passou a
ser feito nos três micros Pentium (o mais rápido de 400 MHz) com Linux
instalados no grupo de Modelagem Molecular, o processamento ficou mais
rápido do que no Cray. Arêas conta que uma simulação, que hoje leva cerca de
12 horas para ser feita, demorava de três a cinco vezes mais para ficar pronta
no Cray.” (REVISTA DO LINUX, CONECTIVA S/A, 2000, p. 27)
O Linux é um excelente servidor web.

“A confiabilidade e robustez do Linux também tem feito desse sistema o


preferido para uso como servidor de e-mail, de Internet e de redes em geral. Na
Universidade Federal de Minas Gerais (UFMG), o Centro de
Computação mantém um servidor de transferência de arquivos (ftp)
anônimo com Linux, compartilhado pela comunidade universitária e por outros
usuários do backbone da Rede Nacional de Pesquisas (RNP).” (REVISTA DO
LINUX, CONECTIVA S/A, 2000, p. 27)

O Laboratório de Manufatura Integrada por Computador da Pontifícia


Universidade Católica do Rio Grande do Sul (PUC-RS), utiliza Linux para desenvolver
aplicações na área de automação e robótica. O Centro Universitário do Norte
Paulista (UNORP), abriga uma unidade do Colégio Positivo, com cerca de 500
crianças e jovens, da pré-escola ao 3º colegial que utilizam os laboratórios
da universidade, baseados em Linux. Escolas Goianas recebem laboratórios de
informática todos adotados com o sistema Linux Educacional do MEC. Aos poucos, as
universidades públicas e instituições de ensino de todo o país adotarão o sistema
Linux, reduzindo custos com licenças de software“ provendo ao estudante
oportunidade de estudar como os computadores funcionam ao invés de apenas
aprender a utilizá-los ” (ARAÚJO, 2006).
O Microsoft Windows é o sistema mais utilizado do mundo, sua aceitação e
crescimento maciço na sociedade, fez com que a usabilidade do sistema fosse símbolo
de usabilidade de softwares, organização de pastas, programas e arquivos as vezes
tem grandes semelhanças com outros sistemas por estes tentarem ser parecidos, o
sistema Windows em usabilidade.

43
3.7 Distribuição livre ou proprietária

O Software Livre mantém o direito de copyright do autor, mas permite a livre


distribuição, alteração e acesso ao código fonte. O Software Livre pode ser vendido ou
distribuído sem custos, mas sempre deve ser disponibilizado o código fonte. Ao contrário
do software proprietário, pode-se obter uma cópia e instalar o software em diversas
máquinas. Richard Stallman, o principal idealizador do conceito de Software Livre,
idealizou a licença GNU GPL que formaliza a licença dos softwares livres. Um exemplo
de Software Livre é o sistema operacional Linux.
O licenciamento Proprietário garanto ao autor ou fabricante do software
plenos poderes de venda, distribuição ou modificação do código fonte. Um usuário
deste programa normalmente deve pagar uma taxa pela utilização, o que lhe da
direito a uma ou varias licenças de uso. Normalmente não se tem o direito de acesso
ao código fonte o que não permite modificações ou melhorias no software mesmo
que seja para o uso próprio, o que torna o usuário altamente dependente do
fornecedor para obter atualizações sobre falhas de segurança e etc. O usuário do
software não tem o direito de redistribuir o software. O Principal exemplo de software
proprietário é o sistema operacional Windows.

41
4. PESQUISA DE CAMPO

4.1 Introdução

Atualmente o reinado do Windows como singularidade de sistema


operacional é bem clara, não só pelo mundo, mas em nossa região podemos
observar o quanto o sistema da Microsoft é difundido e usado, mesmo que por
meios ilegais o Windows continua em crescimento, observando o fator da inclusão
digital, cada vez mais as pessoas vão adquirindo computadores e estes vem em sua
grande maioria com o sistema de Bill Gates.
Às vezes em que encontramos alguém que compra um PC com um sistema
livre, logo a pessoa é instruída a formatar o computador e colocar Windows.
Para analisar e termos uma ideia de como é o conhecimento de uma parte
da população sobre os sistemas operacionais, elaboramos uma pesquisa com dados
básicos para analisar o conhecimento e o quanto este influencia na decisão de qual
sistema operacional usar.

4.2 Resultados da Pesquisa

Entrevistamos 20 pessoas, encontramos na nossa região uma disparidade


enorme entre os conhecimentos sobre T.I, é evidente que a cada dia a inclusão
digital aumenta e as pessoas são levadas ao uso da informática no dia a dia, mas a
verdade é que poucos são os interessados em saber com o que estão lidando, a
grande maioria apenas usa e não entende de termos técnicos, devido a este motivo
direcionamos a pesquisa ao meio acadêmico, um local onde encontramos pessoas
que tem um conhecimento mais elevado sobre termos de T.I, mas que ainda
encontramos pessoas quase que cruas em conhecimento quando se fala em
sistemas operacionais, software, hardware e etc.
Na pesquisa abordamos os seguintes temas:
1. Questões básicas – abordando o básico sobre conhecimento em
informática ex. Tempo que usa o computador
2. Questões Especificas – abordando sobre o Sistema Operacional
3. Questões sobre Software Livre – abordando o básico em software
livre, ex. Se o entrevistado sabia o que era Software Livre
4. Questões sobre Software Privado – abordando questões sobre preço
e pirataria
5. Questões Finais – Como a pessoa avalia o sistema que ela utiliza.

Algumas questões não incluíam apenas uma resposta em seu cabeçalho, ou seja, a
pessoa poderia marcar mais de uma opção. Como por exemplo:

Questões especificas:
5. Pra que finalidade você utiliza o computador?
( )Trabalho ( )Estudo ( )Diversão ( )Outros Fins

Os resultados mais interessantes da Pesquisa foram:


Pessoas que possuem qualquer Curso de Informática

Gráfico 1 – Pesquisa realizada pela aluna Luciana no dia 10 de Novembro de 2010. Analise de dados
sobre entrevistados que fizeram qualquer curso de informática e os que não fizeram.

Das 20 pessoas entrevistadas, 19 pessoas têm curso de informática no


mínimo um curso básico e ha pessoas que tem cursos avançados e de programas
específicos.

46
Tempo diário com o computador

15

10

13

7
MAIS DE 3 HORAS

MENOS DE 3 HORAS

Gráfico 2 – Pesquisa realizada pela aluna Luciana no dia 10 de Novembro de 2010. Analise dos
dados para definir o tempo que cada pessoa passa em frente ao computador.

13 das 20 pessoas usam o computador diariamente por mais de 3 horas enquanto 7


usam no limite de 3 horas ou menos.
Pessoas que ouviram falar sobre Linux

NUNCA OUVIRAM
5,0%

OUVIRAM FALAR EM LINUX


95,0%

Gráfico 3 – Pesquisa
realizada pela aluna Luciana no dia 10 de Novembro de 2010. Analise dos dados para definição da
porcentagem que já ouviu falar em Linux.

95% dos entrevistados já ouviram falar em Linux

46
Pessoas que usam Windows e Linux

20

15

20
10

7
Usam windows
0
Usam ou ja usaram Linux

Gráfico 4 – Pesquisa realizada pela aluna Luciana no dia 10 de Novembro de 2010. Analise dos
dados para definição das pessoas que usam Windows e os que ja usaram ou usam o Linux.

7 dos 20 entrevistados já usaram ou usam Linux

Pessoas satisfeitas com SO usado

20

15
16

10

0
4

Satisfeitas
Insatisfeitas

Gráfico 5 – Pesquisa realizada pela aluna Luciana no dia 10 de Novembro de 2010. Analise dos para
definição de quantas estão satisfeitas e insatisfeitas com o sistema que usam.

16 Pessoas se dizem satisfeitas com os sistemas que usam enquanto que 4


não estão satisfeitas

46
Características a serem melhoradas no SO

4%
54% 12%

31%

Gráfico 6 – Pesquisa realizada pela aluna Luciana no dia 10 de Novembro de 2010. Analise dos
dados das respostas, para definir qual característica deve ser melhorada no sistema.

Os dois requisitos que são indicados para serem melhorados no sistema são:
Segurança e Estabilidade.
Em questões especificas a questão 4, pedia a opinião do entrevistado sobre
qual sistema operacional é melhor, das respostas encontradas destacamos:

1. “Cada um tem sua particularidade eu uso o Windows e o Linux e aprovo os


dois sistemas operacionais” – Raimundo H. Pereira
2. “O melhor vai depender de muitos fatores, como segurança, desempenho,
suporte, compatibilidade.” – Nivaldo S. de Jesus
3. “Linux porque é grátis, possui maior segurança, exige maquinas menos
potentes e hoje em dia existe vários programas para ele.” – Janderson José

Analisando a fundo as respostas dos mesmos pudemos observar que


possuem um alto conhecimento em software livre, conhecem ambos mais distros
Linux e já tentou mudar de sistema operacional, isto prova o que é comentado e
disseminado na internet. Linux ou Unix em si é um sistema mais utilizado por
pessoas que tem mais conhecimento em T.I do que pessoas que tem pouco
conhecimento, pois estas ficam presas no que é mais fácil para elas e não buscam
obter ou aprender coisas novas na questão de novos sistemas.

46
CONSIDERAÇOES FINAIS

O sistema operacional é um programa de computador muito complexo, ele


em si tem toda a responsabilidade de gerenciar a máquina, os arquivos e
informações do usuário além de trazer a este os recursos responsáveis pela
interação amigável entre ele e o homem.
Por mais que o homem consiga adaptar um sistema ao seu gosto, criar um
SO que supra e acabe com todas as falhas neste momento com a tecnologia que
temos é impossível, sempre haverão falhas, sempre haverão acertos, da mesma
forma como pensamos, agimos e fazemos coisas diferentes, assim são os SO’s eles
pensam agem e são diferentes para suprir os desejos e vontades de homens que
não são iguais.
O Windows ganhou o mundo, ele nasceu, cresceu e amadureceu junto com
a evolução da informática, o sortudo além de surgir no momento certo, evoluiu com
o tempo e sempre se adaptou as novas tecnologias e conceitos impostos pela
revolução da informática no mundo. O Windows hoje em dia é sinônimo de sistema
operacional, mesmo pessoas leigas em informática, aprendem a usar seu sistema. A
facilidade de uso é muito grande.
O Unix foi criado para facilitar e ser o sistema mais versátil e seguro do
mundo, por mais que digam que o Unix não é tão visado em ataques quanto o
Windows, seu gerenciamento de contas e permissões é invejado pelo seu
concorrente famoso (Windows).
O Unix em si, não prevê facilidade de uso a usuários que não são
conhecedores do sistema, talvez por isto, o Linux mesmo com tantos anos de
estrada não conseguiu uma fatia de mercado interessante, só agora isto vem sendo
explorado e uma fatia um pouco maior de usuários começou a utiliza-lo, varias
distros estão investindo pesado em portabilidade e na facilidade de operação da
maquina, limitando ao máximo possível o uso do Terminal para solução de
problemas e configuração do sistema.
O sistema Mac Os X da apple que possui certificado UNIX, desde o inicio
aparou as arestas do Unix, removendo da tela 99% do que 99% dos usuários não
irão usar, e hoje em dia tem um sistema que é chamado de “Sistema Operacional
mais avançado do mundo”. O Mac Os X combina um núcleo robusto, seguro e
rápido com uma interface, intuitiva e muito amigável ao usuário.

48
A utilização do sistema operacional varia muito de usuário para usuário.
Trabalho, diversão, lazer, cada sistema tem um pouco de tudo, o usuário final é que
decide qual ele vai utilizar. A formação educacional da pessoa em nível de
tecnologia computacional, opinião pessoal, identificação e os primeiros passos
dados na computação, influenciam a decisão na escolha do sistema. Segurança,
estabilidade e velocidade são tópicos importantes abordados durante uma pesquisa
sobre sistema operacional, mesmo que alguns prefiram qualquer sistema que seja
fraco em uma das três características citadas acima, prevalece o uso pela
característica que ela cita como mais importante.
O sistema perfeito para o usuário comum é aquele que a pessoa mais se
adéqua a ele, não importa segurança, não importa velocidade, aos olhos de quem
vê, independente de testes ou de provas de qual é melhor e qual é pior fica
estabelecido que o sistema perfeito é aquele que satisfaz o usuário.

REFERENCIAS

46
William S. DAVIS. Sistemas Operacionais: uma visão sistemática. RJ, 1991.

Abraham SILBERSCHATZ and Peter Baer GALVIN. Sistemas Operacionais:


Conceitos, 5a Edição. SP, 2000.

Andrew S. TANENBAUM. Modern Operating Systems. NJ, 1992.

Andrew S. TANENBAUM. Distributed Operating Systems. NJ, 1995.

CARDOSO, Carlos. Linux Curso Básico & Rápido. RJ, 1999.

TAURION, C. Software Livre: potencialidades e modelos de negócios. RJ, 2004.

BACIC, Nicolas Michel. O software livre Como Alternativa ao Aprisionamento


Tecnológico Imposto pelo software proprietário. Campinas, 2003.

SILVEIRA, Sérgio Amadeu da, Software Livre: a luta pela liberdade do


conhecimento, SP 2004.

ARAUJO, Fabio, 25 Motivos para migrar para um Software Livre, SP 2007

CONECTIVA S/A, Revista do Linux, 2000.

ALVARES Marco, NASU Claudia, LANARI Alfredo, MARIN Luciene. Linux Curso de
Introdução ao Linux, MS 1996.

APÊNDICE

48
Apêndice A – Pesquisa de Campo Sobre Sistemas Operacionais

Pesquisa de Campo sobre Sistemas Operacionais

Informações do entrevistado
46
Nome:________________________________________________
Escolaridade:___________________________________________
Cidade:_______________________________________________

Questões Básicas

1.Você já utilizou ou sabe utilizar um computador?


( ) Sim ( ) Não ( ) Mais ou Menos
2. Já fez algum curso de Informática?
( ) Nenhum ( ) Básico ( ) Avançado ( ) Especializado
3. Você tem computador em casa?
( ) Sim ( ) Não
4. Quantas horas você usa o computador por dia?
( ) 1 Hora ( ) 2 Horas ( ) 3 Horas ( ) Mais de 3 Horas

Questões Específicas

1. Quais destes nomes você já ouviu falar?


( ) Windows ( ) Linux ( ) Mac Os ( ) MS-DOS
2. Você sabe o que é um sistema operacional?
( ) Sim ( ) Não ( ) Já Ouvi Falar
3. Qual sistema operacional você utiliza?
( ) Windows ( )Linux ( ) Mac Os ( ) Outros
4. Em sua opinião qual sistema operacional é o melhor? Por quê?

5. Pra que finalidade você utiliza o computador?


( ) Trabalho ( )Estudo ( )Diversão ( ) Outros Fins

Questões Sobre Software Livre

1. Você sabe o que é Software Livre?

48
( ) Sim ( ) Não
2. Conhece algumas dessas distros?
( ) Ubuntu ( ) Debian ( ) Kurumim ( ) Outros
3. Qual deles você utiliza?
( ) Ubuntu ( ) Debian ( ) Kurumim ( ) Outros
4. Sua opinião sobre o sistema
( ) Ótimo ( ) Bom ( ) Regular ( ) Ruim

Questões sobre Software Privado

2. Você sabia que o Windows é um sistema operacional pago?


( ) Sim ( ) Não
3. Quanto você acha que custa uma licença do Windows?
( ) Entre 50 e 150 reais ( ) De 150 a 300 reais ( ) Mais de 300 reais
4. Você teria coragem de pagar mais de 300 reais por uma licença do Windows?
( ) Sim ( ) Não
5. Você já pagou para formatar o seu computador e instalar o Windows?
( ) Sim ( ) Não
6. Quanto custou?

Questões Finais

1. Está satisfeito com o seu sistema operacional?


( ) Sim ( ) Não
2. Já tentou e/ou deseja trocar de sistema operacional?
( ) Sim ( ) Não
3. O que você acha que poderia ser melhorado no seu sistema operacional?
( ) Segurança ( ) Facilidade se Uso ( ) Velocidade ( ) Estabilidade

48

Você também pode gostar