Arquitetura e Organização de 
Computadores 
● Livro Texto 
– Arquitetura e Organização de Computadores 
● William Stallings 
● Prentice Hall
Arquitetura e Organização de 
Computadores 
● Arquitetura de computadores 
– Faz referência aos atributos visíveis ao programador 
● Atributos que têm impacto direto sobre a execução lógica de um 
progrma 
– Incluem: 
● conjunto de instruções, número de bits, mecanismos de E/S, 
técnicas de endereçamento de memória, etc.
Arquitetura e Organização de 
Computadores 
● Organização de computadores 
– Se refere às unidades operacionais e suas ligações 
– Define como são implementadas as especificações da 
arquitetura 
– São descrições transparentes ao usuário 
– Incluem: 
● Sinais de controle, interfaces, tecnologia de memória utilizada, etc.
Arquitetura e Organização de 
Computadores 
● Devido à sua complexidade, os diversos componentes 
de um computador são subdivididos e classificados de 
acordo com sua estrutura e função 
● Estrutura 
– Define o inter-relacionamento entre os componentes 
● Função 
– Define a operação de cada componente
Arquitetura e Organização de 
Computadores 
● Funções básicas de um computador 
Transferência 
de Dados Controle 
Armazenamento 
de Dados 
Memória 
Processamento 
de Dados 
Fonte e 
Destino dos 
Dados
Arquitetura e Organização de 
Computadores 
● Estrutura 
– Unidade Central de Processamento (CPU) 
● Unidade de Controle 
● Unidade Lógica e Aritmética 
● Registradores 
● Interconexão da CPU 
– Memória principal 
– Dispositivos de E/S 
– Sistema de interconexão
Arquitetura e Organização de 
Computadores 
● Programação em hardware 
Sequência 
de funções 
lógicas e 
aritméticas 
Dados Resultados
Arquitetura e Organização de 
Computadores 
● Programação em software 
Instruções 
Interpretador 
de instruções 
Funções 
lógicas e 
Aritméticas 
de propósito 
Dados Resultados 
geral 
Sinais de 
controle
Arquitetura e Organização de 
Computadores 
● Componentes do computador 
– Baseados na arquitetura de von Neumann 
● Dados e instruções armazenados em única memória 
● Memória endereçada por sua posição, independentemente do tipo 
de dados 
● Execução de instruções em modo sequencial
Arquitetura e Organização de 
Computadores 
● Componentes do computador 
CPU Memória 
PC MAR 
IR MBR 
I/O AR 
I/O BR 
Instrução 
Instrução 
Instrução 
Dados 
Dados 
Dados 
Áreas de armazenamento 
temporário 
Módulo 
de E/S
Arquitetura e Organização de 
Computadores 
Componentes do Computador 
– Ciclo básico de instruções 
Ciclo de busca Ciclo de execução 
Busca da 
próxima 
instrução 
Execução da 
instrução 
INÍCIO PARADA
Arquitetura e Organização de 
Computadores 
● Componentes do Computador 
– Tipos de ações a executar 
● Processador – memória 
● Processador – E/S 
● Processamento de dados 
● Controle
Arquitetura e Organização de 
Computadores 
● Interrupções 
– Mecanismo utilizado para interromper a sequência normal de 
execução de instruções do processador, objetivando melhorar 
a eficiência desse processador 
● Interrupção de software 
● Interrupção de relógio 
● Interrupção de E/S 
● Interrupção de falha de hardware
Arquitetura e Organização de 
Computadores 
● Interrupções 
INÍCIO 
Ciclo de busca Ciclo de execução Ciclo de interrupção 
PARADA 
Busca da 
próxima 
instrução 
Execução da 
instrução 
Execução da 
instrução 
Instruções 
desabilitadas 
Instruções 
habilitadas
AOC - Barramentos 
● Estrutura de Interconexão 
– Conjunto de caminhos que conectam os 
vários componentes de hardware 
– Barramento 
● Composto de vários caminhos ou linhas de 
comunicação, capaz de transmitir sinais 
binários 
● Transmissão em paralelo (tamanho da 
palavra)
AOC - Barramentos 
● Barramento de sistema 
● É o barramento usado para conectar os principais componentes do 
computador 
● Estrutura de barramentos 
– De dados 
● Sua largura constitui um parâmetro fundamental de desempenho 
– De endereço 
● Sua largura determina a capacidade máxima de armazenamento 
– De controle 
● Escrita/leitura em memória, escrita/leitura em porta de E/S, confirmação 
de transferência, requisição/concessão de barramento, 
requisição/confirmação de interrupção, relógio, inicialização.
AOC - Barramentos 
● Tipos de barramentos 
– Dedicados 
● Associados a um subconjunto de componentes físicos 
– Multiplexados 
● As linhas de barramento são utilizadas com vários propósitos – 
multiplexação de tempo 
● Vantagens: economia de espaço e diminuição de custo 
● Desvantagens: circuitos mais complexos – maior controle; 
compartilhamento não permite certas operações em paralelo
AOC - Barramentos 
● PCI 
– Peripheral Component Interconnect 
● Usado para subsistemas de E/S de alta velocidade 
● Permite até 46 linhas de dados de 66 MHz 
● Taxa de transferência de 4,22 Gbps 
● Baixo custo 
● Pode conectar outros barramentos
AOC – Memória Interna 
● Características fundamentais 
– Localização 
● Processador; interna (principal); externa (secundária) 
– Capacidade 
● Memória interna (expressa em bits – 32/64 bits); externa (expressa 
em bytes) 
– Unidade de transferência 
● Palavra; bloco
AOC – Memória Interna 
● Características fundamentais 
– Método de acesso 
● Sequencial 
● Direto 
– Acesso em nível de bloco 
● Aleatório 
– Acesso em nível de posição de memória 
● Associativo 
– Implementa processo de busca por conteúdo e não por endereço
AOC – Memória Interna 
● Características fundamentais 
– Desempenho 
● Tempo de acesso 
– Memória de acesso aleatório: tempo para efetuar uma operação de escrita/leitura 
– Memória de acesso não-aleatório: tempo para posicionar o mecanismo de 
escrita/leitura na posição desejada 
● Tempo de ciclo de memória 
– É o tempo de acesso mais o tempo necessário antes que um segundo acesso 
possa ser iniciado 
● Desaparecimento de transientes nas linhas de controle 
● Regeneração dos dados – leitura destrutiva 
● Taxa de transferência 
– Taxa na qual os dados podem ser transferidos de/para a memória
AOC – Memória Interna 
● Características fundamentais 
– Tecnologia 
● Semicondutor; superfície magnética; ótica 
– Características físicas 
● Volátil; não-volátil; apagável; não-apagável 
– Organização 
● Arranjo dos bits para formar as palavras
AOC – Memória Interna 
● Hierarquia da memória 
– Usada porque tempo de acesso, custo e capacidade de 
armazenamento são características conflitantes 
● Do topo para a base 
– O custo diminui 
– A capacidade aumenta 
– Tempo de acesso aumenta 
– A frequência de acesso pelo 
processador diminui
AOC – Memória Interna 
● Memória principal 
– Memória de semicondutor
AOC – Memória Interna 
● Memória principal 
– Memória RAM 
● Dinâmica 
– Dados armazenados em capacitores 
– Precisa de um processo de refresh 
– Menos componentes – menor custo – maior capacidade – menor desempenho 
● Estática 
– Dados armazenados em flip-flops com portas lógicas 
– Não há necessidade de refresh 
– Mais componentes – maior custo – menor capacidade – maior desempenho
AOC – Memória Interna 
● Memória Cache 
– É uma memória de acesso mais rápido, localizada próximo ao 
processador 
– Atualmente existe mais de um nível de memória cache 
● Cache interna (L1) 
– De dados 
– De instrução 
● Cache externa (L2)
AOC – Memória Interna 
● Memória Cache 
Indica o bloco de memória
AOC – Memória Externa 
● Disco Magnético 
– Prato circular de metal ou plástico, coberto com material 
magnetizável 
– Escrita/leitura feita pelo cabeçote ou cabeça de 
leitura/gravação
AOC – Memória Externa 
● Disco Magnético 
– Organização dos dados 
● Os discos são organizados em 
trilhas e setores 
– Uma trilha tem a largura do cabeçote 
de leitura/gravação, e entre cada uma 
há um espaço (gap) para evitar ou 
minimizar a ocorrência de erros devido 
ao mal posicionamento do cabeçote 
– Quanto mais interna, mais densa a a 
informação dentro de uma trilha 
– Setores são os blocos de uma trilha
AOC – Memória Externa 
● Disco Magnético 
– Organização dos dados 
● Podem existir 500 a 2000 trilhas por superfície 
● Podem existir 10 a 100 setores por trilha 
● O processo de formatação divide o disco em setores e trilhas, 
acrescentando informações de controle, não visíveis ao usuário, 
identificando a quantidade, tamanho, início e fim das trilhas e 
setores
AOC – Memória Externa 
● Disco Magnético 
– Características físicas 
● Cabeçote fixo 
– Um cabeçote para cada trilha 
● Cabeçote móvel 
– Um cabeçote único montado em um braço móvel 
● Disco não removível 
– Montado permanentemente na unidade de disco 
● Disco removível 
– Pode ser removido e substituído
AOC – Memória Externa 
● Disco Magnético 
– Características físicas 
● Cobertura magnetizável em um só lado 
● Cobertura magnetizável nos dois lados 
● Um único prato 
● Pratos múltiplos 
– Os pratos são agrupados em pacotes de discos
AOC – Memória Externa 
● Disco Magnético 
– Parâmetros de desempenho 
● Tempo de busca 
– Tempo para posicionar o cabeçote na trilha 
● Atraso/latência rotacional 
– Tempo para posicionar o setor 
● Tempo de acesso 
– Tempo de busca + atraso rotacional 
● Espera por canal 
– Quando diversas unidade de E/S compartilham o mesmo canal
AOC – Memória Externa 
● Disco Magnético 
– Sistema RAID 
● O aumento de desempenho da memória principal e dos 
processadores é maior que o da memória externa 
● Para diminuir essa diferença são utilizados componentes em paralelo 
operando independentemente 
● São acrescentados mecanismos de redundância de dados para 
aumentar a confiabilidade dos mesmos 
● Caraterísticas 
– Agrupamento de discos físicos visto como uma única unidade lógica 
– Os dados são distribuídos pelas unidades físicas 
– Redundância usada para armazenar informações de paridade, para 
recuperação em caso de falhas em discos
AOC – Memória Externa 
● Fita magnética 
● Disco óptico
AOC – Dispositivos de E/S 
● Módulos de E/S 
– São dispositivos que se conectam ao barramento do sistema 
– Controlam um ou mais dispositivos 
– Contêm a lógica para efetuar a comunicação entre o 
periférico e o barramento
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Inviabilidade de conexão direto ao barramento de sistema 
● Há uma grande variedade de periféricos com diferentes 
mecanismos de comunicação, impossibilitando incorporar ao 
processador cada uma dessas lógicas 
● Taxas de transferências de dados dos periféricos são muito 
menores que as taxas de transferência entre memória e 
processador 
● Periféricos usam formatos de dados e tamanhos de palavras 
diferentes
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Objetivo 
● Fornecer interface com o processador 
e a memória 
● Permitir a interface com os demais 
dispositivos periféricos
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Dispositivos Externos 
● Categorias 
– Comunicação com o usuário 
● Terminais de vídeo, impressoras, ... 
– Comunicação com a máquina 
● Discos e fitas magnéticas 
– Comunicação com dispositivos remotos 
● Módulos de comunicação
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Dispositivos Externos 
● Modelo geral 
– Sinais de controle 
● Determinam a função a ser executada 
– Dados 
● Bits a serem enviados ou recebidos 
– Sinais de estado 
● Indicam o estado do dispositivo 
– Lógica de controle 
● Controle a sua operação em resposta a um comando 
– Transdutor 
● Converte os sinais elétricos em sinais manipulados pelo dispositivo
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Funções 
● Controle e temporização 
– Controla o fluxo de dados entre os recursos internos e os dispositivos 
externos 
● Comunicação com o processador 
– Decodificação do comando 
– Transferência de dados 
– Informação de estado 
– Reconhecimento de endereço
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Funções 
● Comunicação com dispositivos 
● Área de armazenamento temporário de dados 
● Detecção de erros
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Técnicas para a realização das operações de E/S 
● Programada 
– Dados transferidos entre processador e o módulo de E/S 
– O processador controla diretamente as operações 
● Detecção do estado do dispositivo 
● Envio de comandos de leitura/escrita 
● Executa a transferência de dados 
– O processador envia um comando e espera até que a operação seja 
concluída 
– O processador é quem faz a transferência de dados de/para a memória 
principal
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Técnicas para a realização das operações de E/S 
● Dirigida por interrupção 
– O processador envia um comando para o módulo de E/S e continua 
executando suas outras instruções 
– O mesmo é interrompido como o módulo tiver completado seu trabalho 
– O processador é quem faz a transferência de dados de/para a memória 
principal 
● Acesso direto à memória 
– É uma técnica especial por interrupção onde a transferência de dados entre 
o módulo à memória acontece sem a intervenção do processador
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Interface externa 
● Tipos de interface 
– Serial 
● Usa uma linha de conexão entre o módulo de E/S e o dispositivo 
periférico para a transferência dos dados 
– Paralela 
● Usa várias linhas de conexão
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Interface externa 
● Tipos de conexão 
– Ponto a ponto 
● Oferece uma linha dedicada entre o módulo de E/S e o periférico 
– Multiponto 
● Usadas para a conexão de dispositivos externos e de armazenamento 
em massa e dispositivos multimídia 
● Exemplos: SCSI e FireWire
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Interface externa 
● Conexão SCSI 
– Interface para pequenos componentes computacionais 
– É uma interface padrão para unidades de leitura, equipamentos de áudio, e 
dispositivos externos de armazenamento em massa 
– Usa uma interface paralela 
– Os dispositivos são conectados em uma cadeia circular, sendo um ponto 
desta cadeia conectado ao computador 
– Permite o funcionamento dos dispositivos de forma independente, podendo 
haver a troca de dados entre os dispositivos sem envolver o processador
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Interface externa 
● Conexão SCSI 
– Os dados são transferidos na forma de pacotes de mensagens 
● Mensagens trocadas entre um iniciador e um alvo 
– Fases de atividade no barramento 
● Barramento livre 
● Arbitração 
● Quando um dispositivo ganha o controle do barramento 
● Seleção 
● Quando um iniciador seleciona um alvo 
● Restabelecimento da conexão 
● Alvo restabelece conexão com iniciador para retomar uma 
operação suspensa pelo alvo
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Interface externa 
● Conexão SCSI 
– Fases de atividade no barramento 
● Comandos 
● Dados 
● Estado 
● Alvo realiza requisição para que uma informação de estado seja ao 
envidada ao iniciador 
● Mensagem 
● O iniciador requisita transferência de mensagens do alvo para o 
inciador e vice-versa
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Interface externa 
● Conexão SCSI 
– Fases de atividade no barramento
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Interface externa 
● Barramento FireWire 
– É o padrão IEEE 1394 
– Possibilita a transferência de dados em alta velocidade 
– É uma interface de baixo custo e fácil implementação 
– Usa a transmissão serial 
– Permite a conexão de 63 dispositivos em uma única porta, sendo possível a 
interconexão de até 1022 barramentos entre si 
– Permite a configuração automática 
● Não é preciso especificar um endereço distinto para cada dispositivo
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Interface externa 
● Barramento FireWire 
– Não existem terminadores 
– Não precisa ter a configuração circular, podendo assumir uma configuração 
em árvore
AOC – Dispositivos de E/S 
● Módulos de E/S 
– Interface externa 
● Barramento FireWire 
– Implementado em protocolo de três camadas 
● Camada física 
● Define os meios de transmissão, as características físicas e de 
sinalização 
● Camada de enlace 
● Descreve a transmissão de dados em pacote 
● Camada de transação 
● Define um protocolo de requisição-resposta, que encapsula os 
detalhes das camadas inferiores
AOC - CPU 
● Unidade Central de Processamento 
– Componentes 
● Unidade lógica e aritmética 
● Registradores 
● Unidade de controle 
● Relógio 
● Interconexões entre esses componentes
AOC - CPU 
● Ações executadas pela CPU 
– Busca de instrução 
– Interpretação da instrução 
– Busca de dados 
– Processamento de dados 
– Escrita de Dados
AOC - CPU 
● Visões da CPU
AOC - CPU 
● Unidade Lógica e Aritmética 
– Executa as operações lógicas e aritméticas 
– Baseada em dispositivos lógicos digitais simples 
– Armazenam dígitos binários 
– Efetuam operações simples da lógica booleana
AOC - CPU 
● Registradores 
– Fazem parte da hierarquia de memória do computador 
– São divididos em dois grupos 
● Visíveis ao usuário 
● De controle e de estado
AOC - CPU 
● Registradores 
– Visíveis ao usuário 
● De propósito geral 
● De dados 
● De endereço 
● De códigos de condição
AOC - CPU 
● Registradores 
– De controle e de estado 
● Controle de programa (PC) 
● De instrução 
● De endereçamento à memória 
● De armazenamento temporário de dados 
– São usados em conjunto para a transferência de dados entre CPU e 
memória
AOC - CPU 
● Registradores 
– De controle e de estado 
● PSW (palavra de estado de programa) 
– Contém códigos de condição e informações de estado 
● Sinal – bit de sinal resultante de uma operação 
● Zero – indica que resultado da operação é igual a 0 
● Vai-um – usado para operações aritméticas de múltiplas palavras 
● Igual – indica igualdade em uma comparação 
● Overflow – indica estouro de capacidade em operações aritméticas 
● Habilitar/desabilitar interrupção 
● Supervisor – indica modo de operação da CPU. Algumas instruções só 
podem ser executadas ou algumas áreas de memória só podem se 
acessadas se a CPU estiver no modo supervisor
AOC - CPU 
● Registradores 
– De controle e de estado 
● Podem existir ainda os seguintes registradores: 
– Registrador que aponta para um endereço de memória que contenha o bloco 
de controle de processos 
– Registrador de vetor de interrupções 
– Registrador de controle de pilha (para controle de chamadas a subrotinas) 
– Registrador para tabela de páginas para controle da memória virtual 
– Registrados para controle das operações de E/S
AOC - CPU 
● Unidade de Controle 
– É o componente que controla a operação do processador 
– O funcionamento do processador depende das seguintes 
definições 
● Operações a executar 
● Modos de endereçamento 
● Registradores 
● Interface com o módulo de E/S 
● Interface com o módulo de memória 
● Estrutura de processamento de interrupção
AOC - CPU 
● Unidade de Controle 
– Operações a executar 
● Microoperações 
– São os passos necessários para a execução de cada um dos subciclos de 
instrução
AOC - CPU 
● Unidade de Controle 
– Ciclo de Instrução 
● Etapas 
– Busca 
● Lê a próxima instrução da memória para a CPU 
– Execução 
● Interpreta e efetua a operação indicada 
– Interrupção 
● Quando habilitadas, na ocorrência de interrupções, salva o estado do 
processo atual e processa a interrupção
AOC - CPU 
● Unidade de Controle 
– Ciclo de Instrução 
● Ciclo indireto 
– É ativado quando é utilizado o endereçamento indireto para acesso à 
memória 
– No endereçamento direto o tamanho do campo de endereço é menor que o 
tamanho de uma palavra, limitando a quantidade de memória endereçada. 
No endereçamento indireto o campo de endereço aponta para uma posição 
de memória que contém o endereço do operando.
AOC - CPU 
● Unidade de Controle 
– Ciclo de Instrução 
● Busca 
– Para este processo, consideramos os seguintes registradores 
● Registrador de endereço de memória (MAR) 
● Especifica o endereço de memória para uma operação de R/W 
● Registrador de armazenamento temporário de dados (MBR) 
● Contém um valor a ser armazenado ou o último valor lido da 
memória 
● Contador de programa (PC) 
● Contém o endereço da próxima instrução a ser executada 
● Registrador de instrução (IR) 
● Mantém a última instrução buscada da memória
AOC - CPU 
● Unidade de Controle 
– Ciclo de Instrução 
● Busca 
– Etapas 
● O endereço da próxima instrução está em PC 
● Esse endereço é movido para MAR 
● Esse endereço é movido para o barramento de endereços e o conteúdo 
lido é colocado em MBR 
● O PC é incrementado em uma unidade 
– O processo é executado em em três passos e quatro microoperações
AOC - CPU 
● Unidade de Controle 
– Ciclo de Instrução 
● Ciclo indireto 
– Deve acontecer antes da execução da instrução ser for utilizado o 
endereçamento indireto 
● Etapas 
● O campo de endereço da instrução é transferido para MAR 
● O conteúdo desse endereço é transferido para MBR 
● O conteúdo do endereço apontado por MBR é transferido para IR
AOC - CPU 
● Unidade de Controle 
– Ciclo de Instrução 
● Ciclo de interrupção 
– Ativado toda vez que ocorre uma interrupção 
● Etapas 
● O conteúdo do PC é transferido para o MBR 
● O endereço para salvamento é carregado em MAR 
● O PC é carregado com o endereço da rotina de interrupção 
● O conteúdo do MBR é salvo no endereço apontado por MAR 
● Essas etapas podem variar de acordo com os níveis e/ou tipos de 
interrupções tratadas
AOC - CPU 
● Unidade de Controle 
– Ciclo de Instrução 
● Ciclo de execução 
– Este ciclo é mais complexo, envolvendo uma série de microoperações 
– Exemplo 1: operação de adição 
● ADD R1,X
AOC - CPU 
● Unidade de Controle 
– Ciclo de Instrução 
● Ciclo de execução 
– Exemplo 2: incrementar um valor e, caso esse valor seja zero, é pulada uma 
instrução 
● ISZ X
AOC - CPU 
● Unidade de Controle 
– Ciclo de Instrução como um todo
AOC - CPU 
● Unidade de Controle 
– Modelo geral
AOC - CPU 
● Unidade de Controle 
– Modelo geral 
● Entradas 
– Relógio 
● Faz a marcação de tempo da CPU 
● A unidade de controle faz com que cada microoperação seja executada 
a cada pulso do relógio (ciclo do processador ou de relógio) 
– Registrador de instrução 
● Usado para indicar as microoperações a serem executadas durante o 
ciclo de execução 
– Códigos de condição 
● Determinam o estado do processador e saída de suas operações 
executadas pela ULA
AOC - CPU 
● Unidade de Controle 
– Modelo geral 
● Entradas 
– Sinais de controle do barramento de controle 
● Fornece sinais como interrupções e de reconhecimento 
● Saídas 
– Sinais de controle internos ao processador 
● Indicam movimentação de dados entre registradores e ativação de 
funções específicas da ULA 
– Sinais de controle para o barramento de controle 
● Sinais de controle para a memória e para os módulos de E/S
AOC – Sistema Operacional 
● Sistema Operacional 
– É o programa que gerencia os recursos do computador 
– Fornece serviços para programadores 
– Estabelece a ordem de execução dos demais programas
AOC – Sistema Operacional 
● Visão Geral 
– Objetivos 
● Conveniência 
– Torna mais conveniente o uso do computador (interface com o usuário) 
● Eficiência 
– Permite uma utilização mais eficiente dos recursos
AOC – Sistema Operacional 
● Visão Geral 
– Objetivos 
● Interface com o usuário 
– O usuário final tem acesso aos recursos 
computacionais via programas aplicativos 
– Programas aplicativos são desenvolvidos 
por programadores, utilizando programas de 
de utilitários e programas de sistema 
– O sistema operacional esconde detalhes do 
hardware fornecendo uma interface conveniente para o uso do sistema, 
atuando como um mediador entre programadores/programas utilitários e os 
recursos/serviços do computador
AOC – Sistema Operacional 
● Visão Geral 
– Objetivos 
● Interface com o usuário 
– Permite a execução das seguintes atividades 
● Criação de programas 
● Execução de programas: transferência de dados e instruções de/para 
memória e para dispositivos de E/S 
● Acesso a dispositivos de E/S 
● Acesso controlado aos arquivos 
● Acesso ao sistema 
● Detecção e reação a erros 
● Monitoramento
AOC – Sistema Operacional 
● Visão Geral 
– Objetivos 
● Gerenciamento de recursos 
– O sistema operacional é um 
programa como outro qualquer 
– Ele prepara o processador para 
a execução de alguma tarefa 
– Transfere o controle do processador 
para a execução dessa tarefa 
– Na conclusão da tarefa, o controle 
é devolvido ao sistema operacional
AOC – Sistema Operacional 
● Visão Geral 
– Partes do sistema operacional residentes na memória 
principal 
● Kernel/núcleo 
– É a parte do sistema operacional que as funções mais frequentemente 
usadas 
● Funções em uso 
– Funções que não fazem parte do núcleo mais estão em execução naquele 
momento
AOC – Sistema Operacional 
● Tipos de sistemas operacionais 
– Sistema interativo x sistema em lotes 
● Sistema interativo 
– O programador/usuário interage diretamente com o computador (usando 
interfaces) para solicitar a execução de tarefas ou efetuar transações, 
podendo se comunicar com o computador durante a execução dessas 
tarefas 
● Sistema em lote 
– Os diversos programas de usuário são agrupados em lotes e então 
submetidos à execução. Não há interação com usuário, que deve esperar a 
conclusão do processamento para ter acesso aos resultados de saída.
AOC – Sistema Operacional 
● Tipos de sistemas operacionais 
– Monoprogramado x Multiprogramado 
● Monoprogramadado 
– Permite apenas a execução de um programa por vez 
● Multiprogramado 
– Permite que vários programas sejam, ao mesmo tempo, carregados na 
memória. O tempo de processamento é divido entre eles
AOC – Sistema Operacional 
● Tipos de sistemas operacionais 
– Em lote multiprogramados x de tempo compartilhado 
● Em lote multiprogramados 
– Várias tarefas são preparadas ao mesmo tempo para a execução 
– Essas tarefas são carregadas na memória principal 
– O processador decide qual tarefa será executada em determinado instante 
● De tempo compartilhado 
– É um sistema multiprogramado que permite interação com o usuário 
– Com essa técnica é permitido que vários usuários utilizem o sistema ao 
mesmo tempo, por meio de terminais
AOC – Sistema Operacional 
● Sistema operacional multiprogramado 
– Processo 
● É um programa em execução 
● Estados possíveis de um processo 
– Novo 
– Pronto 
– Em execução 
– Suspenso 
– Concluído
AOC – Sistema Operacional 
● Sistema operacional multiprogramado 
– Processo 
● Bloco de controle de processos 
– É responsável pela identificação de cada processo no sistema operacional 
– Informações contidas 
● Identificador 
● Estado 
● Prioridade 
● Contador de programa: endereço da próxima instrução 
● Limites de memória: onde o processo está armazenado 
● Informações de contexto: estado e registradores da CPU 
● Informação de estado de E/S 
● Informação de contabilidade: pode incluir a quantidade de tempo de 
processador, o tempo total utilizado, limites de tempo de execução, 
contabilização de uso de recursos, etc
AOC – Sistema Operacional 
● Sistema operacional multiprogramado 
– Escalonamento de processos 
● É a base para a implementação da multiprogramação 
● O escalonador é responsável pela decisão de que processo será 
executado em determinado tempo 
● Tipos de escalonamento 
– A longo prazo 
– A médio prazo 
– A curto prazo
AOC – Sistema Operacional 
● Sistema operacional multiprogramado 
– Escalonamento de processos 
● A longo prazo 
– O escalonador a longo prazo determina que programas são admitidos para 
processamento 
– Controla o grau de multiprogramação 
● Número de processos na memória 
● A médio prazo 
– Faz parte da função de troca de processos entre as memórias principal e 
secundária, geralmente para processos em estado de suspensão 
● A curto prazo 
– Decide qual a próxima tarefa a ser executada dentre as que estão em estado 
de pronto
AOC – Sistema Operacional 
● Sistema operacional multiprogramado 
– Escalonamento de processos
AOC – Sistema Operacional 
● Gerenciamento de memória 
– É a atividade responsável por controlar o fluxo de processos 
na memória 
– Quanto mais eficiente esse gerenciamento, maior será o 
desempenho do computador como um todo
AOC – Sistema Operacional 
● Gerenciamento de memória 
– Troca de processos na memória 
● Um processador pode ficar ocioso 
caso todos os processos escalonados 
estejam esperando por uma operação 
de E/S 
● Aumentar o tamanho da memória 
geraria um aumento no custo do 
computador 
● As requisições de memória, pelos programas, têm sido cada vez 
maiores, aumentando o tamanho dos processos
AOC – Sistema Operacional 
● Gerenciamento de memória 
– Troca de processos na memória 
● Solução: implementação da troca de processos (swapping) 
– Toda vez que um processo estiver ocioso, dentro da memória, o mesmo é 
retirado para uma fila de médio prazo 
– No seu lugar é colocado um processo que estava nessa fila, ou então um 
processo da fila de longo prazo
AOC – Sistema Operacional 
● Gerenciamento de memória 
– Partição de memória 
● Indica como a memória está subdividida para acomodar os 
diferentes processos 
– Partições de tamanho fixo 
– Partições de tamanho variável
AOC – Sistema Operacional 
● Gerenciamento de memória 
– Partição de memória 
● Partições de tamanho fixo 
– A memória é dividida em blocos de tamanho fixo, 
mas não necessariamente com todos os blocos 
de mesmo tamanho 
– Um processo é alocado à menor partição disponível 
que caiba esse processo 
– Desvantagem: desperdício de memória
AOC – Sistema Operacional 
● Gerenciamento de memória 
– Partição de memória 
● Partições de tamanho variável 
– Cada processo aloca o espaço de memória necessário 
– Vantagem: economia de memória 
– Desvantagem: fragmentação da memória, sendo necessário um processo de 
compactação
AOC – Sistema Operacional 
● Gerenciamento de memória 
– Partição de memória 
● Partições de tamanho variável 
– Fragmentação da memória 
● Endereço físico 
– Posição dentro da memória 
● Endereço lógico 
– Posição relativa ao início do 
programaPÁG 276
AOC – Sistema Operacional 
● Gerenciamento de memória 
– Paginação 
● Técnica usada para diminuir a ineficiência das alocações das 
partições de tamanho fixo ou variável 
● Os processos são subdivididos em pequenos pedaços de tamanhos 
fixos chamados de páginas 
● As páginas podem ser alocadas em blocos de memória disponíveis 
● O espaço desperdiçado é apenas uma fração do último bloco 
alocado ao processo 
● Não é necessário que os blocos necessários estejam 
contiguamente posicionados
AOC – Sistema Operacional 
● Gerenciamento de memória 
– Paginação 
● Dessa forma, a memória é divida em blocos de mesmo tamanho 
● Os processos são divididos em páginas do mesmo tamanho do 
bloco de memória 
● Quando um processo é trazido para a memória, suas páginas são 
carregadas em blocos e é criada uma tabela de páginas
AOC – Sistema Operacional 
● Gerenciamento de memória 
– Paginação
AOC – Sistema Operacional 
● Gerenciamento de memória 
– Memória virtual 
● Com a memória dividida em blocos e os processos em páginas, não 
é necessário que todo o processo fique alocado na memória 
principal durante a sua execução 
● Apenas as páginas de código e as páginas de dados precisam estar 
alocados 
● As demais páginas ficam residentes na memória virtual e são 
carregadas quando solicitado 
– Paginação sob demanda 
● Assim é possível que um processo seja maior que toda a memória 
principal, não ficando limitado a esse tamanho

Arq orgcomp

  • 1.
    Arquitetura e Organizaçãode Computadores ● Livro Texto – Arquitetura e Organização de Computadores ● William Stallings ● Prentice Hall
  • 2.
    Arquitetura e Organizaçãode Computadores ● Arquitetura de computadores – Faz referência aos atributos visíveis ao programador ● Atributos que têm impacto direto sobre a execução lógica de um progrma – Incluem: ● conjunto de instruções, número de bits, mecanismos de E/S, técnicas de endereçamento de memória, etc.
  • 3.
    Arquitetura e Organizaçãode Computadores ● Organização de computadores – Se refere às unidades operacionais e suas ligações – Define como são implementadas as especificações da arquitetura – São descrições transparentes ao usuário – Incluem: ● Sinais de controle, interfaces, tecnologia de memória utilizada, etc.
  • 4.
    Arquitetura e Organizaçãode Computadores ● Devido à sua complexidade, os diversos componentes de um computador são subdivididos e classificados de acordo com sua estrutura e função ● Estrutura – Define o inter-relacionamento entre os componentes ● Função – Define a operação de cada componente
  • 5.
    Arquitetura e Organizaçãode Computadores ● Funções básicas de um computador Transferência de Dados Controle Armazenamento de Dados Memória Processamento de Dados Fonte e Destino dos Dados
  • 6.
    Arquitetura e Organizaçãode Computadores ● Estrutura – Unidade Central de Processamento (CPU) ● Unidade de Controle ● Unidade Lógica e Aritmética ● Registradores ● Interconexão da CPU – Memória principal – Dispositivos de E/S – Sistema de interconexão
  • 7.
    Arquitetura e Organizaçãode Computadores ● Programação em hardware Sequência de funções lógicas e aritméticas Dados Resultados
  • 8.
    Arquitetura e Organizaçãode Computadores ● Programação em software Instruções Interpretador de instruções Funções lógicas e Aritméticas de propósito Dados Resultados geral Sinais de controle
  • 9.
    Arquitetura e Organizaçãode Computadores ● Componentes do computador – Baseados na arquitetura de von Neumann ● Dados e instruções armazenados em única memória ● Memória endereçada por sua posição, independentemente do tipo de dados ● Execução de instruções em modo sequencial
  • 10.
    Arquitetura e Organizaçãode Computadores ● Componentes do computador CPU Memória PC MAR IR MBR I/O AR I/O BR Instrução Instrução Instrução Dados Dados Dados Áreas de armazenamento temporário Módulo de E/S
  • 11.
    Arquitetura e Organizaçãode Computadores Componentes do Computador – Ciclo básico de instruções Ciclo de busca Ciclo de execução Busca da próxima instrução Execução da instrução INÍCIO PARADA
  • 12.
    Arquitetura e Organizaçãode Computadores ● Componentes do Computador – Tipos de ações a executar ● Processador – memória ● Processador – E/S ● Processamento de dados ● Controle
  • 13.
    Arquitetura e Organizaçãode Computadores ● Interrupções – Mecanismo utilizado para interromper a sequência normal de execução de instruções do processador, objetivando melhorar a eficiência desse processador ● Interrupção de software ● Interrupção de relógio ● Interrupção de E/S ● Interrupção de falha de hardware
  • 14.
    Arquitetura e Organizaçãode Computadores ● Interrupções INÍCIO Ciclo de busca Ciclo de execução Ciclo de interrupção PARADA Busca da próxima instrução Execução da instrução Execução da instrução Instruções desabilitadas Instruções habilitadas
  • 15.
    AOC - Barramentos ● Estrutura de Interconexão – Conjunto de caminhos que conectam os vários componentes de hardware – Barramento ● Composto de vários caminhos ou linhas de comunicação, capaz de transmitir sinais binários ● Transmissão em paralelo (tamanho da palavra)
  • 16.
    AOC - Barramentos ● Barramento de sistema ● É o barramento usado para conectar os principais componentes do computador ● Estrutura de barramentos – De dados ● Sua largura constitui um parâmetro fundamental de desempenho – De endereço ● Sua largura determina a capacidade máxima de armazenamento – De controle ● Escrita/leitura em memória, escrita/leitura em porta de E/S, confirmação de transferência, requisição/concessão de barramento, requisição/confirmação de interrupção, relógio, inicialização.
  • 17.
    AOC - Barramentos ● Tipos de barramentos – Dedicados ● Associados a um subconjunto de componentes físicos – Multiplexados ● As linhas de barramento são utilizadas com vários propósitos – multiplexação de tempo ● Vantagens: economia de espaço e diminuição de custo ● Desvantagens: circuitos mais complexos – maior controle; compartilhamento não permite certas operações em paralelo
  • 18.
    AOC - Barramentos ● PCI – Peripheral Component Interconnect ● Usado para subsistemas de E/S de alta velocidade ● Permite até 46 linhas de dados de 66 MHz ● Taxa de transferência de 4,22 Gbps ● Baixo custo ● Pode conectar outros barramentos
  • 19.
    AOC – MemóriaInterna ● Características fundamentais – Localização ● Processador; interna (principal); externa (secundária) – Capacidade ● Memória interna (expressa em bits – 32/64 bits); externa (expressa em bytes) – Unidade de transferência ● Palavra; bloco
  • 20.
    AOC – MemóriaInterna ● Características fundamentais – Método de acesso ● Sequencial ● Direto – Acesso em nível de bloco ● Aleatório – Acesso em nível de posição de memória ● Associativo – Implementa processo de busca por conteúdo e não por endereço
  • 21.
    AOC – MemóriaInterna ● Características fundamentais – Desempenho ● Tempo de acesso – Memória de acesso aleatório: tempo para efetuar uma operação de escrita/leitura – Memória de acesso não-aleatório: tempo para posicionar o mecanismo de escrita/leitura na posição desejada ● Tempo de ciclo de memória – É o tempo de acesso mais o tempo necessário antes que um segundo acesso possa ser iniciado ● Desaparecimento de transientes nas linhas de controle ● Regeneração dos dados – leitura destrutiva ● Taxa de transferência – Taxa na qual os dados podem ser transferidos de/para a memória
  • 22.
    AOC – MemóriaInterna ● Características fundamentais – Tecnologia ● Semicondutor; superfície magnética; ótica – Características físicas ● Volátil; não-volátil; apagável; não-apagável – Organização ● Arranjo dos bits para formar as palavras
  • 23.
    AOC – MemóriaInterna ● Hierarquia da memória – Usada porque tempo de acesso, custo e capacidade de armazenamento são características conflitantes ● Do topo para a base – O custo diminui – A capacidade aumenta – Tempo de acesso aumenta – A frequência de acesso pelo processador diminui
  • 24.
    AOC – MemóriaInterna ● Memória principal – Memória de semicondutor
  • 25.
    AOC – MemóriaInterna ● Memória principal – Memória RAM ● Dinâmica – Dados armazenados em capacitores – Precisa de um processo de refresh – Menos componentes – menor custo – maior capacidade – menor desempenho ● Estática – Dados armazenados em flip-flops com portas lógicas – Não há necessidade de refresh – Mais componentes – maior custo – menor capacidade – maior desempenho
  • 26.
    AOC – MemóriaInterna ● Memória Cache – É uma memória de acesso mais rápido, localizada próximo ao processador – Atualmente existe mais de um nível de memória cache ● Cache interna (L1) – De dados – De instrução ● Cache externa (L2)
  • 27.
    AOC – MemóriaInterna ● Memória Cache Indica o bloco de memória
  • 28.
    AOC – MemóriaExterna ● Disco Magnético – Prato circular de metal ou plástico, coberto com material magnetizável – Escrita/leitura feita pelo cabeçote ou cabeça de leitura/gravação
  • 29.
    AOC – MemóriaExterna ● Disco Magnético – Organização dos dados ● Os discos são organizados em trilhas e setores – Uma trilha tem a largura do cabeçote de leitura/gravação, e entre cada uma há um espaço (gap) para evitar ou minimizar a ocorrência de erros devido ao mal posicionamento do cabeçote – Quanto mais interna, mais densa a a informação dentro de uma trilha – Setores são os blocos de uma trilha
  • 30.
    AOC – MemóriaExterna ● Disco Magnético – Organização dos dados ● Podem existir 500 a 2000 trilhas por superfície ● Podem existir 10 a 100 setores por trilha ● O processo de formatação divide o disco em setores e trilhas, acrescentando informações de controle, não visíveis ao usuário, identificando a quantidade, tamanho, início e fim das trilhas e setores
  • 31.
    AOC – MemóriaExterna ● Disco Magnético – Características físicas ● Cabeçote fixo – Um cabeçote para cada trilha ● Cabeçote móvel – Um cabeçote único montado em um braço móvel ● Disco não removível – Montado permanentemente na unidade de disco ● Disco removível – Pode ser removido e substituído
  • 32.
    AOC – MemóriaExterna ● Disco Magnético – Características físicas ● Cobertura magnetizável em um só lado ● Cobertura magnetizável nos dois lados ● Um único prato ● Pratos múltiplos – Os pratos são agrupados em pacotes de discos
  • 33.
    AOC – MemóriaExterna ● Disco Magnético – Parâmetros de desempenho ● Tempo de busca – Tempo para posicionar o cabeçote na trilha ● Atraso/latência rotacional – Tempo para posicionar o setor ● Tempo de acesso – Tempo de busca + atraso rotacional ● Espera por canal – Quando diversas unidade de E/S compartilham o mesmo canal
  • 34.
    AOC – MemóriaExterna ● Disco Magnético – Sistema RAID ● O aumento de desempenho da memória principal e dos processadores é maior que o da memória externa ● Para diminuir essa diferença são utilizados componentes em paralelo operando independentemente ● São acrescentados mecanismos de redundância de dados para aumentar a confiabilidade dos mesmos ● Caraterísticas – Agrupamento de discos físicos visto como uma única unidade lógica – Os dados são distribuídos pelas unidades físicas – Redundância usada para armazenar informações de paridade, para recuperação em caso de falhas em discos
  • 35.
    AOC – MemóriaExterna ● Fita magnética ● Disco óptico
  • 36.
    AOC – Dispositivosde E/S ● Módulos de E/S – São dispositivos que se conectam ao barramento do sistema – Controlam um ou mais dispositivos – Contêm a lógica para efetuar a comunicação entre o periférico e o barramento
  • 37.
    AOC – Dispositivosde E/S ● Módulos de E/S – Inviabilidade de conexão direto ao barramento de sistema ● Há uma grande variedade de periféricos com diferentes mecanismos de comunicação, impossibilitando incorporar ao processador cada uma dessas lógicas ● Taxas de transferências de dados dos periféricos são muito menores que as taxas de transferência entre memória e processador ● Periféricos usam formatos de dados e tamanhos de palavras diferentes
  • 38.
    AOC – Dispositivosde E/S ● Módulos de E/S – Objetivo ● Fornecer interface com o processador e a memória ● Permitir a interface com os demais dispositivos periféricos
  • 39.
    AOC – Dispositivosde E/S ● Módulos de E/S – Dispositivos Externos ● Categorias – Comunicação com o usuário ● Terminais de vídeo, impressoras, ... – Comunicação com a máquina ● Discos e fitas magnéticas – Comunicação com dispositivos remotos ● Módulos de comunicação
  • 40.
    AOC – Dispositivosde E/S ● Módulos de E/S – Dispositivos Externos ● Modelo geral – Sinais de controle ● Determinam a função a ser executada – Dados ● Bits a serem enviados ou recebidos – Sinais de estado ● Indicam o estado do dispositivo – Lógica de controle ● Controle a sua operação em resposta a um comando – Transdutor ● Converte os sinais elétricos em sinais manipulados pelo dispositivo
  • 41.
    AOC – Dispositivosde E/S ● Módulos de E/S – Funções ● Controle e temporização – Controla o fluxo de dados entre os recursos internos e os dispositivos externos ● Comunicação com o processador – Decodificação do comando – Transferência de dados – Informação de estado – Reconhecimento de endereço
  • 42.
    AOC – Dispositivosde E/S ● Módulos de E/S – Funções ● Comunicação com dispositivos ● Área de armazenamento temporário de dados ● Detecção de erros
  • 43.
    AOC – Dispositivosde E/S ● Módulos de E/S – Técnicas para a realização das operações de E/S ● Programada – Dados transferidos entre processador e o módulo de E/S – O processador controla diretamente as operações ● Detecção do estado do dispositivo ● Envio de comandos de leitura/escrita ● Executa a transferência de dados – O processador envia um comando e espera até que a operação seja concluída – O processador é quem faz a transferência de dados de/para a memória principal
  • 44.
    AOC – Dispositivosde E/S ● Módulos de E/S – Técnicas para a realização das operações de E/S ● Dirigida por interrupção – O processador envia um comando para o módulo de E/S e continua executando suas outras instruções – O mesmo é interrompido como o módulo tiver completado seu trabalho – O processador é quem faz a transferência de dados de/para a memória principal ● Acesso direto à memória – É uma técnica especial por interrupção onde a transferência de dados entre o módulo à memória acontece sem a intervenção do processador
  • 45.
    AOC – Dispositivosde E/S ● Módulos de E/S – Interface externa ● Tipos de interface – Serial ● Usa uma linha de conexão entre o módulo de E/S e o dispositivo periférico para a transferência dos dados – Paralela ● Usa várias linhas de conexão
  • 46.
    AOC – Dispositivosde E/S ● Módulos de E/S – Interface externa ● Tipos de conexão – Ponto a ponto ● Oferece uma linha dedicada entre o módulo de E/S e o periférico – Multiponto ● Usadas para a conexão de dispositivos externos e de armazenamento em massa e dispositivos multimídia ● Exemplos: SCSI e FireWire
  • 47.
    AOC – Dispositivosde E/S ● Módulos de E/S – Interface externa ● Conexão SCSI – Interface para pequenos componentes computacionais – É uma interface padrão para unidades de leitura, equipamentos de áudio, e dispositivos externos de armazenamento em massa – Usa uma interface paralela – Os dispositivos são conectados em uma cadeia circular, sendo um ponto desta cadeia conectado ao computador – Permite o funcionamento dos dispositivos de forma independente, podendo haver a troca de dados entre os dispositivos sem envolver o processador
  • 48.
    AOC – Dispositivosde E/S ● Módulos de E/S – Interface externa ● Conexão SCSI – Os dados são transferidos na forma de pacotes de mensagens ● Mensagens trocadas entre um iniciador e um alvo – Fases de atividade no barramento ● Barramento livre ● Arbitração ● Quando um dispositivo ganha o controle do barramento ● Seleção ● Quando um iniciador seleciona um alvo ● Restabelecimento da conexão ● Alvo restabelece conexão com iniciador para retomar uma operação suspensa pelo alvo
  • 49.
    AOC – Dispositivosde E/S ● Módulos de E/S – Interface externa ● Conexão SCSI – Fases de atividade no barramento ● Comandos ● Dados ● Estado ● Alvo realiza requisição para que uma informação de estado seja ao envidada ao iniciador ● Mensagem ● O iniciador requisita transferência de mensagens do alvo para o inciador e vice-versa
  • 50.
    AOC – Dispositivosde E/S ● Módulos de E/S – Interface externa ● Conexão SCSI – Fases de atividade no barramento
  • 51.
    AOC – Dispositivosde E/S ● Módulos de E/S – Interface externa ● Barramento FireWire – É o padrão IEEE 1394 – Possibilita a transferência de dados em alta velocidade – É uma interface de baixo custo e fácil implementação – Usa a transmissão serial – Permite a conexão de 63 dispositivos em uma única porta, sendo possível a interconexão de até 1022 barramentos entre si – Permite a configuração automática ● Não é preciso especificar um endereço distinto para cada dispositivo
  • 52.
    AOC – Dispositivosde E/S ● Módulos de E/S – Interface externa ● Barramento FireWire – Não existem terminadores – Não precisa ter a configuração circular, podendo assumir uma configuração em árvore
  • 53.
    AOC – Dispositivosde E/S ● Módulos de E/S – Interface externa ● Barramento FireWire – Implementado em protocolo de três camadas ● Camada física ● Define os meios de transmissão, as características físicas e de sinalização ● Camada de enlace ● Descreve a transmissão de dados em pacote ● Camada de transação ● Define um protocolo de requisição-resposta, que encapsula os detalhes das camadas inferiores
  • 54.
    AOC - CPU ● Unidade Central de Processamento – Componentes ● Unidade lógica e aritmética ● Registradores ● Unidade de controle ● Relógio ● Interconexões entre esses componentes
  • 55.
    AOC - CPU ● Ações executadas pela CPU – Busca de instrução – Interpretação da instrução – Busca de dados – Processamento de dados – Escrita de Dados
  • 56.
    AOC - CPU ● Visões da CPU
  • 57.
    AOC - CPU ● Unidade Lógica e Aritmética – Executa as operações lógicas e aritméticas – Baseada em dispositivos lógicos digitais simples – Armazenam dígitos binários – Efetuam operações simples da lógica booleana
  • 58.
    AOC - CPU ● Registradores – Fazem parte da hierarquia de memória do computador – São divididos em dois grupos ● Visíveis ao usuário ● De controle e de estado
  • 59.
    AOC - CPU ● Registradores – Visíveis ao usuário ● De propósito geral ● De dados ● De endereço ● De códigos de condição
  • 60.
    AOC - CPU ● Registradores – De controle e de estado ● Controle de programa (PC) ● De instrução ● De endereçamento à memória ● De armazenamento temporário de dados – São usados em conjunto para a transferência de dados entre CPU e memória
  • 61.
    AOC - CPU ● Registradores – De controle e de estado ● PSW (palavra de estado de programa) – Contém códigos de condição e informações de estado ● Sinal – bit de sinal resultante de uma operação ● Zero – indica que resultado da operação é igual a 0 ● Vai-um – usado para operações aritméticas de múltiplas palavras ● Igual – indica igualdade em uma comparação ● Overflow – indica estouro de capacidade em operações aritméticas ● Habilitar/desabilitar interrupção ● Supervisor – indica modo de operação da CPU. Algumas instruções só podem ser executadas ou algumas áreas de memória só podem se acessadas se a CPU estiver no modo supervisor
  • 62.
    AOC - CPU ● Registradores – De controle e de estado ● Podem existir ainda os seguintes registradores: – Registrador que aponta para um endereço de memória que contenha o bloco de controle de processos – Registrador de vetor de interrupções – Registrador de controle de pilha (para controle de chamadas a subrotinas) – Registrador para tabela de páginas para controle da memória virtual – Registrados para controle das operações de E/S
  • 63.
    AOC - CPU ● Unidade de Controle – É o componente que controla a operação do processador – O funcionamento do processador depende das seguintes definições ● Operações a executar ● Modos de endereçamento ● Registradores ● Interface com o módulo de E/S ● Interface com o módulo de memória ● Estrutura de processamento de interrupção
  • 64.
    AOC - CPU ● Unidade de Controle – Operações a executar ● Microoperações – São os passos necessários para a execução de cada um dos subciclos de instrução
  • 65.
    AOC - CPU ● Unidade de Controle – Ciclo de Instrução ● Etapas – Busca ● Lê a próxima instrução da memória para a CPU – Execução ● Interpreta e efetua a operação indicada – Interrupção ● Quando habilitadas, na ocorrência de interrupções, salva o estado do processo atual e processa a interrupção
  • 66.
    AOC - CPU ● Unidade de Controle – Ciclo de Instrução ● Ciclo indireto – É ativado quando é utilizado o endereçamento indireto para acesso à memória – No endereçamento direto o tamanho do campo de endereço é menor que o tamanho de uma palavra, limitando a quantidade de memória endereçada. No endereçamento indireto o campo de endereço aponta para uma posição de memória que contém o endereço do operando.
  • 67.
    AOC - CPU ● Unidade de Controle – Ciclo de Instrução ● Busca – Para este processo, consideramos os seguintes registradores ● Registrador de endereço de memória (MAR) ● Especifica o endereço de memória para uma operação de R/W ● Registrador de armazenamento temporário de dados (MBR) ● Contém um valor a ser armazenado ou o último valor lido da memória ● Contador de programa (PC) ● Contém o endereço da próxima instrução a ser executada ● Registrador de instrução (IR) ● Mantém a última instrução buscada da memória
  • 68.
    AOC - CPU ● Unidade de Controle – Ciclo de Instrução ● Busca – Etapas ● O endereço da próxima instrução está em PC ● Esse endereço é movido para MAR ● Esse endereço é movido para o barramento de endereços e o conteúdo lido é colocado em MBR ● O PC é incrementado em uma unidade – O processo é executado em em três passos e quatro microoperações
  • 69.
    AOC - CPU ● Unidade de Controle – Ciclo de Instrução ● Ciclo indireto – Deve acontecer antes da execução da instrução ser for utilizado o endereçamento indireto ● Etapas ● O campo de endereço da instrução é transferido para MAR ● O conteúdo desse endereço é transferido para MBR ● O conteúdo do endereço apontado por MBR é transferido para IR
  • 70.
    AOC - CPU ● Unidade de Controle – Ciclo de Instrução ● Ciclo de interrupção – Ativado toda vez que ocorre uma interrupção ● Etapas ● O conteúdo do PC é transferido para o MBR ● O endereço para salvamento é carregado em MAR ● O PC é carregado com o endereço da rotina de interrupção ● O conteúdo do MBR é salvo no endereço apontado por MAR ● Essas etapas podem variar de acordo com os níveis e/ou tipos de interrupções tratadas
  • 71.
    AOC - CPU ● Unidade de Controle – Ciclo de Instrução ● Ciclo de execução – Este ciclo é mais complexo, envolvendo uma série de microoperações – Exemplo 1: operação de adição ● ADD R1,X
  • 72.
    AOC - CPU ● Unidade de Controle – Ciclo de Instrução ● Ciclo de execução – Exemplo 2: incrementar um valor e, caso esse valor seja zero, é pulada uma instrução ● ISZ X
  • 73.
    AOC - CPU ● Unidade de Controle – Ciclo de Instrução como um todo
  • 74.
    AOC - CPU ● Unidade de Controle – Modelo geral
  • 75.
    AOC - CPU ● Unidade de Controle – Modelo geral ● Entradas – Relógio ● Faz a marcação de tempo da CPU ● A unidade de controle faz com que cada microoperação seja executada a cada pulso do relógio (ciclo do processador ou de relógio) – Registrador de instrução ● Usado para indicar as microoperações a serem executadas durante o ciclo de execução – Códigos de condição ● Determinam o estado do processador e saída de suas operações executadas pela ULA
  • 76.
    AOC - CPU ● Unidade de Controle – Modelo geral ● Entradas – Sinais de controle do barramento de controle ● Fornece sinais como interrupções e de reconhecimento ● Saídas – Sinais de controle internos ao processador ● Indicam movimentação de dados entre registradores e ativação de funções específicas da ULA – Sinais de controle para o barramento de controle ● Sinais de controle para a memória e para os módulos de E/S
  • 77.
    AOC – SistemaOperacional ● Sistema Operacional – É o programa que gerencia os recursos do computador – Fornece serviços para programadores – Estabelece a ordem de execução dos demais programas
  • 78.
    AOC – SistemaOperacional ● Visão Geral – Objetivos ● Conveniência – Torna mais conveniente o uso do computador (interface com o usuário) ● Eficiência – Permite uma utilização mais eficiente dos recursos
  • 79.
    AOC – SistemaOperacional ● Visão Geral – Objetivos ● Interface com o usuário – O usuário final tem acesso aos recursos computacionais via programas aplicativos – Programas aplicativos são desenvolvidos por programadores, utilizando programas de de utilitários e programas de sistema – O sistema operacional esconde detalhes do hardware fornecendo uma interface conveniente para o uso do sistema, atuando como um mediador entre programadores/programas utilitários e os recursos/serviços do computador
  • 80.
    AOC – SistemaOperacional ● Visão Geral – Objetivos ● Interface com o usuário – Permite a execução das seguintes atividades ● Criação de programas ● Execução de programas: transferência de dados e instruções de/para memória e para dispositivos de E/S ● Acesso a dispositivos de E/S ● Acesso controlado aos arquivos ● Acesso ao sistema ● Detecção e reação a erros ● Monitoramento
  • 81.
    AOC – SistemaOperacional ● Visão Geral – Objetivos ● Gerenciamento de recursos – O sistema operacional é um programa como outro qualquer – Ele prepara o processador para a execução de alguma tarefa – Transfere o controle do processador para a execução dessa tarefa – Na conclusão da tarefa, o controle é devolvido ao sistema operacional
  • 82.
    AOC – SistemaOperacional ● Visão Geral – Partes do sistema operacional residentes na memória principal ● Kernel/núcleo – É a parte do sistema operacional que as funções mais frequentemente usadas ● Funções em uso – Funções que não fazem parte do núcleo mais estão em execução naquele momento
  • 83.
    AOC – SistemaOperacional ● Tipos de sistemas operacionais – Sistema interativo x sistema em lotes ● Sistema interativo – O programador/usuário interage diretamente com o computador (usando interfaces) para solicitar a execução de tarefas ou efetuar transações, podendo se comunicar com o computador durante a execução dessas tarefas ● Sistema em lote – Os diversos programas de usuário são agrupados em lotes e então submetidos à execução. Não há interação com usuário, que deve esperar a conclusão do processamento para ter acesso aos resultados de saída.
  • 84.
    AOC – SistemaOperacional ● Tipos de sistemas operacionais – Monoprogramado x Multiprogramado ● Monoprogramadado – Permite apenas a execução de um programa por vez ● Multiprogramado – Permite que vários programas sejam, ao mesmo tempo, carregados na memória. O tempo de processamento é divido entre eles
  • 85.
    AOC – SistemaOperacional ● Tipos de sistemas operacionais – Em lote multiprogramados x de tempo compartilhado ● Em lote multiprogramados – Várias tarefas são preparadas ao mesmo tempo para a execução – Essas tarefas são carregadas na memória principal – O processador decide qual tarefa será executada em determinado instante ● De tempo compartilhado – É um sistema multiprogramado que permite interação com o usuário – Com essa técnica é permitido que vários usuários utilizem o sistema ao mesmo tempo, por meio de terminais
  • 86.
    AOC – SistemaOperacional ● Sistema operacional multiprogramado – Processo ● É um programa em execução ● Estados possíveis de um processo – Novo – Pronto – Em execução – Suspenso – Concluído
  • 87.
    AOC – SistemaOperacional ● Sistema operacional multiprogramado – Processo ● Bloco de controle de processos – É responsável pela identificação de cada processo no sistema operacional – Informações contidas ● Identificador ● Estado ● Prioridade ● Contador de programa: endereço da próxima instrução ● Limites de memória: onde o processo está armazenado ● Informações de contexto: estado e registradores da CPU ● Informação de estado de E/S ● Informação de contabilidade: pode incluir a quantidade de tempo de processador, o tempo total utilizado, limites de tempo de execução, contabilização de uso de recursos, etc
  • 88.
    AOC – SistemaOperacional ● Sistema operacional multiprogramado – Escalonamento de processos ● É a base para a implementação da multiprogramação ● O escalonador é responsável pela decisão de que processo será executado em determinado tempo ● Tipos de escalonamento – A longo prazo – A médio prazo – A curto prazo
  • 89.
    AOC – SistemaOperacional ● Sistema operacional multiprogramado – Escalonamento de processos ● A longo prazo – O escalonador a longo prazo determina que programas são admitidos para processamento – Controla o grau de multiprogramação ● Número de processos na memória ● A médio prazo – Faz parte da função de troca de processos entre as memórias principal e secundária, geralmente para processos em estado de suspensão ● A curto prazo – Decide qual a próxima tarefa a ser executada dentre as que estão em estado de pronto
  • 90.
    AOC – SistemaOperacional ● Sistema operacional multiprogramado – Escalonamento de processos
  • 91.
    AOC – SistemaOperacional ● Gerenciamento de memória – É a atividade responsável por controlar o fluxo de processos na memória – Quanto mais eficiente esse gerenciamento, maior será o desempenho do computador como um todo
  • 92.
    AOC – SistemaOperacional ● Gerenciamento de memória – Troca de processos na memória ● Um processador pode ficar ocioso caso todos os processos escalonados estejam esperando por uma operação de E/S ● Aumentar o tamanho da memória geraria um aumento no custo do computador ● As requisições de memória, pelos programas, têm sido cada vez maiores, aumentando o tamanho dos processos
  • 93.
    AOC – SistemaOperacional ● Gerenciamento de memória – Troca de processos na memória ● Solução: implementação da troca de processos (swapping) – Toda vez que um processo estiver ocioso, dentro da memória, o mesmo é retirado para uma fila de médio prazo – No seu lugar é colocado um processo que estava nessa fila, ou então um processo da fila de longo prazo
  • 94.
    AOC – SistemaOperacional ● Gerenciamento de memória – Partição de memória ● Indica como a memória está subdividida para acomodar os diferentes processos – Partições de tamanho fixo – Partições de tamanho variável
  • 95.
    AOC – SistemaOperacional ● Gerenciamento de memória – Partição de memória ● Partições de tamanho fixo – A memória é dividida em blocos de tamanho fixo, mas não necessariamente com todos os blocos de mesmo tamanho – Um processo é alocado à menor partição disponível que caiba esse processo – Desvantagem: desperdício de memória
  • 96.
    AOC – SistemaOperacional ● Gerenciamento de memória – Partição de memória ● Partições de tamanho variável – Cada processo aloca o espaço de memória necessário – Vantagem: economia de memória – Desvantagem: fragmentação da memória, sendo necessário um processo de compactação
  • 97.
    AOC – SistemaOperacional ● Gerenciamento de memória – Partição de memória ● Partições de tamanho variável – Fragmentação da memória ● Endereço físico – Posição dentro da memória ● Endereço lógico – Posição relativa ao início do programaPÁG 276
  • 98.
    AOC – SistemaOperacional ● Gerenciamento de memória – Paginação ● Técnica usada para diminuir a ineficiência das alocações das partições de tamanho fixo ou variável ● Os processos são subdivididos em pequenos pedaços de tamanhos fixos chamados de páginas ● As páginas podem ser alocadas em blocos de memória disponíveis ● O espaço desperdiçado é apenas uma fração do último bloco alocado ao processo ● Não é necessário que os blocos necessários estejam contiguamente posicionados
  • 99.
    AOC – SistemaOperacional ● Gerenciamento de memória – Paginação ● Dessa forma, a memória é divida em blocos de mesmo tamanho ● Os processos são divididos em páginas do mesmo tamanho do bloco de memória ● Quando um processo é trazido para a memória, suas páginas são carregadas em blocos e é criada uma tabela de páginas
  • 100.
    AOC – SistemaOperacional ● Gerenciamento de memória – Paginação
  • 101.
    AOC – SistemaOperacional ● Gerenciamento de memória – Memória virtual ● Com a memória dividida em blocos e os processos em páginas, não é necessário que todo o processo fique alocado na memória principal durante a sua execução ● Apenas as páginas de código e as páginas de dados precisam estar alocados ● As demais páginas ficam residentes na memória virtual e são carregadas quando solicitado – Paginação sob demanda ● Assim é possível que um processo seja maior que toda a memória principal, não ficando limitado a esse tamanho