Sistemas Operacionais – Introdução

Juliana Jenny Kolb

teste seu conhecimento

Home > Sistemas Operacionais

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.

*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/)