Upload
micaela-paes
View
215
Download
0
Embed Size (px)
Citation preview
Professor Angelo Gonçalves da Luz
SISTEMAS OPERACIONAISIntrodução
Prof. Angelo Gonçalves da Luz
Introdução O que se espera de um sistema de computação?
o Execução de programas de usuários;o Permitir a solução de problemas.
Sistema Operacional é um programa colocado entre o hardware do computador e os programas dos usuários de forma a atingir esses dois objetivos.
27/04/23 Introdução à Sistemas Operacionais 2
Programas
Sistema Operacional
Hardware
Prof. Angelo Gonçalves da Luz
Componentes Genéricos de um Sistema Computacional Hardware
o Recursos básicos (memória, dispositivos de E/S, CPU) Sistema Operacional
o Controla e coordena o uso do hardware entre vários programas aplicativos e usuários.
Programas aplicativos e de sistemao Define como os recursos de hardware são empregados na solução de
um problema (compiladores, jogos, banco de dados,…) Usuários
o Pessoas, máquinas, outros computadores, etc.
27/04/23 Introdução à Sistemas Operacionais 3
Prof. Angelo Gonçalves da Luz
Componentes Genéricos de um Sistema Computacional
27/04/23 Introdução à Sistemas Operacionais 4
Usuário 1 Usuário 2 Usuário 3 Usuário N
Browser IDE Player PES
Sistema Operacional
Hardware
….
Prof. Angelo Gonçalves da Luz
Sistema Operacional: Conceito Sistema Operacional
o Um programa que controla a execução de programas aplicativos;o Interface entre aplicativos e hardware.
Duas formas de ver um Sistema Operacionalo Alocador de Recursos;
Proteger memória;Alocar processador.
o Máquina estendida.Abstrair detalhes de hardware.
27/04/23 Introdução à Sistemas Operacionais 5
Prof. Angelo Gonçalves da Luz
Sistema Operacional: Objetivos Tornar mais conveniente a utilização de um computador
o “Esconder” detalhes internos de funcionamento Tornar mais eficiente a utilização de um computador
o Gerenciamento “justo” dos recursos do sistema
27/04/23 Introdução à Sistemas Operacionais 6
Prof. Angelo Gonçalves da Luz
Usuário
Sistema Operacional: Interface usuário/computador
27/04/23 Introdução à Sistemas Operacionais 7
Aplicativos
Utilitários
Sistema Operacional
Hardware
Usuário Final Programador Projetista
S.O
Prof. Angelo Gonçalves da Luz
Sistema Operacional: Serviços Criação de programas
o Editores, depuradores, compiladores Execução dos programas
o Carga de programas na memória Acesso a dispositivos de E/S Controle de acesso a arquivos Acesso a recursos de sistema
o Proteção entre usuários
27/04/23 Introdução à Sistemas Operacionais 8
Prof. Angelo Gonçalves da Luz
Sistema Operacional: Serviços Contabilidade
o Estatísticaso Monitoramento de desempenhoo Sinalizar upgrades necessários de hardware
Detecção de erroso Erros de hardware
Ex.: erros de memória, falha de dispositivo de E/S.o Erros de programação
Ex.: overflow, acesso não-autorizado a posição de memória.o Aplicação solicita recursos que o sistema operacional não pode alocar
(falta de recurso, segurança).
27/04/23 Introdução à Sistemas Operacionais 9
Prof. Angelo Gonçalves da Luz
Diferentes “imagens” do Sistema Operacional Sistema Operacional na visão do usuário
o Imagem que um usuário tem do sistemao Interface oferecida ao usuário para ter acesso a recursos do sistema
Chamadas de sistemaProgramas de sistema (utilitários)
Sistema Operacional na visão de projetoo Organização interna do sistema operacionalo Mecanismos empregados para gerenciar recursos do sistema
27/04/23 Introdução à Sistemas Operacionais 10
Prof. Angelo Gonçalves da Luz
Chamadas de sistema Forma que programas solicitam serviços ao sistema operacional
o Análogo a sub-rotinao Transferem controle para o sistema operacional invés de transferir
para outro ponto do programa É o kernel (núcleo) do sistema operacional que implementa as
chamadas de sistemao Existem chamadas de sistema associadas a gerência do processador,
de memória, arquivos e de entrada/saída Variação: micro-kernel
o Serviços básicos são implementados pelo micro-kernelGerência do processador e de memória
o Kernel implementa demais serviços utilizando o micro-kernelSistema de arquivos, memória virtual, protocolos de comunicação, etc.
27/04/23 Introdução à Sistemas Operacionais 11
Prof. Angelo Gonçalves da Luz
Programas de Sistema (Utilitários) Programas executados fora do kernel Implementam tarefas básicas
o Muitas vezes confundidos com o próprio sistema operacionalEx.: compiladores, assemblers, etc.
o Interpretador de comandosAtivado sempre que o sistema operacional inicia uma sessão de trabalho
• Ex.: bash, csh, sh, etc.Interface gráfica de usuário (GUI)
• Ex.: Família Windows, MacOS, GNOME, KDE, etc.
27/04/23 Introdução à Sistemas Operacionais 12
Prof. Angelo Gonçalves da Luz
Sistemas Operacionais: História Primórdios:
o Sistema Operacional inexistenteo Usuário é o programador e o operador da máquinao Alocação do recurso “computador” feito por planilha
Evolução foi motivada por:o Melhor utilização de recursoso Avanços tecnológicos (novos tipos de hardware)o Adição de novos serviços
27/04/23 Introdução à Sistemas Operacionais 13
Prof. Angelo Gonçalves da Luz
Sistemas em Lote (batch) Introdução de operadores profissionais
o Usuário não era mais o operador da máquina Job
o Programa a ser compilado e executado, acompanhado dos dados de execução (cartões perfurados)
o Jobs são organizados em lote (batch)Necessidades semelhantes (ex.: mesmo compilador, bibliotecas)
Passagem entre diferentes jobs continua sendo manual
27/04/23 Introdução à Sistemas Operacionais 14
Prof. Angelo Gonçalves da Luz
Monitor residente Evolução:
o Sequenciamento automático de jobs, transferindo o controle de um job a outro
o Primeiro Sistema Operacional (rudimentar) Monitor residente:
o Sempre na memóriao Monitor – job - Monitor
27/04/23 Introdução à Sistemas Operacionais 15
Prof. Angelo Gonçalves da Luz
Sistemas batch multiprogramados (multitarefa) Monitor residente permite a execução de apenas um programa a
cada vez. Desperdício de tempo de CPU com operações de E/S Evolução:
o Manter diversos programas na memória ao mesmo tempoo Enquanto um programa realiza E/S, outro pode ser executado
27/04/23 Introdução à Sistemas Operacionais 16
J1
J1
J1 J1
J1
J1J2 J3CPU
E/S
Desperdício de CPU Multiprogramação
tempo tempo
Prof. Angelo Gonçalves da Luz
MultiprogramaçãoManter mais de um programa em “execução” simultaneamente;Duas inovações de hardware possibilitaram o surgimento da multiprogramação;
o InterrupçõesSinalização de eventos
o Discos magnéticosAcesso randômico a diferentes jobs (programas) no disco;Melhor desempenho em acessos de leitura e escrita.
27/04/23 Introdução à Sistemas Operacionais 17
Prof. Angelo Gonçalves da Luz
Sistemas timesharing Tipo de multiprogramação Usuários possuem um terminal
o Interação com o programa em execução Ilusão de possuir a máquina dedicada a execução de seu
programao Divisão do tempo de processamento entre usuárioso Tempo de resposta é importante
27/04/23 Introdução à Sistemas Operacionais 18
Prof. Angelo Gonçalves da Luz
Sistemas monousuário e multiusuário Sistemas monousuário
o Projetados para serem usados por um único usuárioEx.: MS-DOS, Windows 3.x, Windows 9x, Millenium.
Sistemas multiusuárioo Projetados para suportar várias sessões de usuários em um
computadorEx.: Windows NT, UNIX.
27/04/23 Introdução à Sistemas Operacionais 19
Prof. Angelo Gonçalves da Luz
Sistemas multitarefa e monotarefa Sistemas monotarefa
o Capazes de executar apenas uma tarefa de cada vezEx.: MS-DOS
Sistemas multitarefaso Capazes de executar várias tarefas simultaneamenteo Existem dois tipos de sistemas multitarefa:
Não preemptivo (cooperativo)• Ex.: Windows 3.x, Windows 9x (16 bits)
Preempitvo• Ex.: Windows NT, OS/2, UNIX, Windows 9x (32 bits)
27/04/23 Introdução à Sistemas Operacionais 20
Prof. Angelo Gonçalves da Luz
Sistemas Distribuídos Distribuir a realização de uma tarefa entre vários computadores Sistema distribuído:
o Conjunto de computadores autônomos interconectados de forma a possibilitar a execução de um serviço;
o Existência de várias máquinas é transparente;o Software fornece uma visão única do sistema.
Exemplo
27/04/23 Introdução à Sistemas Operacionais 21
Prof. Angelo Gonçalves da Luz
Sistemas Distribuídos Sistemas fracamente acoplados (loosely coupled system)
o Máquinas independentes;Cada máquina possui seu próprio sistema operacional
o Comunicação é feita através de troca de mensagens entre processos. Vantagens
o Compartilhamento de recursos;o Balanceamento de carga;o Maior confiabilidade.
27/04/23 Introdução à Sistemas Operacionais 22
Prof. Angelo Gonçalves da Luz
Sistemas Paralelos Máquinas multiprocessadoras, possuem mais de um processador; Sistemas fortemente acoplados (tighly coupled system);
o Processadores compartilham memória;o Comunicação é realizada através da memória.
Vantagens:o Aumento de throughput (número de processos executados);o Aspectos econômicos.
27/04/23 Introdução à Sistemas Operacionais 23
Prof. Angelo Gonçalves da Luz
Sistemas Paralelos Multiprocessamento Simétrico (SMP)
o Cada processador executa uma cópia idêntica do sistema operacionalo Vários processos podem ser executados em paralelo sem perda de
desempenho para o sistemao A maioria dos sistemas operacionais atuais suportam SMP através do
conceito de multithreading. Multiprocessamento Assimétrico
o Cada processador executa uma tarefa específica;o Possui Processador mestre para alocação de tarefas a escravo.
27/04/23 Introdução à Sistemas Operacionais 24
Prof. Angelo Gonçalves da Luz
Sistemas de Tempo RealEmpregado para o controle de procedimentos que devem responder dentro de um certo intervalo de tempo;
Noção de tempo real é dependente da aplicação.o Milisegundos, minutos, horas, etc.
Podem ser Classificados como:Crítico: Precisa necessariamente, ocorrer no tempo X.Não Crítico: É desejável que ocorra no tempo X, porém, erros
eventuais não resultarão em grandes problemas.
Algumas vezes, o sistema Operacional acaba sendo apenas uma biblioteca necessária para o funcionamento do software.
27/04/23 Introdução à Sistemas Operacionais 25
Prof. Angelo Gonçalves da Luz
Sistemas de Tempo RealExemplos:
o Controle de Tráfego Aereo;o Telefones digitais;o Aeronaves teleguiadas;o Reservas de Passagens aereas;o Produção industrial.
27/04/23 Introdução à Sistemas Operacionais 26
Prof. Angelo Gonçalves da Luz
Sistemas Embarcados Sistemas que normalmente controlam dispositivos que não são
considerados computadores; São sistemas fechados, ou seja, não aceitam instalação de
software por parte do usuário
Ex.: o Televisão;o Micro-ondas;o DVD-Player.
27/04/23 Introdução à Sistemas Operacionais 27
Prof. Angelo Gonçalves da Luz
Leitura Complementar R. Oliveira, A. Carissimi, S. Toscani; Sistemas Operacionais. 3. ed.
Porto Alegre. Sagra-Luzzato, 2008. o Capítulo 1.
A. S. TANEMBAUM. Sistemas Operacionais modernos. 2. ed. São Paulo. Prentice. 2003.o Capítulo 1.
27/04/23 Introdução à Sistemas Operacionais 28