Professor: Felipe Lopes M. Faria Disciplina: Sistemas Operacionais 1.

Slides:



Advertisements
Apresentações semelhantes
Sistemas Operacionais
Advertisements

Sistemas Operacionais
Gerenciamento de Memória
Gerenciamento de memória
Arquitetura de Sistemas Operacionais Francis Berenger Machado
SSC541 - SISTEMAS OPERACIONAIS I Aula 12 – Gerenciamento de Memória
SSC SISTEMAS OPERACIONAIS I Aula 10 – Gerenciamento de Memória
SSC SISTEMAS OPERACIONAIS I Aula 15 – Gerenciamento de Memória
SSC541 - SISTEMAS OPERACIONAIS I Aula 13 – Gerenciamento de Memória
Debian Gerência de Memória.
Gerência de Memória.
Sistemas Operacionais Gerenciamento de Memória
Fundamentos da Arquitetura de Computadores
Sistemas Operacionais
Sistemas Operacionais
Memória virtual Professor Esp. Diego André Sant’Ana
SISTEMAS OPERACIONAIS I
Sistemas Operacionais
SISTEMAS OPERACIONAIS I Memória Virtual e Paginação
SISTEMAS OPERACIONAIS I
Sistemas Operacionais
Sistemas Operacionais
Gerenciamento de Memória - Capítulo 7 - Sistemas Operacionais Prof. Dr. José Carlos Becceneri Luciana Sêda Cardoso.
Bruno Iran Ferreira Maciel
Sistemas de Arquivos Sistemas Operacionais Profa. Priscila Facciolli
Gerência de Memória Sidney Cunha de Lucena Baseado no livro
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Gerenciamento de Memória Capítulo Gerenciamento básico de memória 3.2 Troca de processos.
Gerência de Memória. Memória Considerações: Recurso caro e escasso; Programas só executam se estiverem na memória principal; Quanto mais processos residentes.
Sistemas Operacionais Gerência de Memória Funções básicas (número, tamanho e segurança) Alocação contígua simples Técnica de overlay Alocação particionada.
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais FATEC-PB Professor: Gustavo Wagner
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais FATEC-PB Professor: Gustavo Wagner
Sistema Multiutilizador
Curso: Tecnólogo em Redes de Computadores Disciplina: Sistemas Operacionais Profª: Cristiane Machado de Vargas G ERÊNCIA DE R ECURSOS : GERÊNCIA DO PROCESSADOR.
Administração de Sistemas Operacionais 1 -Windows Processos Curso Técnico em Redes de Computadores Prof. Emerson Felipe.
Como funciona o processador Nomes: Fernando, Maurício, William Turma: 1J-1PC1 Disciplina: Fundamentos da Computação Curso: Técnico em Programação de Computadores.
Estrutura de Dados (DPADF 0056) Aula 7 – Encadeamento de Memória Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior.
Estrutura de Arquivos e Pastas no Windows e Linux Prof. Olavo José Luiz Junior
ARQUITETURA AULA 3 Prof. Luiz Ricardo Lima 2º sem de 2016.
Sistemas Operacionais
Gerência de Arquivos.
Arquitetura de Computadores-S.O.
SISTEMAS OPERACIONAIS
INF1007: Programação 2 2 – Alocação Dinâmica
INSTITUTO FEDERAL DO CEARÁ Mauro Oliveira
UNIVERSIDADE AGOSTINHO NETO FACULDADE DE CIÊNCIA DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO MEMÓRIA/FRAGMENTAÇÃO. Por: Ndalovich Aufico
Arquitetura de Sistemas Operacionais Francis Berenger Machado
Sistemas Operativos Multiprogramação; Multiplexação; Memória Física; Memória virtual; Trabalho/Job - Processo/Process/Task - Thread.
Administração de Sistemas Operacionais I
Projeto de endereçamento – 2 ClassLess
Professor: Fabricio Farias
Kroton Educacional Universidade uniderp (Unidade Matriz)
Níveis de Abstrações TANENBAUM:
SISTEMAS OPERACIONAIS

Construções Lógico –Matemáticas – Aula 08
Listas Encadeadas.
André Porto Letícia Santos Jhozefem Pontes Manderson Cruz
Máscara de Sub-redes aula 11
Desenvolvimento em Camadas
Gerência de Dispositivos e Sistemas de Arquivos
Sistemas operacionais
Sistemas Operacionais Aula 3
Capítulo 9: Divisão de redes IP em sub-redes
Estruturas de Dados Dinâmicas
Arquitetura de Computadores
Instalação e Manutenção de Computadores Técnico em Informática MAI1
Algoritmos e Estruturas de Dados I – Ponteiros
Arquitectura de Computadores
Programação Dinâmica (PD)
Instrutor: Joel Raitz Antunes Projeto: Comunidade Digital Curso: Informática Básica/Noturno/UAB CETAM 2019/MAUÉS/AM.
Transcrição da apresentação:

Professor: Felipe Lopes M. Faria Disciplina: Sistemas Operacionais 1

2 Situação atual das Memórias  Pequena quantidade de memória cache;  Memória RAM;  Memória Secundária.  SO coordena a utilização dessas memórias  Função: ◦ manter o controle de quais partes da memória estão em uso e quais não estão, alocando memória aos processos quando eles precisam e liberando a memória quando eles terminam ◦ gerenciar a troca de processos entre memória e disco

3 Gerenciamento básico de memória  Sistemas Operacionais que durante a execução levam e trazem processos entre a Memória Principal e o Disco  Sistemas Operacionais mais simples que não fazem essas trocas  Gerenciamento de memória: ainda será necessário para os próximos anos?  R= Crescimento de programa e memória é desproporcional!

4 Monoprogramação sem troca de processos  Execução de uma tarefa por vez  Memória compartilhada entre o programa do usuário e o SO  Somente um programa é executado por vez  Praticamente não é mais utilizado, a não ser em sistemas menores como para palmtops...  Overlay: partes do programa disputando mesmo espaço de memória

5 Multiprogramação com partições fixas  Vários programas ativos ao mesmo tempo  Técnica utilizada para melhorar a ocupação da CPU (quanto mais programas na memória, melhor!)  Maneira mais comum para se implementar o uso de multiprogramação na memória => Divisão da memória em diversas partes  2 formas: Múltiplas filas e Fila única

6 Múltiplas Filas: podem fazer com que um programa tenha que esperar por deslocação de memória mesmo havendo memória disponível. Endereço da memória no programa.

7 Fila Única: resolve o problema anterior, mas gera outros. Nem sempre faz a melhor escolha da partição, pois escolhe de acordo com a ordem. A primeira que couber. Endereço do programa na memória a partir do endereço inicial onde se encontra.

8 Realocação e Proteção: problemas de multiprogramação  Realocação: não se sabe de antemão em qual região de memória o processo vai ser executado  (Não se sabe onde um programa é carregado em RAM)  – Endereço de variáveis e do código não podem ser absolutos

9 Realocação e Proteção: problemas de multiprogramação  Proteção: A priori nada impede um programa mal intencionado de ler/escrever em uma área de memória que não lhe “pertence”. A proteção visa que cada processo acesse somente sua área de alocação;

10 Realocação e Proteção: problemas de multiprogramação  Possível solução para Proteção: uso de Registradores  Registrador base delimitam limite inferior e superior da área de memória alocada ao processo  Registrador limite  Nessa abordagem, todas as referências à memória são referentes a esses registradores  Assim, a todo endereço é somado o valor do Registrador da base e o Registrador limite é verificado  Ex.: Se a referência é ao endereço 100 e o Registrador Base é 100k, então o endereço será

11 Multiprogramação com Partições Variáveis - Troca de processos  Necessidade de manter alguns processos em disco e trazê-los dinamicamente para a memória no momento da execução.

12 Formas de gerenciamento de memória  Troca de processos: os processos são movimentados como um todo entre memória e disco;  A principal diferença entre partições fixas e partições variáveis é que o número, a localização e o tamanho das partições variam dinamicamente ao longo do tempo.

13 Formas de gerenciamento de memória - Troca de processos  Duas maneiras: ◦ Mapa de Bits ◦ Lista de Disponíveis

14 Gerenciamento de memória com Mapa de Bits  Memória é dividida em unidades de alocação  Associado a cada unidade de alocação existe um bit no Mapa de Bits, o qual vale 0 se a respectiva unidade de alocação estiver disponível e 1 se estiver ocupada (ou vice-versa).  Tamanho da unidade de alocação: ◦ Quanto menor a unidade de alocação para o bit, maior será o Mapa de Bits (menor o desperdício) ◦ Se a unidade de alocação for muito grande, o Mapa de Bits será menor, mas pode ser que desperdice muita memória ◦ Vantagem: simples de implementar

15 Gerenciamento de memória com Mapa de Bits  Problema: quando se decide carregar na memória um processo com tamanho K unidades, o gerenciador de memória precisa encontrar espaço disponível na memória procurando no Mapa de Bits uma sequência de K Bits consecutivos em 0.  Essa busca é muito lenta => Fator contra o Mapa de Bits

16 Gerenciamento de memória com Mapa de Bits

17 Gerenciamento de memória com Listas de Disponíveis ou Listas Encadeadas  Manter a lista ordenada de segmentos de memória alocados e segmentos de memória disponíveis  Lista de segmentos é mantida ordenada por endereços  Permite atualização rápida e simples

18 Gerenciamento de memória com Listas de Disponíveis ou Listas Encadeadas

19 Fragmentação  Desperdício de páginas de memória alocadas.  Pode ser de dois tipos: interna e externa.  Interna: Ocorre quando o processo não ocupa inteiramente os blocos de memória (páginas) reservados para ele. Geralmente acontece pois o tamanho do processo não é um múltiplo do tamanho da página de memória, o que acarreta sobra de espaço na última página alocada.  Externa: Ocorre à medida que os programas vão terminando e deixando lacunas cada vez menores de espaços entre as páginas. Dependendo do tamanho que precisa ser escrito em memória, estes espaços podem ser pequenos demais para serem úteis, e assim ficam inutilizados.  Estratégias para "atacar" o problema com os algoritmos First-fit, Best-fit, Worst-fit e Next-fitFirst-fitBest-fitWorst-fitNext-fit

20 First-fit  Aloca o processo no primeiro espaço de memória que couber Next-fit  Aloca o processo no próximo espaço que couber a partir da última alocação Best-fit  Aloca o processo no espaço que melhor couber Worst-fit  Aloca o processo no pior espaço que couber  Está técnica, apesar de aproveitar primeiro as partições maiores, acaba deixando espaços livres grandes o suficiente para que outros programas utilizem da memória, diminuindo ou retardando a fragmentação.

21 Memória Virtual  Espaço em disco que é alternado com a memória principal.  Solução para programas maiores do que a memória disponível  O SO mantém partes ativas do programa na memória e o restante no disco  Divide um único programa em partes  Permanece na memória apenas a parte necessária

22 Memória Virtual  A maioria dos SOs que implementam memória virtual, utiliza o conceito de paginação  Neste esquema o espaço virtual da memória é dividido em páginas e o espaço real é divido em molduras de páginas  As páginas e as molduras são divididas sempre do mesmo tamanho de forma que uma seja colocada na outra  Programas (processos): páginas de mesmo tamanho  Memória: moldura do tamanho das páginas  Tamanho das Páginas = tamanho das Molduras

23 Memória Virtual Aumento do grau de multiprogramação Capacidade de executar programas maiores que a capacidade disponível de memória

24 Memória Virtual - Formas de Implementá-la 1) Página por Demanda: 2) Página por Demanda:

25 Memória Virtual - Formas de Implementá-la Substituição de páginas de Web

26 Memória Virtual - Formas de Implementá-la Substituição de páginas de Web Primeiro a chegar primeiro a ser atendido

27 Memória Virtual - Formas de Implementá-la Bits auxiliares

 Transparências: Profa. Roberta N. S. Carvalho  Sistemas Operacionais Modernos Andrew S. Tanenbaum Andrew S. Tanenbaum  Arquitetura de Sistemas Operacionais Francis Berenger Machado/ Luiz Paulo Maia Francis Berenger Machado/ Luiz Paulo Maia 28

 para contato: 29