Escolar Documentos
Profissional Documentos
Cultura Documentos
INTRODUÇÃO
1. Objectivos e Fundamentos dos
Sistemas Operativos
► Um sistema operativo é um programa ou conjunto de programas que faz o
gerenciamento do computador. Sua principal função é controlar o funcionamento
do computador, gerenciando a utilização e o compartilhamento de recursos tais
como processador, memória e dispositivos de entrada/saída. São exemplos de
sistemas operacionais os antigos D.O.S. (Disk Operation System) e o Unix, e os
atuais Windows XP, Windows Vista e Seven(7), Solaris, Mac OS X, Linux,
FreeBSD, Symbian, Android, iOS entre outros. Sendo alguns de sistemas
operacionais livres e distribuídos com o código-fonte aberto, outros são sistemas
proprietários. Também temos aqueles que foram desenvolvidos exclusivamente
para celulares e smartphones.
1. Objectivos e Fundamentos dos
Sistemas Operativos (cont.)
▪ Gerenciar os recursos de hardware de forma que sejam utilizados da melhor forma
possível, ou seja, “tirar” o máximo proveito da máquina fazendo com que seus
componentes estejam a maior parte do tempo ocupados com tarefas existentes; e
▪ Prover funções básicas para que programas de computador possam ser escritos
com maior facilidade, de modo que os programas não precisem conhecer detalhes
da máquina para poderem funcionar.
2. Evolução histórica
2. Evolução histórica (cont.)
1. Monitor de Controlo
❑ Permite ao utilizador: – Carregar programas em memória, editá-los, etc. – Resultados
dos programas: listagens, fitas perfuradas
❑ Cada utilizador tem um determinado tempo atribuído durante o qual tem o
computador apenas para si
❑ O monitor é formado por um conjunto de utilitários:
❑ Interpretador de linguagem de comando
❑ Compilador, Assemblador (Assembler)
❑ Editor de ligações (linker)
❑ Carregador de programas em memória (loader)
❑ Biblioteca de rotinas para controlo de periféricos (consola, leitor de cartões, etc.)
2. Evolução histórica (cont.)
2. Tratamentos por Lotes
❑ Os periféricos mecânicos (ex.: impressoras, leitores/perfuradores de fita) eram muito lentos
quando comparados com a velocidade de processamento do computador
❑ Solução inicial:
❑ Separar as Entradas/Saídas do processamento
❑ Entrada:
❑ Computador auxiliar lê os trabalhos e executar escreve-os para ficheiros em banda magnética
❑ Quando o trabalho em curso termina o SO vai à lista de trabalhos e selecciona o próximo a executar-se
❑ Saída
❑ Em vez de imprimir directamente os programas escrevem a saída em ficheiros que são enviados para a
impressora quando a aplicação termina - spooling
❑ Evolução:
❑ Os periféricos executam tarefas autónomas e avisam o processador do fim da sua execução através de
interrupções.
❑ Execução em paralelo dos programas e das E/S
2. Evolução histórica (cont.)
3. Sistemas multi-programados
❑ O mecanismo de interrupções permite multiplexar o processador entre várias
actividades concorrentes.
❑ No exemplo anterior entre um programa e as entradas/saidas,
❑ Mas esta capacidade de alternar a execução pode ser estendida à multiplexagem de vários
programas residentes na memória.
4. Sistemas Interactivos
5. Memória Virtual
❑ Decompôr o espaço de endereçamento dum processo em blocos. I
❑ Manter em memória apenas alguns desses blocos (código e dados) do processo em
execução.
❑ Manter os outros blocos no disco:
❑ na área de swap;
❑ no sistema de ficheiros (código, p.ex.).
6. Sistemas distribuidos
❑ Consequência da evolução de:
❑ Redes de dados
❑ Computadores pessoais – PC
❑ Sistemas abertos (normalização oficial e de facto)
❑ Custo e desempenho da electrónica digital
São semelhantes aos sistemas time-sharing, embora exijam tempo de resposta dentro
de limites rígidos, na execução de tarefas. O conceito de time-slice é muito pouco
utilizado e os processos executam o tempo necessário e conforme sua prioridade. São
sistemas muito utilizados em controle de processos, onde o tempo é um fator crucial:
refinaria de petróleo, automação industrial, controle de tráfego aéreo etc.. Neste
sistema, os processos geralmente são ativados por sensores.
3. Tipos de Sistemas Operativos (cont.)