Sistemas operacionais
This presentation is the property of its rightful owner.
Sponsored Links
1 / 42

Sistemas Operacionais PowerPoint PPT Presentation


  • 53 Views
  • Uploaded on
  • Presentation posted in: General

Sistemas Operacionais. Prof. Edivaldo Serafim Curso: Tecnólogo em Análise e Desenvolvimento de Sistemas - 2013 IFSP – Campus Capivari. Gerência de recursos Memória Virtual. 08/10/2013. Introdução.

Download Presentation

Sistemas Operacionais

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Sistemas operacionais

Sistemas Operacionais

Prof. Edivaldo Serafim

Curso: Tecnólogo em Análise e Desenvolvimento de Sistemas - 2013

IFSP – Campus Capivari


Ger ncia de recursos mem ria virtual

Gerência de recursosMemória Virtual

08/10/2013


Introdu o

Introdução

  • As soluções para garantir o maior número possível de processos na memória nem sempre são eficazes;

  • O tamanho dos programas é limitado pela quantidade de memória disponível;

  • Memória virtual é uma técnica que combina memória principal e memória secundária para abrigar programas maiores;

  • Programas são associados a endereços virtuais e não apenas a endereços físicos da memória.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Introdu o1

Introdução

  • Memória virtual possibilita um maior número de processos compartilhando a memória virtual;

  • Possibilita diminuir a fragmentação da memória;

  • Por questões de desempenho, algumas funções da gerência de memória são implementadas em hardware;

  • O SO deve levar em conta vários elementos para implementação, como o esquema de endereçamento do processador;

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Espa o de endere amento virtual

Espaço de endereçamento virtual

  • O conceito de memória virtual é parecido com um vetor:

    • Quando o programa faz referência a um elemento do vetor, não se preocupa com os endereços físicos do vetor;

    • O compilador se encarrega de gerar as instruções de forma transparente para o usuário.

  • A memória virtual é semelhante, porém com os endereços do programa.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Espa o de endere amento virtual1

Espaço de endereçamento virtual

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Espa o de endere amento virtual2

Espaço de endereçamento virtual

  • Programas no ambiente de memória virtual não referenciam endereços físicos, mas sim endereços virtuais;

  • Na execução, o endereço virtual é convertido em endereço físico;

  • Esse mecanismo de conversão é denominado mapeamento.

  • Nesse contexto, o espaço de endereçamento do processo é composto pelo espaço de endereçamento virtual;

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Espa o de endere amento virtual3

Espaço de endereçamento virtual

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Espa o de endere amento virtual4

Espaço de endereçamento virtual

  • Como os programas fazem referência a endereços virtuais, o espaço de endereçamento virtual pode referenciar endereços fora da memória principal;

  • Quando um programa é executado, apenas parte dele fica residente na memória principal, o restante fica na memória secundária até o momento de ser referenciado;

  • Quando um programa é desenvolvido, o programador desconhece o endereçamento virtual, ficando a cargo dos compiladores e linkers defini-los, e o SO encarrega de sua correta execução.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Espa o de endere amento virtual5

Espaço de endereçamento virtual

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mapeamento

Mapeamento

  • O processador apenas executa instruções presentes em endereços reais;

  • Deve existir mecanismo de conversão de endereços virtuais para reais, chamado de mapeamento;

  • Como consequência, programas não precisam estar em endereços reais contíguos de memória principal;

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mapeamento1

Mapeamento

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mapeamento2

Mapeamento

  • Em sistemas atuais, a conversão de endereços é feita pelo hardware em conjunto com o SO;

    • Transparente ao usuário e sem comprometer o desempenho;

  • O dispositivo de hardware que converte endereços é o MMU (memory management unit);

  • O mecanismo de tradução se encarrega de manter as tabelas de mapeamento que contém endereços virtuais e endereços reais de cada processo;

  • As tabelas de mapeamento referenciam blocos de memória, e não células de memória, podendo ser:

    • Blocos fixos (paginação) ou blocos variáveis (segmentação)

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mapeamento3

Mapeamento

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mem ria virtual por pagina o

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013

Memória virtual por paginação


Mem ria virtual por pagina o1

Memória virtual por paginação

  • Nesse esquema, tanto o espaço de endereçamento real quanto o virtual são divididos em blocos fixos de mesmo tamanho, chamados páginas;

    • Páginas do espaço virtual são chamadas páginasvirtuais;

    • Páginas do espaço real são chamadas páginasreais ouframes;

  • O mapeamento ocorre através da tabela de páginas:

    • Cada processo possui a sua tabela de páginas;

    • Cada página do processo possui uma entrada na tabela (EPT);

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mem ria virtual por pagina o2

Memória virtual por paginação

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mem ria virtual por pagina o3

Memória virtual por paginação

  • Quando um processo é executado, as páginas são trazidas da memória secundária pra a memória principal, e colocada nos frames;

  • Sempre que necessário, o mecanismo de mapeamento consulta a tabela:

    • Verifica qual endereço real corresponde o endereço virtual;

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mem ria virtual por pagina o4

Memória virtual por paginação

  • O endereço virtual é composto por:

    • Número de pagina virtual (NPV):

      • Identifica a página virtual, como um índice na tabela de páginas.

    • Deslocamento:

      • Indica a posição do endereço virtual na página;

  • O endereço real é obtido com a combinação do endereço do frame, contido na tabela de páginas com o deslocamento, contido no endereço virtual.

  • A EPT possui também um bit de validade:

    • 0 a página virtual não está na memória principal;

    • 1 a página virtual está a memória principal.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mem ria virtual por pagina o5

Memória virtual por paginação

  • Quando o programa referencia um endereço, o gerenciador de memória verifica se este está na memória principal, através do bit de validade:

    • Se não estiver na memória principal, ocorre um Page Fault;

    • O gerenciador transfere a posição da memória secundária para a memória principal, que é chamado de PageIn;

  • A quantidade de pagefaultde um programa depende de como foi escrito e do gerenciador de memória.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mem ria virtual por pagina o6

Memória virtual por paginação

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mem ria virtual por pagina o7

Memória virtual por paginação

  • O número de Page Faultgerados por cada processo em determinado intervalo de tempo é definido como taxa de paginação;

  • Quando ocorre um pagefault, o processo passa para o estado de espera;

  • A página é buscada na memória secundária;

  • Quando a página é trazida da memória secundária para a memória principal, o processo entra na fila de processos prontos.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Pol tica de busca de p ginas

Política de busca de páginas

  • A política de busca de páginas determina quando uma página deve ser carregada na memória;

  • Basicamente existem duas políticas:

    • Busca por demanda;

    • Busca antecipada.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Busca por demanda

Busca por demanda

  • Na Busca por demanda, as páginas são carregadas apenas quando referenciadas:

    • Leva para a memória apenas páginas necessárias;

    • Partes não executadas do programa nunca são carregadas para a memória:

      • Tratamento de erros por exemplo.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Busca antecipada

Busca antecipada

  • Na Busca antecipada, são carregadas páginas necessárias ou não para a execução do programa:

    • Considerando que programas são sequenciais, pode existir economia de I/O trazendo um conjunto de páginas próximas de endereços referenciados;

    • Porém se o programa não for utilizar todas as páginas, ocorrerá desperdício de tempo com I/O desnecessário e espaço de armazenamento na memória principal.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Pol tica de aloca o de p ginas

Política de alocação de páginas

  • A política de alocação de páginas determina quantos frames cada processo pode manter na memória principal;

  • Existem duas políticas:

    • Alocação Fixa;

    • Alocação Variável;

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Aloca o fixa

Alocação Fixa

  • A política de alocação fixa, cada processo tem um número máximo de frames que pode ser utilizado;

  • Caso não haja mais frames disponíveis, algum deve ser descartado para que outro seja carregado;

  • O limite de páginas reais pode ser igual para todos os processos ou definidos individualmente:

    • Igual para todos é mais justo, porém pode ocorrer desperdício;

  • O limite é determinado na criação do processo com base no contexto de software.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Aloca o fixa1

Alocação Fixa

  • A política de alocação fixa apresenta dois problemas:

    • Se a quantidade de páginas for pequena, ocorrerá excesso de I/O;

    • Se a quantidade for muito elevada, ocorrerá desperdício de memória principal, reduzindo o número de processos na memória:

      • Pode-se implementar swapping para melhorar essa situação.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Aloca o vari vel

Alocação Variável

  • A política de alocação variável, o número máximo de páginas varia em função da taxa de paginação;

  • Processos com elevada taxa podem elevar o número de frames;

  • Processos com baixa taxa podem ceder frames para outros processos;

  • Exige que o SO monitore os processos para ajustar os frames,

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Pol tica de substitui o de p ginas

Política de substituição de páginas

  • Páginas reais podem dar lugar a qualquer outro processo;

  • Quando uma página real for substituída, o seu conteúdo deve ser verificado para determinar se deve ser guardado ou pode simplesmente ser excluído:

    • Trechos de códigos podem ser excluídos e carregados novamente;

    • Variáveis e estrutura de dados devem ser armazenados para uso posterior;

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Pol tica de substitui o de p ginas1

Política de substituição de páginas

  • Para verificar se o dado da página real foi alterado, a tabela de páginas utiliza um bit de verificação, chamado de bit de modificação:

    • Se foi alterado, o bit é 1;

    • Se não foi alterado o bit é 0.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Thrashing

Thrashing

  • Thrashing é a excessiva troca de páginas ou segmentos entre a memória principal e a memória secundária;

  • Aumenta a taxa de I/O;

  • Reduz o desempenho do computador.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Working set

Working set

  • Visa eliminar o excesso de I/O provocado pela falta de páginas na memória (Thrashing);

  • Introduz o conceito de localidades:

    • Espacial:

      • Quando páginas próximas podem ser referenciada;

    • Temporal:

      • Páginas que são referenciadas constantemente.

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mem ria virtual por segmenta o

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013

Memória virtual por segmentação


Mem ria virtual por segmenta o1

Memória virtual por segmentação

  • Na Memória virtual por segmentação o espaço de endereçamento virtual é dividido em blocos de tamanhos diferentes, chamados de segmentos;

  • O compilador analisa o tipo de dado a ser gravado no segmento e então o sistema define o tamanho do segmento;

  • O espaço virtual de um processo possui limite máximo de segmentos;

  • O tamanho do segmento pode ser alterado em tempo de execução;

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mem ria virtual por segmenta o2

Memória virtual por segmentação

  • O mecanismo de mapeamento é semelhante ao de paginação, e existe uma tabela para mapear os segmentos, chamada de tabela de mapeamento de segmentos;

    • Possui o mesmo esquema de endereçamento da paginação, com índice que é o número de segmento virtual e deslocamento;

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mem ria virtual por segmenta o3

Memória virtual por segmentação

  • O sistema de segmentação leva vantagem sobre a paginação pela flexibilidade do segmento, por ser de tamanho variável;

    • Por exemplo: um vetor grande pode exigir a criação de mais páginas para o processo;

    • Já com segmentação; basta aumentar o segmento.

  • Possui desvantagem pois apenas segmentos referenciados podem estar na memória:

    • Aplicações devem ser desenvolvidas em módulos para diminuir o tamanho do segmento;

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mem ria virtual por segmenta o4

Memória virtual por segmentação

  • Segmentação utiliza a política de alocação de páginas dinâmicas;

    • Na paginação existe problema de fragmentação interna;

    • Na segmentação existe problema de fragmentação externa;

    • Deve existir mecanismos para realocar segmentos de memória;

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Pagina o x segmenta o

Paginação x segmentação

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Mem ria virtual por segmenta o com pagina o

Memória virtual por segmentaçãocom paginação

  • O espaço de endereçamento é dividido em segmentos e os segmentos em páginas;

  • Objetiva juntar as duas técnicas para tirar proveito de suas vantagens;

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Swapping de mem ria virtual

Swapping de memória virtual

  • É possível utilizar swapping com memória virtual para aumentar o número de processos em execução;

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


Atividades

Atividades

  • 1 até a 8

Prof. Edivaldo Serafim

Sistemas OperacionaisIFSP 2013


  • Login