Neste artigo
- Por que existem tantas classificações?
- Classificação 1: pela forma de execução
- Sistemas monoprogramáveis (monotarefa)
- Sistemas multiprogramáveis (multitarefa)
- Classificação 2: pelo número de processadores
- Fortemente acoplados (multiprocessadores)
- Fracamente acoplados (multicomputadores)
- Classificação 3: pelo ambiente de uso
- Mainframe (grande porte)
- Servidor
- Desktop
- Móvel
- Embarcado
- Tempo real
- Cartão inteligente (smart card)
- Tabela-resumo dos tipos de sistemas operacionais
- Um mesmo sistema cabe em vários tipos
- Perguntas frequentes
- Quais são os tipos de sistemas operacionais?
- Windows, Linux e macOS são tipos de sistema operacional?
- Qual a diferença entre tipo de sistema operacional e tipo de kernel?
- Um sistema de tempo real é um sistema muito rápido?
- Conclusão
- Referências
Pergunte a três professores quais são os tipos de sistemas operacionais e você vai ouvir três listas diferentes. Um fala em monotarefa e multitarefa. Outro, em batch, tempo compartilhado e tempo real. O terceiro lista servidor, desktop, móvel e embarcado. E sempre tem alguém na turma que responde “Windows, Linux e macOS”.
Nenhuma das três listas está errada. Elas respondem a perguntas diferentes. Já a resposta da turma mistura duas coisas: Windows, Linux e macOS são produtos, e tipo é a forma como o sistema foi pensado para trabalhar.
Neste artigo vamos organizar essa bagunça em três classificações, cada uma com a sua pergunta, e fechar com uma tabela para consulta rápida.
Se você ainda não leu, vale passar antes por Você já parou para entender o que é um sistema operacional?. Aqui eu parto do ponto em que você já sabe o que um sistema operacional faz.
Por que existem tantas classificações?
Porque “tipo” depende do critério. Pense em uma frota de veículos. Dá para classificar por número de rodas, por combustível ou por uso. Uma ambulância é, ao mesmo tempo, um veículo de quatro rodas, a diesel e de emergência. Nenhuma dessas respostas anula as outras.
Com sistemas operacionais acontece o mesmo. Os livros de referência usam três critérios:
- Forma de execução. Quantos programas o sistema mantém rodando e como divide o processador entre eles. É a classificação clássica dos cursos brasileiros, a de Machado e Maia [1].
- Número de processadores. Quantos processadores o sistema coordena e o que eles compartilham.
- Ambiente de uso. Em que máquina o sistema roda e para quem trabalha. Tanenbaum e Bos chamam essa variedade de “zoológico de sistemas operacionais” [2], e Maziero fala em categorias [3].
Sou adepto de analogias, então a frota de veículos vai nos acompanhar até o fim.
- Monoprogramável
- Batch (em lote)
- Tempo compartilhado
- Tempo real
- Fortemente acoplado
- Fracamente: de rede
- Fracamente: distribuído
- Mainframe
- Servidor
- Desktop
- Móvel
- Embarcado
- Tempo real
- Cartão inteligente
Cada coluna responde a uma pergunta diferente. Repare que tempo real aparece em duas delas, e isso não é erro: vamos ver por quê.
Classificação 1: pela forma de execução
A pergunta aqui é: quantos programas o sistema mantém em execução, e como ele divide o processador entre eles?
Sistemas monoprogramáveis (monotarefa)
Executam um programa por vez. Processador, memória e periféricos ficam dedicados a ele até o fim. Se o programa para e espera uma leitura de disco, o processador espera junto, sem fazer nada. O MS-DOS é o exemplo mais lembrado.
Na nossa frota, é a moto de entrega que leva um pacote por viagem.
Sistemas multiprogramáveis (multitarefa)
Mantêm vários programas na memória e alternam o processador entre eles. Quando um programa espera uma operação de entrada e saída, outro usa a CPU. O que muda de um sistema para outro é a regra dessa alternância, e daí saem três tipos [1].
Batch (em lote). As tarefas entram em uma fila e são executadas em sequência, sem conversa com o usuário durante a execução. Os exemplos históricos são o IBM OS/360 e o VAX/VMS [3]. A ideia continua viva nas rotinas noturnas de hoje: fechamento de folha, backup, carga de dados.
Na frota, é o trem de carga. Sai com horário marcado, leva muito de uma vez e ninguém conversa com o maquinista no caminho.
Tempo compartilhado (time-sharing). O sistema divide o tempo do processador em fatias e distribui essas fatias entre os programas. Cada pessoa tem a impressão de que a máquina é só dela. É assim que Linux, Windows e macOS trabalham no seu dia a dia.
Na frota, é o ônibus. Vários passageiros, paradas frequentes, e todo mundo avança um pouco a cada trecho.
Tempo real. Aqui o que manda é o prazo. E vale desfazer um engano comum: um sistema de tempo real não precisa ser ultrarrápido. A característica essencial dele é ter comportamento previsível, com tempo de resposta conhecido no melhor e no pior caso [3]. Existem dois graus:
- Crítico (hard real-time). Perder o prazo é uma falha do sistema. Pense no controle de um freio ou de um robô de solda.
- Não crítico (soft real-time). Um atraso piora o serviço, mas não o invalida. Pense em uma chamada de vídeo que engasga.
QNX e VxWorks são exemplos conhecidos [3]. Na frota, é a ambulância: ela não precisa ser o veículo mais veloz da cidade, precisa chegar dentro do tempo.
Um fato recente para guardar: o kernel principal do Linux passou a ter suporte a tempo real. O PREEMPT_RT, que por anos existiu como um conjunto de patches externos, foi incorporado em 20 de setembro de 2024 para a versão 6.12, com suporte inicial em x86, ARM64 e RISC-V [5].
Classificação 2: pelo número de processadores
A pergunta muda: quantos processadores o sistema coordena, e o que eles compartilham entre si?
Fortemente acoplados (multiprocessadores)
Vários processadores dividem a mesma memória e são controlados por uma única cópia do sistema operacional [1]. O seu notebook com processador de vários núcleos entra aqui.
Na frota, é um caminhão com dois motoristas na mesma cabine: o painel e a carga são os mesmos, e eles se revezam no volante.
Fracamente acoplados (multicomputadores)
Cada máquina tem a sua memória e o seu sistema operacional. A conversa entre elas acontece pela rede, por troca de mensagens [1]. Dentro desse grupo, a diferença está em quanto a rede fica escondida de você:
- Sistema operacional de rede. Dá acesso a recursos de outros computadores, como arquivos e impressoras, e oferece os seus de forma controlada [3]. Você sabe em qual máquina cada coisa está.
- Sistema operacional distribuído. Os recursos de várias máquinas aparecem como se fossem de um sistema só. Quem usa não sabe, nem precisa saber, em qual computador a aplicação está rodando. O Amoeba é o exemplo acadêmico, e a computação em nuvem herdou essa ideia [3].
Na frota, é um comboio: cada caminhão tem motor e motorista próprios, e a coordenação é feita pelo rádio. Silberschatz, Galvin e Gagne dedicam uma seção inteira à diferença entre os dois [4].
Classificação 3: pelo ambiente de uso
Última pergunta: em que tipo de máquina o sistema roda, e para quem ele trabalha?
Na quarta edição de Modern Operating Systems, Tanenbaum e Bos listam nove espécies no seu zoológico [2]. Maziero chega a uma lista parecida [3]. Juntando as duas, estes são os tipos que você mais vai encontrar.
Mainframe (grande porte)
Sistemas para máquinas que processam um volume enorme de entrada e saída, com milhares de operações ao mesmo tempo. Combinam processamento em lote, transações e tempo compartilhado. O z/OS, da IBM, é o exemplo atual.
Servidor
Atendem muitos usuários pela rede ao mesmo tempo e precisam gerir bem grandes quantidades de recursos, com prioridades e limites de uso [3]. Linux, Windows Server e FreeBSD são os nomes comuns.
Desktop
Feitos para uma pessoa por vez, com foco em interface gráfica, interatividade e rede. Windows, macOS e Linux [3].
Móvel
Rodam em aparelhos pessoais compactos. As prioridades mudam: gestão de energia, conectividade e sensores [3]. Android e iOS.
Embarcado
Rodam dentro de produtos que não parecem computadores, como um roteador, um micro-ondas ou a central de um carro. O hardware tem pouco processamento, pouca memória e pouca energia. VxWorks, LynxOS, Contiki e TinyOS são exemplos [3]. Tanenbaum e Bos ainda separam os nós de sensores em uma categoria própria [2].
Tempo real
Sim, ele aparece de novo. Na primeira classificação, tempo real era uma regra de escalonamento. Aqui é um ambiente: controle industrial, equipamentos médicos, aviônica. Repare que as categorias se cruzam. O VxWorks está na lista de embarcados e na de tempo real do mesmo livro [3].
Cartão inteligente (smart card)
A menor espécie do zoológico [2]. Roda no chip de um cartão, com restrições severas de processamento e memória, e faz poucas coisas, como autorizar um pagamento.
Tabela-resumo dos tipos de sistemas operacionais
| Classificação | Tipo | Ideia central | Exemplos |
|---|---|---|---|
| Forma de execução | Monoprogramável | Um programa por vez | MS-DOS |
| Forma de execução | Batch | Fila de tarefas, sem interação | IBM OS/360, VAX/VMS |
| Forma de execução | Tempo compartilhado | Fatias de tempo entre os programas | Linux, Windows, macOS |
| Forma de execução | Tempo real | Resposta dentro de um prazo previsível | QNX, VxWorks |
| Número de processadores | Fortemente acoplado | Processadores com memória comum e um só sistema | Qualquer sistema atual em máquina multinúcleo |
| Número de processadores | De rede | Máquinas independentes que compartilham recursos | Servidor de arquivos em uma rede local |
| Número de processadores | Distribuído | Várias máquinas vistas como uma só | Amoeba |
| Ambiente de uso | Mainframe | Volume enorme de entrada e saída | z/OS |
| Ambiente de uso | Servidor | Muitos usuários pela rede | Linux, Windows Server, FreeBSD |
| Ambiente de uso | Desktop | Uma pessoa, interface gráfica | Windows, macOS, Linux |
| Ambiente de uso | Móvel | Energia, conectividade, sensores | Android, iOS |
| Ambiente de uso | Embarcado | Hardware mínimo dentro de um produto | VxWorks, Contiki, TinyOS |
| Ambiente de uso | Cartão inteligente | Um chip, poucas funções | Chip de cartão bancário |
Um mesmo sistema cabe em vários tipos
Agora a parte que as listas decoradas escondem. Repare quantas vezes o Linux apareceu neste artigo:
- no notebook, é um sistema desktop de tempo compartilhado;
- no datacenter, é um sistema de servidor;
- no celular, é a base do Android;
- no roteador da sua casa, é um sistema embarcado;
- compilado com PREEMPT_RT, a partir da versão 6.12, é um sistema de tempo real [5].
Por isso “qual é o tipo do Linux?” não tem uma resposta só. A pergunta útil é outra: neste uso, qual requisito manda?
Para quem programa, essa pergunta muda decisões de projeto. Um serviço que roda de madrugada processando arquivos é batch, e você otimiza vazão. Uma API que responde a pessoas é interativa, e você otimiza latência. Um firmware de sensor conta cada byte de memória. Saber o tipo do ambiente diz qual métrica você precisa defender.
Perguntas frequentes
Quais são os tipos de sistemas operacionais?
Depende do critério. Pela forma de execução, são monoprogramáveis e multiprogramáveis, e estes se dividem em batch, tempo compartilhado e tempo real. Pelo número de processadores, são fortemente ou fracamente acoplados. Pelo ambiente de uso, são mainframe, servidor, desktop, móvel, embarcado, tempo real e cartão inteligente.
Windows, Linux e macOS são tipos de sistema operacional?
Não. São sistemas operacionais específicos. Os três são multiprogramáveis de tempo compartilhado e são usados como sistemas desktop. Linux e Windows também têm versões de servidor.
Qual a diferença entre tipo de sistema operacional e tipo de kernel?
O tipo de sistema descreve como ele é usado e o que ele prioriza. O tipo de kernel descreve como o núcleo é construído por dentro: monolítico, microkernel, híbrido. Falei disso em O que é esse tal de Kernel?.
Um sistema de tempo real é um sistema muito rápido?
Não necessariamente. Ele é previsível: garante a resposta dentro de um prazo conhecido [3].
Conclusão
Tipo de sistema operacional não é uma gaveta só. São três perguntas: como o sistema executa os programas, quantos processadores ele coordena e onde ele roda. Na próxima vez que alguém responder “Windows, Linux e macOS”, você já sabe por onde começar a conversa.
Para continuar, veja por dentro do sistema em Entendendo os componentes de um sistema operacional.
Se este artigo ajudou, compartilhe com quem está estudando o assunto e conte nos comentários qual classificação o seu professor usa.
Até o próximo artigo!
Veja também: O Shell é o limite, O que é Docker e como funciona um container e Software Básico.
Confiança Sempre!!!
Referências
- MACHADO, Francis Berenger; MAIA, Luiz Paulo. Arquitetura de Sistemas Operacionais. Rio de Janeiro: LTC. ISBN 978-85-216-1548-4.
- TANENBAUM, Andrew S.; BOS, Herbert. Modern Operating Systems. 4. ed. Pearson, 2014. Seção 1.4, “The Operating System Zoo”. ISBN 978-0-13-359162-0.
- MAZIERO, Carlos A. Sistemas Operacionais: Conceitos e Mecanismos. 2019. Capítulo 1, seção 1.3, “Categorias”, p. 7 a 9.
- SILBERSCHATZ, Abraham; GALVIN, Peter B.; GAGNE, Greg. Operating System Concepts. 10. ed. Wiley, 2018. Seção 19.4, “Network and distributed operating systems”.
- LARABEL, Michael. Real-Time “PREEMPT_RT” Support Merged For Linux 6.12. Phoronix, 20 set. 2024.

Continue a conversa