1. ALUNO: Ezequiel Da Silva A. Gomes
Curso: Informática
Sistemas Operacionais
Um sistema operacional é fundamentalmente um software, pode ser
o Linux, Windows, Android, macOS, UNIX. No entanto, não resume aquilo
que seus olhos conseguem ver ou ao que você consegue interagir. Em outras
palavras, é um programa que conversa diretamente com o hardware da sua
máquina.
O sistema operacional assegura que os programas funcionem corretamente.
Mas antes de entendermos o que é um sistema operacional, precisamos definir
o que é um sistema computacional.
Um computador moderno apresenta alguns elementos principais, que podemos
destacar:
Um ou mais processadores (o core);
Memória principal;
Dispositivos de entrada e saída (E/S) como monitores e teclados.
Todos esses componentes lidam em conjunto com os programas na sua
máquina. À primeira vista pode parecer pouca coisa mas você conhece de fato
todos os componentes que pertencem ao seu computador? Sabe como todos
eles funcionam?
Já pensou então se todo o usuário se preocupasse com detalhes de hardware
para escrever um arquivo de texto, ou pior, se os desenvolvedores tivessem
que aprender os pormenores dos componentes de um computador moderno
para conseguir começar a programar? Parece um trabalho sem fim, não é?
Tipos e estruturas de Sistemas operacionais
Assim como existem dispositivos diferentes, também há sistemas operacionais
específicos, com estruturas que se encaixam melhor em determinados
computadores. Essas distintas formas de processamento do sistema
operacional, estão divididas em monoprogramada e multiprogramada.
Formas de processamento:
Monoprogramada ou serial: um único programa na máquina.
o Exemplo: embarcados.
Multiprogramada ou concorrente: é eficiente e apresenta vários
programas dentro de um sistema.
o Exemplo: Linux, Windows, UNIX.
É através das chamadas de sistemas (System Calls) que executamos ou
interrompemos os processos. Um exemplo é a chamada mkdir no terminal,
que cria um novo diretório.
Agora que compreendemos de forma sucinta como ocorre a atuação dos
sistemas operacionais, é interessante observarmos também algumas
2. estruturas que já foram implementadas na prática, são elas: sistema monolítico,
sistemas de camadas, micronúcleos, modelo cliente-servidor, máquinas virtuais
e exonúcleos.
Dentre os sistemas citados, podemos destacar alguns que usualmente
aparecem em nossa rotina:
Sistema monolítico: possui um modo núcleo e um modo usuário. “O
sistema é escrito como uma coleção de rotinas , ligadas a um único
grande programa binário executável” (Tanenbaum, p.44).
o Exemplos: Linux, UNIX, Windows.
Sistemas de camadas: é modular, isso significa que sua forma de
operar é através da divisão de funcionalidades que correspondem a uma
hierarquia.
o Exemplos: MULTICS, OpenVMS.
Micronúcleo ou microkernel: o objetivo da arquitetura de kernel é
atingir alta confiabilidade por meio da divisão do sistema em pequenos
módulos onde apenas um é executado em modo núcleo, o micronúcleo,
e o restante funciona em processos comuns.
o Exemplos: Symbian, MINIX 3
Virtual Machine, ou Máquina Virtual: é basicamente a virtualização de
um outro sistema dentro do seu sistema operacional, possui uma
camada limiar que faz.