28
Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

Embed Size (px)

Citation preview

Page 1: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

Professor Angelo Gonçalves da Luz

SISTEMAS OPERACIONAISIntrodução

Page 2: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introduçã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

Page 3: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 4: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

….

Page 5: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 6: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 7: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 8: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introduçã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

Page 9: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 10: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 11: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 12: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 13: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 14: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 15: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 16: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 17: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 18: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 19: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 20: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 21: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 22: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 23: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 24: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 25: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 26: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 27: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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

Page 28: Professor Angelo Gonçalves da Luz SISTEMAS OPERACIONAIS Introdução

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