SlideShare une entreprise Scribd logo
1  sur  48
Sistemas Operacionais I
Gerência de Memória: Memória Principal
Prof. Alexandre Duarte : http://alexandrend.com
Centro de Informática | Universidade Federal da Paraíba
Estes slides são baseados no material que acompanha o livro Operating
Systems Concepts de Silberschatz, Galvin and Gagne
Objetivos
 Fornecer uma descriç ão detalhada sobre
várias formas de organizar o hardware de
memó ria
 Discutir técnicas de gerência de memó ria,
incluindo paginaç ão e segmentaç ão
Antecedentes
 Os programas precisam ser trazidos para a memó ria principal para
poderem ser executados (criaç ão de um processo)
 Memó ria principal e registrados são as únicas unidades de armazenamento
acessadas diretamente pela CPU
 O acesso a um registrador é feito em um (ou menos) ciclos de CPU
 Acessos à memó ria principal podem levar mais ciclos
 A memó ria cache se situa entre a memó ria principal e os registradores
 Mecanismos de proteç ão de memó ria são necessários para garantir a
operaç ão correta
Registradores de base e limite
 Um par de registradores (base e limite)
definem um espaç o de endereç amento ló gico
Vinculando instruções e dados à memória
 Tempo de compilaç ão: Se a localizaç ão de
memó ria for conhecida a priori, o compilador pode
gerar có digo absoluto; requer recompilaç ão caso a
localizaç ão mude
 Tempo de carga: Requer a geraç ão de có digo
relocável se a localizaç ão de memó ria não for
conhecida em tempo de compilaç ão
 Tempo de execuç ão: A vinculaç ão é adiada até o
momento da execuç ão caso o processo possa ser
movido de um segmento de memó ria para outro
durante a execuç ão. Requer suporte de hardware
para mapas de endereç amento
Etapas do processamento de um programa
do usuário
Endereçamento Lógico x Físico
 O conceito de espaç o de endereç amento
ló gico, que é vinculado a um espaç o de
endereç amento físico separado é crucial para a
gerência de memó ria
 Endereç o ló gico: gerado pela CPU, também conhecido
como endereç o virtual
 Endereç o físico: endereço visto pela unidade de
memó ria
 Endereç os ló gicos e físicos são os mesmos em
esquemas de vinculaç ão de endereç os em tempo de
compilaç ão ou tempo de carga e são diferentes em
esquemas de vinculaç ão de endereç os em tempo de
execuç ão
Unidade de Gerência de Memória (MMU)
 Dispositivo de hardware que mapeia um
endereç o virtual em um endereç o físico
 Na MMU, o valor de um registrador de relocaç ão
é somado a todo endereç o gerado por um
processo do usuário no momento em que ele é
enviado a memó ria
 O programa lida apenas com endereç os ló gicos;
ele nunca vêos endereç os físicos reais
Uso do registrador de relocação
Carregamento dinâmico
 Uma rotina não é carregada até ser invocada
 Melhor utilizaç ão do espaç o de memó ria;
rotinas não utilizadas nunca são carregadas
 Útil quando grandes quantidade de có digo são
necessárias para lidar com casos infrequentes
 Não requer nenhum suporte especial do
sistema operacional
Ligação dinâmica
 A ligaç ão é adiada até o momento da execuç ão
 Um pequeno pedaç o de có digo (stub) é utilizado
para localizar a rotina apropriada em uma
biblioteca residente na memó ria
 O stub substitui a si pró prio com o endereç o da
rotina e a executa
 O sistema operacional é necessário para verificar
se a rotina estáno espaç o de endereç amento do
processo
 Ligaç ão dinâmica é particularmente útil para
bibliotecas compartilhadas
Swapping
 Um processo pode ser removido temporariamente da memó ria
para um armazenamento secundário e depois trazido de volta para
continuar sua execuç ão
 Armazenamento secundário – disco rápido, grande o suficiente
para armazenar copias dos programas em memó ria de todos os
usuários; precisa fornecer acesso direto a essas có pias de
memó ria
 Roll out, roll in – variante de swapping, utilizada em algoritmos
de escalonamento com prioridade; processos de baixa prioridade
são removidos para que processos de mais alta prioridade possam
ser carregados e executados
 A maior parte do tempo de swap é gasto transferindo dados
 Versões modificadas de um esquema de swapping são encontradas
em praticamente todos os sistemas operacionais
Visão esquemática de swapping
Alocação contínua
 A memó ria principal é geralmente dividida em duas
partições:
 Sistema operacional residente, geralmente na memó ria baixa,
junto com o vetor de interrupç ões
 Processos do usuário na parte alta da memó ria
 Registradores de relocação são utilizados para proteger os
processos dos usuários uns dos outros e também para evitar
alterações em dados e có digos do sistema operacional
 O registrador base contem o menor endereç o de memó ria
permitido
 O registrado de limite define o tamanho do espaç o de
endereç amento – cada endereç o ló gico deve ser menor que o
registrador de limite
 A MMU mapeia os endereç os ló gicos dinamicamente
Suporte de hardware para relocação e
limite
Alocação contínua
 Alocaç ão com múltiplas partiç ões
 Buraco – bloco de memó ria disponível; buracos de vários
tamanhos são espalhados na memó ria
 Quando um processo é criado ele é alocado em um buraco
grande o suficiente para suas necessidades de memó ria
 O sistema operacional mantem informaç ões sobre:
a) partiç ões alocadas b) partiç ões livres (buracos)
SO
processo 5
processo 8
processo 2
SO
processo 5
processo 2
SO
processo 5
processo 2
SO
processo 5
processo 9
processo 2
processo 9
processo 10
O problema da alocação dinâmica
de espaço
 First-fit: Aloca o primeiro buraco que for
grande o suficiente
 Best-fit: Alocar o menor buraco que for
grande o suficiente; precisa pesquisar a lista
inteira a menos que esteja ordenada por
tamanho
 Produz o menor buraco remanescente
 Worst-fit: Aloca o maior buraco; também
precisa percorrer toda a slista
 Produz o maior buraco remanescente
First-fit e best-fit são melhores que o worst-fit em termos
de velocidade e utilizaç ão do espaç o!
Fragmentação
 Fragmentaç ão externa – exige memó ria suficiente
para atender uma requisiç ão mas ela não é contigua
 Fragmentaç ão interna – a memó ria alocada pode
ser levemente maior que a memó ria requisitada; esta
diferenç a de memó ria faz parte da partiç ão mas não
é utilizada
 Reduzir fragmentaç ão utilizando compactaç ão
 Ordena o conteúdo da memó ria em uma localidade para
juntar todo o espaço livre em um grande bloco
 Compactação só é possível com relocação dinâmica
Paginação
 O espaç o de endereç amento ló gico de um processo
pode ser não-contínuo; o processo recebe memó ria
física na medida em que ela se torna disponível
 A memó ria física é dividida em blocos de tamanho
fixo chamados quadros (o tamanho é uma potência
2, entre 512 bytes e 8,192 bytes)
 A memó ria ló gica é dividida também em blocos do
mesmo tamanho chamados páginas
 Para executar um programa de n páginas é preciso
encontrar n quadros para carregar o programa
 Uma tabela de paginaç ão é utilizada para traduzir
endereç os ló gicos em endereç os físicos
Esquema de tradução de endereços
 Os endereç os gerados pela CPU são divididos em duas partes:
 Número da página (p) – utilizado como índice na tabela de paginaç ão que
contem o endereç o base de cada página na memó ria física
 Deslocamento (d) – combinado com o endereç o base define o endereç o
físico a ser enviado para a unidade de memó ria
 Para um determinado espaç o de endereç amento com 2m
bits e páginas de
tamanho 2n
Hardware de paginação
Modelo de paginação de memórias lógica e física
Exemplo de paginação
Memó ria de 32-bytes com páginas de 4 bytes
Quadros livres
Antes da alocaç ão Apó s alocaç ão
Implementação da tabela de
paginação
 Tabela de paginaç ão é mantida na memó ria principal
 Page-table base register (PTBR) aponta para a base
 Page-table length register (PRLR) indica o tamanho
 Neste esquema, cada acesso a dados ou instruç ões
requer dois acessos à memó ria. Um para a tabela de
paginaç ão e outro para o dado/instruç ão
 Este problema de dois acessos pode ser amenizado
utilizando um cache de hardware especial chamado
translation look-aside buffers (TLBs)
 Busca paralela
Traduç ão de endereç o (p, d)
 Se p estána memó ria associativa o valor de f é obtido
 Se não, obter o valor de f da tabela de paginaç ão na
memó ria
Memória associativa
Page # Frame #
Paginação utilizando TLBs
Tempo efetivo de acesso
 Busca associativa = ε unidades de tempo
 Assumir que um ciclo de memó ria dura 1
microssegundo
 Taxa de acerto – porcentagem das vezes em que
o número de uma página é encontrado no TLB;
Taxa de acerto = α
 Tempo efetivo de acesso (EAT)
EAT = (1 + ε) α + (2 + ε)(1 – α)
= 2 + ε – α
Proteção de memória
 O mecanismo de proteç ão de memó ria
associa um bit de proteç ão a cada quadro
 Um bit Válido-inválido anexado a cada
entrada na tabela de paginaç ão:
 “válido” indica que a página associada estáno
espaç o de endereç amento ló gico do processo
 “inválido” indica que a página não estáno espaç o
de endereç amento ló gico do processo
O bit Válido (v) ou Inválido (i) na tabela
de paginação
Páginas compartilhadas
 Có digo compartilhado
 Uma có pia apenas de leitura do có digo
compartilhada entre vários processos
 O có digo compartilhado precisa aparecer no mesmo
local no espaç o de endereç amento ló gico de todos
os processos
 Có digo e dados privados
 Cada processo mantém uma có pia separada dos
dados e có digo
 As páginas para o có digo privado podem aparecer em
qualquer lugar no espaç o de endereç amento ló gico
Exemplo do uso de páginas
compartilhadas
Estrutura da tabela de paginação
 Paginaç ão hierárquica
 Tabelas de paginaç ão com hash
 Tabela de paginaç ão invertida
Tabela de paginação hierárquica
 Quebra o espaç o de endereç amento ló gico
em múltiplas tabelas de paginaç ão
 Uma técnica simples é paginaç ão em dois
níveis
Paginação em dois níveis
 Espaç o de endereç amento ló gico (máquina de 32-bit com páginas de 4K) é divido
em :
 Um número de página de 20 bits
 Um deslocamento na página de 12 bits
 Uma vez que a tabela de paginaç ão é também paginada, o número da página é
também dividido em duas partes:
 Um número de página de 10 bits
 Um deslocamento na página de 10 bits
 Portanto, os endereç os ló gicos são construídos da seguinte forma:
onde pi é o índice na tabela de paginaç ão externa e p2 é o deslocamento dentro da
página da tabela de paginaç ão externa
Exemplo de paginação em dois
níveis
Esquema de tradução de endereço
Paginação em três níveis
Tabelas de paginação com hash
 Comum em espaç o de endereç amento com mais de
32 bits
 O número da página virtual é submetido a uma funç ão
hash e o resultado aponta para uma entrada na
tabela de paginaç ão
 Cada entrada na tabela de paginação contem uma lista de
elementos cujo hash apontou para a mesma localidade
(colisões)
 O número da página virtual é então comparado com os
valores nessa lista para localizar o quadro na
memó ria física
Tabela de paginação com hash
Tabela de paginação invertida
 Uma entrada para cada quadro na memó ria principal
 As entradas da tabela são os endereç os das páginas
virtuais armazenadas nessas localizaç ão de memó ria,
com informaç ão sobre o processo proprietário
 Diminui a quantidade de memó ria necessária para
armazenar a tabela de paginaç ão mas aumenta o
tempo necessário para consultar a tabela
 Usar hash para limitar a busca a uma, ou pelo menos, a
umas poucas entradas
Arquitetura de uma tabela de
paginação invertida
Segmentação
 Esquema de gerência de memó ria que reflete a
visão que o usuário tem da memó ria
 Um programa é uma coleç ão de segmentos
 Um segmento representa uma unidade ló gica, como:
Programa principal
Procedimento
Funç ão
Método
Objeto
Variáveis locais
Variáveis globais
Pilha
Tabela de símbolos
Visão do usuário sobre um programa
Arquitetura de segmentação
 O espaço de endereçamento ló gico consiste em uma tupla:
<número do segmento, deslocamento>,
 Tabela de segmentos – mapeia os endereços virtuais em
endereços físicos; cada entrada tem:
 base – contem o endereç o inicial do segmento na memó ria
 limite – especifica o tamanho do segmento
 Segment-table base register (STBR) aponta para a
base da tabela de segmentação na memó ria
 Segment-table length register (STLR) indica o número
de segmentos utilizados por um programa;
o número de segmento s é legal se s < STLR
Arquitetura de segmentação
 Proteç ão
 A cada entrada na tabela de segmentação associamos:
 Bit de validade = 0 ⇒ segmento ilegal
 Privilégios de leitura/escrita/execuç ão
 Bits de proteç ão associados a segmentos;
compartilhamento de có digo ocorre no nível dos
segmentos
 Uma vez que o tamanho dos segmentos varia,
alocaç ão de memó ria passa a ser uma problema de
alocaç ão dinâmica de armazenamento
Hardware para segmentação
Exemplo do uso de segmentação

Contenu connexe

Tendances

Linux Memory Management with CMA (Contiguous Memory Allocator)
Linux Memory Management with CMA (Contiguous Memory Allocator)Linux Memory Management with CMA (Contiguous Memory Allocator)
Linux Memory Management with CMA (Contiguous Memory Allocator)Pankaj Suryawanshi
 
Operating System-Ch8 memory management
Operating System-Ch8 memory managementOperating System-Ch8 memory management
Operating System-Ch8 memory managementSyaiful Ahdan
 
Chapter 10 Operating Systems silberschatz
Chapter 10 Operating Systems silberschatzChapter 10 Operating Systems silberschatz
Chapter 10 Operating Systems silberschatzGiulianoRanauro
 
Operating System-Memory Management
Operating System-Memory ManagementOperating System-Memory Management
Operating System-Memory ManagementAkmal Cikmat
 
malloc & vmalloc in Linux
malloc & vmalloc in Linuxmalloc & vmalloc in Linux
malloc & vmalloc in LinuxAdrian Huang
 
Linux kernel 3.x와 2.6.11의 PID Hash Table 자료구조 비교
Linux kernel 3.x와 2.6.11의 PID Hash Table 자료구조 비교Linux kernel 3.x와 2.6.11의 PID Hash Table 자료구조 비교
Linux kernel 3.x와 2.6.11의 PID Hash Table 자료구조 비교Hee-cheol Yang
 
linux device driver
linux device driverlinux device driver
linux device driverRahul Batra
 
Virtual Memory and Paging
Virtual Memory and PagingVirtual Memory and Paging
Virtual Memory and PagingEmery Berger
 
Gerência de Armazenamento: Sistemas de Armazenamento em Massa
Gerência de Armazenamento: Sistemas de Armazenamento em MassaGerência de Armazenamento: Sistemas de Armazenamento em Massa
Gerência de Armazenamento: Sistemas de Armazenamento em MassaAlexandre Duarte
 
Green Software and Green Software Engineering - Definitions, Measurements, an...
Green Software and Green Software Engineering - Definitions, Measurements, an...Green Software and Green Software Engineering - Definitions, Measurements, an...
Green Software and Green Software Engineering - Definitions, Measurements, an...green-soft
 
08 virtual memory
08 virtual memory08 virtual memory
08 virtual memoryKamal Singh
 
GRAPHICS PROCESSING UNIT (GPU)
GRAPHICS PROCESSING UNIT (GPU)GRAPHICS PROCESSING UNIT (GPU)
GRAPHICS PROCESSING UNIT (GPU)self employed
 

Tendances (20)

Process scheduling linux
Process scheduling linuxProcess scheduling linux
Process scheduling linux
 
Linux Memory Management with CMA (Contiguous Memory Allocator)
Linux Memory Management with CMA (Contiguous Memory Allocator)Linux Memory Management with CMA (Contiguous Memory Allocator)
Linux Memory Management with CMA (Contiguous Memory Allocator)
 
Operating System-Ch8 memory management
Operating System-Ch8 memory managementOperating System-Ch8 memory management
Operating System-Ch8 memory management
 
VIRTUAL MEMORY
VIRTUAL MEMORYVIRTUAL MEMORY
VIRTUAL MEMORY
 
Virtual memory
Virtual memoryVirtual memory
Virtual memory
 
Chapter 10 Operating Systems silberschatz
Chapter 10 Operating Systems silberschatzChapter 10 Operating Systems silberschatz
Chapter 10 Operating Systems silberschatz
 
Operating System-Memory Management
Operating System-Memory ManagementOperating System-Memory Management
Operating System-Memory Management
 
malloc & vmalloc in Linux
malloc & vmalloc in Linuxmalloc & vmalloc in Linux
malloc & vmalloc in Linux
 
Linux kernel 3.x와 2.6.11의 PID Hash Table 자료구조 비교
Linux kernel 3.x와 2.6.11의 PID Hash Table 자료구조 비교Linux kernel 3.x와 2.6.11의 PID Hash Table 자료구조 비교
Linux kernel 3.x와 2.6.11의 PID Hash Table 자료구조 비교
 
linux device driver
linux device driverlinux device driver
linux device driver
 
Ch4 memory management
Ch4 memory managementCh4 memory management
Ch4 memory management
 
Memory management
Memory managementMemory management
Memory management
 
Virtual Memory and Paging
Virtual Memory and PagingVirtual Memory and Paging
Virtual Memory and Paging
 
Unix ch03-03(2)
Unix ch03-03(2)Unix ch03-03(2)
Unix ch03-03(2)
 
Gerência de Armazenamento: Sistemas de Armazenamento em Massa
Gerência de Armazenamento: Sistemas de Armazenamento em MassaGerência de Armazenamento: Sistemas de Armazenamento em Massa
Gerência de Armazenamento: Sistemas de Armazenamento em Massa
 
Green Software and Green Software Engineering - Definitions, Measurements, an...
Green Software and Green Software Engineering - Definitions, Measurements, an...Green Software and Green Software Engineering - Definitions, Measurements, an...
Green Software and Green Software Engineering - Definitions, Measurements, an...
 
Aula 07 instalação de hardware
Aula 07 instalação de hardwareAula 07 instalação de hardware
Aula 07 instalação de hardware
 
08 virtual memory
08 virtual memory08 virtual memory
08 virtual memory
 
GRAPHICS PROCESSING UNIT (GPU)
GRAPHICS PROCESSING UNIT (GPU)GRAPHICS PROCESSING UNIT (GPU)
GRAPHICS PROCESSING UNIT (GPU)
 
Memory management
Memory managementMemory management
Memory management
 

En vedette

Gerência de Armazenamento: Implementação do Sistema de Arquivos
Gerência de Armazenamento: Implementação do Sistema de ArquivosGerência de Armazenamento: Implementação do Sistema de Arquivos
Gerência de Armazenamento: Implementação do Sistema de ArquivosAlexandre Duarte
 
Gerências de Processos: Sincronização
Gerências de Processos: SincronizaçãoGerências de Processos: Sincronização
Gerências de Processos: SincronizaçãoAlexandre Duarte
 
Gerência de Memória: Memória Virtual
Gerência de Memória: Memória VirtualGerência de Memória: Memória Virtual
Gerência de Memória: Memória VirtualAlexandre Duarte
 
Gerência de Processos: Deadlocks
Gerência de Processos: DeadlocksGerência de Processos: Deadlocks
Gerência de Processos: DeadlocksAlexandre Duarte
 
Types of letters in Communication
Types of letters in CommunicationTypes of letters in Communication
Types of letters in CommunicationDearMudassir
 
O que é bit e byte
O que é bit e byteO que é bit e byte
O que é bit e bytenikepassos
 
Apostila 8 sistema de arquivos
Apostila 8   sistema de arquivosApostila 8   sistema de arquivos
Apostila 8 sistema de arquivosPaulo Fonseca
 
5ª ed introdução organização de computadores mario a. monteiro
5ª ed introdução organização de computadores   mario a. monteiro5ª ed introdução organização de computadores   mario a. monteiro
5ª ed introdução organização de computadores mario a. monteiroAdriana Carvalho
 
Legalização de documentos belo horizonte
Legalização de documentos  belo horizonteLegalização de documentos  belo horizonte
Legalização de documentos belo horizontejuramentado02
 
Rede de Computadores - Conceito
Rede de Computadores - ConceitoRede de Computadores - Conceito
Rede de Computadores - ConceitoGiulliana Marialva
 

En vedette (20)

Gerência de Armazenamento: Implementação do Sistema de Arquivos
Gerência de Armazenamento: Implementação do Sistema de ArquivosGerência de Armazenamento: Implementação do Sistema de Arquivos
Gerência de Armazenamento: Implementação do Sistema de Arquivos
 
Camada de transporte parte3
Camada de transporte parte3Camada de transporte parte3
Camada de transporte parte3
 
Gerências de Processos: Sincronização
Gerências de Processos: SincronizaçãoGerências de Processos: Sincronização
Gerências de Processos: Sincronização
 
Gerência de Memória: Memória Virtual
Gerência de Memória: Memória VirtualGerência de Memória: Memória Virtual
Gerência de Memória: Memória Virtual
 
Gerência de Processos: Deadlocks
Gerência de Processos: DeadlocksGerência de Processos: Deadlocks
Gerência de Processos: Deadlocks
 
Types of letters in Communication
Types of letters in CommunicationTypes of letters in Communication
Types of letters in Communication
 
O que é bit e byte
O que é bit e byteO que é bit e byte
O que é bit e byte
 
SO-08 Sistemas de Arquivos
SO-08 Sistemas de ArquivosSO-08 Sistemas de Arquivos
SO-08 Sistemas de Arquivos
 
Apostila 8 sistema de arquivos
Apostila 8   sistema de arquivosApostila 8   sistema de arquivos
Apostila 8 sistema de arquivos
 
Memórias
MemóriasMemórias
Memórias
 
5ª ed introdução organização de computadores mario a. monteiro
5ª ed introdução organização de computadores   mario a. monteiro5ª ed introdução organização de computadores   mario a. monteiro
5ª ed introdução organização de computadores mario a. monteiro
 
Aula 06-oac-memoria-principal
Aula 06-oac-memoria-principalAula 06-oac-memoria-principal
Aula 06-oac-memoria-principal
 
Publicidade e propaganda
Publicidade e propagandaPublicidade e propaganda
Publicidade e propaganda
 
Palestra Aquicultura Ornamental Alagoas 2011 (AquaA3.com.br)
Palestra Aquicultura Ornamental Alagoas 2011 (AquaA3.com.br)Palestra Aquicultura Ornamental Alagoas 2011 (AquaA3.com.br)
Palestra Aquicultura Ornamental Alagoas 2011 (AquaA3.com.br)
 
Profissões 2010 CIEE
Profissões 2010 CIEEProfissões 2010 CIEE
Profissões 2010 CIEE
 
Legalização de documentos belo horizonte
Legalização de documentos  belo horizonteLegalização de documentos  belo horizonte
Legalização de documentos belo horizonte
 
Los alimentos
Los alimentosLos alimentos
Los alimentos
 
Edital proupe
Edital proupeEdital proupe
Edital proupe
 
Ceará Moderno
Ceará ModernoCeará Moderno
Ceará Moderno
 
Rede de Computadores - Conceito
Rede de Computadores - ConceitoRede de Computadores - Conceito
Rede de Computadores - Conceito
 

Similaire à Gerência de Memória Principal com Paginação

Amostra Resolucao da Prova Sefaz 2007 Prof Jaime
Amostra   Resolucao da Prova Sefaz 2007   Prof JaimeAmostra   Resolucao da Prova Sefaz 2007   Prof Jaime
Amostra Resolucao da Prova Sefaz 2007 Prof JaimeWalter Cunha
 
12/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula312/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula3Universal.org.mx
 
Aula 3- Disciplina:Pratica Técnico Profi
Aula 3- Disciplina:Pratica Técnico ProfiAula 3- Disciplina:Pratica Técnico Profi
Aula 3- Disciplina:Pratica Técnico ProfiSaquina1
 
Visão Geral: Introdução
Visão Geral: IntroduçãoVisão Geral: Introdução
Visão Geral: IntroduçãoAlexandre Duarte
 
7 – mecanismos de gestão de memória
7 – mecanismos de gestão de memória7 – mecanismos de gestão de memória
7 – mecanismos de gestão de memóriaMaria194536
 
Gerência de Memória
Gerência de MemóriaGerência de Memória
Gerência de Memóriaelliando dias
 
Aula 4 de Arquitetura de Computadores
Aula 4 de Arquitetura de ComputadoresAula 4 de Arquitetura de Computadores
Aula 4 de Arquitetura de ComputadoresMarco Silva
 
Gerenciamento de memoria
Gerenciamento de memoriaGerenciamento de memoria
Gerenciamento de memoriaJailson Silva
 
Memoria cache princípio da localidade
Memoria cache   princípio da localidadeMemoria cache   princípio da localidade
Memoria cache princípio da localidadeClaudia Costa
 
Trabalho de sistemas operativos
Trabalho de sistemas operativosTrabalho de sistemas operativos
Trabalho de sistemas operativosFrank macoo
 
TRFB - TI - Prof Walter Cunha
TRFB - TI - Prof Walter CunhaTRFB - TI - Prof Walter Cunha
TRFB - TI - Prof Walter CunhaWalter Cunha
 
Sistemas operacionais memória no linux
Sistemas operacionais   memória no linuxSistemas operacionais   memória no linux
Sistemas operacionais memória no linuxCarlos Melo
 
Lecture 4-Processos e Threads pt mz.pptx
Lecture 4-Processos e Threads pt mz.pptxLecture 4-Processos e Threads pt mz.pptx
Lecture 4-Processos e Threads pt mz.pptxcassamo2
 

Similaire à Gerência de Memória Principal com Paginação (20)

Amostra Resolucao da Prova Sefaz 2007 Prof Jaime
Amostra   Resolucao da Prova Sefaz 2007   Prof JaimeAmostra   Resolucao da Prova Sefaz 2007   Prof Jaime
Amostra Resolucao da Prova Sefaz 2007 Prof Jaime
 
Gestao de Memoria_SLIDE.pptx
Gestao de Memoria_SLIDE.pptxGestao de Memoria_SLIDE.pptx
Gestao de Memoria_SLIDE.pptx
 
Sistema Operativo 2
Sistema Operativo 2Sistema Operativo 2
Sistema Operativo 2
 
12/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula312/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula3
 
Aula 3- Disciplina:Pratica Técnico Profi
Aula 3- Disciplina:Pratica Técnico ProfiAula 3- Disciplina:Pratica Técnico Profi
Aula 3- Disciplina:Pratica Técnico Profi
 
Visão Geral: Introdução
Visão Geral: IntroduçãoVisão Geral: Introdução
Visão Geral: Introdução
 
7 – mecanismos de gestão de memória
7 – mecanismos de gestão de memória7 – mecanismos de gestão de memória
7 – mecanismos de gestão de memória
 
Gerência de Memória
Gerência de MemóriaGerência de Memória
Gerência de Memória
 
Aula 4 de Arquitetura de Computadores
Aula 4 de Arquitetura de ComputadoresAula 4 de Arquitetura de Computadores
Aula 4 de Arquitetura de Computadores
 
Gerenciamento de memoria
Gerenciamento de memoriaGerenciamento de memoria
Gerenciamento de memoria
 
Memoria cache princípio da localidade
Memoria cache   princípio da localidadeMemoria cache   princípio da localidade
Memoria cache princípio da localidade
 
Processos+threads.2pp
Processos+threads.2ppProcessos+threads.2pp
Processos+threads.2pp
 
Trabalho de sistemas operativos
Trabalho de sistemas operativosTrabalho de sistemas operativos
Trabalho de sistemas operativos
 
Sgf
SgfSgf
Sgf
 
Htm trabalho
Htm trabalhoHtm trabalho
Htm trabalho
 
TRFB - TI - Prof Walter Cunha
TRFB - TI - Prof Walter CunhaTRFB - TI - Prof Walter Cunha
TRFB - TI - Prof Walter Cunha
 
Sistemas operacionais memória no linux
Sistemas operacionais   memória no linuxSistemas operacionais   memória no linux
Sistemas operacionais memória no linux
 
Lecture 4-Processos e Threads pt mz.pptx
Lecture 4-Processos e Threads pt mz.pptxLecture 4-Processos e Threads pt mz.pptx
Lecture 4-Processos e Threads pt mz.pptx
 
355862 slide12-mem virt
355862 slide12-mem virt355862 slide12-mem virt
355862 slide12-mem virt
 
Curso openmp
Curso openmpCurso openmp
Curso openmp
 

Plus de Alexandre Duarte

Táticas para Projeto de Experimentos
Táticas para Projeto de ExperimentosTáticas para Projeto de Experimentos
Táticas para Projeto de ExperimentosAlexandre Duarte
 
Fazer Ciência é Difícil!
Fazer Ciência é Difícil!Fazer Ciência é Difícil!
Fazer Ciência é Difícil!Alexandre Duarte
 
Escolhendo um Projeto de Pesquisa
Escolhendo um Projeto de PesquisaEscolhendo um Projeto de Pesquisa
Escolhendo um Projeto de PesquisaAlexandre Duarte
 
Ciência da Computação como Ciência
Ciência da Computação como CiênciaCiência da Computação como Ciência
Ciência da Computação como CiênciaAlexandre Duarte
 
Metodologia da Pesquisa Científica: Introdução
Metodologia da Pesquisa Científica:  IntroduçãoMetodologia da Pesquisa Científica:  Introdução
Metodologia da Pesquisa Científica: IntroduçãoAlexandre Duarte
 
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazer
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazerGráficos: 10 dicas sobre o que fazer e sobre o que não fazer
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazerAlexandre Duarte
 
Panorama de Pesquisas em Análise de Dados na UFPB
Panorama de Pesquisas em Análise de Dados na UFPBPanorama de Pesquisas em Análise de Dados na UFPB
Panorama de Pesquisas em Análise de Dados na UFPBAlexandre Duarte
 
Sumarização Estatística 2D: Variáveis Nominais
Sumarização Estatística 2D: Variáveis NominaisSumarização Estatística 2D: Variáveis Nominais
Sumarização Estatística 2D: Variáveis NominaisAlexandre Duarte
 
Correlação e Classificação
Correlação e ClassificaçãoCorrelação e Classificação
Correlação e ClassificaçãoAlexandre Duarte
 
Sumarização Estatística 2D
Sumarização Estatística 2DSumarização Estatística 2D
Sumarização Estatística 2DAlexandre Duarte
 
Sumarização Estatística 1D
Sumarização Estatística 1DSumarização Estatística 1D
Sumarização Estatística 1DAlexandre Duarte
 
Preparação e Limpeza de Dados
Preparação e Limpeza de DadosPreparação e Limpeza de Dados
Preparação e Limpeza de DadosAlexandre Duarte
 
Introdução ao Projeto de Experimentos
Introdução ao Projeto de ExperimentosIntrodução ao Projeto de Experimentos
Introdução ao Projeto de ExperimentosAlexandre Duarte
 
Introdução ao Projeto de Surveys
Introdução ao Projeto de SurveysIntrodução ao Projeto de Surveys
Introdução ao Projeto de SurveysAlexandre Duarte
 
Introdução à Análise de Dados - Aula 01
Introdução à Análise de Dados - Aula 01Introdução à Análise de Dados - Aula 01
Introdução à Análise de Dados - Aula 01Alexandre Duarte
 

Plus de Alexandre Duarte (20)

Projeto de Experimentos
Projeto de ExperimentosProjeto de Experimentos
Projeto de Experimentos
 
Táticas para Projeto de Experimentos
Táticas para Projeto de ExperimentosTáticas para Projeto de Experimentos
Táticas para Projeto de Experimentos
 
Causalidade e Abdução
Causalidade e AbduçãoCausalidade e Abdução
Causalidade e Abdução
 
Fazer Ciência é Difícil!
Fazer Ciência é Difícil!Fazer Ciência é Difícil!
Fazer Ciência é Difícil!
 
Atividades Científica
Atividades CientíficaAtividades Científica
Atividades Científica
 
Escolhendo um Projeto de Pesquisa
Escolhendo um Projeto de PesquisaEscolhendo um Projeto de Pesquisa
Escolhendo um Projeto de Pesquisa
 
Ciência da Computação como Ciência
Ciência da Computação como CiênciaCiência da Computação como Ciência
Ciência da Computação como Ciência
 
Metodologia da Pesquisa Científica: Introdução
Metodologia da Pesquisa Científica:  IntroduçãoMetodologia da Pesquisa Científica:  Introdução
Metodologia da Pesquisa Científica: Introdução
 
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazer
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazerGráficos: 10 dicas sobre o que fazer e sobre o que não fazer
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazer
 
Panorama de Pesquisas em Análise de Dados na UFPB
Panorama de Pesquisas em Análise de Dados na UFPBPanorama de Pesquisas em Análise de Dados na UFPB
Panorama de Pesquisas em Análise de Dados na UFPB
 
Agrupamento com K-Means
Agrupamento com K-MeansAgrupamento com K-Means
Agrupamento com K-Means
 
Sumarização Estatística 2D: Variáveis Nominais
Sumarização Estatística 2D: Variáveis NominaisSumarização Estatística 2D: Variáveis Nominais
Sumarização Estatística 2D: Variáveis Nominais
 
Correlação e Classificação
Correlação e ClassificaçãoCorrelação e Classificação
Correlação e Classificação
 
Sumarização Estatística 2D
Sumarização Estatística 2DSumarização Estatística 2D
Sumarização Estatística 2D
 
Sumarização Estatística 1D
Sumarização Estatística 1DSumarização Estatística 1D
Sumarização Estatística 1D
 
Transformação de Dados
Transformação de DadosTransformação de Dados
Transformação de Dados
 
Preparação e Limpeza de Dados
Preparação e Limpeza de DadosPreparação e Limpeza de Dados
Preparação e Limpeza de Dados
 
Introdução ao Projeto de Experimentos
Introdução ao Projeto de ExperimentosIntrodução ao Projeto de Experimentos
Introdução ao Projeto de Experimentos
 
Introdução ao Projeto de Surveys
Introdução ao Projeto de SurveysIntrodução ao Projeto de Surveys
Introdução ao Projeto de Surveys
 
Introdução à Análise de Dados - Aula 01
Introdução à Análise de Dados - Aula 01Introdução à Análise de Dados - Aula 01
Introdução à Análise de Dados - Aula 01
 

Dernier

Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxLuizHenriquedeAlmeid6
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesFabianeMartins35
 
3-Livro-Festa-no-céu-Angela-Lago.pdf-·-versão-1.pdf
3-Livro-Festa-no-céu-Angela-Lago.pdf-·-versão-1.pdf3-Livro-Festa-no-céu-Angela-Lago.pdf-·-versão-1.pdf
3-Livro-Festa-no-céu-Angela-Lago.pdf-·-versão-1.pdfBlendaLima1
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Ilda Bicacro
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteVanessaCavalcante37
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfWagnerCamposCEA
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
Introdução a Caminhada do Interior......
Introdução a Caminhada do Interior......Introdução a Caminhada do Interior......
Introdução a Caminhada do Interior......suporte24hcamin
 
BNCC Geografia.docx objeto de conhecimento
BNCC Geografia.docx objeto de conhecimentoBNCC Geografia.docx objeto de conhecimento
BNCC Geografia.docx objeto de conhecimentoGentil Eronides
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médiorosenilrucks
 
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2Maria Teresa Thomaz
 
Araribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medioAraribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medioDomingasMariaRomao
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)ElliotFerreira
 
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOFASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOAulasgravadas3
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMHELENO FAVACHO
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelGilber Rubim Rangel
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfHELENO FAVACHO
 

Dernier (20)

Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividades
 
3-Livro-Festa-no-céu-Angela-Lago.pdf-·-versão-1.pdf
3-Livro-Festa-no-céu-Angela-Lago.pdf-·-versão-1.pdf3-Livro-Festa-no-céu-Angela-Lago.pdf-·-versão-1.pdf
3-Livro-Festa-no-céu-Angela-Lago.pdf-·-versão-1.pdf
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
Introdução a Caminhada do Interior......
Introdução a Caminhada do Interior......Introdução a Caminhada do Interior......
Introdução a Caminhada do Interior......
 
BNCC Geografia.docx objeto de conhecimento
BNCC Geografia.docx objeto de conhecimentoBNCC Geografia.docx objeto de conhecimento
BNCC Geografia.docx objeto de conhecimento
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
 
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
 
Araribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medioAraribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medio
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)
 
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOFASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim Rangel
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
 

Gerência de Memória Principal com Paginação

  • 1. Sistemas Operacionais I Gerência de Memória: Memória Principal Prof. Alexandre Duarte : http://alexandrend.com Centro de Informática | Universidade Federal da Paraíba Estes slides são baseados no material que acompanha o livro Operating Systems Concepts de Silberschatz, Galvin and Gagne
  • 2. Objetivos  Fornecer uma descriç ão detalhada sobre várias formas de organizar o hardware de memó ria  Discutir técnicas de gerência de memó ria, incluindo paginaç ão e segmentaç ão
  • 3. Antecedentes  Os programas precisam ser trazidos para a memó ria principal para poderem ser executados (criaç ão de um processo)  Memó ria principal e registrados são as únicas unidades de armazenamento acessadas diretamente pela CPU  O acesso a um registrador é feito em um (ou menos) ciclos de CPU  Acessos à memó ria principal podem levar mais ciclos  A memó ria cache se situa entre a memó ria principal e os registradores  Mecanismos de proteç ão de memó ria são necessários para garantir a operaç ão correta
  • 4. Registradores de base e limite  Um par de registradores (base e limite) definem um espaç o de endereç amento ló gico
  • 5. Vinculando instruções e dados à memória  Tempo de compilaç ão: Se a localizaç ão de memó ria for conhecida a priori, o compilador pode gerar có digo absoluto; requer recompilaç ão caso a localizaç ão mude  Tempo de carga: Requer a geraç ão de có digo relocável se a localizaç ão de memó ria não for conhecida em tempo de compilaç ão  Tempo de execuç ão: A vinculaç ão é adiada até o momento da execuç ão caso o processo possa ser movido de um segmento de memó ria para outro durante a execuç ão. Requer suporte de hardware para mapas de endereç amento
  • 6. Etapas do processamento de um programa do usuário
  • 7. Endereçamento Lógico x Físico  O conceito de espaç o de endereç amento ló gico, que é vinculado a um espaç o de endereç amento físico separado é crucial para a gerência de memó ria  Endereç o ló gico: gerado pela CPU, também conhecido como endereç o virtual  Endereç o físico: endereço visto pela unidade de memó ria  Endereç os ló gicos e físicos são os mesmos em esquemas de vinculaç ão de endereç os em tempo de compilaç ão ou tempo de carga e são diferentes em esquemas de vinculaç ão de endereç os em tempo de execuç ão
  • 8. Unidade de Gerência de Memória (MMU)  Dispositivo de hardware que mapeia um endereç o virtual em um endereç o físico  Na MMU, o valor de um registrador de relocaç ão é somado a todo endereç o gerado por um processo do usuário no momento em que ele é enviado a memó ria  O programa lida apenas com endereç os ló gicos; ele nunca vêos endereç os físicos reais
  • 9. Uso do registrador de relocação
  • 10. Carregamento dinâmico  Uma rotina não é carregada até ser invocada  Melhor utilizaç ão do espaç o de memó ria; rotinas não utilizadas nunca são carregadas  Útil quando grandes quantidade de có digo são necessárias para lidar com casos infrequentes  Não requer nenhum suporte especial do sistema operacional
  • 11. Ligação dinâmica  A ligaç ão é adiada até o momento da execuç ão  Um pequeno pedaç o de có digo (stub) é utilizado para localizar a rotina apropriada em uma biblioteca residente na memó ria  O stub substitui a si pró prio com o endereç o da rotina e a executa  O sistema operacional é necessário para verificar se a rotina estáno espaç o de endereç amento do processo  Ligaç ão dinâmica é particularmente útil para bibliotecas compartilhadas
  • 12. Swapping  Um processo pode ser removido temporariamente da memó ria para um armazenamento secundário e depois trazido de volta para continuar sua execuç ão  Armazenamento secundário – disco rápido, grande o suficiente para armazenar copias dos programas em memó ria de todos os usuários; precisa fornecer acesso direto a essas có pias de memó ria  Roll out, roll in – variante de swapping, utilizada em algoritmos de escalonamento com prioridade; processos de baixa prioridade são removidos para que processos de mais alta prioridade possam ser carregados e executados  A maior parte do tempo de swap é gasto transferindo dados  Versões modificadas de um esquema de swapping são encontradas em praticamente todos os sistemas operacionais
  • 14. Alocação contínua  A memó ria principal é geralmente dividida em duas partições:  Sistema operacional residente, geralmente na memó ria baixa, junto com o vetor de interrupç ões  Processos do usuário na parte alta da memó ria  Registradores de relocação são utilizados para proteger os processos dos usuários uns dos outros e também para evitar alterações em dados e có digos do sistema operacional  O registrador base contem o menor endereç o de memó ria permitido  O registrado de limite define o tamanho do espaç o de endereç amento – cada endereç o ló gico deve ser menor que o registrador de limite  A MMU mapeia os endereç os ló gicos dinamicamente
  • 15. Suporte de hardware para relocação e limite
  • 16. Alocação contínua  Alocaç ão com múltiplas partiç ões  Buraco – bloco de memó ria disponível; buracos de vários tamanhos são espalhados na memó ria  Quando um processo é criado ele é alocado em um buraco grande o suficiente para suas necessidades de memó ria  O sistema operacional mantem informaç ões sobre: a) partiç ões alocadas b) partiç ões livres (buracos) SO processo 5 processo 8 processo 2 SO processo 5 processo 2 SO processo 5 processo 2 SO processo 5 processo 9 processo 2 processo 9 processo 10
  • 17. O problema da alocação dinâmica de espaço  First-fit: Aloca o primeiro buraco que for grande o suficiente  Best-fit: Alocar o menor buraco que for grande o suficiente; precisa pesquisar a lista inteira a menos que esteja ordenada por tamanho  Produz o menor buraco remanescente  Worst-fit: Aloca o maior buraco; também precisa percorrer toda a slista  Produz o maior buraco remanescente First-fit e best-fit são melhores que o worst-fit em termos de velocidade e utilizaç ão do espaç o!
  • 18. Fragmentação  Fragmentaç ão externa – exige memó ria suficiente para atender uma requisiç ão mas ela não é contigua  Fragmentaç ão interna – a memó ria alocada pode ser levemente maior que a memó ria requisitada; esta diferenç a de memó ria faz parte da partiç ão mas não é utilizada  Reduzir fragmentaç ão utilizando compactaç ão  Ordena o conteúdo da memó ria em uma localidade para juntar todo o espaço livre em um grande bloco  Compactação só é possível com relocação dinâmica
  • 19. Paginação  O espaç o de endereç amento ló gico de um processo pode ser não-contínuo; o processo recebe memó ria física na medida em que ela se torna disponível  A memó ria física é dividida em blocos de tamanho fixo chamados quadros (o tamanho é uma potência 2, entre 512 bytes e 8,192 bytes)  A memó ria ló gica é dividida também em blocos do mesmo tamanho chamados páginas  Para executar um programa de n páginas é preciso encontrar n quadros para carregar o programa  Uma tabela de paginaç ão é utilizada para traduzir endereç os ló gicos em endereç os físicos
  • 20. Esquema de tradução de endereços  Os endereç os gerados pela CPU são divididos em duas partes:  Número da página (p) – utilizado como índice na tabela de paginaç ão que contem o endereç o base de cada página na memó ria física  Deslocamento (d) – combinado com o endereç o base define o endereç o físico a ser enviado para a unidade de memó ria  Para um determinado espaç o de endereç amento com 2m bits e páginas de tamanho 2n
  • 22. Modelo de paginação de memórias lógica e física
  • 23. Exemplo de paginação Memó ria de 32-bytes com páginas de 4 bytes
  • 24. Quadros livres Antes da alocaç ão Apó s alocaç ão
  • 25. Implementação da tabela de paginação  Tabela de paginaç ão é mantida na memó ria principal  Page-table base register (PTBR) aponta para a base  Page-table length register (PRLR) indica o tamanho  Neste esquema, cada acesso a dados ou instruç ões requer dois acessos à memó ria. Um para a tabela de paginaç ão e outro para o dado/instruç ão  Este problema de dois acessos pode ser amenizado utilizando um cache de hardware especial chamado translation look-aside buffers (TLBs)
  • 26.  Busca paralela Traduç ão de endereç o (p, d)  Se p estána memó ria associativa o valor de f é obtido  Se não, obter o valor de f da tabela de paginaç ão na memó ria Memória associativa Page # Frame #
  • 28. Tempo efetivo de acesso  Busca associativa = ε unidades de tempo  Assumir que um ciclo de memó ria dura 1 microssegundo  Taxa de acerto – porcentagem das vezes em que o número de uma página é encontrado no TLB; Taxa de acerto = α  Tempo efetivo de acesso (EAT) EAT = (1 + ε) α + (2 + ε)(1 – α) = 2 + ε – α
  • 29. Proteção de memória  O mecanismo de proteç ão de memó ria associa um bit de proteç ão a cada quadro  Um bit Válido-inválido anexado a cada entrada na tabela de paginaç ão:  “válido” indica que a página associada estáno espaç o de endereç amento ló gico do processo  “inválido” indica que a página não estáno espaç o de endereç amento ló gico do processo
  • 30. O bit Válido (v) ou Inválido (i) na tabela de paginação
  • 31. Páginas compartilhadas  Có digo compartilhado  Uma có pia apenas de leitura do có digo compartilhada entre vários processos  O có digo compartilhado precisa aparecer no mesmo local no espaç o de endereç amento ló gico de todos os processos  Có digo e dados privados  Cada processo mantém uma có pia separada dos dados e có digo  As páginas para o có digo privado podem aparecer em qualquer lugar no espaç o de endereç amento ló gico
  • 32. Exemplo do uso de páginas compartilhadas
  • 33. Estrutura da tabela de paginação  Paginaç ão hierárquica  Tabelas de paginaç ão com hash  Tabela de paginaç ão invertida
  • 34. Tabela de paginação hierárquica  Quebra o espaç o de endereç amento ló gico em múltiplas tabelas de paginaç ão  Uma técnica simples é paginaç ão em dois níveis
  • 36.  Espaç o de endereç amento ló gico (máquina de 32-bit com páginas de 4K) é divido em :  Um número de página de 20 bits  Um deslocamento na página de 12 bits  Uma vez que a tabela de paginaç ão é também paginada, o número da página é também dividido em duas partes:  Um número de página de 10 bits  Um deslocamento na página de 10 bits  Portanto, os endereç os ló gicos são construídos da seguinte forma: onde pi é o índice na tabela de paginaç ão externa e p2 é o deslocamento dentro da página da tabela de paginaç ão externa Exemplo de paginação em dois níveis
  • 37. Esquema de tradução de endereço
  • 39. Tabelas de paginação com hash  Comum em espaç o de endereç amento com mais de 32 bits  O número da página virtual é submetido a uma funç ão hash e o resultado aponta para uma entrada na tabela de paginaç ão  Cada entrada na tabela de paginação contem uma lista de elementos cujo hash apontou para a mesma localidade (colisões)  O número da página virtual é então comparado com os valores nessa lista para localizar o quadro na memó ria física
  • 41. Tabela de paginação invertida  Uma entrada para cada quadro na memó ria principal  As entradas da tabela são os endereç os das páginas virtuais armazenadas nessas localizaç ão de memó ria, com informaç ão sobre o processo proprietário  Diminui a quantidade de memó ria necessária para armazenar a tabela de paginaç ão mas aumenta o tempo necessário para consultar a tabela  Usar hash para limitar a busca a uma, ou pelo menos, a umas poucas entradas
  • 42. Arquitetura de uma tabela de paginação invertida
  • 43. Segmentação  Esquema de gerência de memó ria que reflete a visão que o usuário tem da memó ria  Um programa é uma coleç ão de segmentos  Um segmento representa uma unidade ló gica, como: Programa principal Procedimento Funç ão Método Objeto Variáveis locais Variáveis globais Pilha Tabela de símbolos
  • 44. Visão do usuário sobre um programa
  • 45. Arquitetura de segmentação  O espaço de endereçamento ló gico consiste em uma tupla: <número do segmento, deslocamento>,  Tabela de segmentos – mapeia os endereços virtuais em endereços físicos; cada entrada tem:  base – contem o endereç o inicial do segmento na memó ria  limite – especifica o tamanho do segmento  Segment-table base register (STBR) aponta para a base da tabela de segmentação na memó ria  Segment-table length register (STLR) indica o número de segmentos utilizados por um programa; o número de segmento s é legal se s < STLR
  • 46. Arquitetura de segmentação  Proteç ão  A cada entrada na tabela de segmentação associamos:  Bit de validade = 0 ⇒ segmento ilegal  Privilégios de leitura/escrita/execuç ão  Bits de proteç ão associados a segmentos; compartilhamento de có digo ocorre no nível dos segmentos  Uma vez que o tamanho dos segmentos varia, alocaç ão de memó ria passa a ser uma problema de alocaç ão dinâmica de armazenamento
  • 48. Exemplo do uso de segmentação