Juliana Jenny Kolb
Sistemas Operacionais – Introdução
Sistemas Operacionais são um conjunto de rotinas executadas pelo processador, tal como os programas de usuários. A função de um Sistema Operacional (SO) é controlar o funcionamento de um computador, gerenciando a utilização e o compartilhamento de recursos, como:
- processadores;
- memórias; e
- dispositivos de entrada e saída.
O SO é uma interface entre o usuário e o computador.
Diferença entre SO e Aplicações
- Aplicações -> rotinas executadas de forma linear (início, meio e fim).
- Sistema operacional -> rotinas executadas concorrentemente em
função de eventos assíncronos (podem ocorrer a qualquer momento).
Interação com o Sistema Operacional
O usuário pode interagir com o SO de duas formas:
- CLI (Command Line Interface);
- GUI (Graphical User Interface).
Modos de Operação
São dois os modos de operação: núcleo e usuário.
- Núcleo (kernel ou supervisor):
– Modo que há acesso completo ao hardware;
– Executa qualquer instrução;
– Componente central do Sistema Operacional. - Usuário:
– Apenas um subconjunto de instruções da máquina está disponível, por meio de outros softwares (aplicativos).
Tipos de Sistemas Operacionais
Os Sistemas Operacionais apresentam 3 tipos, sendo:
Monoprogramáveis/Monotarefa
- Execução de um único programa por vez, os recursos (cpu, memória e periféricos) permanecem dedicados à execução de um único programa;
- Monousuário.
Multiprogramáveis/Multitarefa
- Os recursos computacionais são compartilhados entre diversos usuários e aplicações;
- Redução total tempo de execução das aplicações;
- Monousuário ou multiusuário;
- Implementação mais complexa;
- Redução de custos;
- São mais eficientes.
- Subdividem-se em:
- Sistemas Batch: Não exigem a interação do usuário com a aplicação;
- Sistemas de Tempo Compartilhado: Time-Sharing ou sistema online, diversos programas podem ser executados. Divisão do tempo do processador em fatias de tempo (time-slice). Há substituição do programa em execução por outro, mesmo que ele não tenha terminado;
- Sistemas de Tempo Real.
Múltiplos Processadores
- Possuem dois ou mais processadores interligados e trabalhando conjuntamente;
- Permite a execução de vários programas ao mesmo tempo, ou a divisão da execução de um programa por vários processadores;
- Características e vantagens:
- Escalabilidade –> ampliação do poder computacional;
- Disponibilidade –> manutenção do sistema operacional mesmo em caso de falhas;
- Balanceamento de carga –> distribuição do processamento.
- Exemplo: cluster*.
- Dividem-se em:
- Sistemas Fortemente Acoplados: vários computadores compartilhando uma única memória.
- Simétricos (SMP): tempo uniforme de acesso à memória pelos processadores;
- Assimétricos (NUMA): tempo de acesso varia de acordo com sua localização física.
- Sistemas Fracamente Acoplados: dois ou mais computadores conectados (SAN) através de linhas de comunicação (cluster*).
- Redes (SOR): usuário sabe da existência de vários computadores;
- Distribuídos: usuário desconhece onde os programas são executados e onde os arquivos estão armazenados.
- Sistemas Fortemente Acoplados: vários computadores compartilhando uma única memória.
*Cluster:
Cluster é um termo em inglês que significa “aglomerar” ou “aglomeração” e pode ser aplicado em vários contextos. No caso da computação, o termo define uma arquitetura de sistema capaz combinar vários computadores para trabalharem em conjunto ou pode denominar o grupo em si de computadores combinados.
Cada estação é denominada “nodo” e, combinadas, formam o cluster. Em alguns casos, é possível ver referências como “supercomputadores” ou “computação em cluster” para o mesmo cenário, representando o hardware usado ou o software especialmente desenvolvido para conseguir combinar esses equipamentos. (https://www.opservices.com.br/o-que-e-um-cluster/)