Aula 01 - Introdução
Aula 01 - Introdução
Aula 01 - Introdução
Objetivos
Compreender os conceitos básicos de Sistemas Operacionais. Conhecer suas funções
principais.
Analisar o Sistema Operacional como uma máquina de níveis.
Usuários
Sistemas
Operacionais
Hardware
1.2 Funções principais
Na Figura acima foi destacado o controle de hardware. Esta é uma das funções básicas do SO e pode ser
desmembrada em:
Se imaginarmos, por exemplo, que uma impressora pode ser utilizada por vários usuários do
sistema, então deverá existir algum controle para impedir que a impressão de um usuário
interrompa a impressão de outro. O sistema operacional é o responsável por permitir o acesso
organizado a esse e a ou- tros recursos disponíveis no computador.
De um modo geral, os programas que os usuários executam não são escritos para um processador, mas sim
para um SO. Isto facilita a comu- nicação do programa com o hardware do computador. As tarefas são
executadas pelo SO, tornando os programas menores e mais fáceis de serem programados (Machado e
Maia, 2004. p.1-3).
Programas
Sistema Operacional
Hardware
17
Em uma situação ideal, somente o sistema operacional deve ter acesso ao hardware do
computador. Um programa que desejasse, por exemplo, fazer um desenho no monitor,
obrigatoriamente teria de repassar esta tarefa ao sistema operacional. Este, por sua vez,
iria analisar o pedido do programa e, considerando o pedido válido, o executaria. Caso
um determinado progra- ma resolvesse fazer um pedido estranho (por exemplo, apagar
todos os da- dos do disco rígido), o SO simplesmente poderia ignorar tal pedido, terminar
a execução do programa e informar a ocorrência ao usuário.
Um programa de usuário não deve acessar recursos do computador diretamen- te, deve
antes passar pela intermediação e autorização do sistema operacional.
19
A solução para esse problema foi o surgimento do Sistema Operacional,
que tornou a interação entre usuário e computador mais simples,
confiável e eficiente. A partir desse acontecimento, não existia mais a
necessidade de o programador se envolver com a complexidade do
hardware para poder trabalhar; ou seja, a parte física do computador
tornou-se transparente para o usuário.
19
Quando o usuário está trabalhando em um desses níveis, não necessita saber da existência das outras
camadas, acima ou abaixo de sua máquina virtual.
Aplicativos
Utilitários
Sistema Operacional
Linguagem de Maquina
Microprogramação Hardware
Dispositivos
Físicos
Atualmente, a maioria dos computadores possui a estrutura mostrada na Figura acima, podendo
conter mais ou menos camadas. A linguagem utilizada em cada um desses níveis é diferente,
variando da mais elementar (baixo nível) à mais sofisticada (alto nível). Os aplicativos são
programas executados pelo usuário. Os utilitários são programas de uso genérico e frequente,
ge- ralmente fornecidos junto com o SO. Cada um desses níveis será abordado com mais
detalhes nas próximas aulas.
Um sistema operacional pode então ser definido sob dois aspectos: como uma máquina estendida
ou máquina virtual e como um gerenciador de recursos.
O sistema operacional, como uma máquina virtual, esconde do programador detalhes do
hardware, apresentando uma visão simples,
20 mais conveniente e mais fácil de utilizar.
Quando o usuário está trabalhando em um desses níveis, não necessita saber da existência das outras
camadas, acima ou abaixo de sua máquina virtual.
Utilitários
Sistema Operacional
Linguagem de Maquina
Microprogramação Hardware
Dispositivos
Físicos
O sistema operacional, como um gerenciador de recursos, fornece uma alo- cação controlada e
ordenada dos recursos do computador entre os vários programas que competem por esses
recursos. Os recursos incluem processa- dores, memórias, dispositivos de E/S (unidades de disco,
impressoras, mouse, etc.), interfaces de rede, dentre outros.
20
Resumo
Nesta aula você aprendeu alguns conceitos básicos sobre sistemas operacio- nais, algumas
questões importantes sobre seu funcionamento e funções prin- cipais. Viu também como a
estruturação de um sistema em camadas pode ser vantajosa em termos de eficiência de todo o
ambiente computacional.
Atividades de aprendizagem
1.Quais seriam as principais dificuldades que um programador teria no desenvolvimento de uma
aplicação em um ambiente sem um sistema operacional?
2.Explique o conceito de máquina virtual. Qual a grande vantagem em utilizar esta metodologia?
21