Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Fundamentos Dos SO Completo

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 34

Fundamentos dos sistemas operacionais

APRESENTAÇÃO

Computadores são dispositivos poderosos para a realização de tarefas que exigem alto
processamento. Para que possam operar de forma eficiente, eles necessitam da parte lógica, o
software. Entretanto, para que o software comunique à parte física é necessária uma camada
intermediária, o sistema operacional (SO).

Sistemas operacionais são um conjunto de programas responsáveis


pela integração entre software e hardware, que facilitam a interação dos usuários com toda a
gama de aplicativos disponíveis, como os editores de texto, os editores de planilha, os
navegadores, entre muitos outros.

Nesta Unidade de Aprendizagem, você aprenderá alguns conceitos básicos relacionados a


sistemas operacionais, como seus componentes e seu funcionamento. Conhecerá também os
diferentes tipos de sistemas operacionais.
Bons estudos.

Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados:

• Identificar os conceitos básicos de sistemas operacionais (SOs).


• Explicar os componentes e o funcionamento de um SO.
• Descrever o funcionamento e os tipos de SOs.

DESAFIO

Sistemas operacionais são componentes chave na utilização dos recursos computacionais de


uma empresa, sendo utilizados tanto
nas estações de trabalho pelos colaboradores quanto nos
servidores que mantêm os serviços das empresas operacionais.

Considere a seguinte situação:


Com base no caso apresentado, responda:

a) Seria possível adquirir um sistema operacional mais recente sem a necessidade de


investimento em novo software?

b) Qual solução em sistemas operacionais poderia ser adotada?

INFOGRÁFICO

Sistemas operacionais funcionam como uma espécie de camada intermediária entre o hardware
e o software. São tarefas do sistema operacional: o gerenciamento de arquivos nas unidades de
armazenamento, o gerenciamento de processos em execução
e o acesso à memória principal.
Eles podem ser de código aberto, como os baseados em GNU/Linux,
ou de sistemas proprietários, como Windows e OS X (exclusivo para computadores Apple),
além dos sistemas operacionais para dispositivos móveis, como o Android e iOS.

Neste Infográfico, você vai ver uma linha do tempo que condensa os grandes marcos da história
dos sistemas operacionais modernos.
CONTEÚDO DO LIVRO

O sistema operacional é o programa responsável por gerenciar a comunicação entre os


componentes eletrônicos e os programas utilizados pelos usuários. Eles estão presentes nos
computadores modernos agindo como uma camada intermediária entre hardware e software,
reduzindo o nível de complexidade para que o usuário possa realizar tarefas de forma eficaz.

No capítulo Fundamentos dos sistemas operacionais, da obra Infraestrutura de TI, você vai
aprender a identificar conceitos básicos de sistemas operacionais, como por exemplo, os
componentes e o funcionamento de um SO. Além disso, vai ver os tipos de SOs.

Boa leitura.
INFRAESTRUTURA
DE TI

Diego César Batista Mariano


Fundamentos dos
sistemas operacionais
Objetivos de aprendizagem
Ao final deste texto, você deve apresentar os seguintes aprendizados:

„„ Identificar conceitos básicos de sistemas operacionais (SOs).


„„ Explicar os componentes e o funcionamento de um SO.
„„ Descrever o funcionamento e os tipos de SOs.

Introdução
Um dos pilares da infraestrutura de tecnologia da informação consiste
na conceitualização de hardware, descrito como a parte física de um
computador, e de software, a parte lógica. No primeiro, estão incluídos
equipamentos eletrônicos como placas-mãe, processadores e memórias,
além de dispositivos periféricos (p. ex., monitores, impressoras, mouses,
teclados, etc.), e, no segundo, todos os programas de um computador,
como navegadores de internet, editores de texto, de planilhas e de apre-
sentações. Sem o software, o hardware não passaria de um amontoado de
dispositivos eletrônicos sem um propósito, e, sem o hardware, o software
não poderia existir (TANENBAUM; BOS, 2016). Entretanto, você já parou
para pensar como os programas se comunicam com a parte física?
Processadores são poderosas máquinas de cálculo, que processam
dados binários por meio das instruções armazenadas em sua memória.
Fisicamente, tais dados representam apenas pontos com energia (1) e
pontos sem energia (0) manipulados pelos transistores. Já os programas
podem ser vistos como conjuntos de instruções executadas em deter-
minada ordem com múltiplos objetivos.
2 Fundamentos dos sistemas operacionais

De fato, para que a parte física e lógica do computador interajam,


são necessários conjuntos de instruções executando em um baixo nível.
Pense em um simples programa de uma calculadora: para somar dois
números, o processador deve ter uma forma de recebê-los e saber para
onde enviar o resultado de modo que essa informação se torne útil ao
usuário. Agora pense na infinita gama de programas existentes em um
computador moderno. Se desenvolvedores precisassem programar cada
instrução básica para que um programa funcionasse corretamente, os
computadores pessoais não teriam evoluído tanto.
Neste capítulo, você conhecerá os conceitos básicos dos sistemas
operacionais (SOs), identificará seus componentes e seu funcionamento,
além dos seus tipos.

1 Conceitos básicos de sistemas operacionais


Dá-se o nome de sistema operacional (SO) ao conjunto de programas que
contém uma série de instruções que gerenciam a integração entre software e
hardware, e, assim, facilitam a interação dos mais comuns aplicativos, como
a calculadora.
Os SOs surgiram com a missão de deixar menos complexa a tarefa dos
programadores de lidar com a integração com o hardware (TANENBAUM;
BOS, 2016), atuando como uma camada intermediária que oferece ao usuário
uma interface de comunicação de fácil acesso.
Segundo Tabenbaum e Bos (2016), quatro componentes principais integram
um sistema computacional (Figura 1):

1. hardware;
2. programas aplicativos, como navegadores e editores de texto;
3. usuário, que deseja utilizar tais programas;
4. kernel (núcleo), a camada do software responsável pela coordenação
do acesso dos programas aplicativos ao hardware.
Fundamentos dos sistemas operacionais 3

Sistema operacional (kernel)

Hardware

Figura 1. Estrutura de um sistema computacional.


Fonte: Adaptada de Córdova Junior, Ledur e Morais (2018); Oliveira, Carissimi e Toscani (2008).

O SO pode ser compreendido como um único programa central que, aliado


aos denominados programas de sistema, permitem que o usuário acesse os
programas de maneira mais simplificada (CÓRDOVA JUNIOR; LEDUR;
MORAIS, 2018).

Ao ligar o computador, um processo de inicialização do sistema, denominado boot,


realiza um conjunto de ações que vão desde o teste do hardware, denominado POST
(power on self test), até o carregamento dos arquivos do sistema operacional para a
memória RAM (MARTINS, 2012, documento on-line). Desse ponto em diante, o SO
passa a gerenciar o acesso a todos os dispositivos, arquivos, processos e memória.
4 Fundamentos dos sistemas operacionais

A palavra boot deriva do termo em inglês bootstrap, algo que poderia ser compre-
endido como “levantar usando as próprias botas” (MORIMOTO, 2005, documento
on-line). Ao iniciar um computador, o sistema básico de entrada/saída (BIOS firmware),
ou seja, um software que opera em baixo nível, promove um conjunto de testes para
verificar se todos os componentes eletrônicos estão operando corretamente. A seguir,
unidades de armazenamento definidas na sequência de boot são verificadas para
detecção do SO. Quando há mais de um SO instalado, um gerenciador de inicialização,
como o GRUB, pode permitir a seleção do sistema que deve ser inicializado. Para que
o sistema opere rapidamente, os arquivos do sistema operacional são carregados
para a memória principal, e a interface de uso será exibida no dispositivo de saída.
Interfaces de uso podem se dar a partir de um terminal, que opera a partir de linhas
de comando ou interfaces gráficas [graphic user interface (GUI)], que possibilitam um
ambiente interativo com janelas, botões e menus.

2 Componentes e funcionamento

Chamadas de sistema
Processos (programas em execução) interagem com o sistema operacional por
meio das chamadas de sistemas (system calls). Cada processo traz consigo um
espaço de endereçamento contendo o programa executável, dados, sua pilha,
além de um conjunto de registradores que armazenam instruções necessárias
para executar o programa. O SO pode decidir suspender o processo, exigindo
que se salvem as informações na tabela de processos para que ele possa ser
reiniciado.

Interpretador de linhas de comandos


Embora não compreendam uma parte nativa do SO, interpretadores de li-
nhas de comando fornecem um ambiente para a realização de chamadas
de sistema, podendo se tornar uma interface de comunicação entre o usuá-
rio e o SO (TANENBAUM; BOS, 2016). Nos sistemas baseados em Unix,
o interpretador de comandos é o shell, a popular tela preta na qual se digitam
comandos (Figura 2).
Fundamentos dos sistemas operacionais 5

Figura 2. Interpretador de comandos bash (versão de shell adotada pelo GNU/Linux).


Fonte: MaIII Themd/Shutterstock.com.

Gerenciamento de usuários
O SO fornece uma identificação para cada usuário que se conecte a ele; assim,
processos executados por usuários ficam atrelados à sua identificação e podem
ser interrompidos sem a necessidade de afetar tarefas executadas por outros
usuários. SO como aqueles baseados em Unix permitem ainda a existência de
um superusuário (root), com permissões que superam as de outros usuários.

Tarefas do sistema operacional


O SO é o principal responsável por controlar os dispositivos de entrada e
saída (E/S), além de gerenciar os arquivos nas unidades de armazenamento,
os processos em execução e o acesso à memória principal.
6 Fundamentos dos sistemas operacionais

Gerenciamento de processos
Como apresentado anteriormente, um programa representa uma coleção de
instruções armazenada em um arquivo. Ao ser executado, o programa, agora
carregado na memória, pode ser considerado um processo (CÓRDOVA JU-
NIOR; LEDUR; MORAIS, 2018). Durante sua execução, um programa passa
por cinco estados controlados pelo SO (Figura 3):

1. novo;
2. execução;
3. espera;
4. pronto;
5. terminado.

Figura 3. Mudança nos estados de processos.


Fonte: Adaptada de Córdova Junior, Ledur e Morais (2018).

Ainda, os SOs modernos permitem que processos sejam divididos em


threads (pequenas tarefas executadas paralelamente), o que, por sua vez,
possibilita que distintas partes de um mesmo processo sejam executadas ao
mesmo tempo, característica a que se dá o nome de multithread (ou sistemas
multitarefa).
Em geral, SOs fornecem nativamente ferramentas para gerenciamento de
processos ativos (Figura 4).
Fundamentos dos sistemas operacionais 7

Figura 4. Gerenciadores de tarefas em diferentes sistemas operacionais. (a) Gerenciador


de tarefas do Windows 10. (b) Gerenciador de processos GNU/Linux HTOP. Acima, tem-se
a lista de cores de processadores, consumo de memória e uso do swap e, abaixo, uma lista
de processos ativos. (c) Monitor de atividades do macOS.

Gerenciamento de memória
Computadores modernos apresentam uma hierarquia de memória controlada
pelo gerenciador de memória (TANENBAUM; BOS, 2016). Uma de suas
funções consiste em controlar quais partes da memória estão em uso, além de
alocar e desalocar memória para que processos sejam executados.
Os SOs modernos suportam a técnica de memória virtual, na qual há uma
realocação de dados da memória principal para a memória secundária (pagi-
nação), caso não exista espaço na RAM. O SO ainda gerencia um processo
de troca (swap) das informações armazenadas nas memórias secundária e
primária.

Swap (troca) representa o processo mais conhecido por usuários GNU/Linux, uma vez
que estes devem definir uma partição para armazenar os arquivos usados no swap.
No Windows, o processo de gerenciamento da memória virtual é feito de maneira
mais discreta, sendo o equivalente ao swap do GNU/Linux armazenado na unidade
C:\ no arquivo PAGEFILE.SYS (SIMIONI, 2014, documento on-line). Com o aumento
da quantidade de memória RAM nos computadores pessoais, raramente ocorre o
processo de troca.
8 Fundamentos dos sistemas operacionais

Gerenciamento de arquivos
Uma das funções dos SOs, que utilizam unidades de armazenamento para
gravar informações, consiste em reduzir a complexidade e a peculiaridade
das unidades de armazenamento e de outros dispositivos de entrada e saída.
Arquivos são estruturas usadas por usuários para gravar e recuperar informa-
ções. E, ao local utilizado para estruturar a organização de arquivos, dá-se o
nome de diretório (TANENBAUM; BOS, 2016).
Se um processo ou thread necessita de informações armazenadas na me-
mória secundária, ele emite uma solicitação requisitando informações sobre
o tipo de operação realizada (entrada ou saída), um identificador do arquivo,
o endereço de memória para onde o arquivo deverá ser armazenado e quantos
dados devem ser transferidos (CÓRDOVA JUNIOR; LEDUR; MORAIS, 2018).
A requisição somente poderá ser atendida se a unidade não estiver ocupada;
caso contrário, o sistema gerencia uma fila de solicitações pendentes.
Cada SO dispõe de seu próprio método de organização das estruturas de
arquivos — em geral, sistemas baseados em GNU/Linux e macOS X têm uma
estrutura de diretórios derivados do Unix com os arquivos organizados a partir
de um diretório raiz (Quadro 1). No Windows, as unidades de armazenamentos
são lidas como letras (A:\, B:\, C:\, D:\, E:\, etc.).

Quadro 1. Estrutura de diretórios GNU/Linux

Diretório Definição

/ Raiz (root). Diretório que armazena todos os diretórios do sistema

/bin Contém os arquivos executáveis usados por usuário

/boot Armazena os arquivos necessários para a inicialização do sistema

/dev Armazena arquivos necessários para acessar periféricos

/etc Armazena arquivos de configuração local

/home Armazena os arquivos dos usuários do sistema

/lib Armazena as bibliotecas do sistema utilizadas pelos programas

/mnt Diretório utilizado para montagem de dispositivos e permitir


o acesso, por exemplo, à unidade de CD-ROM (/mnt/cdrom)

(Continua)
Fundamentos dos sistemas operacionais 9

(Continuação)

Quadro 1. Estrutura de diretórios GNU/Linux

Diretório Definição

/proc Armazena o sistema de arquivos do kernel

oot Armazena dados do usuário administrador (root)

tmp Pasta utilizada para armazenamento de arquivos temporários

usr Armazena dados de programas

/var Armazena arquivos e variáveis usados por programas

3 Tipos de sistemas operacionais

Contexto histórico
Quando surgiram os primeiros computadores, não havia um SO. O primeiro
computador digital foi proposto pelo matemático Charles Babbage (1792-1871),
mas a tecnologia da época impediu sua conclusão com sucesso (por compreen-
der um dispositivo mecânico). Entretanto, já naquela época, Babbage percebeu
que seu dispositivo necessitaria do software, por isso contratou a matemática
e escritora Augusta Ada Lovelace (1815-1852), Condessa de Lovelace e filha
do poeta Lord Byron, para construir o primeiro algoritmo a ser utilizado na
máquina (TANENBAUM; BOS, 2016).
Nos anos seguintes, a evolução da tecnologia permitiu que os primeiros
software fossem desenvolvidos por meio de cartões perfuráveis, embora
naquele período os programas fossem entregues como jobs ao operador (que
era próprio programador antes do processo de adoção de operadores profis-
sionais). Após o processamento, o computador retornava à saída, cabendo ao
programador encontrar e corrigir os defeitos nos códigos (depuração). Mais
tarde, para reduzir o tempo de ociosidade, os jobs passaram a ser organizados
em lotes (ou batch) e os cartões perfuráveis foram substituídos por discos
magnéticos, o que, aliado à adoção dos intervalos de interrupção, permitiu
o surgimento do chamado multiprocessamento, no qual todos os programas
eram armazenados na memória principal e processados em fila (OLIVEIRA;
CARISSIMI; TOSCANI, 2008).
10 Fundamentos dos sistemas operacionais

A execução de processos em background possibilita que os programas sejam executa-


dos ao mesmo tempo, cabendo ao sistema operacional gerenciar quando isso será feito.

Nos anos 1960, deu-se início ao chamado timesharing (compartilhamento


em tempo real), permitindo que múltiplos usuários tivessem acesso ao sistema
em seu próprio terminal.

Unix
Entre os anos de 1960 e 1970, um grupo de pesquisadores do Massachussets
Institute of Technology (MIT), em parceria com a AT&T, a Bell Labs e a
General Electric, iniciou um projeto visando a construir um SO multiusuários e
multitarefas, denominado Multics, o qual foi restrito, contudo, pelas limitações
do hardware à época.
Ainda nos anos 1960, o programador Ken Thompson decidiu reescrever o
código-fonte do Multics de maneira mais simplificada, quando o sistema foi
batizado como Unics e, mais tarde, renomeado para Unix. Já nos anos 1970,
Dennis Ritchie desenvolveu uma nova linguagem de programação denominada
C, usada para reescrever o código-fonte do Unix em colaboração com Ken
Thompson (CHAGAS, 2019, documento on-line).
Nos primeiros anos, apesar de ser um sistema proprietário sob licença da
AT&T, o Unix tinha o código-fonte aberto, motivo pelo qual era utilizado em
universidades nos cursos de ciência da computação. Entretanto, anos mais
tarde, o código-fonte foi fechado, isto é, as novas versões não permitiriam a
sua visualização. Com isso, deu-se início a uma corrida pelo desenvolvimento
de um novo SO livre e de código-fonte aberto, sendo o Unix a “inspiração”
para todos esses novos sistemas denominados Unix-like (como o Unix era um
sistema comercial, seu código-fonte não poderia ser copiado, tendo que ser
reescrito do zero para novos sistemas).
Fundamentos dos sistemas operacionais 11

Funcionamento do Unix
O Unix é composto por duas partes principais:
„„ kernel, responsável pela intercomunicação dos programas com o hardware a partir
de chamadas de sistema (system call);
„„ aplicativos do sistema, como as bibliotecas, shell (ambiente de linha de comando)
e interface gráfica (GUI).

Exemplos de sistemas operacionais modernos


Os SOs podem ser classificados em sistemas de código-aberto, como aqueles
baseados em GNU/Linux, e proprietários, como Windows e macOS X, além
daqueles para dispositivos mobile, como Android e iOS. Dos SOs modernos,
a Windows se tornou bastante popular, em especial pelas parcerias com gran-
des fabricantes de computadores, o que garantia sua instalação por padrão
(Figura 5).

Figura 5. Sistemas operacionais mais utilizados (novembro de 2019).


Fonte: Operating... (2020, documento on-line).
12 Fundamentos dos sistemas operacionais

Windows
SO comercial desenvolvido inicialmente pela Microsoft como interface gráfica
complementar ao MS-DOS (CÓRDOVA JUNIOR; LEDUR; MORAIS, 2018),
o Windows, cujo nome significa “janelas”, apresentava interfaces gráficas que
aperfeiçoaram a usabilidade do SO.

MS-DOS (Microsoft Disk Operating System) é o primeiro sistema operacional de linha


de comandos lançado comercialmente pela Microsoft nos anos 1980 para utilização
no IBM PC. As primeiras versões do Windows foram consideradas apenas interfaces
gráficas do MS-DOS.

Primeiras versões do Windows

Nas primeiras versões, o Windows ainda não era considerado um SO, mas sim
uma interface gráfica do MS-DOS. Em meados dos anos 1990, a Microsoft rea-
lizou profundas modificações no Windows tanto em relação à interface quanto
ao funcionamento interno, quando passou a ganhar uma maior independência
em relação ao MS-DOS, embora ainda fosse tida como uma interface gráfica.
A Microsoft nomeou a família de sistemas lançados entre 1995 e 2000 como
Windows 9X, que englobava o Windows 95, o Windows 98 e o Windows
ME. O Windows XP (Windows eXPerience) foi a primeira versão do SO da
Microsoft baseado na família NT (família de sistemas operacionais destinados
a servidores), tornando-se famoso por sua estabilidade e sua interface gráfica
personalizável. Ele foi sucedido pelo Windows Vista, que trouxe uma interface
mais futurista, seguido do Windows 7, que melhorou o reconhecimento de
drivers, e do Windows 8, que trouxe uma nova interface mais voltada a dis-
positivos touchscreen. No Quadro 2, é apresentada a evolução dos requisitos
mínimos para instalação do Windows em computadores pessoais.
Fundamentos dos sistemas operacionais 13

Quadro 2. Requisitos mínimos para instalação do Windows

Versões do Windows CPU RAM Disco

Windows 95 — 8 MB 100 MB

Windows 98 — 16 MB 300 MB

Windows ME 150 MHz 32 MB 500 MB

Windows 2000 133 MHz 32 MB 650 MB

Windows XP 233 MHz 64 MB 1,5 GB

Windows Vista (64 bits) 1 GHz 1 GB 15 GB

Windows 7 (64 bits) 1 GHz 2 GB 20 GB

Windows 8.1 (64 bits) 1 GHz 2 GB 20 GB

Windows 10 (64 bits) 1 GHz 2 GB 32 GB

Fonte: Adaptado de Como descobrir... (2020, documento on-line); Instalação... (2005, documento on-line);
Requisitos... (2020a, documento on-line); Requisitos... (2020b, documento on-line).

Windows 10

Atualização da versão 8.1, o Windows 10 tornou-se popular ao permitir a


atualização gratuita para usuários do Windows 7, 8 e 8.1. Essa versão do
Windows apresentou novos recursos, como otimização para games, além de
trazer de volta a versão clássica do menu iniciar.
Recentemente, a Microsoft embutiu o kernel do Linux no Windows 10 por
meio da arquitetura WSL 2 (Subsistema do Windows para Linux 2) (FOGAÇA,
2019, documento on-line).

GNU/Linux
Antes de falar do Linux, é importante ressaltar o contexto histórico em que
surgiu: nos anos 1980, com o fechamento do código-fonte do Unix, pesquisado-
res começaram a desenvolver novos SOs baseados nos antigos códigos-fontes
abertos do Unix, como o SO Minix, desenvolvido pelo escritor e professor
Andrew S. Tanenbaum para ser utilizado em universidades. Sua principal
caraterística consistia no micro-kernel, um núcleo de código-fonte reduzido,
14 Fundamentos dos sistemas operacionais

em que drivers e sistemas de arquivo são executados como programas comuns,


o que, segundo o autor, atribuía maior segurança e robustez ao SO. Por ter
fins educacionais, Tanenbaum mantinha o código-fonte do Minix organizado
e reduzido, rejeitando, muitas vezes, sugestões de melhorias enviadas por
usuários. Entretanto, a falta de atualizações desagradou boa parte do público
(CHAGAS, 2019, documento on-line).
Em 25 de agosto de 1991, o estudante de ciência da computação finlan-
dês Linus Torvalds revelou ao mundo o código-fonte de seu SO de código
aberto (ALECRIM, 2011, documento on-line), cuja principal diferença con-
sistiu na abertura do código-fonte a comunidade de desenvolvedores, o que
o popularizou.

O sistema operacional GNU/Linux se chamava originalmente Freax, uma junção de livre


(free), monstruoso (freak) e Unix (sistema em que o Linux foi baseado). Ari Lemmke, pro-
gramador que trabalhava no projeto, ao disponibilizar o código-fonte em um servidor
FTP, decidiu renomear a pasta que armazenava o kernel para “Linux”, uma mistura de
Linus, criador do kernel, e Unix, que acabou se popularizando e permanecendo até hoje
(ALECRIM, 2011, documento on-line). Já o motivo de o mascote oficial do Linux ser um
pinguim se deve ao fato de Linus Torvalds ter sido bicado por um pinguim enquanto
visitava um zoológico na Austrália (SOUZA, 2005, documento on-line).

O Linux apresentava um kernel monolítico que contrastava com o micro-


-kernel do Minix, o que foi criticado por Tanenbaum, que o considerava
obsoleto desde sua origem. Entretanto, o Linux cresceu e se tornou o maior
projeto de código-fonte aberto da história, sendo atualmente mantido pela
Linux Foundation, apoiado por seu criador, Linus Torvalds, e por seu atual
mantenedor, Greg Kroah-Hartman (ABOUT US, 2020, documento on-line).

Projeto GNU

No início dos anos 1980, boa parte dos software era formada por sistemas
proprietários, ou seja, eram vendidos com fins lucrativos. Mesmo assim, muitos
programas não permitiam que os usuários visualizassem seu código-fonte
Fundamentos dos sistemas operacionais 15

(código fechado), o que limitava a colaboração entre usuários para a melhoria


do código. Foi nesse momento em que Richard Stallman e outros programa-
dores perceberam a necessidade de que os códigos fossem livres: os códigos
poderiam ser gratuitos, ou até mesmo vendidos, desde que seu código-fonte
fosse disponibilizado livremente para a comunidade de desenvolvedores. Isso
deu origem ao projeto GNU (VISÃO..., 2012, documento on-line).
GNU é um acrônimo recursivo para GNU is Not Unix (“GNU não é Unix”),
pois, apesar de não utilizar o código-fonte do Unix, programadores da época
consideravam que sistemas Unix eram estáveis e amplamente populares, fato
pelo qual novos sistemas deveriam ter uma estrutura similar para facilitar
a adaptação dos usuários.
Assim, o projeto GNU iniciou a construção de seu SO livre, apresentando
uma série de componentes desenvolvidos, como compiladores, editores de texto
e de imagem, interfaces gráficas, além de bibliotecas com diversas finalida-
des. Entretanto, o kernel do SO, denominado Hurd, tinha alguns problemas.
A solução para acelerar o lançamento do GNU consistiu em incorporar o
kernel desenvolvido por Linus Torvalds e seus colaboradores, o Linux, fusão
a que se deu o nome de GNU/Linux.

Uso do GNU/Linux

A principal vantagem do uso de Linux está no fato de se tratar de um software


gratuito e de código-fonte aberto, o que permite que você copie e até mesmo
faça modificações no código. Entretanto, ele tem outras vantagens, como a
execução leve e rápida e flexível, permitindo que mesmo computadores mais
antigos consigam executá-lo, além de uma maior segurança e estabilidade .
O Linux é utilizado em mais de 95% dos servidores Web, que mantém o
número de 1 milhão de domínios mais importantes, além de compreender o
SO preferido para suportar tecnologias de ponta, como computação em nuvem
e manipulação do big data, sendo utilizado nos 500 supercomputadores mais
poderosos do mundo (AUGUSTO, 2016, documento on-line).
Uma de suas desvantagens reside na baixa adoção de fabricantes de ponta
para produção de software proprietários compatíveis, além de poucos jogos
serem compatíveis com a plataforma. Contudo, nos últimos anos, tem-se visto
uma maior aceitação do uso de sistemas Linux, e a tendência é uma maior
disponibilidade de software compatível no futuro.
16 Fundamentos dos sistemas operacionais

Distribuições GNU/Linux

Antes de iniciar a instalação do SO Linux em um computador, é necessário


definir qual distribuição deverá ser instalada. Por ter um código-fonte aberto,
o Linux pode ser modificado por qualquer pessoa, dando origem a novas
distribuições, comerciais ou não comerciais, por exemplo, Debian, Slackware,
OpenSUSE, Redhat, Kali, Fedora e Ubuntu (Quadro3).

Quadro 3. Distribuições Linux

Distribuições comerciais Distribuições não comerciais

Red Hat Enterprise Linux Ubuntu


Oracle Linux Debian
SUSE Linux Fedora
CentOS
OpenSUSE
Slackware
Kali

Fonte: Oliveira (2019, documento on-line).

Das distribuições apresentadas, o Ubuntu se tornou um dos mais populares,


sobretudo por sua estratégia de enviar gratuitamente cópias de CD-ROM com
o instalador Ubuntu para usuários que requisitassem no site oficial. Hoje,
a instalação é feita por meio do download do arquivo ISO no site oficial do
Ubuntu (http://ubuntu.com). O Ubuntu é mantido pela Canonical e ganha
atualizações sempre nos meses de abril e novembro, além de, a cada 2 anos,
lançar uma versão LTS (long term support), cujo suporte é válido por um
período maior.

macOS
Trata-se de um SO proprietário de código fechado baseado no SO NeXTSTEP
da empresa NeXT, inicialmente chamado de MacOS (Macintosh Operating
System), por ser o SO dedicado à família de computadores Macintosh. A seguir,
passou a ser denominado MacOS X, mais tarde, OS X e, recentemente, passou
Fundamentos dos sistemas operacionais 17

a adotar o nome macOS. Apesar de apresentar atualizações gratuitas, o uso


do macOS está atrelado a computadores Mac da Apple.
A NeXT foi fundada por Steve Jobs quando saiu da Apple nos anos 1980.
Quando Jobs retornou à Apple, parte do SO foi incorporado aos computadores
fabricados pela empresa. O macOS surgiu como uma combinação do kernel
Darwin (baseado no Unix BSD e no micronúcleo Mach) e da interface gráfica
Aqua, construída com foco em usabilidade. O kernel do macOS passou a
ser chamado de XNU, um acrônimo para “X não é Unix” (X is Not Unix).
As versões mais recentes do macOS têm certificação Unix 03, o que as inclui
na família de sistemas operacionais Unix.

Sistemas operacionais móveis

O Android é um SO para dispositivos mobile (smartphones e tablets) baseado


em kernel Linux e desenvolvido pelo Google, que, por se tratar de um SO
gratuito, foi um dos responsáveis pela popularização dos smartphones, tendo
sido adotado por diversas fabricantes. Segundo estimativas, mais de 80% dos
smartphones vendidos no mundo utilizam sistemas Android (ABOUT US,
2020, documento on-line).
Seu principal concorrente é o iOS (iPhone OS), SO desenvolvido exclusi-
vamente para dispositivos Apple, como iPhone, iPod e iPad.

ABOUT US. Linux Foundation, [S. l.], 2020. Disponível em: https://www.infowester.com/
historia_linux.php. Acesso em: 9 jan. 2020.
ALECRIM, E. O que é Linux e qual a sua história? InfoWester, [S. l.], 3 nov. 2011. Disponível
em: https://www.linuxfoundation.org/about/. Acesso em: 9 jan. 2020.
AUGUSTO, C. Conheça as 5 principais vantagens do Linux no Desktop e no Servidor.
Ninja do Linux, [S. l.], 26 maio 2016. Disponível em: http://ninjadolinux.com.br/vantagens-
-do-linux/. Acesso em: 9 jan. 2020.
CHAGAS, F. Conheça o UNIX, o pai dos sistemas operacionais modernos. Medium, [S.
l.], 20 jan. 2019. Disponível em: https://medium.com/@filipe.chagas/a-hist%C3%B3ria-
-do-unix-o-pai-dos-sistemas-operacionais-modernos-2795d0fd564b. Acesso em:
9 jan. 2020.
18 Fundamentos dos sistemas operacionais

COMO DESCOBRIR as especificações e os requisitos de um computador com Windows


10. Microsoft, Redmond, 2020. Disponível em: https://www.microsoft.com/pt-br/win-
dows/windows-10-specifications. Acesso em: 9 jan. 2020.
CÓRDOVA JUNIOR, R. S.; LEDUR, C. L.; MORAIS, I. S. Sistemas operacionais. Porto Alegre:
Sagah, 2018. 214 p.
FOGAÇA, A. Microsoft libera kernel do Linux embutido no Windows 10. Tecnoblog, [S.
l.], 13 jun. 2019. Disponível em: https://tecnoblog.net/294703/microsoft-libera-kernel-
-do-linux-embutido-no-windows-10/. Acesso em: 9 jan. 2020.
INSTALAÇÃO do Windows: requisitos mínimos. Clube do Hardware, [S. l.], 13 fev. 2005.
Disponível em: https://www.clubedohardware.com.br/forums/topic/174664-
-instala%C3%A7%C3%A3o-do-windows-requisitos-m%C3%ADnimos/. Acesso em:
9 jan. 2020.
MARTINS, E. O que é boot? Tecmundo, [S. l.], 1 jun. 2012. Disponível em: https://www.
tecmundo.com.br/o-que-e/955-o-que-e-boot-.htm. Acesso em: 9 jan. 2020.
MORIMOTO, C. E. Boot. Hardware.com.br, [S. l.], 26 jun. 2005. Disponível em: https://
www.hardware.com.br/termos/boot. Acesso em: 9 jan. 2020.
OLIVEIRA, P. Conheça as distribuições Linux comerciais que podem ser utilizadas na sua
empresa. Escola Linux Treinamentos, Rio de Janeiro, 31 jan. 2019. Disponível em: https://
www.escolalinux.com.br/blog/conheca-as-distribuicoes-linux-comerciais-que-pode-
-ser-utilizadas-na-sua-empresa. Acesso em: 9 jan. 2020.
OLIVEIRA, R. S.; CARISSIMI, A. S.; TOSCANI, S. S. Sistemas operacionais. Porto Alegre:
Bookman; Instituto de Informática da UFRGS, 2008. 259 p. (Série Livros Didáticos, 11).
OPERATING system market share. NetMarketShare, [S. l.], 2020. Disponível em: https://
netmarketshare.com/operating-system-market-share.aspx. Acesso em: 9 jan. 2020.
REQUISITOS do sistema: Aplica-se a: Windows 8.1. Microsoft, Redmond, 2020a. Disponível
em: https://support.microsoft.com/pt-br/help/12660/windows-8-system-requirements.
Acesso em: 9 jan. 2020.
REQUISITOS de sistema do Windows 7: Aplica-se a: Windows 7. Microsoft, Redmond,
2020b. Disponível em: https://support.microsoft.com/pt-br/help/10737/windows-7-
-system-requirements. Acesso em: 9 jan. 2020.
SIMIONI, D. O que é a memória SWAP? DioLinux, [S. l.], 9 set. 2014. Disponível em: https://
www.diolinux.com.br/2014/09/o-que-e-memoria-swap.html. Acesso em: 9 jan. 2020.
SOUZA, A. Por que a mascote do Linux é um pinguim? Viva o Linux, [S. l.], 26 mar. 2015.
Disponível em: https://www.vivaolinux.com.br/artigo/Porque-a-mascote-do-Linux-
-e-um-pinguim. Acesso em: 9 jan. 2020.
TANENBAUM, A. S.; BOS, H. Sistemas operacionais modernos. 4. ed. São Paulo: Pearson
Education, 2016. 864 p.
VISÃO Geral do Sistema GNU. Free Software Foundation, Boston, 2002. Disponível em:
http://www.gnu.org/gnu/gnu-history.html. Acesso em: 9 jan. 2020.
Fundamentos dos sistemas operacionais 19

Os links para sites da Web fornecidos neste capítulo foram todos testados, e seu fun-
cionamento foi comprovado no momento da publicação do material. No entanto, a
rede é extremamente dinâmica; suas páginas estão constantemente mudando de
local e conteúdo. Assim, os editores declaram não ter qualquer responsabilidade
sobre qualidade, precisão ou integralidade das informações referidas em tais links.
DICA DO PROFESSOR

Recentemente a Microsoft, empresa de tecnologia responsável por sistemas operacionais como


Windows e programas como Office,
decidiu inserir em seu principal produto, o Windows 10, a possibilidade de executar o kernel do
Linux. É possível instalar e executar distribuições Linux lado a lado no sistema do Windows
para Linux (também conhecido como WSL).

Nesta Dica do Professor, você vai ver como isso pode ser realizado
na prática.
Conteúdo interativo disponível na plataforma de ensino!
1.

EXERCÍCIOS

1) O sistema operacional pode ser compreendido como um único programa central que,
aliado aos denominados programas de sistema, permite ao usuário acesso aos
programas e aplicativos de forma a reduzir a complexidade. Eles atuam como uma
camada intermediária que oferece ao usuário uma interface de comunicação de fácil
acesso. Há diversos sistemas operacionais, sendo os mais comuns derivados dos
sistemas Windows, OS X e Linux.

São componentes principais de sistema computacional:

Kernel, boot, dispositivos de entrada e saída.


A)
Gerenciador de tarefas, kernel-boot e interpretador.
B)
Kernel, aplicativos, usuários e hardware.
C)
Interface gráfica e linha de comando.
D)
Núcleo de processamento, núcleo gráfico e compilador.
E)

2) Nos anos 1960, Ken Thompson e Dennis Ritchie, aliados a um grupo de


pesquisadores do MIT e das empresas AT&T, Bell Labs e General Electric, iniciaram
um projeto visando construir um sistema operacional multiusuários e multitarefas.
Esse sistema daria origem anos mais tarde ao UNIX.

O UNIX se tornaria uma inspiração para muitos dos sistemas operacionais


modernos, denominados UNIX-like. São fatores motivadores para criação desses
sistemas:

O código-fonte do UNIX era bastante complexo contendo muitas funcionalidades


A)
requisitadas por hardwares da época, por isso foi utilizado em sistemas operacionais
modernos.

O UNIX era um SO proprietário, mas de código aberto bastante estudado em


B)
universidades. Entretanto, anos mais tarde seu código foi fechado, o que motivou
desenvolvedores a construir SO livre e de código-fonte aberto.

O UNIX (inicialmente denominado como MULTICS) era um sistema operacional


C)
multiusuários e multitarefas, entretanto as limitações de hardware da época impediram que
o projeto fosse concluído.

O UNIX se tornou bastante popular por ser o primeiro sistema operacional a funcionar
D)
exclusivamente por interface gráfica, o que o distinguia de sistemas operacionais de linha
de comando, como o MS-DOS.

O UNIX foi proposto pelo professor Andrew S. Tanenbaum com fins educacionais.
E)
Tanenbaum mantinha o código-fonte do MINIX organizado e reduzido, rejeitando muitas
vezes sugestões de melhorias enviadas por usuários.

3) Sistema operacionais (SO) podem ser compreendidos como o conjunto de programas


que contém uma série de instruções que gerenciam a integração entre software e
hardware e assim facilitam a interação dos mais comuns aplicativos.

São tarefas dos sistemas operacionais:

Gerenciamento de arquivos nas unidades de armazenamento, gerenciamento de processos


A)
em execução e gerenciamento do acesso à memória principal.

Gerenciamento de arquivos nas unidades de armazenamento, gerenciamento de da


B)
inicialização do sistema e gerenciamento do acesso à memória principal.
Gerenciamento da memória, processamento de cálculos e gerenciamento do acesso à
C)
memória secundária.

Gerenciamento de tarefas, gerenciamento de instalação física de novo hardware e


D)
gerenciamento do acesso à memória principal.

Gerenciamento de instalação física de novo hardware, gerenciamento de processos em


E)
execução e gerenciamento do acesso à memória principal.

4) Ao instalar um sistema operacional baseado em GNU/Linux, você é questionado a


criar uma partição para armazenamento do SWAP.

Qual é a função do SWAP no sistema operacional?

Gerenciar o sistema de arquivos, permitindo que o usuário realize buscas por arquivos e
A)
pastas.

Fornecer um método de troca de informações armazenadas na memória principal e


B)
secundária, caso a memória RAM esteja totalmente ocupada.

Inicializar a máquina.
C)
Linux não fornece o SWAP, apenas o sistema Windows permite que uma partição seja
D)
definida para isso.

Gerenciar o acesso ao processador, mediando a comunicação entre a RAM e a CPU.


E)

5) Sistemas operacionais podem ser construídos especificadamente para certos


dispositivos. Um exemplo são os sistemas mobile (móveis). Esses sistemas são
construídos especificamente para executar em dispositivos como smartphones ou
tablets.

Qual dos sistemas operacionais apresentados a seguir constitui um sistema


exclusivamente móvel?

GNU/Linux.
A)
Ubuntu 18.04.
B)
Windows 10.
C)
iOS.
D)
Windows millenium.
E)

NA PRÁTICA

GNU/Linux é o sistema operacional livre mais popular do mundo. Por ter o código-fonte aberto,
qualquer pessoa ou empresa pode modificá-lo e criar uma nova versão, denominada
distribuição.

Neste Na Prática, você vai ver o caso do gerente de TI José, que precisou adotar um novo
sistema operacional na equipe e quais foram os motivos da escolha dele.
SAIBA +

Para ampliar o seu conhecimento a respeito desse assunto, veja abaixo as sugestões do
professor:

Aprenda Linux - Comandos básicos do Terminal para Ubuntu

Nesta videoaula, você aprenderá alguns comandos básicos de terminal Linux na distribuição
Ubuntu. Clique para conhecer.

Conteúdo interativo disponível na plataforma de ensino!

História do Linux – Brasil Escola

O nome Linux surgiu da mistura de Linus, criador do kernel, e Unix. Neste link, você conhecerá
um pouco mais da história do Linux.

Conteúdo interativo disponível na plataforma de ensino!

Oito sistemas operacionais alternativos para Windows que você precisa conhecer -
Tecmundo

Acesse este conteúdo para conhecer oito sistemas operacionais além do Windows.

Conteúdo interativo disponível na plataforma de ensino!

Você também pode gostar