Sei sulla pagina 1di 14

Sistemas Operativos

Hardware de um sistema de computao

HARDWARE DE UM SISTEMA DE COMPUTAO


Reviso de conceitos bsicos sobre hardware
Processador Interrupes Processamento de E/S Memria

Proteco do hardware Arranque do sistema (booting)

MIEIC

Faculdade de Engenharia da Universidade do Porto

Sistemas Operativos

Hardware de um sistema de computao

Elementos bsicos do hardware


A maior parte dos computadores so baseados na arquitectura de Von Neumann. 4 elementos principais do hardware:
Processador ou Unidade de Processamento Central (Central Processing Unit - CPU)
controla a operao do computador processa os dados

Memria principal
armazena programas e dados

Dispositivos de E/S-Entrada/Sada (I/O-Input/Output)


transferem os dados entre o computador e o exterior

Ligaes entre os outros elementos (barramentos)


MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 1

Sistemas Operativos

Hardware de um sistema de computao

Arquitectura bsica do hardware


Processador Memria principal

Unidade de controlo

Dispositivos de E/S
Registos

Unidade Aritmtica e Lgica (ALU)

Barramento

MIEIC

Faculdade de Engenharia da Universidade do Porto

Sistemas Operativos

Hardware de um sistema de computao

Registos do processador
Program Counter - PC
Contm o endereo da prxima instruo.

Instruction Register - IR
Contm a instruo actual.

Processor Status Word - PSW


Contm informao acerca do estado do processador, interrupes, flags (carry, zero,overflow,)

Stack Pointer - SP
Aponta para o topo da stack.

Registos do utilizador
Usados para vrios fins, na programao.

Outros
Gesto de memria, etc.
MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 2

Sistemas Operativos

Hardware de um sistema de computao

Execuo de instrues
Incio

Busca da instruo

Tratamento de interrupes Interrupes autorizadas

Execuo da instruo

Interrupes inibidas

MIEIC

Faculdade de Engenharia da Universidade do Porto

Sistemas Operativos

Hardware de um sistema de computao

Interrupes
Uma interrupo um mecanismo que permite que o processamento normal de um processador seja interrompido. As interrupes so usadas para aumentar a eficincia, especialmente quando se usam componentes que operam a velocidades diferentes.
PROGRAMA DO UTILIZADOR INTERRUPT HANDLER

Permitem que o processador continue a executar enquanto decorre uma operao de E/S base da multiprogramao
ocorrncia de interrupo

MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 3

Sistemas Operativos

Hardware de um sistema de computao

Classes de interrupes
Programa
geradas por uma condio que resulta da execuo de uma instruo (ex: overflow, diviso por zero, ref. a memria protegida, )

Temporizador (timer)
geradas por um temporizador; permite que o SO execute certas tarefas regularmente.

E/S
geradas por um controlador de E/S para assinalar o fim de uma operao ou certos erros.

Falha de hardware
geradas por uma falha (ex: alimentao, erro de paridade da memria, )
MIEIC

Faculdade de Engenharia da Universidade do Porto

Sistemas Operativos

Hardware de um sistema de computao

Processamento de interrupes
A rotina a executar em resposta a uma determinada interrupo determinada com base num vector de interrupes. Cada plataforma de hardware tem um procedimento particular para tratar uma determinada interrupo. Deve existir qualquer forma de interrupt handler. Combinao de responsabilidade do SO e do hardware no interrupt handler.

MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 4

Sistemas Operativos

Hardware de um sistema de computao

Processamento de uma interrupo


Hardware
1) Ocorrncia da interrupo 2) O processador termina instruo actual 3) O processador assinala aceitao da interrupo 4) O processador guarda a PSW e o PC na stack 5) O processador carrega PC c/o endereo da rotina de tratamento da interrupo

Software
6) Guardar restante informao do estado do processo
(registos do processador, )

7) Processar a interrupo (executar rotina) 8) Restaurar informao do estado do processo 9) Restaurar PSW e PC
MIEIC

Faculdade de Engenharia da Universidade do Porto

Sistemas Operativos

Hardware de um sistema de computao

Interrupes mltiplas
O que acontece quando uma interrupo interrompe outra interrupo ?
Processamento sequencial
inibir as interrupes durante o processamento de uma interrupo

Processamento embutido
algumas interrupes so mais importantes do que outras prioridades de interrupo

MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 5

Sistemas Operativos

Hardware de um sistema de computao

Interrupes mltiplas
Processamento sequencial
PROGRAMA DE UTILIZADOR

INTERRUPT HANDLER X

INTERRUPT HANDLER Y

MIEIC

Faculdade de Engenharia da Universidade do Porto

Sistemas Operativos

Hardware de um sistema de computao

Interrupes mltiplas
Processamento embutido
PROGRAMA DE UTILIZADOR INTERRUPT HANDLER X (ex: impressora)

INTERRUPT HANDLER Y (ex: rede)

MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 6

Sistemas Operativos

Hardware de um sistema de computao

Entrada / Saida
A gesto eficiente das E/S's uma das principais responsabilidades de um SO. 3 mecanismos principais para executar E/S's
E/S programada (ou polling) E/S guiada por interrupo Acesso directo memria (Direct Memory Access - DMA)

MIEIC

Faculdade de Engenharia da Universidade do Porto

Sistemas Operativos

Hardware de um sistema de computao

E/S programada
o mdulo de E/S que controla a aco, no o processador O mdulo de E/S indica o seu estado num Status Register No h interrupes O processador est sempre ocupado a verificar o estado do mdulo de E/S
Problemas quando o dispositivo de E/S lento.

MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 7

Sistemas Operativos

Hardware de um sistema de computao

E/S guiada por interrupo


O processador ainda tem de intervir na operao de transferncia dos dados Quando a E/S se completar gerada uma interrupo pelo dispositivo de E/S O processador fica livre durante a operao do dispositivo de E/S
Mais eficiente do que a E/S programada mas o processador ainda responsvel pela transferncia de dados entre a memria e o dispositivo de E/S.

MIEIC

Faculdade de Engenharia da Universidade do Porto

Sistemas Operativos

Hardware de um sistema de computao

Acesso Directo Memria (DMA)


Necessrio um controlador de DMA ligado ao barramento do sistema. Quando necessrio fazer E/S
o processador informa o controlador do dispositivo de E/S do que pretende fazer e onde est ou vai ficar a informao a transferir o processador continua a executar outras instrues o dispositivo de E/S transfere a informao directamente de/para a memria quando o DMA termina gerada uma interrupo

MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 8

Sistemas Operativos

Hardware de um sistema de computao

Entrada / sada
Memria principal Memria principal

Processador

Processador

Controlador

Controlador

Dispositivo de E/S

Dispositivo de E/S

sem DMA

com DMA
MIEIC

Faculdade de Engenharia da Universidade do Porto

Sistemas Operativos

Hardware de um sistema de computao

Memria
Hierarquia
Registos Cache Memria principal Cache de disco Disco magntico Disco ptico / Fita magntica
custo/bit capacidade tempo de acesso freq. de acesso

Localidade de referncia
As referncias do processador memria tendem a ocorrer em posies contguas durante certos intervalos de tempo utiliz. cache
MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 9

Sistemas Operativos

Hardware de um sistema de computao

Proteco do hardware
Aumentar a utilizao do sistema partilha do sistema vrios programas a executar em simultneo proteco O SO deve impedir que um programa incorrecto ou "mal intencionado" impea os outros programas de executar. Alguns erros de programao so detectados pelo hardware. Normalmente estes erros so tratados pelo SO.

MIEIC

Faculdade de Engenharia da Universidade do Porto

Sistemas Operativos

Hardware de um sistema de computao

Protecco do hardware (cont.)


Proteco
duplo modo de operao
modo utilizador modo supervisor / sistema / monitor / privilegiado (instrues privilegiadas)

proteco de E/S's proteco da memria proteco do processador

MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 10

Sistemas Operativos

Hardware de um sistema de computao

Duplo modo de operao


O hardware tem de suportar pelo menos 2 modos de operao. O computador arranca em modo supervisor. O SO carregado e d incio aos processos do utilizador em modo utilizador. Quando ocorre uma excepo (trap ou interrupo) o hardware comuta para modo supervisor. O sistema comuta sempre para modo utilizador antes de ceder o controlo a um programa do utilizador.

MIEIC

Faculdade de Engenharia da Universidade do Porto

Sistemas Operativos

Hardware de um sistema de computao

Chamadas ao sistema
o mtodo usado para um processo pedir uma aco ao sistema operativo.
implicam a comutao do modo utilizador para o modo supervisor usam, em geral, interrupes por software os parmetros da chamada so, geralmente, passados nos registos do processador

MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 11

Sistemas Operativos

Hardware de um sistema de computao

Proteco das E/S's


Impedir um utilizador de executar E/S "ilegal"
definir todas as operaes de E/S como privilegiadas
os utilizadores no conseguem fazer E/S directamente, s atravs do SO

MIEIC

Faculdade de Engenharia da Universidade do Porto

Sistemas Operativos

Hardware de um sistema de computao

Proteco da memria
Fundamental proteger
vector de interrupes rotinas de servio de interrupo

Proteco da rea de memria de cada utilizador


feita por hardware
2 registos determinam a gama de endereos vlidos a que um programa pode aceder estes registos s podem ser manipulados pelo SO

MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 12

Sistemas Operativos

Hardware de um sistema de computao

Proteco do processador
Impedir que um programa do utilizador tome conta do procesador indefinidamente (ex: ciclo infinito) e no retorne o controlo ao SO. Usar um temporizador que aps um perodo especificado interrompe o programa em execuo. As instrues de manipulao do temporizador so privilegiadas. O temporizador tambm usado para implementar time-sharing manter actualizada a hora do sistema
MIEIC

Faculdade de Engenharia da Universidade do Porto

Sistemas Operativos

Hardware de um sistema de computao

Requisitos de hardware para multiprogramao


Um SO com multiprogramao necessita de suporte de hardware:
temporizador hardware de DMA mecanismo de interrupes com prioridades duplo modo de operao do processador mecanismo de proteco da memria mecanismo de atribuio dinmica de endereos ...

MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 13

Sistemas Operativos

Hardware de um sistema de computao

Arranque de um PC (booting)
Aps o POST (Power On Self Test) que verifica o estado do hardware feito o reset do processador O processador procura uma instruo no endereo 0xFFFFFFF0 A instruo neste endereo um salto para o incio do BIOS, em ROM O BIOS determina, na sua configurao, qual o boot device (disquete/disco/) O BIOS l o MBR-Master Boot Record (primeiro sector) do boot device; o MBR contm informao acerca das parties existentes no disco e o endereo do boot sector O BIOS carrega, em RAM, um pequeno programa, contido neste sector que poder, por sua vez executar outros programas, cuja execuo culminar com o carregamento do sistema operativo O sistema operativo executa vrios procedimentos de inicializao Alguns processos comeam a ser executados

MIEIC

Faculdade de Engenharia da Universidade do Porto

Page 14

Potrebbero piacerti anche