Escolar Documentos
Profissional Documentos
Cultura Documentos
de Computadores
Geycy Lima
Tpicos
Nvel do Sistema Operacional
Conceitos Bsicos
Memria Virtual
Nvel do S.O.
Nvel do S.O.
O Sistema Operacional
um programa que, do ponto de vista do programador, adiciona
um conjunto de novas instrues e de funcionalidades alm
daquelas suportadas no nvel ISA;
Em geral, est implementado em software e;
implementado pelo nvel que pode ser chamado de SOM Sistema Operacional da Mquina.
Nvel do S.O.
O Conjunto de Instrues do nvel SOM
aquele que est disponvel para os programadores de aplicao;
Contm todas as instrues do nvel ISA e tambm novas
instrues conhecidas como Chamadas ao Sistema;
Chamadas ao Sistema
Ativam um determinado servio prestado
pelo S.O. no nvel da aplicao, que vem a ser
efetivamente uma de suas instrues.
Exemplo: leitura de um dado de um arquivo.
5
Nvel do S.O.
Importante: O nvel SOM interpretado
Nvel do S.O.
Memria Virtual
Os primeiros computadores (incio dos anos 60) tinham memria
principal muito reduzida (Ex.: PDP-1 funcionava em tempo
compartilhado com memria de 4096 palavras de 18 bits cada para
rodar o sistema operacional e tambm os programas dos usurios)
Por falta de memria, as vezes se implementavam algoritmos mais
lentos.
A soluo tradicional para a falta de memria era o uso de memria
secundria.
Memria Virtual
Solues tradicionais para o problema de
pouca memria
O programa era dividido em partes, chamadas overlays, que cabiam
na memria disponvel.
Cada overlay era carregado do disco para a memria, segundo a
sequncia do programa, e executado.
O programador era responsvel por gerenciar todo o processo de
overlays sem qualquer ajuda do computador.
8
Memria Virtual
A definio de overlays evoluiu para o conceito de memria virtual.
Memria Virtual
Paginao
A paginao uma implementao de memria virtual que usa os
conceitos de:
Memria Virtual
Paginao
Exemplo: computador com barramento de endereos de 16 bits e 4K
palavras de memria
- Espao de endereamento: 65536
- Espao de memria: 4096
11
Memria Virtual
Paginao
Mquina de 4k sem memria virtual
- Mapeamento fixo entre os endereos de 0 a 4096 e as 4096 palavras
de memria.
- O que aconteceria de um programa desviasse para um endereo
entre 8192 e 12287?
- Sem memria virtual, o programa provavelmente causaria uma
exceo e encerraria.
12
Memria Virtual
Paginao
Mquina com memria virtual que faa um salto para algum
endereo entre 8192 e 12287:
- O contedo da memria principal salvo no disco;
- As palavras de 8192 a 12287 so localizadas no disco;
- As palavras de 8192 a 12287 so carregadas na memria principal;
- O mapeamento de endereo alterado para mapear os endereos
de 8192 a 12287 nas posies de memria de 0 a 4095;
- A execuo do programa continuaria como se nada tivesse
acontecido;
Essa tcnica de sobreposio automtica denominada paginao, e
os trechos de programa lidos do disco so denominados pginas.
13
Memria Virtual
Caractersticas do esquema de paginao
Os programas so escritos com base no pressuposto de que o
tamanho de memria principal suficiente para todo o espao de
endereos virtuais.
Os programas podem trazer, ou armazenar, qualquer palavra do, ou
no, espao virtual ou desviar para qualquer instruo situada dentro
do espao virtual, sem se preocupar com o tamanho da memria
fsica.
14
Memria Virtual
A paginao d ao programador a iluso de uma memria
principal grande, com endereos contguos e lineares, do mesmo
tamanho da memria virtual.
Como o programador pode escrever seu programa como se no
existisse a paginao, esse mecanismo chamado de
transparente.
15
Memria Virtual
Um mapa de memria, ou tabela de pginas, relaciona os
endereos virtuais com os endereos fsicos.
Para permitir o mapeamento de endereos virtuais em endereos
fsicos e facilitar a transferncia de informao entre memria
principal e HD, o espao de endereamento virtual dividido em
blocos de endereos, tipicamente, de tamanho fsico.
Denominao dos blocos: pginas (tamanho tpico 4K, 1K palavras
de 32 bits).
O espao de endereamento fsico tambm dividido em pedaos
do mesmo tamanho do virtual. Essas partes so conhecidas como
molduras de pgina.
Memria Virtual
Implementao da paginao
17
Memria Virtual
a) Os primeiros 64K do
espao de endereos
virtuais divididos em
16 pginas, de 4K
cada uma.
b) Memria principal de
32 K dividida em 8
molduras de pgina,
de 4K cada.
18
Memria Virtual
Implementao da paginao
19
Memria Virtual
Implementao da paginao
Memria Virtual
21
Memria Virtual
Paginao por Demanda e Modelo do
Conjunto de Trabalho
Memria Virtual
Paginao por Demanda e Modelo do
Conjunto de Trabalho
Na paginao por demanda, as pginas so trazidas para a memria
principal em funo das requisies explcitas para cada uma delas e
no antecipadamente.
Quando existem vrios processos sendo executados, num regime de
compartilhamento de tempo, o mapeamento de pginas muda cada
vez que h uma troca de contexto.
Neste caso, a paginao por demanda pode ter um impacto
negativo. Uma soluo usar um modelo, chamado conjunto de
trabalho, que carrega, antecipadamente, as pginas necessrias
execuo ou continuao de um processo.
23
Memria Virtual
Poltica de Substituio de Pginas
Quando um programa referencia uma pgina que no est na
memria principal, a pgina solicitada deve ser buscada no disco.
Logo, para abrir espao, em geral alguma outra pgina ter de ser
devolvida ao disco.
Problema: Qual pgina deve ser devolvida ao disco?
O SO deve escolher, automaticamente, a pgina de mais baixa
probabilidade de vir a pertencer ao conjunto de trabalho.
Os algoritmos de substituio chamados LRU (usada menos
recentemente) e FIFO (primeiro a entrar, primeiro a sair) podem ser
usados nesses casos.
24
Memria Virtual
Poltica de Substituio de Pginas
Algoritmo LRU (Least Recently Used No usado h mais tempo).
25
Memria Virtual
Poltica de Substituio de Pginas
26
Memria Virtual
Poltica de Substituio de Pginas
O algoritmo FIFO (First In First Out Primeiro a Entrar, Primeiro a
Sair)
Memria Virtual
Tamanho da Pgina e Fragmentao
28
Memria Virtual
Exerccios
1.
Quadro de pgina
3
1
No est na MP
No est na MP
2
No est na MP
No est na MP
29