sistemas operacionais 1º semestre aula 3 prof. carlos vinícius [email protected] serviÇo...
TRANSCRIPT
Sistemas Operacionais1º Semestre
Aula 3
Prof. Carlos Viní[email protected]
SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIALFACULDADE DE TECNOLOGIA SENAC PELOTAS
Definição de S.O.
o É uma camada de software que opera entre o hardware e os programas aplicativos voltados ao usuário final.
o É uma estrutura de software ampla, muitas vezes complexa, que incorpora aspectos de baixo nível (como drivers de dispositivos e gerência de memória física) e de alto nível (como programas utilitários e a própria interface gráfica).
2
Visão de S.O.
3
p ro g ram a do rese a na lista s
m em ór ia d isco s
U C P
U su á r io s
H ardw are
Sistem a O peracio na lSistem a O peracio na l
fi ta s
im presso ra s m o nito res
p rog ram a s,sistem a s eap lica tivo s
u su ário s
Abstração de Recursos
o Cada hardware tem sua particularidade...
o Cabe ao S.O. gerenciar as particularidades do hardware
o Um processador de texto não deve deter o conhecimento de como gravar um arquivo (disquete, cartão de memória, pen drive, HD’s...)
4
Cabe ao S.O.
o Prover interfaces de acesso aos dispositivos, mas simples de usar que as interfaces de baixo nível.
o Tornar os aplicativos independentes do hardware.
o Definir interfaces de acesso homogêneas para dispositivos comtecnologias distintas.
5
Gerência de Recursos
o Cabe ao S.O. definir políticas para gerenciar o uso dos recursos de hardware pelos aplicativos, e resolver eventuais disputas e conflitos.o Uso de processador...o Acesso a disco...o Memória...
6
Conceitos Principais - Introdução
Sistema Computacional: 1 ou + processadores, memória principal, discos, impressoras, teclado, monitor, interface de rede e outros dispositivos de entrada e saída.
Dados (Entradas) Processamento Resultado: Informação (Saídas)
Etapas básicas de um processamento de dados.
CPU
Unidade de Controle
ULA
RegistradoresMemória principal
Barramento
Dispositivo de E/S
Impressora Disco
7
Conceitos Principais - Introdução
27/04/23Introdução8
Sistema Operacional: responsável por gerenciar todos os componentes de hardware, dispositivos de E/S e fornecer aos programas do usuário uma interface com o hardware mais simples.
Área de atuação do S.O.
8
Conceitos Principais - Introdução
27/04/23Dispositivos físicos – C.I.s, placas, fios, fontes, ...
Registradores (int. da CPU), caminho de dados, ...
L.M. tem entre 50 e 300 instruções. RISC e CISC.
Camada que oculta o hardware para facilitar os níveis superiores do modelo. Ex.: “leia bloco do arquivo X” – aplicação não se preocupa com sincronização da cabeça de leitura do HD, movimentação dos discos e cabeças e etc.
São fornecidos juntos com o S.O. mas não fazem parte do S.O.
Aplicações de uso comum ou específico pelos usuários.
9
Conceitos Principais - Introdução
27/04/2310
Sistema Operacional ?
S.O. como máquina estendida: apresentar ao usuário o equivalente a uma máquina estendida ou máquina virtual mais fácil de programar do que o hardware.
• O sistema operacional oferece uma série de serviços que os programas podem obter usando instruções especiais conhecidas como chamadas ao sistema.
S.O. como gerenciador de recursos: fornecer uma alocação ordenada e controlada de processadores, memórias e dispositivos de E/S entre vários programas que competem por eles.
10
Conceitos Principais - Introdução
27/04/23Introdução11
Sistema Operacional ?
S.O. como gerenciador de recursos:
Ex.: Três programas solicitando impressão simultâneamente.
Sem intervenção do S.O. uma impressão desordenada com trechos de vários conteúdos em uma mesma folha.
Com intervenção do S.O. uma impressão ordenada com conteúdos correspondentes de cada programa.
11
Conceitos Principais - Introdução
27/04/23Introdução12
Sistema Operacional ?
S.O. como gerenciador de recursos:
Compartilha recursos de duas maneiras:
1)No tempo: dois programas tentando executar algum processo na CPU simultaneamente.
2)No espaço: dois programas alocados na memória RAM simultaneamente e sendo gerenciados pelo S.O..
12
Introdução - Evolução
27/04/23Introdução13
Marco 1
13
Introdução - Evolução
27/04/2314
Marco 2
Cada fabricante com dois tipos de produtos:-Público científico (ciência e engenharia)-Público comercial (bancos, seguradoras, ...)
Problemas de compatibilidade e atualizações nos produtos
Solução da IBM unificar as soluções (System/360)- Novo problema: CPU ociosa até 90% do tempo
aguardando retorno de um dispositivo de E/S.
14
Introdução - Evolução
27/04/23Introdução15
Marco 2
Solução da IBM unificar as soluções (System/360)- Novo problema: CPU ociosa até 90% do tempo
aguardando retorno de um dispositivo de E/S.
Solução: Dividir a memória em várias partes e colocar mais jobs.Enquanto um job espera E/S, outro job pode ser processado pela CPU.
15
Introdução - Evolução
27/04/23Introdução16
Marco 3
S.O. modernos MS-DOS / Macintosh / Windows / ...
Sistemas Operacionais de Rede: usuários sabem da existência de vários computadores e podem conectar-se as máquinas remotas.
Sistemas Operacionais Distribuídos: usuários não sabem da existência de vários computadores .
16
Introdução - Tipos
27/04/23Introdução17
Sistemas Operacionais de Computadores de Grande PorteSistemas Operacionais de ServidoresSistemas Operacionais de MultiprocessadoresSistemas Operacionais de Computadores PessoaisSistemas Operacionais de Tempo RealSistemas Operacionais EmbarcadosSistemas Operacionais de Cartões Inteligentes
17
Introdução – S.O. e Hardware
27/04/23Introdução18
Processadores
18
Introdução – S.O. e Hardware
Pipeline: dividir a execução das instruções em estágios. As mais novas implementações possuem acima de 12 estágios de paralelismo.
Busca da instrução
Decod. dainstrução
Busca do operando
Exec. dainstrução
Gravação
S1 S2 S3 S4 S5
S1: t1 – t2 – t3 – t4 – t5 – t6 – t7 – t8 – t9S2: t1 – t2 – t3 – t4 – t5 – t6 – t7 – t8S3: t1 – t2 – t3 – t4 – t5 – t6 – t7S4: t1 – t2 – t3 – t4 – t5 – t6S5: t1 – t2 – t3 – t4 – t5 Tempo ---> Latência: tempo de demora para
executar uma instrução.19
Introdução – S.O. e Hardware
27/04/23Introdução20
Pipeline duplo: a partir do 486 a Intel lança em seus processadores essa arquitetura.
Busca da instrução
Decod. dainstrução
Busca do operando
Exec. dainstrução
Gravação
S1 S2 S3 S4 S5
Decod. dainstrução
Busca do operando
Exec. dainstrução
Gravação
20
Introdução – S.O. e Hardware
27/04/23
Pipeline com múltiplas unidades funcionais: a partir do Pentium II a Intel lança em seus processadores essa arquitetura.
Busca da instrução
Decod. dainstrução
Busca do operando
ALU
Gravação
S1 S2 S3
S4
S5ALU
LOAD
STORE
Ponto Flutuante21
Introdução – S.O. e Hardware
27/04/23Introdução22
Memórias
22
Introdução – S.O. e Hardware
27/04/23Introdução23
-Memória CACHE:
-Conceito – as palavras de memória usadas com mais frequência são mantidas em uma memória intermediária chamada: cache.-Quando a CPU precisa de uma palavra ela examina primeiro a cache.-Somente se a palavra não estiver na cache a memória principal é utilizada.-Se uma fração substancial das palavras estiver na cache, o tempo de acesso médio pode ser muito reduzido.
-Logo, desempenho depende da cache.
Memória CACHE23
Introdução – S.O. e Hardware
27/04/23Introdução24
-Acesso dos programas na memória:-Programas não acessam suas memórias em total aleatoriedade.-Se uma dada referência à memória for para o endereço A, é muito provável que a próxima referência à memória estará na vizinhança geral de A.
-Por que a desfragmentação de dados é importante?-Este processo faz com que instruções e dados de um programa fiquem próximos uns dos outros agilizando a leitura.
Memória CACHE24
Introdução – S.O. e Hardware
27/04/23Introdução25
-Princípio da localidade:-um programa acessa uma porção relativamente pequena do espaço endereçável em um instante qualquer.
Localidade temporal: Se um item é referenciado, ele tenderá a ser referenciado novamente.
Localidade espacial: Se um item é referenciado, itens cujos endereços são próximos a este, tenderão a ser referenciados também.
Idéia geral: quando uma palavra for referenciada, ela e algumas de suas vizinhas sejam trazidas da memória grande e lenta para a cache.
Memória CACHE25
Introdução – S.O. e Hardware
27/04/23Introdução26
Alternativa em alguns sistemas:Referenciar a cache e memória principal ao mesmo tempo para ganhar tempo caso a cache não tenha a palavra desejada.
Conceitos embutidos: - cache miss: sinalizar que o dado não foi encontrado e seguir o processo de busca na memória principal; - cache hit: sinalizar que o dado foi encontrado na cache e bloquear a busca na memória principal.
Problema: - implantação deste modelo mais complicada em termos de arquitetura.
Memória CACHE26
Introdução – S.O. e Hardware
27/04/23Introdução27
Princípio da localidade (outras considerações):
-Memórias são divididas em blocos de tamanho fixo;-Blocos dentro da cache são chamados de linha de cache;
-SE (busca na cache falhar) ENTÃO-TODA a linha de cache é carregada da memória principal para a memória cache e não apenas a palavra que se quer.
-Ex.: -Linha de cache de 64 bytes. -Referência ao endereço 260.-Qual bloco de endereço será carregado para a cache?
-256 ao 319
0 – 6364 – 127128 – 191192 – 255256 – 319
Escala de endereços.260 está neste bloco.
Memória CACHE27
Introdução – S.O. e Hardware
27/04/23Introdução28
Comparativo RAM e ROM:
Tipo Categoria Modo de apagar Volátil Utilização típica
SRAM Leitura/escrita Elétrico Sim Cache nível 2
DRAM Leitura/escrita Elétrico Sim Mem. Princ. Antiga
SDRAM Leitura/escrita Elétrico Sim Mem. Princ. Nova
ROM Somente leitura Não é possível Não Dispositivos em geral
PROM Leitura/escrita 1 vez Não é possível Não Dispositivos em geral
EPROM Leitura/escrita Luz UV Não Protótipos
EEPROM Leitura/escrita Elétrico Não Protótipos
Flash Leitura/escrita Elétrico Não Memory card / pen-drive
28
Introdução – S.O. e Hardware
27/04/23Introdução29
Disco Rígido
29