• Nenhum resultado encontrado

6 Aula SO Memória 2012 2 Pansani

N/A
N/A
Protected

Academic year: 2021

Share "6 Aula SO Memória 2012 2 Pansani"

Copied!
30
0
0

Texto

(1)

Sistemas Operacionais

Gerência de Memória

Sistemas Operacionais

Prof. Eder Pansani [email protected]

(2)

Sistemas Operacionais

A finalidade principal de um sistema computadorizado é executar programas. Esses programas precisam estar na memória principal durante a execução.

Gerência de Memória

Prof. Eder Pansani

(3)

Sistemas Operacionais

Para melhorar a utilização de CPU e a velocidade de resposta aos usuários o computador precisa manter vários processos na memória. Para isso existem muitos mecanismos de gerência de memória, esquemas, algoritmos e hardwares dedicados a atingir este objetivo.

Gerência de Memória

Prof. Eder Pansani

(4)

Sistemas Operacionais

Anteriormente vimos vários conceitos sobre processos tais como:

– Estados de um processo; – Multiprogramação;

– Escalonamento;

– Filas dos processos; – Troca de contexto

Gerência de Memória

Prof. Eder Pansani

(5)

Sistemas Operacionais

E vimos também que para um processo executar sua tarefa são necessários alguns recursos como tempo de CPU, arquivos, dispositivos de E/S e memória.

Gerência de Memória

Prof. Eder Pansani

(6)

Sistemas Operacionais

Sendo assim nesta aula estudaremos os mecanismos de alocação de memória para os processos e o sistema operacional.

Gerência de Memória

Prof. Eder Pansani

(7)

Sistemas Operacionais

O que é a memória ou memória principal?

Prof. Eder Pansani

(8)

Sistemas Operacionais

Prof. Eder Pansani

(9)

Sistemas Operacionais

A memória consiste em uma grande sequência de bytes ou words, cada uma com seu próprio endereço.

Definição

Prof. Eder Pansani

(10)

Sistemas Operacionais

A CPU apanha instruções na memória e as executa de acordo com o contador de programa.

O ciclo completo consiste em: • Buscar instrução

• Decodificar (buscar operandos)

• Executar (gravar os resultados na mem.)

Função

Prof. Eder Pansani

(11)

Sistemas Operacionais

A memória principal e os registradores embutidos no próprio processador são os únicos tipos de armazenamento acessíveis diretamente pela CPU.

Existem instruções de máquina que pegam endereços de memória como argumentos, mas nenhuma peça endereços de um disco

Hardware básico

Prof. Eder Pansani

(12)

Sistemas Operacionais

Portanto qualquer instrução em execução (e dados necessários) precisam estar em um dispositivo de armazenamento com acesso direto.

Caso os dados não estejam nestes dispositivos eles precisam ser movidos para lá.

Hardware básico

Prof. Eder Pansani

(13)

Sistemas Operacionais

Os registradores internos da CPU são acessíveis, em geral, em um ciclo do relógio (clock), já na memória isto não acontece, pode ser necessários vários ciclos de relógio para buscar um dado na memória.

A solução para esse problema foi adicionar uma memória de acesso rápido entre a CPU e a memória principal, essa memória é o cache.

Hardware básico

Prof. Eder Pansani

(14)

Sistemas Operacionais

Hardware básico

Prof. Eder Pansani

(15)

Sistemas Operacionais

Além da velocidade outro ponto importante na gerência de memória é garantir a correta operação para proteger o SO dos programas de usuário e também os programas de usuário uns dos outros.

Para isso é preciso definir intervalos válidos para cada processo ser alocado na memória, a seguir veremos uma representação deste arranjo.

Hardware básico

Prof. Eder Pansani

(16)

Sistemas Operacionais

O registrador de base contém o menor endereço de memória física; e o

registrador limite contém o tamanho do

intervalo.

Exemplo: se o registrador de base contém 300040 e o registrador limite contém 120900 então o programa poderá acessar desde 300040 até 420939.

Hardware básico

Prof. Eder Pansani

(17)

Sistemas Operacionais

Hardware básico

Prof. Eder Pansani

(18)

Sistemas Operacionais

Os programas residem em disco, em geral como um executável binário, mas para ser executado ele precisa ser trazido para a memória (processo).

Sendo assim os processos no disco que estão esperando para serem trazidos para a memória formam a fila de entrada.

Associação de endereços

Prof. Eder Pansani

(19)

Sistemas Operacionais

Endereço lógico: o conjunto de todos os

endereços gerados por um programa;

Endereço Físico: o conjunto dos endereços

físicos correspondentes a esses endereços lógicos.

Espaço de Endereços

Prof. Eder Pansani

(20)

Sistemas Operacionais

O mapeamento em tempo de execução dos endereços virtuais para físicos é feito por um dispositivo de hardware chamado

Unidade de gerência de memória (Memory Management Unit – MMU)

Espaço de Endereços

Prof. Eder Pansani

(21)

Sistemas Operacionais

Até agora estudamos o conceito de que um programa para ser executado ele deve estar inteiramente carregado na memória. Sendo assim podemos afirmar que o tamanho de um processo é limitado ao tamanho da memória física.

Carregamento Dinâmico

Prof. Eder Pansani

(22)

Sistemas Operacionais

Devido a este fato foi criado o mecanismo de carregamento dinâmico, que consiste em manter uma parte (principal) da rotina em memória, e quando necessário carregar as rotinas que serão usadas.

Carregamento Dinâmico

Prof. Eder Pansani

(23)

Sistemas Operacionais

Este método é muito interessante pois permite que programas maiores que a memória disponível sejam executados, e além disso, garante que rotinas que raramente são utilizadas sejam carregadas na memória desnecessariamente.

Carregamento Dinâmico

Prof. Eder Pansani

(24)

Sistemas Operacionais

Alocar memória: significa conceder (“dar”) a memória a um processo para que ele possa ser executado.

Existem vários métodos de alocação de memória, falaremos um pouco dos mais usados.

Alocação de Memória

Prof. Eder Pansani

(25)

Sistemas Operacionais

Um método de alocação de memória é baseado em partições sendo que estas podem ser fixas ou variáveis.

No método de partição fixa há um grande problema, caso o processo seja maior que a partição ele não poderá ser executado.

Alocação de Memória

Prof. Eder Pansani

(26)

Sistemas Operacionais

Já se a partição for variável, o sistema inicialmente considera a memória inteira como uma grande partição e a cada novo processo que entra essa partição maior é dividida para atender o processo.

Um problema gerado por esse método é a

fragmentação.

Alocação de Memória

Prof. Eder Pansani

(27)

Sistemas Operacionais

Há dois tipos de fragmentação,

– Fragmentação Externa;

Nesta o problema pode ser visto com a seguinte situação. Um processo precisa de 462 bytes e o próximo bloco que atende esse requisito possui 464 bytes. Assim o SO pegará esse bloco e criará uma nova partição de 462 bytes, deixando esses 2 bytes “inutilizados”.

Imagine agora que um processo precisa de 800 bytes, há essa quantidade de blocos disponíveis mas eles não estão juntos, logo não é possível alocar a memória.

Alocação de Memória

Prof. Eder Pansani

(28)

Sistemas Operacionais

– Fragmentação interna;

Visando resolver o problema da fragmentação externa foi criado um segundo método, onde “buracos” com tamanho fixo são criados com um tamanho determinado e os processos utilizam um ou mais destes para alocar sua memória.

Exemplo, o mesmo processo com 462 bytes, mas agora há vários blocos com 100 bytes cada, esse processo terá de usar 5 blocos, sendo assim será gerado um desperdício de 38 bytes (interno).

Alocação de Memória

Prof. Eder Pansani

(29)

Sistemas Operacionais

Para resolver esses problemas um dos métodos mais utilizados nos sistemas operacionais modernos é o de paginação. Neste esquema é possível que os endereços físicos de um processo não sejam contíguos.

Alocação de Memória

Prof. Eder Pansani

(30)

Sistemas Operacionais

Paginação

Prof. Eder Pansani

Referências

Documentos relacionados

A partir do levantamento de dados de pressão no ICC Sul e no ICC Norte, verificou-se que há uma relação entre períodos de menor movimentação/consumo de água e pressões mais

I6 Os instrumentos e procedimentos de recolha de dados, consensualizados com os stakeholders internos e externos, são aplicados no quadro do processo de autoavaliação

 Compete à Comissão Organizadora: Abrir e encerrar as inscrições, escolher um júri idôneo que tenha formação e/ou aptidão na área musical, divulgar o

As melhores condições do processo para o crescimento do microrganismo, formação de produtos e consumo de substrato, utilizando frascos agitados, foram: controle

Dessa forma, um desvanecimento afetaria somente algumas subportadoras, como pode ser visto na Figura 3.3b, que mostra a recepção de um símbolo OFDM após passar por um canal

O presente estudo procurou realizar uma avaliação de conhecimento dos cirurgiões-dentistas da rede pública de saúde do município de Florianópolis – SC sobre

Neste sentido, pode-se observar claramente que a área da potência dissipada na fatia Q4, representada pela letra (B) na Figura 5.57c, sofreu um aumento em relação à Figura 5.57a.