Sistema Operacional

O computador só é capaz de fazer funcionar um programa informático (chamado de aplicativo ou de software) através de um sistema operacional. Ele deve estar em condições de efetuar diversas operações preparatórias para garantir a troca entre o processador, a memória, e os recursos físicos (dispositivos).

Introdução ao Sistema Operacional

O sistema operacional (SO) garante a conexão entre os recursos de hardware, o usuário e os aplicativos (tratamento de texto, jogos de vídeo, etc.). Assim, quando um programa deseja acessar um recurso de hardware, ele não precisa enviar informações específicas ao dispositivo, basta enviar as informações ao sistema operacional, que se encarrega de transmiti-las ao periférico através do seu driver. Na sua ausência, cada programa deverá reconhecer e garantir a comunicação com cada um dos dispositivos:


Desta forma, o sistema operacional permite 'dissociar' os programas e o hardware, para simplificar a gestão dos recursos e oferecer ao usuário uma interface homem-máquina (IHM) simplificada para que ele se livre da complexidade da máquina em si.

Qual é o papel de um Sistema Operacional

As funções do sistema operacional são inúmeras:

Gestão do processador: o sistema operacional se encarrega de gerenciar o subsídio do processador entre os diversos programas, graças a um algoritmo de escalonamento. O tipo de programador é totalmente dependente do sistema operacional em função do objetivo visado.

Gestão da memória RAM: o sistema operacional se encarrega de gerenciar o espaço de memória atribuído a cada aplicativo e, se for o caso, a cada usuário. No caso de insuficiência de memória física, o sistema operacional pode criar uma área de memória no disco rígido, chamada de memória virtual. Ela faz funcionar aplicativos que necessitam de mais memória do que a memória RAM tem disponível no sistema. Por outro lado, esta memória é muito mais lenta.

Gestão das entradas/saídas: o sistema operacional unifica e controla o acesso dos programas aos recursos materiais através dos drivers (também chamados de gerenciadores de periféricos ou gerenciadores de entrada/saída).

Gestão da execução dos aplicativos: o sistema operacional é responsável pela boa execução dos aplicativos, atribuindo-lhes os recursos necessários ao seu funcionamento. Desta maneira, ele também permite eliminar um aplicativo que não responda corretamente.

Gestão dos direitos: o sistema operacional é responsável pela segurança ligada à execução dos programas, garantindo que os recursos sejam utilizados apenas pelos programas e usuários que possuam direitos para tanto.

Gestão dos arquivos: o sistema operacional gerencia a leitura e a redação no sistema de arquivos e os direitos de acesso aos arquivos pelos usuários e aplicativos.

Gestão das informações: o sistema operacional fornece diversos indicadores para diagnosticar o bom funcionamento da máquina.

Quais são os componentes do sistema operacional

O sistema operacional é composto por um conjunto de softwares que permitem administrar as interações com o hardware. Neste conjunto de softwares distinguem-se os seguintes elementos: o núcleo (kernel), que representa as funções fundamentais do sistema operacional tais como gestão da memória, processos, arquivos, entradas/saídas e das funcionalidades de comunicação; o Intérprete de comandos (shell), ou seja, a camada externa, por oposição ao núcleo, que permite a comunicação com o sistema operacional por meio de uma linguagem de comandos para o usuário pilotar os periféricos ignorando muitas das características do hardware como, por exemplo, a gestão dos endereços físicos; e o sistema de arquivos (file system), que permite registrar os arquivos em arborescência.

Como funcionam os sistemas multitarefas

Um sistema operacional é multitarefas quando várias tarefas (também chamadas de processos) podem ser executadas simultaneamente.

Os aplicativos são compostos por uma sequência de instruções chamados processos rápidos (threads). Estes threads serão alternadamente ativos, no modo de espera, suspensos ou destruídos, de acordo com a prioridade que lhes é associada ou executados sequencialmente.

Um sistema é preemptivo quando possui um programador que reparte, de acordo com critérios de prioridade, o tempo da máquina nos diversos processos que fazem os pedidos.

O sistema é de tempo compartilhado quando uma cota de tempo é atribuída a cada processo pelo programador. Este é o caso principalmente dos sistemas multiusuários, que permitem que vários deles utilizem simultaneamente um mesmo computador e vários aplicativos, diferentes ou similares.

Por fim, o sistema é considerado transacional quando ele atribui a cada usuário uma fração de tempo.

Como são os sistemas multiprocessadores

O multiprocesso é uma técnica que consiste em fazer funcionar vários processadores em paralelo para obter uma potência de cálculo maior do que a obtida com um processador de alta qualidade ou com o objetivo de aumentar a disponibilidade do sistema em caso de avaria de um processador.

Chamamos de SMP (Symmetric Multiprocessing - Sistema de multiprocessador simétrico) a arquitetura na qual todos os processadores têm acesso a um espaço de memória compartilhada. Por esta razão, um sistema multiprocessador deve poder administrar o compartilhamento da memória entre vários processadores, mas também de distribuir a carga de trabalho.

Como são estruturados os sistemas embarcados

Os sistemas embarcados são sistemas operacionais previstos para funcionar em pequenos dispositivos, como PDAs ou aparelhos eletrônicos autônomos (sondas espaciais, robôs, computadores de bordo de veículos). Assim, uma característica essencial desses sistemas embarcados é a sua gestão avançada da energia e sua capacidade para funcionar corretamente com recursos limitados.

Os principais sistemas embarcados para o grande público, isto é, acessíveis para qualquer pessoa, são: PalmOne, sistema operacional Palm OS da PalmSource que é estável, porém restrito em relação ao número de fabricantes que o adotaram; Pocket PC, sistema Windows Mobile, baseado no Windows CE da Microsoft e que é compatível com o Windows e adotado pela maioria dos fabricantes de PDAs; e o Pocket Linux, sistema baseado na distribuição Debian e compatível com alguns PDAs, extremamente fácil de manipular e utilizar.

Com a evolução exponencial dos smartphones, o PDA vem sendo abandonado pelo público e as fabricantes, frente à riqueza de possibilidades apresentadas pelos novos dispositivos móveis e gadgets.

O que são os sistemas de tempo real

Os sistemas de tempo real (Real-time Systems), utilizados principalmente na indústria, são sistemas cujo objetivo é funcionar num ambiente temporariamente restrito. Um sistema de tempo real deve funcionar de maneira fiável de acordo com algumas restrições temporais específicas, ou seja, ele deve ser capaz de fornecer um processamento correto das informações recebidas em intervalos de tempo bem definidos (regulares ou não).

São exemplos de sistemas operacionais de tempo real o OS-9, RTLinux (Real-time Linux), QNX e VxWorks.

Quais são os tipos de sistemas operacionais

Podemos distinguir vários tipos de sistemas operacionais, de acordo com a sua capacidade para gerenciar, simultaneamente, as informações de 16 bits, 32 bits e 64 bits ou mais:

Sistema Codificação Mono-usuário Multi-usuário Mono-tarefa Multitarefas
DOS 16 bits X X
Windows3.1 16/32 bits X não preemptivo
Windows95/98/Me 32 bits X cooperativo
WindowsNT/2000 32 bits X preemptivo
WindowsXP 32/64 bits X preemptivo
Unix/Linux 32/64 bits X preemptivo
MAC/OS X 32 bits X preemptivo
VMS 32 bits X preemptivo

Foto: © Norasit Kaewsai - 123RF.com

Nosso conteúdo é produzido em colaboração com especialistas em tecnologia da informação sob o comando de Jean-François Pillou, fundador do CCM.net. CCM é um site sobre tecnologia líder em nível internacional e está disponível em 11 idiomas.
Este documento, intitulado 'Sistema Operacional', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.

Assine nossa newsletter!

Assine nossa newsletter!
Junte-se à comunidade