Tipos de SOs

Monotarefa (Monoprogramado)

Só permite um programa ativo em um dado período de tempo que permanece na memória até seu término. Ex.: Dos.

https://imgur.com/kNBHvzy.png

Arquitetura

https://imgur.com/729DqoC.png

Multitarefa (Multiprogramado)

Mantém mais de um programa simultaneamente na memória principal para permitir o compartilhamento efetivo do tempo de CPU e demais recursos. Ex.: Unix, VMS, Windows.

https://imgur.com/irZavX0.png

Quando dois ou mais processos estão simultaneamente no estado de pronto, eles competem pela CPU ao mesmo tempo. Cabe ao SO escolher qual executará por meio do escalonamento.

CPU-bound

Processos que utilizam muito do processador. O tempo de execução é definido pelos ciclos de processamento.

I/O-bound

Processos que utilizam muita E/S. O tempo de execução é definido pela duração das operações de E/S.

O ideal é existir um balanceamento entre processos CPU e I/O bound.

Em Lote

Em sistema não-batch cada programa (job) escrito e perfurado em um cartão por um programador era entregue ao operador da máquina para que fosse processado. O processador ficava ocioso entre a execução de dosi programas.

O sistema em batch (lote) consistia em submeter ao computador um lote de programas de uma só vez. Os jobs dos usuários são submetidos em ordem sequencial para execução.

https://imgur.com/IpEsUo7.png

Interativo

O sistema permite que os usuários interajam com suas computações.

https://imgur.com/gb75Q3Y.png

Tempo Real

Sistemas de tempo real servem aplicações que atendem processos externos e que possuem tempos de resposta limitados e críticos. Ex.: piloto automático de aviões, transações em bancos.

https://imgur.com/OSWs9ks.png