-
Em relação ao seu projeto (arquitetura), segundo Tanenbaum (1999):
- Núcleo monolítico ou monobloco: o núcleo consiste em um único processo executando numa memória protegida (espaço de núcleo) executando as principais funções. Ex.: MAC OS X, OS/2, Windows, Linux, FreeBSD.
- Micronúcleo ou modelo cliente-servidor: o núcleo consiste de funções mínimas (comunicação e gerenciamento de processos), e outras funções, como sistemas de arquivos e gerenciamento de memória, são executadas no espaço do usuário como serviços; as aplicações (programas) são os clientes. Ex.: GNU Hurd, Mach.
- Sistema em camadas: funções do núcleo irão executar em camadas distintas, de acordo com seu nível de privilégio. Ex.: Multics.
- Monitor de máquinas virtuais: fornece uma abstração do hardware para vários sistemas operacionais. Ex.: VM/370, VMware, Xen.
Quanto ao gerenciamento de processos, pode-se usar a seguinte classificação:
- Monotarefa: pode-se executar apenas um processo de cada vez Ex.: MS-DOS.
- Multitarefa: além do próprio SO, vários processos de utilizador (tarefas) estão carregados em memória, sendo que um pode estar ocupando o processador e outros ficam enfileirados, aguardando a sua vez. O compartilhamento de tempo no processador é feito de modo que o usuário tenha a impressão que vários processos estão sendo executados simultaneamente. Cada processo recebe um tempo para ser executado. Ao final desse tempo, outro processo é executado. Essa alternância de processos chama-se concorrência.
- Multitarefa cooperativa: Executa dois ou mais programas em simultâneo mas o programa que está em primeiro plano tem controlo sobre o processador. Neste caso se este programa falhar bloqueia o computador e tem que ser reiniciado. Exempo de SO: Windows 3.x e versões anteriores ao Mac OS 8.
- Multitarefa preempetiva: É o processador que controla a execução dos programas, desta forma permite ao sistema operativo recuperar o controlo caso um programa bloqueie. O utilizador perde os trabalhos do programa que falhou mas os restantes programas continuam a trabalhar. Exemplo de SO: Unix; Linux; Windows 95 e superiores; MAC OS 8 e superiores; etc.
- Elemento de lista com marcas
-
Continuação:
Ex: OS/2, Windows, Linux, FreeBSD e o Mac OS X. Cabe destacar que processos só podem estar executando simultaneamente caso o sistema seja multiprocessado, já que, em que cada instante de tempo, apenas um processo está em execução em um processador ou núcleo de processamento (core).
- Multiprocessamento: o SO distribui as tarefas entre dois ou mais processadores. Se os processadores estivem na mesma máquina fisica, o sistema é chamado de Sistema Multiprocessado Fortemente Acoplado. Caso esteja em máquinas diferentes, trata-se de um Sistema Multiprocessado Fracamente Acoplado.
Quanto à quantidade de usuários que podem utilizar o sistema concorrentemente:
-
Modelos de S.O.:
? Sistemas operacionais de computadores de grande porte;
? Sistemas operacionais de servidores;
? Sistemas operacionais de multiprocessadores;
? Sistemas operacionais de computadores pessoais;
? Sistemas operacionais de computadores portateis;
? Sistemas operacionais embarcados;
? Sistemas operacionais de nós sensores (sensor node);
? Sistemas operacionais de tempo real;
? Sistemas operacionais de cartões inteligentes (smart cards)
-
Os sistemas operacionais podem ser classificados segundo inúmeros critérios, dentre os quais os mais comuns são:
•Aplicativos ou números de tarefas
–Monotarefa - executa uma tarefa de cada vez
–Multitarefa - processos podem ser executados simultaneamente/concorrentemente
•Usuários ou números de usuário
–Monousuários – projetados para suportar um único usuário. Exemplos: MS DOS e Windows.
–Multiusuários - projetados para suportar várias sessões de usuários. Exemplos desse sistema são Windows NT e UNIX.
•Qtde Processadores
–Monoprocessado – Trabalha com 1 processador.
–Multiprocessado - Trabalha com 2 ou mais processadores.
Multiprogramação versus Monoprogramação
A multiprogramação torna mais eficiente o aproveitamento dos recursos do computador. Isso é conseguido por meio da execução simultânea de vários programas. Em um sistema multiprogramado diversos programas são mantidos na memória ao mesmo tempo. A ideia da multiprogramação é aproveitar o tempo ocioso do processador durante as operações de entrada e saída, ou seja, enquanto o periférico executa o comando enviado, o sistema operacional inicia a execução de outro programa. Isso faz com que exista uma maximização do uso do processador e da memória. Em um ambiente monoprogramado, o processador ficaria parado durante a realização do acesso a um periférico. Multiprogramação depende apenas do sistema operacional.
Alternativa: B
-
Sistemas com múltiplos processadores não são Sistemas Operacionais. Questão no mínimo questionável quanto a elaboração.
-
Tipos de SO:
• Monotarefa;
• Multitarefa.
Alternativa B.
-
b-
monotarefa é executar um programa por vez. A capacidade de multiprogramação permitiu executar programas em time slices. O conceito de job surgiu para possibilitar executar um programa enquanto outro aguardava req. I/O. Com o MS-DOS, o advento de multitarefa veio, e multiprocessamento permitiu executar programas simultaneos.