A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Sistemas Operacionais

Apresentações semelhantes


Apresentação em tema: "Sistemas Operacionais"— Transcrição da apresentação:

1 Sistemas Operacionais
08/04/2017 Sistemas Operacionais Gerenciamento de Memória Prof. Galvez Tecnicas de Informatica - Aula 2

2 08/04/2017 Considerações Gerais Multiprogramação implica em manter-se vários processos em memória Memória necessita ser alocada de forma eficiente para permitir o máximo possível de processos Existem diferentes técnicas para gerência de memória Dependem do hardware do processador Um sistema de memória possui pelo menos: Memória principal: acessada pela CPU Memória secundária: discos Memória Cache (alguns possuem...) Programas são armazenados em disco: Executar um programa se traduz em transferi-lo da memória secundária à memória principal Qualquer sistema operacional tem gerência de memória Monotarefa: gerência é simples Multitarefa: complexa Tecnicas de Informatica - Aula 2

3 Transformação de programa em processo
08/04/2017 Transformação de programa em processo ... Compilador Ligador Carregador Programa objeto executável RAM Biblioteca estática Fase de compilação Fase de ligação Fase de carga Tecnicas de Informatica - Aula 2

4 Na década de 50 e 60 a memória principal era muito cara.
08/04/2017 Hierarquia de Memória Na década de 50 e 60 a memória principal era muito cara. A hierarquia de memória contém níveis caracterizados pela velocidade e custo da memória em cada nível. Tecnicas de Informatica - Aula 2

5 Memória Lógica e Física
08/04/2017 Memória Lógica e Física Memória Lógica É aquela que o processo “enxerga”, aquela que o processo é capaz de endereçar e acessar usando as suas instruções. Um programa em C manipula variáveis tipo ponteiros (pointer), as quais contêm endereços lógicos. Endereços lógicos são aqueles manipulados por um processo. Tecnicas de Informatica - Aula 2

6 Memória Lógica e Física
08/04/2017 Memória Lógica e Física Memória Física Implementada pelos circuitos integrados de memória, pela eletrônica do computador Endereços físicos são aqueles que correspondem a uma posição real de memória Tecnicas de Informatica - Aula 2

7 MMU Gerência de Memória
08/04/2017 Gerência de Memória Unidade de Gerência de Memória (MMU - Memory Management Unit) É o componente do hardware responsável por prover os mecanismos básicos que serão usados pelo SO para gerenciar a memória. Mapeia os endereços lógicos gerados´pelos processos nos correspondentes endereços físicos que serão enviados para a memória. PROCESSADOR End. lógico MMU físico Memória Tecnicas de Informatica - Aula 2

8 08/04/2017 Exemplo de MMU Os endereços lógicos e físicos possuem valores idênticos (123) O espaço de endereçamento lógico de um processo é limitado pelos Registradores de Limites ( Inferior [100] e Superior [799] ) Qualquer endereço lógico fora desse intervalo é considerado ilegal. Tecnicas de Informatica - Aula 2

9 08/04/2017 Exemplo de MMU O endereço lógico é comparado com o um limite superior [500]. Caso seja menor ou igual, então é somado ao valor do registrador de base, resultando o endereço físico quevai para a memória. Pode gerar endereços entre zero e 200. Valor fora desse limite são ilegais. Tecnicas de Informatica - Aula 2

10 08/04/2017 Partições Fixas Forma mais simples de gerência de memória para multiprogramação. A memória é primeiramente dividida em uma parte para uso do SO e uma parte para uso dos processos de usuários. A seguir, a parte dos usuários, é dividida em várias partições de tamanhos diferentes, porém fixos. Sistema Operacional – 225 M Processos de Usuários 375 M Memória Física Sistema Operacional – 225 M Partição 1 – 200 M Partição 3 – 50 M Partição 4 – 25 M Partição 2 – 100 M Memória Física Tecnicas de Informatica - Aula 2

11 Dois problemas para esse tipo de gerência de memória!!!
08/04/2017 Partições Fixas Quando um programa deve ser carregado, é escolhida uma partição ainda livre. Detalhe: a partição deve ter um tamanho igual ou maior que o programa. Não existindo uma partição livre que seja grande o bastante para conter o programa, ele não poderá ser executado no momento. Deve esperar a liberação de uma partição com tamanho suficiente. Dois problemas para esse tipo de gerência de memória!!! Tecnicas de Informatica - Aula 2

12 Partições Fixas – Fragmentação Interna
08/04/2017 Partições Fixas – Fragmentação Interna Memória perdida dentro da área alocada para um processo Um processo, não importando quão pequeno seja, ocupa uma partição inteira 8 M 5 M Sist. Operacional Sist. Operacional 8 M 12 M 6 M 4 M 2 M Solução Paliativa: Partições com tamanhos diferentes Fragmentação interna Tecnicas de Informatica - Aula 2

13 Partições Fixas – Fragmentação Externa
08/04/2017 Partições Fixas – Fragmentação Externa Memória perdida fora da área ocupada por um processo Criado Processo 5 M 1 M 3 M 4 M 8 M Sist. Operacional LIVRE 3 M 8 M Sist. Operacional 5 M Não Executa!! Porque??? LIVRE 4 M Memória Livre não é Contígua LIVRE 1 M Tecnicas de Informatica - Aula 2

14 Será usada uma lacuna maior ou igual ao tamanho do processo.
08/04/2017 Partições Variáveis Técnica mais flexível, pois o tamanho da partição é ajustado dinamicamente às necessidades exatas dos processos. SO mantém uma lista de lacunas (espaços livres da memória física), que será percorrida sempre que um processo for criado. Será usada uma lacuna maior ou igual ao tamanho do processo. Se a lacuna for maior, a diferença (tamanho da lacuna – tamanho do processo) será transformada numa nova lacuna. O processo recebe o tamanho exato que necessita. Tecnicas de Informatica - Aula 2

15 Partições Fixas SO 225 Kbytes Processo 1 174 Kbytes Processo 2
08/04/2017 Partições Fixas SO 225 Kbytes Processo 1 174 Kbytes Processo 2 98 Kbytes Processo 3 23 Kbytes Lacuna 80 Kbytes Memória Física SO 225 Kbytes Processo 1 174 Kbytes Processo 4 85 Kbytes Processo 3 23 Kbytes Lacuna 80 Kbytes Memória Física Lacuna 13 Kbytes Processo 4 85 Kbytes Lacuna 116 Kbytes Lacuna 23 Kbytes Tecnicas de Informatica - Aula 2

16 Partições Variáveis – Fragmentação Externa
08/04/2017 Partições Variáveis – Fragmentação Externa A execução de processos pode criar pedaços livres de memória. Pode haver memória disponível, mas não contígua SO Processo 1 320 K Processo 3 288 K 64 K Processo 4 128 K 96 K Exemplo: Criação Processo 120K Tecnicas de Informatica - Aula 2

17 Partições Variáveis – Fragmentação Externa
08/04/2017 Partições Variáveis – Fragmentação Externa Possíveis Soluções Reunir espaços adjacentes de memória. Empregar compactação Relocar as partições de forma a eliminar os espaços entre elas e criando uma área contígua Desvantagem: Consumo do processador Acesso a Disco Acionado somente quando ocorre fragmentação Tecnicas de Informatica - Aula 2

18 Algoritmos para alocação contígua dinâmica
08/04/2017 Algoritmos para alocação contígua dinâmica Best fit Utiliza a lacuna que resultar na menor sobra Minimizar tam_processo - tam_bloco Deixar espaços livres os menores possíveis Worst fit Utiliza a lacuna que resultar na maior sobra Maximizar tam_processo - tam_bloco Deixar espaços livres os maiores possíveis First fit Utiliza a 1ª lacuna que encontrar com tamanho suficiente tam_bloco > tam_processo Circular fit Como first-fit, mas inicia a procura na lacuna seguinte à última sobra Tecnicas de Informatica - Aula 2

19 Algoritmos para alocação contígua dinâmica
08/04/2017 Algoritmos para alocação contígua dinâmica Exemplo: Criação de Um Processo de 10 K 20k 40k 30k A SisOp C 20k 40k 30k A SisOp C 20k 40k 30k A SisOp C Best-fit Worst-fit First-Fit Tecnicas de Informatica - Aula 2

20 P1 Swapping P2 Processo necessita estar na memória para ser executado
08/04/2017 Swapping Processo necessita estar na memória para ser executado Se não há mais espaço em memória é necessário fazer um rodízio de processos em memória Memória secundária suficientemente grande para armazenar cópias de todos os processos de usuários. Swap out Swap in Memória P1 P2 Tecnicas de Informatica - Aula 2

21 P1 P1 Swapping Um processo maior que a memória. Swap out Swap in
08/04/2017 Swapping Um processo maior que a memória. Memória Swap out P1 Swap in P1 Tecnicas de Informatica - Aula 2


Carregar ppt "Sistemas Operacionais"

Apresentações semelhantes


Anúncios Google