Baixe o app para aproveitar ainda mais
Prévia do material em texto
Tipos de memórias Cache – vem no processador Virtual (swap) memória virtual é endereço da memória virtual Volátil :não pode ser alterada Não volátil :pode ser alterada Memória Ram Cada chip de memória ram é um tipo de informação, endereçada fisicamente por matriz Endereçamento é onde o arquivo fica armazenado Alocação de memória ram Boot ele testa se está tudo ok com o computador e procura testa o sistema operacional, ele também procura testa o sistema operacional. Ele também procura saber onde está o SO. Sistema Operacional é feito em c++ Overlay É uma sobreposição, ela substitui de instruções de blocos ou dados armazenamentos Particionamento Existe dois tipos: Estáticos e dinâmicos Pode ser realocado Pode ser realocado sempre que der Particionamento Estático Ele dividia a memória em tamanhos fixos (que não se mudam), são alocados conforme a memória realocável você pode não determinar onde o processo é alocado. O que fragmentação interna É uma perda de espaço na área de tamanho fixo, numa memória secundaria ela ocorre quando um arquivo ou fragmento de arquivo não ocupa completamente o espaço da unidade de alocação destinado a ele causando desperdiço de espaço. Particionamento dinâmico Ele fala onde começa o processamento tal conforme a memória vai carregando ele vai alocando partições de forma dinâmica, ele sempre libera um espaço maior por isso ele acaba sendo melhor que o estático, e acaba gastando mais tempo que fragmenta o externo. Fragmentação :é um desperdiço de espaço disponível em memória. Fragmentação externa: entre processos. Fragmentação interna: dentro de um processo. Fragmentação externa Quando não é fixo, aquele bloco fica vazio e vai diminuindo as partições ao longo do tempo, e acaba fragmentando, isso é uma fragmentação externa dentro de cada repartição, pois dentro de cada repartição a arquivos e esses arquivos ficam procurando ESPAÇOS. A diminuição de espaço na memória não é fixa. Realocação dinâmica É um modo de resolver a fragmentação externa, fazendo essa realocação resolve o problema. Função para determinar em qual partição livre um programa será carregado para execução. Função de evitar, ou diminuir, o problema da fragmentação antes que ele ocorra. O tamanho do programa é o fator mais importante para a adoção da melhor estratégia. Best-fit: Escolhe a melhor partição, ou seja, aquela que o programa deixa o menor espaço sem utilização. Lista de áreas livres alocada por tamanho, diminuindo o tempo de busca Desvantagem de deixar pequenas áreas não contíguas, aumentando o problema da fragmentação. Worst-fit: Escolhe a pior partição, ou seja, aquela que o programa deixa o maior espaço sem utilização. Diminui o problema de fragmentação, deixando espaços livres maiores que permitem a um maior número de programas utilizar a memória. First-fit: Escolhe a primeira partição livre de tamanho suficiente para carregar o programa Lista de áreas livres ordenada por endereços crescentemente. Grande chance de se obter uma grande partição livre nos endereços de memórias mais altos. Mais rápida e consome menos recursos do sistema. Tipos de endereçamento Físico: onde está alocado fisicamente não é necessário Lógico: onde está o seu programa Dinâmico: Indica a onde está o programa Memória virtual É um sistema virtual para simular que seu computador tem mais GB do que realmente tem disponível, memoria de massa e mais barata e farta. Mapeamento virtual É processo pela qual um conjunto de dados são copilados e formatados em uma imagem virtual. Swap: é área que você faz o Swap da memória ele fica gravado na memória ram Tabela de página Tradução de página e mostra a posição que realmente está MMU-UNIDADE DE GERENCIAMENTO DE MEMORIA É um dispositivo de hardware que traduz endereços virtuais em endereços físicos, geralmente é implementado como parte da unidade central processamento ou CPU, mas também pode estar na forma de circuitos integrados. (ele é responsável pela parte lógica do próprio computador). TIPOS DE ENDEREÇO Cada memoria tem seu endereço Memoria virtual O endereço real é diferente do virtual MAPEAMENTO VIRTUAL Para cada endereço o mapeamento constrói uma tabela PÁGINAÇÃO -Memoria é dividida em blocos -> páginas é um trecho da memoria -O tamanho de cada página é variável por sistema operacional, toda página tem um tamanho -Cada programa pode ter a sua sequência de página -Paginação é um endereço virtual -Page Foult -> é uma página que não está disponível pra preempção QUAL É O MECANISMO DE TABELA DE PÁGINA? Onde mostra se o bit foi validado No contexto dos sistemas operacionais, paginação é um esquema de gerenciamento de memória pelo qual um computador armazena e recupera dados de um armazenamento secundário para uso na memória principal. Neste esquema, o sistema operacional recupera os dados do armazenamento secundário em blocos de mesmo tamanho chamados de páginas. Para simplificar, a memória principal é chamada de "RAM" (um acrônimo de "memória de acesso aleatório") e armazenamento secundário é chamado de "disco" (uma abreviação de "disco rígido"), mas os conceitos não dependem se esses termos aplicam-se literalmente a um sistema de computador específico. PAGE FAULT - Processo solicitado endereço - MMU converte página virtual + Deslocamento o page fult é um coisa ruim que tem que ser evitada, caso acontecer usa (page in) QUAIS OS TIPO DE WORKIN SET É UM CONJUNTO DE PÁGINAS? Problemas: Paginação exigem operações de E/S (que deve ser evitado) quando um processo faz referência a uma página que não se encontra na memória; O Sistema Operacional deve se preocupar em ter um certo número de páginas na memória que reduza ao máximo a taxa de paginação dos processos e não prejudique os demais processos que desejam acesso a memória. Observações: Quando um programa começa a ser executado, percebe-se uma elevada taxa de page faults (páginas que não se encontram na memória), que se estabiliza com o decorrer de sua execução. Localidade é a tendência que existe em um programa de fazer referências a posições de memória de forma quase uniforme, ou seja, instruções próximas. A partir da observação da localidade Denning formulou o modelo de working set. Working Set de um processo é o conjunto de páginas referenciadas por ele durante determinado intervalo de tempo, ou, segundo Denning, é o conjunto de páginas constantemente referenciadas pelo processo, devendo permanecer na memória principal para que execute de forma eficiente, evitando a elevada taxa de paginação (thrashing). Sempre que um processo é criado, todas as suas páginas estão na memória secundária. O Working Set deve ter um limite máximo de páginas permitidas. SEGMENTAÇÃO E PAGINAÇÃO Técnica de gerência de memória, onde os programas são divididos logicamente e em sub-rotinas e estruturas de dados e colocados em blocos de informações na memória Segmentos – blocos de tamanhos diferentes com seu próprio espaço de endereçamento. Segmentação X Paginação – Paginação com partes de tamanho fixo e segmentos com blocos de tamanhos variados e permite uma relação entre a lógica do programa e sua divisão na memória. Cada entrada na tabela de segmentos possuí o endereço do segmento na memória física, informações sobre o tamanho do segmento, sua proteção e se ele está na memória ou não. O Sistema Operacional mantém uma tabela com as áreas livres e ocupadas da memória. A escolha da área livre a ser ocupada por um processo a ser carregado na memória pode ser a mesma utilizada no item Alocação Particionada Dinâmica (best-fit, worst-fit ou first-fit). Apenas os segmentos referenciados são transferidos para a memória real. Os programas devem ser bem modularizados para uma maior eficiência. Existe também o problema da fragmentação e o problema da complexibilidade.
Compartilhar