Fundamentos de Sistemas Operacionais: Conceitos e Tipos

Enviado por Anônimo e classificado em Computação

Escrito em em português com um tamanho de 5,81 KB

O que acontece com um computador sem um Sistema Operacional (SO)? Quais são suas principais funções?

Um computador sem um Sistema Operacional fica inútil. Sua função principal é controlar o funcionamento de um computador, gerenciando a utilização e o compartilhamento dos seus diversos recursos, tais como:

  • Processadores;
  • Memórias;
  • Dispositivos de entrada e saída.

Explique o conceito de Máquina Virtual. Qual a grande vantagem em utilizar este conceito?

O conceito de Máquina Virtual visa afastar o usuário da complexidade do hardware (HW), colocando uma camada de software (SW) em cima do HW para gerenciar todos os componentes do sistema. Isso apresenta ao usuário uma interface simples de entender e programar.

Defina o conceito de uma Máquina de Níveis ou Camadas.

O computador pode ser visualizado como uma máquina de níveis ou máquina de camadas, possuindo tantos níveis quanto forem necessários para adequar o usuário às suas diversas aplicações. Quando o usuário está trabalhando em um desses níveis, não necessita saber da existência das outras camadas. Com isso, a interação entre usuário e computador torna-se mais simples, confiável e eficiente.

Quais são os tipos de Sistemas Operacionais existentes?

Os principais tipos de Sistemas Operacionais são:

  • Sistemas Monoprogramáveis/Monotarefa;
  • Sistemas Multiprogramáveis/Multitarefa;
  • Sistemas com Múltiplos Processadores.

Por que existe uma subutilização de recursos em sistemas Monoprogramáveis?

Em sistemas monoprogramáveis, somente é possível a execução de um programa por vez. Como um programa não utiliza todos os recursos do sistema totalmente ao longo da sua execução, existe ociosidade e, consequentemente, subutilização de alguns recursos.

Qual a diferença entre sistemas Monoprogramáveis e sistemas Multiprogramáveis?

Enquanto em sistemas monoprogramáveis existe apenas um programa utilizando os recursos disponíveis, nos sistemas multiprogramáveis várias aplicações compartilham esses mesmos recursos.

Quais são as vantagens dos sistemas Multiprogramáveis?

As vantagens incluem:

  • Redução do tempo de resposta das aplicações;
  • O sistema permite a utilização de várias aplicações concorrentemente;
  • Enquanto um programa espera por um evento (E/S), os outros programas podem estar processando neste mesmo intervalo de tempo.

Um sistema monousuário pode ser um sistema multiprogramável? Dê um exemplo.

Sim. Somente um usuário interage com o sistema, mas pode possuir diversas aplicações executando concorrentemente. O sistema Windows NT é um exemplo.

Quais são os tipos de sistemas Multiprogramáveis?

Com o compartilhamento de recursos, tem-se um aumento na produtividade e a redução de custos. Estes sistemas podem ser classificados em:

  1. Batch (Processamento em Lotes);
  2. Tempo Compartilhado;
  3. Tempo Real.

O que caracteriza o processamento Batch? Quais aplicações podem ser processadas neste tipo de ambiente?

Os programas são armazenados em disco ou fita, onde esperam para ser executados sequencialmente. Para as aplicações originalmente processadas em batch, não é necessária a intervenção do usuário.

Aplicações que podem ser processadas incluem:

  • Compilações;
  • Linkedições;
  • Sorts (Ordenações);
  • Backups.

Como funcionam os sistemas de Tempo Compartilhado? Quais as vantagens?

O usuário pode interagir diretamente com o sistema em cada fase do desenvolvimento de suas aplicações e, se preciso, modificá-las imediatamente. Devido a esse tipo de interação, estes sistemas também são conhecidos como on-line.

Esses sistemas possuem uma linguagem de controle que permite ao usuário comunicar-se diretamente com o SO para obter informações (por exemplo, verificar os arquivos armazenados em disco).

A vantagem é que oferecem baixos tempos de resposta a seus usuários e menores custos, em função do alto grau de compartilhamento dos diversos recursos do sistema.

Qual a diferença entre sistemas de Tempo Compartilhado e de Tempo Real? Quais aplicações são indicadas para sistemas de Tempo Real?

A diferença entre eles é o tempo exigido no processamento das aplicações:

  • Tempo Compartilhado: O tempo de processamento pode variar sem comprometer as aplicações em execução. Existe a ideia de fatia de tempo (time slice).
  • Tempo Real: Os tempos de execução devem estar dentro de limites rígidos que devem ser obedecidos, caso contrário, poderão ocorrer problemas irreparáveis. Não existe a ideia de fatia de tempo; um programa ocupa o processador o tempo que for necessário ou até que apareça outro com um nível de prioridade maior.

Aplicações indicadas para sistemas de Tempo Real são aquelas críticas, como controle de processos industriais, sistemas de controle de voo e equipamentos médicos.

O que são sistemas com Múltiplos Processadores e quais as vantagens em utilizá-los?

Caracterizam-se por possuir duas ou mais CPUs interligadas e trabalhando em conjunto.

A vantagem deste tipo de sistema é permitir que:

  • Vários programas sejam executados ao mesmo tempo;
  • Um mesmo programa seja subdividido em várias partes para serem executadas simultaneamente em mais de um processador.

Entradas relacionadas: