SISTEMAS OPERACIONAIS (SO)Aula 2 – Revisão - Organização
Profa. Sarita Mazzini Bruschi
Slides de autoria de Luciana A. F. Martimiano baseados no livro
Sistemas Operacionais Modernos de A. Tanenbaum
Universidade de São PauloInstituto de Ciências Matemáticas e de ComputaçãoDepartamento de Sistemas de Computação
2
Estrutura da máquina de von Neumann
3
Estrutura da máquina de von Neumann1. Memória Principal – Armazena dados e
instruções
2. Dispositivos de Entrada e Saída – Comunicação com o mundo exterior
3. CPU – Processamento
4. Comunicação entre os blocos
4
Estrutura da máquina de von Neumann Execução de um programa:
1. Ler um Programa e Armazenar na Memória
2. Transformar programa de Linguagem de Alto Nível em Linguagem de Máquina – conjunto de instruções
3. Executar
4. Enviar Resultados para o mundo exterior
5
Estrutura da máquina de von Neumann
6
Estrutura da máquina de von Neumann Passos mais detalhados:
• Ler instrução da memória
• Decodificar a instrução
• Unidade de Controle gera sinais elétricos para execução
• ULA executa operações
• Registradores – armazenam os valores intermediários
Necessidade de interconexões
Exemplo: c = a + b
7
Unidade Central de Processamento
ULA
Executar operações lógicas
e aritmética
8
Unidade Central de Processamento
Unidade de Controle coordena a execução da instrução na micro arquitetura/circuitos
digitais
9
Unidade Central de Processamento
Registradores
Armazenamento temporário
10
CPU (Central Processing Unit) É responsável por executar instruções; CPU busca instruções na memória,
decodifica essas instruções e as executa até sua finalização;
Durante a execução de instruções, a CPU utiliza-se de registradores para armazenar variáveis e resultados temporários;
Instruções são executadas por ciclos de relógio;
11
Ciclo de Instrução – Diagrama de estados
12
CPU - registradores Registradores:
Contador de programa (program counter - PC): contém o endereço de memória da próxima instrução a ser lida e executada;
Ponteiro da pilha (stack pointer - SP): aponta para o topo da pilha corrente na memória (estrutura para cada procedimento);
Informações que não são mantidas nos registradores: Parâmetros de entrada; Variáveis locais e temporárias;
Registrador de instrução (instruction register - IR) = instrução que está sendo atualmente executada;
PSW (program status word): bits de controle;
13
Estrutura da máquina de von Neumann
14
Memória
O que é necessário: Grande capacidade de armazenamento Tempo de acesso pequeno Custo!
Hierarquia do Sistema de Memória
15
Hierarquia de memória
16
Características de um sistema de memória
Hierarquia do Sistema de Memória
Memória Interna
Memória Secundária
Armazenamento de Segurança
Freqüência de acesso
Capacidade
Tempo de acesso
Custo por bit
17
MemóriaRápidos: 1nseg.
Componentes internos à CPU
Capacidade: 32 / 64 bitsControlados por software
Fita Magnética
Disco Rígido
RAM
Cache
Registradores
18
Memória
Rápida: nsegCapacidade: K/M bytes
Controlada por hardwareAlto custo por byte
Volátil Vários sub-níveis
Fita Magnética
Disco Rígido
RAM
Cache
Registradores
19
Memória
Random Access MemoryRápida: 10nseg
Capacidade: gigabytesVolátil
Custo médio por byte
Fita Magnética
Disco Rígido
RAM
Cache
Registradores
20
Memória
Mais lento: 10msegCapacidade: G/T bytes
Não volátil
Fita Magnética
Disco Rígido
RAM
Cache
Registradores
21
MemóriaBackup
Capacidade: T bytesAcesso sequential
Muito lento
Fita Magnética
Disco Rígido
RAM
Cache
Registradores
22
MemóriaVelocidade de Acesso
Capacidade de armazenamento
Fita Magnética
Disco Rígido
RAM
Cache
Registradores
23
Características
24
Tipos de Memórias
Categorias Memória apenas de leitura
ROM PROM
Memória Principalmente de Leitura EPROM EEPROM Flash
Memória de Escrita e Leitura RAM
25
Memória ROM (Read Only Memory):
Somente leitura; Rápida (mais lenta que a RAM); Não volátil; Inicializar os circuitos da placa-mãe; Programas armazenados na ROM da placa-
mãe: BIOS: configurações de hardware;
26
Memória Variações:
PROM (Programmable ROM); EPROM (Erasable PROM):
Pode ser apagada e reescrita; Exposição à luz ultra violeta apaga o conteúdo;
EEPROM (Electrically EPROM); Pode ser apagada e reescrita; Impulsos elétricos são utilizados para apagar o
conteúdo; É possível reescrever um único endereço;
27
FLASH Intermediaria entre EPROM e E2PROM Pode ser alterada em nível de bloco no
próprio circuito Não pode ser alterada em nível de palavra Não volátil Mais densa que a E2PROM Duráveis e resistentes Número limitado de escritas Utilizada em telefones celulares digitais,
câmeras digitais, PC Cards;
28
RAMs – Memória de Acesso Aleatório Volátil Armazena, recupera e altera dados durante a
operação normal Vantagens:
Tempo de acesso pequeno Flexibilidade
Desvantagem: Ser volátil
Tipos: Estática Dinâmica
29
RAM Estática:
não precisa refresh mais rápidas Utilizadas na implementação de caches
Dinâmica: células mais simples menor custo Utilizadas na memória principal
Parte da hierarquia de memória
30
Tipo Categoria Apagar Escrita Volatilidade
ROMPROM RO Não
Mascar.Elétrica Não
EPROME2PROMFLASH
Mais REscrita difícil
U.V.Elétr.(byte)Elétr.(bloco)
Elétrica Não
RAM RW Elétr. (byte) Elétrica Sim
Resumindo...
31
Estrutura da máquina de von Neumann
32
Dispositivos de E/S Interagem com o sistema operacional; Controladoras
Chip (conjunto de chips) conectado à placa mãe que fisicamente controla os dispositivos físicos aceitando comandos do SO;
Controle é feito por meio de uma interface: driver
33
Dispositivos de E/S
Legíveis ao ser humano:
Monitor, Impressora, teclado
Legíveis à Máquina:
HD, Fitas, Sensores
Comunicação:
Modem, Placa de Interface de rede
Grande variedade de periféricos
34
Dispositivos de E/S
Problema
Conexão dos dispositivos periféricos com CPU
Manipulação de diferentes quantidades de dados
Taxa de transferência do periférico menor que CPU ou RAM
Formatos de dados e tamanhos de palavras diferentes
Necessidade de um Módulo (ou Controlador) de E/S
35
Módulos de E/S Os módulos de E/S são o terceiro elemento de
um sistema de computação (os outros são memória e CPU)
Comunicação entre diversos periféricos e o barramento do sistema
Cada dispositivo externo é conectado ao computador através de uma conexão a um módulo de E/S
36
Dispositivos externos
Lógica decontrole
Transdutor
Área de armazenamentotemporário
Sinais decontrole domódulo de E/S
Sinais deestado para omódulo de E/S
Sinais dedados de e para omódulo de E/S
Dados (específicos aodispositivo) de e parao ambiente
Transdutor – converte os dados da forma elétricapara outras formas de energia durante a saída, e de outras formas de energia para elétrica na entrada
37
Operações de E/S As operações de E/S podem ser realizadas
por meio do processador ou diretamente entre a
memória e o módulo;
com interrupção ou não
Três técnicas: E/S programada (processador, sem interrupção)
E/S dirigida por interrupção (processador, com
interrupção)
Acesso direto à memória (DMA – Direct Memory Access)
(diretamente com interrupção)
38
E/S Programada
• CPU solicita operação de E/S.• Módulo de E/S realiza operação.• Módulo de E/S define bits de estado.• CPU verifica bits de estado
periodicamente.• Módulo de E/S não informa à CPU
diretamente.• Módulo de E/S não interrompe CPU.• CPU pode esperar ou voltar mais
tarde.
Dados são trocados entre o processador e o módulo de E/S
39
E/S Dirigida por Interrupção Objetivo: reduzir o tempo gasto nas
operações de E/S
Inicialização da transferência vem do dispositivo
Interrupção programa em execução é interrompido para execução de uma tarefa mais urgente!
40
Interrupções
Mecanismo pelo qual outros módulos (por exemplo, E/S) podem interromper a seqüência normal de processamento
Podem ser: Software: resultado da execução de alguma instrução,
por exemplo, divisão por zero, overflow, etc Clock: gerada pelo relógio interno do processador,
permitindo operações regulares E/S: gerada por controladores de E/S para indicar a
conclusão de uma operação ou a ocorrência de uma situação de erro
Falha de hardware: exemplo: queda de energia e erro de paridade da memória
41
CPU emite comando de leitura.
Módulo de E/S recebe dados do
periférico enquanto CPU faz
outro trabalho.
Módulo de E/S interrompe CPU.
CPU solicita dados.
Módulo de E/S transfere dados.
E/S Dirigida por Interrupção
42
Fluxo de controle de um programa
Se existe uma interrupção:
A execução do programa é suspensa
O contexto é salvo O PC desvia para
o endereço que trata a interrupção
A interrupção é processada
O contexto é restaurado
43
Ciclo de Interrupção Este ciclo é adicionado ao ciclo de
instrução O processador verifica constantemente a
chegada de uma interrupção, indicada por um sinal de interrupção
Se não existe interrupção, busca a próxima instrução
44
Ciclo de instrução (com interrupções)
45
E/S por Acesso Direto à Memória (DMA)
E/S Interrupção
Taxa de Transferência pequena
Processador parcialmente liberado
E/S Programada
Taxa de Transferência média
Processador ocupado
DMA – Acesso Direto à Memória
Taxa de Transferência alta
Processador liberado
46
E/S por Acesso Direto à Memória (DMA) Dados trocados entre Memória e dispositivos não
precisam passar pela CPU em inúmeras situações. Ex: Memória Principal e Disco
Quantidade de dados elevada ganho de desempenho com DMA
Exige lógica adicional razoavelmente complexa processador dedicado à DMA que substitui a CPU nas operações de E/S com DMA.
47
E/S por Acesso Direto à Memória (DMA) Controlador de DMA ou Módulo de DMA
Contador de Dados
Registrador de Dados
Registrador de Endereços
Lógica de Controle
Linhas de Dados
Linhas de Endereços
DMARequestDMA AcknowledgeInterrupçã
o LeituraEscrita
Processador envia:
•indicação de operação de E/S pela linha de Leitura ou Escrita
•endereço do dispositivo de E/S pelas linhas de endereço
•Endereço inicial de memória pela linha de dados -> Registrador de Endereço
•Número de palavras a serem lidas /escritas pela linha de dados -> Contador de Dados
48
E/S por Acesso Direto à Memória (DMA) Controlador de DMA ou Módulo de DMA
DMA:
•Transfere o bloco de dados, uma palavra por vez, diretamente, de ou para a memória principal
•Sinal de Interrupção
Contador de Dados
Registrador de Dados
Registrador de Endereços
Lógica de Controle
Linhas de Dados
Linhas de Endereços
DMARequestDMA AcknowledgeInterrupçã
o LeituraEscrita
49
E/S por Acesso Direto à Memória (DMA) CPU programa a DMA para transferir bloco
de dados CPU continua processamento
DMA executa transferência
DMA encerra transferência Envia interrupção ao processador
CPU lê estado do Módulo de DMA
Processador executa próxima instrução
50
E/S por Acesso Direto à Memória (DMA) Durante a transferência feita pela DMA, é
como se a CPU fosse “desativada”
O Controlador de DMA (o “processador
dedicado”) tem controle do barramento de
endereços, dados e controle, durante o
tempo em que a CPU executa operações
internas.
51
Estrutura da máquina de von Neumann