Sistemas Operacionais
|
|
|
- Lucas Belo das Neves
- 9 Há anos
- Visualizações:
Transcrição
1 Motivação 2 a edição Revisão: Fev/23 Sistemas Operacionais Memória virtual Capítulo 7 Problemas da gerência de memória (modelo visto até o momento) Todo o espaço lógico mapeado no espaço físico O tamanho do programa é limitado pelo tamanho da memória Desperdício de memória por manter armazenado código não utilizado freqüentemente! e.g.; rotinas de tratamento de erro Um programa ocupando apenas um espaço de memória que realmente necessária permite uma economia substancial de espaço de memória Espaço liberado permitiria a carga e execução simultânea de mais programas Sistemas Operacionais 2 Memória virtual: conceito Memória virtual: vantagens Memória virtual é a técnica que permite a execução de um processo sem que ele esteja completamente em memória Separação do vínculo de endereço lógico do endereço físico Princípios básicos: Carregar uma página/segmento na memória principal apenas quando ela for necessária! Paginação por demanda! Segmentação por demanda Manter em memória apenas as página/segmentos necessários Aumento do grau de multiprogramação Reduz o número de operações de E/S para carga/swap do programa Capacidade de executar programas maiores que a capacidade disponível de memória Memória lógica (processo) P n P!! F K F Mémoria física Número de páginas maior que o número de frames (n > k) Sistemas Operacionais 3 Sistemas Operacionais 4
2 Princípio da localidade Necessidades para implementação de memória virtual Base de funcionamento da memória virtual Na execução de um processo existe uma probabilidade que acessos a instruções e a dados sejam limitados a um trecho Exemplos:! Execução da instrução i+ segue a execução da instrução i! Laços for, while, do-while! Acessos a elementos de vetores Em um determinado instante de tempo apenas esses trechos do processo necessitam estar em memória Possibilidade de adivinhar os trechos necessários a seqüência de execução Hardware deve suportar paginação e/ou segmentação Sistema operacional deve controlar o fluxo de páginas/segmentos entre a memória secundária (disco) e a memória principal Necessidade de gerenciar Areas livres e ocupadas Mapeamento da memória lógica em memória física Substituição de páginas/segmentos Sistemas Operacionais 5 Sistemas Operacionais 6 Paginação por demanda () Paginação por demanda (2) Forma mais comum de implementação de memória virtual Similar a paginação com swapping Invés de ser realizado o swap-in/out de um processo, se realiza o swap-in/out de apenas uma página do processo (page-in/out) F n F! Swap-in swapper Paginação simples page-in pager F n F Paginação por demanda! Carrega uma página para a memória principal somente quando ela é necessária Vem de encontro com a filosofia de memória virtual Reduz operações de E/S! Carrega apenas a(s) página(s) necessária(s) Reduz quantidade de memória utilizada por processo Aumenta grau de multiprogramação Sistemas Operacionais 7 Sistemas Operacionais 8
3 Paginação por demanda (3) Tratamento de page-fault () Uma referência está sempre associada a uma página Inválida Página presente na memória/não presente na memória (page-fault) Necessita conhecimento de quais páginas estão na memória secundária e quais páginas estão na memória principal Bit válido/inválido associado a cada entrada na tabela de páginas g f e d c b a Tab. Páginas Page-fault page-in F Sistemas Operacionais 9!! mov ax,m! 6 Sisop 2 5 i Sistemas Operacionais F n F 3! 4 Tratamento de falta de página (page-fault) (2) Desempenho da paginação por demanda () Passos realizados (visão do sistema). Trap para sistema operacional 2. Salvamento de contexto 3. Detecção que a interrupção é por page-fault 4. Verifica se referência é válida e determina localização da página no disco 5. Solicita operação de leitura da página faltante do disco para o frame 6. Passa processo da página faltante para estado suspenso e escalona outro processo 7. Interrupção do disco (final de transferência da página) 8. Atualiza tabela de página 9. Passa processo do estado suspenso para estado pronto Taxa de falta de páginas p. p = ; qualquer referência não gera falta de páginas p =, qualquer referência provoca uma falta de página Tempo efetivo de acesso: Ex.: t efetivo = ( p) tacesso + p t page _ fault tempo acesso: ns tempo page_fault: 25 ms t e =(-p) x + p x 25 t e = x p p=/ t e 25 us (25 x t acesso ) Sistemas Operacionais Sistemas Operacionais 2
4 Desempenho da paginação por demanda (2) Implementação da memória virtual () Exemplo: Objetivo de aumentar no máximo em % o tempo de acesso + p x 25 25p p =.4 ( page fault a cada 25 acessos) Como melhorar o desempenho? Manter a taxa de falta de páginas (page fault) pequena Acelerar procedimentos de leitura em disco! Procedimento de swap (pager) A memória virtual pode ser implementada por: Paginação por demanda Segmentação por demanda Segmentação com paginação (recai em paginação) O princípio de funcionamento é o mesmo porém é mais simples de gerenciar paginação por demanda Sistemas Operacionais 3 Sistemas Operacionais 4 Implementação da memória virtual (2) Política de carga de páginas Memória física é um recursos limitado, é necessário então: Política de carga de página Política de localização da página Política de substituição de página Partição de swap Área específica do disco destinada a armazenar páginas (segmentos) Organizado de forma diferente do sistema de arquivos para otimizar o acesso Carrega uma página para um frame Duas situações: Frame livre: carrega página no frame Não há frame disponível:! Libera espaço transferindo página(s) da memória (pager-out) para o disco (área de swap)! Política de substituição para seleção da página vítima Otimizações: Carregar mais de uma página na memória Nem toda página necessita pager-out:! Páginas não modificadas! Páginas read-only (código) Sistemas Operacionais 5 Sistemas Operacionais 6
5 Política de localização Substituição de páginas na memória Determina na memória real a localização das páginas de um processo Realizado pelo hardware de paginação/segmentação do processador Transparente sob o ponto de vista do sistema operacional As páginas físicas (frames) podem ficar totalmente ocupada a medida que páginas lógicas de processos são carregadas Necessidade de liberar uma página física (frame) para atender à falta de página O algoritmo de substituição de páginas é responsável pela escolha de uma página vítima Sistemas Operacionais 7 Sistemas Operacionais 8 Bits auxiliares Política de substituição de páginas () Objetivo é auxiliar a implementação do mecanismo de substituição de páginas Não são absolutamente necessários porém simplificam e tornam mais eficaz o mecanismo de substituição de páginas Bit de sujeira (dirty bit) Indica quando uma página foi alterada durante a execução do processo Se página não foi alterada não é necessário salvar seu conteúdo no disco Bit de referência (reference bit) Indica se uma página foi acessada dentro de um intervalo de tempo Bit de tranca (lock bit) Evita que uma página seja selecionada como vítima Utilizado quando não há mais frames livres Seleciona na memória uma página a ser substituída quando outra página necessita ser carregada na memória Problema é determinar a página menos necessária Certas páginas que não devem ser substituídas podem ser grampeadas a frames (frame locking), e.g.; Código e estruturas de dados do sistema operacional Buffers de E/S Sistemas Operacionais 9 Sistemas Operacionais 2
6 Política de substituição de páginas (2) First-come-first-served (FCFS) Selecionar para substituição uma página que será referenciada dentro do maior intervalo de tempo (algoritmo ótimo) Impossível de se ter conhecimento do futuro Emprego de aproximações Algoritmos para substituição de páginas First-come-first-served (FCFS) Least Recently Used (LRU) Baseado em contadores String de referência: Método para avaliar algoritmos de substituição de página Geração randômica de endereços Também denominado de First-In, First-Out (FIFO) Frames na memória principal são alocados a páginas na forma de um buffer circular Simples implementação Substitui a página que está a mais tempo na memória Desvantagem é que a página substituída pode ser necessária logo a seguir Sistemas Operacionais 2 Sistemas Operacionais 22 Exemplo: First-come-first-serverd (FCFS) Least Recently Used (LRU) Características do sistema Memória física composta por 3 frames Processo composto por uma memória lógica de 8 páginas Página foi substituída e em seguida referenciada!! 5 Page-faults Premissa básica é que páginas acessadas recentemente por um processo serão novamente acessadas em um futuro próximo Página a ser substituída é a página referenciada a mais tempo Pelo princípio da localidade, esta página deve ser a de menor probabilidade de ser referenciada em futuro proximo Desvantagem: Cada página deve possuir a data da última referência! Suporte raramente suportado pelas MMUs Sistemas Operacionais 23 Sistemas Operacionais 24
7 Exemplo: Least Recently Used (LRU) Implementação de Least Recently Used (LRU) Características do sistema Memória física composta por 3 frames Processo composto por uma memória lógica de 8 páginas Page-faults Contadores na tabela de páginas Contador Tempo da última referência (time stamp) Desvantagem é o overhead! Atualização da entrada na tabela de páginas! Seleção da página vítima Pilha Página referenciada é inserida no topo da pilha Topo da pilha está a página referenciada mais recentemente Base da pilha está a página referenciada menos recentemente Lista duplamente encadeada Sistemas Operacionais 25 Sistemas Operacionais 26 Aproximações para algoritmo LRU Construção de histórico de bits de referência Hardware (MMU) deve suportar bit(s) de referência Bit(s) de referência podem ser utilizados para aproximar LRU Bit de referência = (página acessada); Bit de referência = (página não acessada) Substitui página cujo bit de referência é igual a zero! Desvantagem: não se sabe o uso passado e a ordem Melhoria: Incluir vários bits de referência adicionais (registrador) A cada t consulta o bit de referência e atualiza registrador (shift register) Páginas Acessadas P3 P P3 P P2 P P P2 P7 P2 P7 P P6 Tempo Amostra Amostra Amostra Amostra P P P2 P3 P4 P5 P6 P7 P P P2 P3 P4 P5 P6 P7 P P P2 P3 P4 P5 P6 P7 P P P2 P3 P4 P5 P6 P7 Histórico dos Bits de Referência após cada amostragem Sistemas Operacionais 27 Sistemas Operacionais 28
8 Algoritmo de segunda chance () Esquematização do algoritmo de segunda chance Denominado também de algoritmo do relógio Também baseado em bit de referência Considera que páginas lógicas formam uma lista circular Apontador percorre a lista circular informando qual será a proxíma vítima Se página apontada (sentido horário) tem o bit de referência=, então:! Posiciona bit de referência em zero e mantém página na memória! Substitui próxima página que tem bit de referência= Pag 222 ref =. Pag 33 ref = n 6 Pag 9 ref = ANTES Pag 67 ref = Pag 9 ref = Pag ref = próximo 5 Pag 45 ref = Pag 9 ref = Pag 556 ref = Pag 3 ref = Pag 222 ref =. Pag 33 ref = 7 n Pag 9 ref = 6 Pag 67 ref = DEPOIS próximo Pag 9 ref = Pag ref = Pag 45 ref = Pag 9 ref = Pag 727 ref = Pag 3 4 ref = Sistemas Operacionais 29 Sistemas Operacionais 3 Algoritmo de segunda chance melhorado Variação do algoritmo de segunda chance Considera além do bit de referência um bit de modificação (bit uso) bit uso=: quando a página é carregado na memória bit uso=: quando a página é modificada Durante pesquisa por página a ser substituída modifica bit de referência de para (algoritmo do relógio) Privilegia a substituição de frames com bit uso= 4 Combinações:! : não referenciada, nem modificada! : não referenciada recentemente, porém modificada! : recentemente referenciada, mas não modificada! : recentemente referenciada, modificada Variação destinada a MMUs que não implementam bit de referência Baseada em uma lista circular de páginas lógicas e um apontador (algoritmo relógio) e uma lista de páginas físicas livres Em caso de falta de página Remove uma página física da lista livres para a qual será lida a página faltosa Página vítima é marcada como inválida e incluída na lista de livres Se essa página vítima for acessada logo em seguida ela simplesmente é retirada da lista de livres e inserida na lista de páginas lógicas válidas O tempo de permanência da página na lista de livres oferece a ela uma segunda chance de permanecer na memória Sistemas Operacionais 3 Sistemas Operacionais 32
9 Algoritmos de substituição baseado em contadores Alocação de páginas físicas (frames) A cada página é associado um contador de número de referências Duas políticas básicas: Least Frequently Used (LFU)! Substitui a página que possui o menor valor Most Frequently Used (MFU)! Não substitui a página que possui o menor valor Algoritmos não utilizados overhead Comportamento não aproxima algoritmo ótimo Questão: Como se deve alocar frames na presença de n processos? Problemas: Qual o mínimo necessário por processo? Quantas páginas físicas alocar para cada processo? De onde alocar os frames? Sistemas Operacionais 33 Sistemas Operacionais 34 Número mínimo de frames Algoritmos de alocação (quanto alocar?) Um processo necessita um número mínimo de frames para executar Definido pelo conjunto de instruções da máquina (modos de endereçamento)! e.g;! INC MEM necessita duas páginas (código, dados)! MOV MEM,POS necessita três páginas (código, 2 de dados) Quanto menor o número de frames alocado a um processo maior a taxa de falta de páginas (page fault) Queda de desempenho do sistema Tentar manter o máximo de páginas em memória Número máximo de páginas mantidas em memória depende da capacidade física da máquina O problema consiste em determinar quantos frames serão alocados para cada processo Dois algoritmos: Alocação igualitária Alocação proporcional Sistemas Operacionais 35 Sistemas Operacionais 36
10 Alocação igualitária Alocação proporcional () Princípio é dividir os m frames da memória física entre os n processos aptos a executar Cada processo recebe m/n frames A "sobra" pode compor um poll de frames livres Número de frames é ajustado dinamicamente em função do grau de multiprogramação Desvantagem: Provoca distorções já que processo possuem diferentes necessidades de memória Princípio é alocar frames ( f ) em função do tamanho do processo si fi = m n s j = j s i : memória virtual do processo p i n: número de processos em estado apto m: número de frames A alocação deve ser reajustada dinâmicamente em função do grau de multiprogramação Sistemas Operacionais 37 Sistemas Operacionais 38 Alocação proporcional (2) De onde alocar os frames? Empregar a prioridade de um processo, invés de seu tamanho, como critério de peso Se um processo P i provoca uma falta de página Seleciona como vítima um de seus frames Seleciona como vítima um frame de um processo de prioridade mais baixa Duas soluções possíveis: Alocação local Alocação global Sistemas Operacionais 39 Sistemas Operacionais 4
11 Alocação local Alocação global A gerência de memória define quantas páginas físicas cada processo deve dispor Em caso de falta de páginas a substituição ocorre entre as próprias páginas do processo que gerou a falta Desvantagens: Definição do número de páginas físicas para cada processo Impede que um processo utilize páginas físicas disponíveis pertencentes a outros processos Uma lista única de gerência de páginas físicas compartilhada por todos processos Um processo pode receber uma página física de outro processo Desvantagens: O conjunto de páginas físicas ocupado por um processo depende do comportamento dos outros processos Um processo de maior prioridade pode recuperar as páginas físicas de um processo de menor prioridade Apesar das desvantagens é o método mais comumente empregado Privilegia o uso intelegente da memória física disponível da máquina Sistemas Operacionais 4 Sistemas Operacionais 42 Thrashing Conseqüências do thrashing Tratamento de uma falta de páginas é caro em tempo Impacto de falta de páginas é grande para o desempenho do processo A medida que o número de páginas físicas alocadas a um processo a taxa de falta de páginas aumenta Um processo está em thrashing quando ele passa a maior parte do seu tempo de execução no processo de paginação Efeito congelamento diferente em função da política de alocação de páginas físicas Alocação local implica no congelamento ao processo Alocação global implica no congelamento do sistema Baixa taxa de uso da CPU para execução de processos de usuários Sistema operacional pode pensar que está faltando processos aptos para execução e permite a criação/adição de novos processos! Escalonador de médio e longo prazo Adição de processos implica em maior necessidade de frames Agrava a situação Conclusão: Existe um ponto onde o grau de multiprogramação compromete o desempenho do sistema Sistemas Operacionais 43 Sistemas Operacionais 44
12 Multiprogramação e Thrashing Prevenção do thrashing Para retirar um sistema do estado de thrashing é necessário suspender alguns processos temporariamente Mecanismo natural é o swapping Não desejável por aumentar o tempo de resposta do processos Conclusão: Mais vale prevenir que remediar! Memória virtual é baseada no princípio da localidade Thrashing sempre que: Σ da memória necessária a localidade > memória física disponível (frames) Solução é providenciar os frames necessários a execução do processo. Duas abordagens: Modelo de working-set Método freqüência de falta de página Sistemas Operacionais 45 Sistemas Operacionais 46 Modelo de working-set Definição e manutenção do working-set () Baseado no princípio da localidade Um parâmetro define a largura da janela do working-set Princípio de base é examinar as últimas referências a páginas Se página está em uso: pertence ao working set Se página não está em uso: eliminada do working set em unidades Define-se WSS i como sendo o working-set size do processo P i Problema é definir o : = valor pequeno: não abrange toda a localidade. = valor grande: abrange várias! = : abrange todo o programa. = unidades WS={, 2, 5, 6, 7} t WS={ 3,4} t 2 D = Σ WSS i é a quantidade total de frames necessários no sistema Se D > m Thrashing Para evitar que D > m, o sistema operacional monitora o uso de frames e, em caso de necessidade, suspede processo(s) Sistemas Operacionais 47 Sistemas Operacionais 48
13 Definição e manutenção do working set (2) Método freqüência de falta de página Problema é calcular o working set Aproximação é feita com interrupção de tempo mais bit(s) de referência! aumento da freqüência de interrupção e do número de bits de referência melhora a precisão da aproximação Exemplo: = referências t Interrupção: - copia bit de referência para memória - zera bit de referência 5 referências t t 2 Histórico: : : : working set Objetivo é controlar a taxa de faltas de páginas para manter dentro de um limite razoável Taxa maior que o máximo aceitável:! Há processos que estão necessitando páginas físicas! Realiza o swap-out de alguns processos! Libera páginas físicas para processos que necessitam Taxa menor que o valor mínimo:! Desligar o mecanismo de swapping! Processos tem páginas física demais alocadas! Pode liberar algumas Sistemas Operacionais 49 Sistemas Operacionais 5 Método freqüência de falta de página (2) Fatores adicionais Além dos algoritmos de substituição de página e da política de alocação propriamente ditos existem outros fatores a serem considerados no projeto de um sistema de memória Pré-paginação Seleção do tamanho da página Sistemas Operacionais 5 Sistemas Operacionais 52
14 Pré-paginação Tamanho da página () Consiste em trazer para a memória todo o working-set de um processo Possível para caso em que processos que estão realizando transições dos estados bloqueado/suspenso para apto Custo da pré-paginação deve ser menor que custo de tratamento de falta de páginas Qual fração (α) de páginas carregadas pela pré-paginação são efetivamente utilizadas?! Vale a pena: se o custo de trazer (- α) páginas é menor que o tratamento de falta de α páginas. Fatores a serem considerados na definição do tamanho de página Fragmentação Tamanho de estruturas internas do sistema operacional (tabelas de páginas) Overhead das operações de E/S Localidade Sistemas Operacionais 53 Sistemas Operacionais 54 Tamanho da página (2) Tamanho da página (3) Menor a página, menor a quantidade de fragmentação interna Menor a página, maior a quantidade de páginas por processo Mais páginas por processo, maior tabelas de páginas Maior a tabela de página, maior a necessidade de uso de memória Menor é o tamanho da página, maior é o número de páginas que podem ser mantidas na memória principal Execução tende a deixar em memória apenas as páginas que são necessárias (localidade). Com muitas páginas, tendência é reduzir a taxa de page-fault Página grande tende a desperdiçar a memória pois mantém além das referências necessárias, outras não utilizadas Tendência a aumentar a taxa de page-fault Sistemas Operacionais 55 Sistemas Operacionais 56
15 Estrutura do programa Estudo de caso: arquitetura Intel 386 Exemplo Vetor A[24, 24] de inteiros Cada linha é armazenada em uma página Compilador re-organiza o código para evitar page-faults Estrutura de dados Pilha Programa (24 x 24 page faults) for j := to 24 do for i := to 24 do A[i,j]=; Programa 2 (24 page faults) for i := to 24 do for j := to 24 do A[i,j]=; Esquema básico é o mesmo para a linha Pentium Arquitetura do 8386 oferece suporte à segmentação com paginação Capacidade de utilizar: Segmentação pura Paginação pura (2 níveis) Sistemas Operacionais 57 Sistemas Operacionais 58 Endereço lógico arquitetura Intel Formato do endereço lógico no Intel 386 Endereço lógico é formado por 48 bits divididos em: Seletor (6 bits)! Indica qual segmento está sendo acessado Deslocamento (32 bits)! Indica uma posição relativa dentro de um segmento Instruções de máquinas são em 32 bits O valor do seletor é carregado em registradores específicos! Registradores de segmento (CS, DS, ES, SS, FS e GS) Instruções consideram sempre como referência um registrador de segmento 6 bits 32 bits Seletor Deslocamento 3 bits bit 2 bits Índice T RPL = Seletor da GDT (Global Descriptor Table) = Seletor da LDT (Local Descriptor Table) Indice:! Aponta para uma entrada específica na LDT ou na GDT Bit T! Indica se acesso é na LDT ou na GDT Bits RPL! Associado ao mecanismo de proteção Sistemas Operacionais 59 Sistemas Operacionais 6
16 Tradução de endereço lógico em físico Segmentação no Intel 8386 Variação do procedimento estudado Endereço lógico é transformado em um endereço linear Interpretação do endereço linear depende se está sendo utilizado segmentação ou paginação Com segmentação o endereço linear é o endereço físico utilizado para acessar uma posição na memória Com paginação o endereço linear sofre um procedimento adicional de transformação em endereço físico Forma nativa de operação Espaço lógico de endereçamento dividido em dois cada um contendo uma tabela de segmentos a parte LDT: Local Descriptor Table GDT: Global Descriptor Table Cada tabela de segmentos possui até 8K entradas, cada uma contendo um descritor de segmento com 8 bytes Tabela de segmento ocupa no máximo 64 Kbytes Sistemas Operacionais 6 Sistemas Operacionais 62 Formato do descritor de segmento Esquema de segmentação no 8386 Endereço de base do segmento (32 bits) Limite do segmento (2 bits) Interpretaçao desse valor depende da granularidade! Granularidade=: valor é expresso em bytes! Tamanho máximo de um segmento é Megabyte! Granularidade=: valor é expresso em páginas de 4 Kbytes! Tamanho máximo de um segmento é 4 Gbytes ( Mega páginas) Controle de acesso (8 bits) Bit de granularidade ( bit) Reservado para uso futuro (3 bits) Endereço lógico 6 bits 32 bits Seletor Deslocamento Tabela de segmentos (GDT ou LDT) Endereço de base + 32 bits Endereço linear Endereço físico Sistemas Operacionais 63 Sistemas Operacionais 64
17 Paginação no Intel 8386 Esquema de paginação no 8386 Uso opcional no 8386 Desativada no momento do reset do processador Endereço Linear bits bits 2 bits tabela página deslocamento Características gerais: Páginas de 4 Kbytes CR3 Tabela de Páginas Espaço de endereçamento linear como o espaço de endereçamento físico possuem 4 Gbytes (2 32 )! Máximo Mega páginas Tabela de páginas considera dois níveis! Registrador (CR3) aponta para o diretório de tabela de páginas Diretório de tabela de páginas! k entradas de 4 bytes! Cada entrada aponta para uma tabela de páginas Diretório de Páginas Tabela de Páginas Endereço Físico página física deslocamento 2 bits 2 bits Sistemas Operacionais 65 Sistemas Operacionais 66 Leituras complementares R. Oliveira, A. Carissimi, S. Toscani; Sistemas Operacionais. Editora Sagra-Luzzato, 2. Capítulo 7 A. Silberchatz, P. Galvin, G. Gagne; Applied Operating System Concepts. Addison-Wesley, 2, ( st edition). Capítulo W. Stallings; Operating Systems. (4 th edition). Prentice Hall, 2. Capítulo 8 Sistemas Operacionais 67
Sistemas Operacionais
Introdução Memória virtual Trabalho sob a Licença Atribuição-SemDerivações-SemDerivados 3.0 Brasil Creative Commons. Para visualizar uma cópia desta licença, visite http://creativecommons.org/licenses/by-nc-nd/3.0/br/
Gerenciamento de Memória
Gerenciamento de Memória Prof. Alexandre Beletti Ferreira Gerência de Memória Sistemas Monoprogramáveis = gerenciamento simplificado Sistemas Multiprogramáveis = gerenciamento crítico (muitos usuários
Memória virtual. Sistemas de Computação
Memória virtual Fundamentos Memória virtual separação da memória lógica do usuário da memória física somente uma parte do programa precisa estar na memória para execução espaço de endereçamento lógico
Sistemas Operacionais: Memória Virtual
Sistemas Operacionais: Memória Virtual Memória virtual Memória virtual: separação entre a visão lógica do usuário e a memória física Somente uma parte do programa necessita estar na memória para executar
Fundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 6 Gerenciamento de Memória Prof. Galvez Considerações Gerais Multiprogramação implica em manter-se vários processos em memória Memória necessita ser alocada de
SSC0640 Sistemas Operacionais I
SSC0640 Sistemas Operacionais I 15ª Aula Gerenciamento de Memória Profa. Sarita Mazzini Bruschi [email protected] Slides adaptados de Marcos José Santana / Regina H. C. Santana / Luciana A. F. Martimiano
Arquitetura de Sistemas Operacionais
Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Capítulo 10 Gerência de Memória Virtual Cap 10 Gerência de Memória Virtual 1 Sumário Introdução Espaço de Endereçamento Virtual
Fundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 19: Memória Virtual: Introdução Diego Passos Última Aula Paginação Método de gerenciamento de memória mais usado hoje. Espaço de endereçamento de um processo é
MEMÓRIA LÓGICA E FÍSICA (1)
GERÊNCIA DE MEMÓRIA memória = vetor de palavras (ou bytes), cada uma com endereço próprio a memória é usada para armazenar os diversos programas em execução, bem como os dados sobre a execução dos programas
CURSO TÉCNICO EM INFORMÁTICA SISTEMAS OPERACIONAIS II MEMÓRIA VIRTUAL
CURSO TÉCNICO EM INFORMÁTICA SISTEMAS OPERACIONAIS II MEMÓRIA VIRTUAL O Processo passa a possuir um espaço de endereçamento virtual. Este espaço de endereçamento pode ser maior que a memória física. S.O.
Sistemas Operacionais Gerenciamento de Memória. Carlos Ferraz Jorge Cavalcanti Fonsêca
Sistemas Operacionais Gerenciamento de Memória Carlos Ferraz ([email protected]) Jorge Cavalcanti Fonsêca ([email protected]) Memória Física vs. Memória do Programa Memória P Física Tamanho dos softwares
Gerenciamento de Memória
Gerenciamento de Memória Prof. Clodoaldo Ap. Moraes Lima 1 Segmentação Objetivo Melhorar o aspecto de localidade de referência em sistemas de memória virtual Em sistema paginado, os itens que são transferidos
AULA Nº 11 SISTEMAS OPERACIONAIS. Técnicas de Memória Virtual
AULA Nº 11 SISTEMAS OPERACIONAIS Técnicas de Memória Virtual 1 Contextualizando Vimos Introdução ao Gerenciamento de Memória Agora Técnicas de Memória Virtual 2 O que é Memória Virtual (MV)? É uma técnica
Capítulo 9: Memória Virtual. Operating System Concepts 8th Edition
Capítulo 9: Memória Virtual Sobre a apresentação (About the slides) Os slides e figuras dessa apresentação foram criados por Silberschatz, Galvin e Gagne em 2009. Esse apresentação foi modificada por Cristiano
Sistemas Operacionais. Rômulo Silva de Oliveira Alexandre da Silva Carissimi Simão Sirineo Toscani
11 Sistemas Operacionais Rômulo Silva de Oliveira Alexandre da Silva Carissimi Simão Sirineo Toscani Introdução Multiprogramação implica em manter-se vários processos em memória Memória necessita ser alocada
AULA 14 - Memória Virtual
AULA 14 - Memória Virtual A idéia básica da memória virtual é permitir que programas muito maiores que a memória disponível possam ser executados. Para isso, em 1961 Fotheringham criou o método conhecido
Gerência de Memória. Paginação
Gerência de Memória Paginação Endereçamento Virtual (1) Espaço de endereçamento dos processos não linearmente relacionado com a memória física Cada vez que são usados, os endereços virtuais são convertidos
Capítulo 9: Memória Virtual. Operating System Concepts 8 th Edition
Capítulo 9: Memória Virtual Silberschatz, Galvin and Gagne 2009 Objetivos Descrever os benefícios de um sistema de memória virtual Explicar os conceitos de paginação sob demanda, algoritmo de substituição
Gerência de Memória. Endereçamento Virtual (1) Paginação. Endereçamento Virtual (2) Endereçamento Virtual (3)
Endereçamento Virtual (1) Gerência de Memória Paginação Espaço de endereçamento dos processos não linearmente relacionado com a física Cada vez que são usados, os endereços virtuais são convertidos pela
SISTEMAS OPERACIONAIS. 2ª. Lista de Exercícios Parte 2
SISTEMAS OPERACIONAIS INF09344 - Sistemas Operacionais / INF02780 - Sistemas Operacionais / INF02828 - Sistemas de Programação II Prof a. Roberta Lima Gomes ([email protected]) 2ª. Lista de Exercícios Parte
Aula 15. Memória Virtual - Desempenho. 1.1 Contexto 1.2 Políticas de Reposição de Páginas 1.3 Working-Set 1.4 Trashing
Aula 5 Memória Virtual - Desempenho. Contexto. Políticas de Reposição de Páginas. Working-Set.4 Trashing E se encher a memória? Usamos a memória toda, mas acessos às página que não estão na memória comtinuam:
Administração de Memória
Administração de Memória 4.1 Administração básica de memória 4.2 Swapping 4.3 Memória Virtual 4.4 Algoritmos de substituição de páginas 4.5 Modelando algoritmos de substituição de páginas 4.6 Tópicos de
Sistemas Operacionais
Sistemas Operacionais Gerência de Memória Memória virtual Edson Moreno [email protected] http://www.inf.pucrs.br/~emoreno Slides baseados nas apresentações dos prof. Tiago Ferreto e Alexandra Aguiar
Sistemas Operacionais. - Gerência de Memória -
Sistemas Operacionais - Gerência de Memória - Memória Virtual É uma técnica sofisticada de gerência de memória As memórias principal e secundária são combinadas, dando ao usuário a impressão de existir
Gerência de memória III
Gerência de memória III Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Maio, 2016 1 / 45 Sumário 1 Memória Virtual Segmentação Paginação 2 Alocação de páginas
LABORATÓRIO DE SISTEMAS OPERACIONAIS. PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO
LABORATÓRIO DE SISTEMAS OPERACIONAIS PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO Gerência de Memória Virtual Conteúdo retirado do livro Arquitetura de Sistemas Operacionais Francis Berenger Machado
Gerenciamento de memória Memória Virtual
Sistemas Operacionais Gerenciamento de memória Memória Virtual Capítulos 8 Operating Systems: Internals and Design Principles W. Stallings Requisitos Memória Virtual e Paginação referências em um processo
Sistemas de Informação. Sistemas Operacionais
Sistemas de Informação Sistemas Operacionais GERÊNCIA DE MEMÓRIA VIRTUAL SUMÁRIO 6 GERÊNCIA DE MEMÓRIA VIRTUAL: 61 Introdução; 62 Espaço de Endereçamento Virtual; 63 Mapeamento; 64 Memória Virtual por
ESTRATÉGIAS DE ALOCAÇÃO AULA 11 Sistemas Operacionais Gil Eduardo de Andrade
ESTRATÉGIAS DE ALOCAÇÃO AULA 11 Sistemas Operacionais Gil Eduardo de Andrade O conteúdo deste documento é baseado no livro do Prof. Dr. Carlos Alberto Maziero, disponível no link: http://dainf.ct.utfpr.edu.br/~maziero
Sistemas Operacionais Memória Virtual
Universidade Estadual de Mato Grosso do Sul UEMS Curso de Licenciatura em Computação Sistemas Operacionais Memória Virtual Prof. José Gonçalves Dias Neto [email protected] Introdução Memória virtual
Sistemas Opera r cionais Gerência de Memória
Sistemas Operacionais Gerência de Memória Gerência de Memória Idealmente, o que todo programador deseja é dispor de uma memória que seja grande rápida não volátil Hierarquia de memórias pequena quantidade
Memória. Gestão do espaço lógico Paginação Segmentação com paginação
Memória Gestão do espaço lógico Paginação Segmentação com paginação Paginação Divide-se a memória física em pequenos blocos de tamanho fixo chamados de páginas físicas (ou frames) o tamanho é uma potência
Capítulo 4 Gerenciamento de Memória
Capítulo 4 Gerenciamento de Memória 4.1 Gerenciamento básico de memória 4.2 Troca de processos 4.3 Memória virtual 4.4 Algoritmos de substituição de páginas 4.5 Modelagem de algoritmos de substituição
Capítulo 9: Memória Virtual. Operating System Concepts 8th Edition
Capítulo 9: Memória Virtual Sobre a apresentação (About the slides) Os slides e figuras dessa apresentação foram criados por Silberschatz, Galvin e Gagne em 2009. Esse apresentação foi modificada por Cristiano
Durante a evolução das arquiteturas de computadores e principalmente dos Sistemas Operacionais, muitas tecnologias tiveram que ser aprimoradas para
UM ESTUDO SOBRE O MECANISMO DE PAGINAÇÃO DE MEMÓRIA E OS ALGORITMOS DE SUBSTITUIÇÃO DE PÁGINAS FIFO E LRU Fernando Sales Ferreira, [email protected] William Antônio Faria Da Silva, [email protected]
Segmentação com paginação Intel 386. Esquema de tradução de endereço Intel 386
Segmentação com paginação Intel 386 O processador Intel 386 usava segmentação com paginação para gerenciamento de memória com um esquema de paginação em dois níveis. Esquema de tradução de endereço Intel
Capítulo 8: Memória Principal. Operating System Concepts 8 th Edition
Capítulo 8: Memória Principal Silberschatz, Galvin and Gagne 2009 Objetivos Fornecer uma descrição detalhada das várias formas de organizar a memória do computador Discutir várias técnicas de gerenciamento
Gerência da Memória. Adão de Melo Neto
Gerência da Memória Adão de Melo Neto 1 Memória Principal Antigamente Recurso escasso Desenvolvimento de um sistema operacional (SO) que não ocupassem muito espaço de memória principal (MP) Atualmente
UFRJ IM - DCC. Sistemas Operacionais I. Unidade III Memória Virtual. 26/05/2014 Prof. Valeria M. Bastos
UFRJ IM - DCC Sistemas Operacionais I Unidade III Memória Virtual 26/05/2014 Prof. Valeria M. Bastos 1 Processador Memória Primária Memória Virtual Fundamentos Organização Lógica Gerenciamento de Recursos
William Stallings Arquitetura e Organização de Computadores 8 a Edição
William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 8 Suporte do sistema operacional slide 1 Objetivos e funções Conveniência: Tornar o computador mais fácil de usar. Eficiência:
Swapping. Desvantagem:
Swapping Visa dar uma maior taxa de utilização à memória principal, melhorando seu compartilhamento Visa também resolver o problema da falta da memória principal (MP) em um sistema Funcionamento Programa
Gerência de Memória. Gerência de memória. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos. Memória: UCP. Unidade de controle
Gerência de Gerência de Memória Memória:» central em sistemas de computador» CPU e sistema de I/O interagem com a» é um conjunto (array) de bytes ou palavras, cada um com seu próprio endereço» CPU faz
Sistemas Operacionais II. Linux 2: Threads, Escalonamento, Gerenciamento de Memória e Sistemas de Arquivos
Sistemas Operacionais II Linux 2: Threads, Escalonamento, Gerenciamento de Memória e Sistemas de Arquivos Threads Suporte a threads no núcleo; Foi definida uma nova chamada ao sistema não presente no Unix:
Capítulo 7 Gerência de Memória
Universidade Federal de Itajubá UNIFEI Instituto de Engenharia de Sistemas e Tecnologias da Informação IESTI CCO 004 Sistemas Operacionais Prof Edmilson Marmo Moreira 51 Introdução Capítulo 7 Gerência
Capítulo 6 Gerência de Memória 103
Capítulo 6 Gerência de Memória 103 out. Mais tarde, ele sofrerá um swap-in, ou seja, será copiado novamente para a memória. Seu descritor de processo volta então para a fila do processador, e sua execução
UFRJ IM - DCC. Sistemas Operacionais I. Unidade III Memória Virtual. Prof. Antonio Carlos Gay Thomé Prof. Aux. Simone Markenson Pech 1
18/9/009 UFRJ IM - DCC Sistemas Operacionais I Unidade III Memória Virtual 18/9/009 Prof. Antonio Carlos Gay Thomé Prof. Aux. Simone Markenson Pech 1 ORGANIZAÇÃO DA UNIDADE Processador Memória Primária
UFRJ IM - DCC. Sistemas Operacionais I. Unidade III Memória Primária. 29/04/2014 Prof. Valeria M. Bastos
UFRJ IM - DCC Sistemas Operacionais I Unidade III Memória Primária 29/04/204 Prof. Valeria M. Bastos ORGANIZAÇÃO DA UNIDADE Processador - Escalonamento Memória Primária Fundamentos Formas de Particionamento
Memoria Virtual (parte 2) Algoritmos de substituicao (cont)
Memoria Virtual (parte 2) Algoritmos de substituicao (cont) Algoritmo Optimal Trocar as paginas que nao serao usadas por maiores periodos de tempo Exemplo com 4 quadros 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4,
LISTA DE EXERCICIOS 2
UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA DEPARTAMENTO DE INFORMÁTICA APLICADA SISTEMAS OPERACIONAIS I N - INF01142 LISTA DE EXERCICIOS 2 Não há gabarito, nem respostas aos exercícios
Gerenciamento de Memória
Gerenciamento de Memória Conceitos básicos Swapping Alocação contígua Paginação Segmentação Segmentação com paginação Atribuição de endereços (ligação) de código e dados na memória A atribuição de endereços
Gerência de Memória Introdução Considerações: Recurso caro e escasso; Programas só executam se estiverem na memória principal; Quanto mais processos residentes na memória principal, melhor será o compartilhamento
ENADE 2011 SISTEMAS OPERACIONAIS
ENADE 2011 SISTEMAS OPERACIONAIS SOs: conteúdos comuns Gerência de processos/processador Comunicação Concorrência e Sinc. de Processos Gerenciamento de Memória Alocação de Recursos e Deadlocks Sistemas
Infra-Estrutura de Software
Infra-Estrutura de Software Gerência de Memória Tópicos Gerenciamento básico de memória Troca de processos na memória (swapping) Memória virtual Troca de páginas/paginação (paging) Segmentação Gerenciador
Sistemas Operacionais Aula 12: Gerência de Memória. Ezequiel R. Zorzal
Sistemas Operacionais Aula 12: Gerência de Memória Ezequiel R. Zorzal [email protected] www.realidadeaumentada.com.br Objetivos Fornecer uma descrição de várias maneiras de organizar o hardware de memória.
Gestão de Memória. Algoritmos de Gestão de Memória
Gestão de Memória Parte II Algoritmos Algoritmos de Gestão de Memória Tipos de decisões que o sistema operativo tem de tomar em relação à memória principal: Reserva: onde colocar um bloco de informação?
GERENCIAMENTO DE PROCESSOS
GERENCIAMENTO DE PROCESSOS Sistema Monotarefa: Executa Espera (E/S) Executa Espera (E/S) Tempo O tempo de (E/S) é muito maior que o de processamento. O processador fica ocioso a maior parte do tempo. Março
SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar
- Módulo 3 - MEMÓRIA VIRTUAL A maioria dos computadores possui uma grande quantidade de memória disponível para uso da CPU. Infelizmente, nem sempre essa quantidade de memória é suficiente para rodar de
