Capítulo 4 Gestão da memoria

Save this PDF as:
 WORD  PNG  TXT  JPG

Tamanho: px
Começar a partir da página:

Download "Capítulo 4 Gestão da memoria"

Transcrição

1 Capítulo 4 Gestão da memoria 4.1 Gestão básica da memoria Os sistemas de gestão de memória podem se dividir em duas classes: sistemas que durante a sua execução levam e trazem processos entre memoria principal e o disco (troca de processos e paginação), e sistemas mais simples, os que não o fazem Mono programação sem troca de processos ou paginação Quando se utiliza o sistema mais simples de gestão de memoria. A memória é partilhada entre o programa e o sistema operativo, e apenas um programa é executado por vez Multi programacao com partições fixas A mono programacao praticamente não é utilizada hoje em dia sem ser em sistemas embebidos simples. A maneira mais simples de realizar a multiprogramacao consiste em simplesmente dividir a memória em n partições (provavelmente de tamanhos diferentes). Um Job ao chegar, pode ser colocado em uma fila de entrada associada á menor partição, grande o suficiente para armazena-la. Como o tamanho das partições é fixo neste esquema, todo o espaço de uma partição não utilizado pelo Job é perdido. A desvantagem da ordenação em filas separadas dos jobs que estão a chegar torna-se evidente quando a fila para uma grande partição está vazia, mas a fila para uma pequena partição esta cheia. Nesse caso, jobs pequenos tem de esperar pela libertação de memória, embora exista muita memória disponível. Uma organização alternativa é manter uma fila única. Então, sempre que uma partição se torna disponível, o Job mais próximo ao inicio da fila e que caiba nessa partição pode ser carregado e executado nela Modelação de multiprogramação O uso da multiprogramacao pode melhorar o uso de um CPU Analise de desempenho de sistemas multiprogramacao Relocação e Protecção A multiprogramacao introduz dois problemas essenciais que devem ser resolvidos: a recolocacao e a protecção. Relocacao Uma vez que diferentes jobs são executados em diferentes endereços de memória e existem varias partições. É necessário corrigir as instruções do programa segundo a partição aonde este será carregado. Programas carregados na partição 1 terão 100 K adicionados a cada endereço e assim por diante. Protecção Programas mal intencionados poderão ler e escrever instruções, podendo assim inserir uma nova instrução em um programa. A solução da IBM foi dividir a memória em endereços de 2 K e associou um código de protecção de 4 bits a cada bloco. Alternativa a isto será fornecer o processador com dois registos: um registo base e um registo limite. Quando um processo é escalonado ou seja, escolhido para ser executado o registo-base é carregado com o endereço do início da partição alocada a esse processo e o registo-limite é carregado com o tamanho dessa partição. Cada endereço de memória gerado é automaticamente somado ao conteúdo do

2 registo-base antes de ser enviado á memoria. Os endereços gerados são também verificados em relação ao registo-limite para certificar-se que não tentarão endereçar memória fora da que foi alocado para o processo em execução. O hardware protege o registo-limite e o registo-base de serem modificados por programas de usuário. 4.2 Troca de processos (swapping) Ás vezes não há memória principal suficiente para conter todos os processos activos, de modo que os excedentes devem ser mantidos em disco e trazidos dinamicamente para a memória a fim de serem executados. Dois métodos podem ser executados: o swapping ou a memoria virtual. Como o que este ponto trata é o swaaping, falemos só dele. O swapping consiste em trazer totalmente cada processo para a memória, executa-lo durante um certo tempo e depois devolve-lo ao disco. Existem dois tipos de partições de memória: as fixas e as variáveis. A principal diferença entre elas é que o número, o tamanho e a localização das partições variáveis variam dinamicamente á medida que os processos entram e saem da memória, ao contrário das de tamanho fixo. Esta flexibilidade melhora a gestão da memória; entretanto complica a libertação e a alocacao de memória e a sua gestão. Melhor maneira: cada processo tem uma pilha no topo da sua memoria alocada, crescendo para baixa, e uma área e dados adjacente ao código o programa, crescendo para cima. O espaço entre essas duas áreas pode ser utilizado por ambas as áreas. Se esse espaço for todo ocupado então o processo terá de ser movido para outra área com espaço suficiente ou ser transferido para o disco e esperar até que uma área de memória grande o bastante fique disponível ou ser exterminado Gestão de memoria com mapa de bits É feito um mapa dos bits da memória. Como? Simples: A memória é dividida em unidades de alocacao, que podem conter apenas poucas palavras ou ter vários quilo bytes. Associado a cada unidade de alocacao existe um bit que diz se essa unidade esta livre ou não. 1 Corresponde a estar ocupada e 0 corresponde a estar livre. O senão desta técnica é que quando se decide carregar na memoria um processo com o tamanho k unidades, o gestor de memoria precisa de encontrar no mapa de bits k zeros consecutivos e essa operação demora muito tempo Gestão de memoria com listas encadeadas Um segmento é uma área de memória alocada a um processo ou uma área livre situada entre as áreas de memória de dois processos. Esta maneira de gestão da memória mantém uma lista encadeada de segmentos de memória alocados e de segmentos disponíveis. Cada elemento dessa lista encadeada especifica: 1. Um segmento de memoria disponível (H) ou um segmento de memoria alocado a um processo(p), 2. o endereço aonde se inicia esse segmento, 3. um ponteiro para o próximo elemento da lista Esta técnica tem a vantagem permitir uma actualização rápida e simples da lista sempre que um processo termina a sua execução ou for removido da memória. 4.3 Memoria virtual A ideia básica por detrás deste conceito é de que o tamanho total do programa (o seu código mais os seus dados e a pilha) pode exceder a quantidade de memória física disponível para ele. O sistema operacional mantém as partes activas do programa na memória e o restante em disco. Permite que programas possam ser executados mesmo que estejam parcialmente carregados na memória principal.

3 4.3.1 Paginação A maioria dos sistemas com memória virtual utiliza esta técnica. Em qualquer computador existe um conjunto de endereços de memória que os programas podem gerar ao ser executados. Esses endereços são denominados de endereços virtuais e constituem o espaço de endereçamento virtual. Nos sistemas que utilizam esta técnica existe uma MMU unidade de gestão memória. que mapeia endereços virtuais em endereços físicos. Uma cópia completa do código do programa deve estar presente em disco, de modo que partes possam ser carregadas dinamicamente na memória, quando necessário. O espaço de endereçamento virtual é dividido em unidades denominadas páginas (pages). As unidades correspondentes em memória física são denominadas molduras de páginas (page frames). As páginas e as molduras de página são sempre do mesmo tamanho. As transferências entre memória e disco são sempre em unidades de página. Quando um programa tenta utilizar uma página que não esta mapeada, a MMU constata que essa página não está mapeada e forca o desvio da CPU para o sistema operativo. Esta interrupção (trap) é denominada falta de página (page fault). O sistema operativo escolhe então uma moldura de página (page frame) pouco utilizada e a salva em disco. Em seguida ele carrega a página virtual referenciada pela instrução na moldura de página recém-libertada, actualiza o mapeamento da tabela de páginas e reinicia a instrução causadora da interrupção. O número de páginas é utilizado como um índice para a tabela de páginas a fim de se obter a moldura de página correspondente aquela página virtual. Se o bit presente/ausente da página virtual estiver em 0, ocorrerá uma trap do tipo falta de página. Se o bit presente estiver em 1, o numero da moldura de página encontrado na tabela de páginas será copiado para os três bits mais significativos do registo de saída, concatenando-os ao deslocamento de 12 bits, que é copiado sem alteração do endereço virtual de entrada. Juntos constituem o endereço físico de 15 bits da memória. O registo de saída envia esse endereço físico á memoria por meio de um barramento Tabelas de página O objectivo das tabelas de página é mapear páginas virtuais em molduras de página física. A tabela de páginas é uma função que utiliza o número da página virtual como argumento e tem o número da moldura de página correspondente como resultado TLB É um aparelho de hardware para mapear endereços virtuais em endereços físicos sem recorrer á tabelas de páginas Tabelas de páginas invertidas Existe apenas uma entrada por moldura de página na memória real, em vez de uma entrada por página do espaço de endereçamento virtual. Cada entrada informa que o par (processo, página virtual) está localizado na moldura de página. Um problema das tabelas de páginas invertidas é que a tradução de virtual para físico torna-se muito mais difícil. Quando o processo n referencia a página virtual p, o hardware não pode mais encontrar a página física utilizando p como índice da tabela de páginas. Em vez disso, ele deve pesquisar toda a tabela de páginas invertidas em busca de uma entrada (n, p). Um problema desta técnica é a perda de velocidade. Mas pode ser resolvida com a utilização da TLB. Se a TLB puder conter todas as páginas mais intensamente utilizadas, a tradução pode ocorrer tão rapidamente quanto nas tabelas de página convencionais. 4.4 Algoritmos de substituição de paginas Quando uma falta de página ocorre, o sistema operativo precisa de escolher uma página a ser removida memória a fim de libertar espaço para uma nova página a ser trazida para a memória. Se a página a ser removida tiver sido modificada enquanto esteve na memória, ela deverá ser reescrita no disco

4 com o propósito de actualizar a cópia virtual existente. Mas se a página não foi modificada, a cópia em disco já está actualizada e assim não é necessário reescreve-la. Embora seja possível escolher aleatoriamente uma página a ser descartada a cada falta de página, o desempenho do sistema será muito melhor se a página escolhida for uma que não estiver sendo muito utilizada. Percebe-seporque Seestiverasermuitoutilizada,nãotardamuitovaiserprecisaoutravez. Algoritmo Otimo NUR (não utilizada recentemente) FIFO (first in first out) SC (Segunda chance) Relógio MRU (menos recentemente utilizada) NFU (não frequentemente utilizada) Envelhecimento (aging) Conjunto de trabalho WSClock Comentário Não implementáveis, mas útil como padrão de desempenho Muito rudimentar Pode descartar páginas importantes FIFO bastante melhorado Realista Excelente, porem difícil de implementar de maneira exacta Aproximação bastante rudimentar ao MRU Bastante eficiente que se aproxima bem do MRU Implementação cara Bom e eficiente O algoritmo de substituição de pagina otimo O melhor dos algoritmos de substituição de páginas é fácil de descrever, mas impossível de implementar. Funciona assim: no momento em que ocorre uma falta de página, existe um determinado de conjunto de páginas na memória. Uma delas será referenciada na próxima instrução, ou seja, trata-se da mesma página que gerou a falta de página. Outras páginas podem ser referenciadas só dez, cem, ou talvez mil instruções mais tarde. Cada página pode ser rotulada com o número de instruções que serão executadas antes de aquela página ser referenciada pela primeira vez. O que o algoritmo diz é: apenas se deve remover a página com o maior rotulo. Desta maneira, o algoritmo otimo de substituição de página adia a ocorrência máxima da próxima falta de página o máximo possível O algoritmo de substituição de página não usada recentemente (NUR) A maioria dos computadores com memória virtual tem 2 bits de status o bit referenciada (R) e o bit modificada (M) associados a cada página virtual, que permitem que o sistema operativo saiba quais páginas físicas estão a ser utilizadas e quais não estão. O bit R é colocado a 1 sempre que a página é referenciada (lida ou escrita). O bit M é colocado a 1 sempre que se escreve na página. Os bits estão contidos em cada entrada da tabela de páginas. Esses bits devem ser actualizados em todas as referencias á memoria. Quando acontece uma falta de página, o sistema operativo inspecciona todas as páginas e separaas em quatro categorias, com base nos valores dos bits M e R: Classe Bit R Bit M Significado Não referenciada, não modificada Não referenciada, modificada Referenciada, não modificada Referenciada, modificada O que este algoritmo faz é remover uma página aleatoriamente da classe de ordem mais baixa que não esteja vazia. A principal vantagem do algoritmo NUR é ser fácil de entender e de implementar, e alem disso, fornece um desempenho que, apesar de não ser otimo, pode ser adequado Algoritmo de substituição de página FIFO

5 O sistema operativo mantém uma lista ligada de todas as páginas da memória. A página mais antiga na cabeça da lista e a mais recente na cauda da lista. A ideia é simples: a que estiver na cabeça da lista é a que vai saindo. O problema? Tanto podem sair páginas muitos utilizadas como pouco utilizadas. A solução? Utilizar o algoritmo a seguir O algoritmo de substituição página segunda chance (SC) Este algoritmo evita o problema do algoritmo FIFO. Para isso basta inspeccionar o bit R da página mais antiga, ou seja, a que está na cabeça da lista. Quando o R é: 0 A página alem de ser mais antiga, não está a ser utilizada. Então será substituída imediatamente. 1 O bit será colocado a 0; essa página será posta no final da lista de páginas e o seu tempo de carregamento será actualizado como se ela tivesse acabado de ser carregada na memória. O problema? Desnecessariamente ineficaz, pois permanece constantemente reinserindo páginas no final da lista. A solução? Utilizar o algoritmo a seguir Algoritmo de substituição de página relógio Este algoritmo mantém todas as páginas em uma lista circular em forma de relógio. Um ponteiro aponta para a página mais antiga, ou seja, para cabeça da lista. Quando o R é: 0 A página será substituída; a nova página será inserida em seu lugar e o ponteiro avançará uma posição. 1 O bit será colocado a 0 e o ponteiro avançara para a próxima página mais antiga. Repete este processo até encontrar uma página com o bit R a O algoritmo de substituição da página menos recentemente utilizada (MRU) Este algoritmo descarta a página que não é utilizada á mais tempo. Páginas referenciadas intensamente nas últimas instruções provavelmente serão de novo referenciadas de maneira intensa nas próximas instruções. Ao contrário também dá, ou seja, é provável que páginas que não foram referenciadas nas últimas instruções não o sejam nas próximas instruções. Para implementar isto é necessário um hardware especial de corrida que ainda não foi inventado Simulação do MRU em software Opaijávai O algoritmo de substituição de página do conjunto de trabalho Paginação por demanda é aquela paginação em que as páginas são carregadas á medida que só solicitadas. A localidade de referência diz que, durante qualquer uma das fases de sua execução, o processo só vai referenciar um fracção relativamente pequena de suas páginas. O conjunto de páginas que um processo está actualmente utilizando é denominado conjunto de trabalho. Se todo esse conjunto estiver na memória, o processo será executado com poucas faltas de página ate mudar para outra fase de execução. Se a memoria disponível for muito pequena para conter o conjunto, o processo sofrera muitas faltas de página e será executado lentamente.

6 Para reduzir substancialmente a frequência de faltas de página surgiu a prática denominada por modelo do conjunto de trabalho, que tenta colocar o conjunto de trabalho de um processo na memória principal antes de o processo ser executado. O algoritmo: ao ocorrer uma falta de página, encontre uma página não pertencente ao conjunto de trabalho e a remova da memória. Para implementar este algoritmo é necessário saber sempre que páginas pertencem e que páginas não pertencem ao grupo de trabalho. Para saber que páginas pertencem ao conjunto de trabalho considera-se as ultimas páginas referenciadas nos últimos t segundos do tempo virtual (tempo de CPU que um processo tem no momento) O algoritmo de substituição de página WSClock Oba oba!!! Finalmente um que é bom e eficiente! Ébaseadonoalgoritmodorelógio,eutilizatambéminformaçõesdoconjuntodetrabalho Li 2 ou 3 vezes e a diferença que encontrei para o do relógio foi que quando o bit R for igual a 0 e a página estiver suja (seja lá o que isso for) ela não poderá ser reivindicada imediatamente, já que não há uma copia valida em disco. Não entendi Modelagem de algoritmos de substituição de páginas Anomalia de Belady Nem sempre quantas mais molduras de páginas a memoria possui, menos faltas de página o programa poderá ter. Este bacano encontrou um contra exemplo em que isto não acontece no algoritmo FIFO A cadeia de distancias Uma referência a uma página será de agora em diante denotada pela distância do topo da pilha até á posição onde a página referenciada se estava localizada Previsão de frequência de faltas de página A cadeia de distâncias é aqui utilizada. O algoritmo varre página a página a cadeia de distâncias e controla o número de vezes que ocorre a mesma distância. A partir do vector das cadeias de distância constrói um vector de faltas de página. 4.6 Questões de projecto para sistemas de paginação Questões que se deve considerar cuidadosamente para obter um bom desempenho de um sistema de paginação Politica de alocacao local versus global Saber se alocamos um endereço com mais idade que pertença ao processo que está a ser executado ou um endereço de todo o conjunto dos processos que estão a ser executados. Em geral os globais funcionam melhor Controle de Carga (Load Control) Mesmo com o melhor algoritmo de substituição de páginas e uma óptima alocação global de molduras de página a processos, pode ocorrer paginação excessiva (trashing). Para reduzir o número de processos que competem por memória, leva-se alguns para o disco e liberta-se a memória a eles alocada.

7 Mesmo com a paginação, a troca de processos entre a memória e o disco é necessária. A diferença é que a troca de processos é utilizada para reduzir a requisição potencial por memória, em vez de reivindicar blocos para ela Tamanho de Página Frequentemente escolhido pelo sistema operativo. Não se consegue arranjar um tamanho de página óptimo pois existem vários factores a considerar que são conflituosos entre si. Tamanho de página pequeno: é provável que um segmento de código, dados ou pilha escolhido aleatoriamente não ocupe um número inteiro de páginas. Logo, o espaço fraccionário que sobra é desperdiçado. Este desperdício é denominado fragmentação interna. Tamanho de página pequeno: Nãoseiexplicarbemsemoexemplo Em geral, tamanhos de página grandes farão com que partes do programa não utilizadas ocupem desnecessariamente a memória. Por outro lado, páginas pequenas implicam muitas páginas e, consequentemente, grandes tabelas de paginação. Nas transferências entre memória e o disco gasta-se muito mais tempo na transferência de páginas pequenas do que de páginas grandes Espaços Separados de Instruções e Dados A maioria dos computadores tem um espaço único de endereçamento para programas e dados. Se esse espaço for suficientemente grande, tudo funcionará bem. Mas, muitas vezes o espaço é pequeno, o que obriga os programadores a suar a camisa para fazer caber tudo na memória. Uma solução consiste em espaços de endereçamento separados para instruções (I) e dados (D). Ambos os espaços de endereçamento podem ser paginados, independentemente um do outro Páginas Partilhadas Em grandes sistemas com multiprogramação é comum haver vários usuários utilizando o mesmo programa, então partilha-se página entre processos para evitar ter duas ou mais páginas iguais na memória. O problema é que nem todas as páginas são compartilháveis, em particular as páginas com dados alteráveis durante a execução de um programa. Se o sistema suportar os espaços I e D, o sistema faz que dois ou mais processos utilizem, no espaço I a mesma tabela de páginas em vez de tabelas de páginas individuais, mas diferentes tabelas no espaço D. Quando dois ou mais processos compartilham o mesmo código, existe um problema. Por exemplo, dois processos A e B estão ambos a executar e a compartilhar as suas páginas. Se o escalonador decide remover A da memória descartando todas as suas páginas e carregando as molduras de página vazias com outro programa, ele leva o processo B a causar muitas faltas de página até que suas páginas estejam novamente na memória Politica de Limpeza A paginação funciona melhor quando existe uma grande quantidade de molduras de página disponíveis prontas a serem requisitadas quando ocorrerem faltas de página. Para garantir um stock grande de molduras de página disponível os sistemas operativos utilizam um daemon de paginação, que dorme quase todo o tempo, mas que é acordado periodicamente para inspecionar o estado da memória. Se existirem algumas molduras disponíveis, o daemon começa a seleccionar as páginas a serem removidas da memória, utilizando um algoritmo de substituição de páginas. Se essas páginas tiverem sido modificadas desde que foram carregadas, elas serão escritas em disco. 4.7 Questões de Implementação

8 4.7.1 Envolvimento do Sistema Operacional com a Paginação Existem quatro circunstancias em que o sistema operativo tem de se envolver coma a paginação: Criação do processo O sistema operativo deve determinar o qual será o tamanho (inicial) do programa e de seus dados e criar uma tabela de páginas para ele. Execução do processo MMU tem de ser reinicializada para o novo processo e a TLB, esvaziada para livrar-se de resíduos do processo executado anteriormente. Falta de página O sistema operativo tem de ler os registos em hardware para determinar o endereço virtual causador da falta de página. Depois tem de levar a página que falta para a memória. Finalização do processo O sistema operativo deve libertar as tabelas de páginas, suas páginas, e o espaço em disco que as páginas ocupam Tratamento de Faltas de Página O que ocorre durante uma falta de página? A sequência dos eventos é a seguinte: 1. O hardware gera uma interrupção que desvia a execução para o núcleo, salvando o contador de programa na pilha. 2. Uma rotina em código de montagem é activada para salvar o conteúdo dos registos de uso geral e outras informações voláteis, a fim de impedir que o sistema operativo o destrua. 3. O sistema operativo descobre a ocorrência de uma falta de página e tenta identificar qual página virtual é necessária 4. Uma vez conhecido o endereço virtual causador da falta de página, o sistema operativo verifica se esse endereço é válido e se a proteccção é consistente com o acesso. Se não, o processo recebe um sinal ou é eliminado. 5. Se o conteúdo da moldura de página tiver sido modificado, a página será escalonada para ser transferida para o disco. 6. Tão logo a moldura de página seja limpa, o sistema operativo buscará o endereço em disco onde a página virtual solicitada está e escalará uma operação em disco para trazê-la para a memória. 7. Quando a interrupção de disco indicar que a página chegou à memória, as tabelas de páginas serão actualizadas para reflectir a nova realidade e será indicado que a moldura de página está em estado normal. 8. A instrução causadora da falta de página é recuperada para o estado em que se encontrava quando começou sua execução e o contador de programa é reiniciado. 9. O processo causador da falta de página é escalonado para execução e o sistema operativo retorna a rotina que o chamou. 10. Essa rotina recarrega os registos e outras informações de estado e retorna ao espaço de usuário para continuar a execução, como se nada tivesse ocorrido Recuperação de Instrução Quando um programa referencia uma página não presente na memória, a instrução causadora da falta de página é bloqueada no meio de sua execução e ocorre uma interrupção, desviando-se assim para o sistema operativo. Após o sistema operativo buscar em disco a página necessária, ele deverá reiniciar a instrução causadora da interrupção Fixação de páginas na memória Se um dispositivo de E/S estiver actualmente na fase de transferência via DMA para aquela página, a remoção da mesma da memória fará com que uma parte dos dados seja escrita na página correcta e, a outra parte, na nova página carregada na memória. Uma solução para esse problema é trancar as páginas envolvidas com E/S na memória, de modo que não possam ser removidas Memória Secundária

9 Localização em disco aonde a página descartada da memória é colocada. O algoritmo mais simples para a alocação de espaço em disco consiste na manutenção de uma área de troca em disco (swap area) Separação da Politica e do Mecanismo Uma ferramenta importante para gerir a complexidade de qualquer sistema é separar a política do mecanismo. O sistema de gestão de memória é dividido em três partes: 1. Um tratador de MMU de baixo nível 2. Um tratador de falta de página que faz parte do núcleo 3. Um paginador externo que executa no espaço do utilizador. 4.8 Segmentação Um segmento é uma entidade lógica que pode conter um procedimento, um vector, uma pilha ou um conjunto de variáveis escalares, mas em geral ele não apresenta uma mistura de diferentes tipos Implementação de Segmentação Pura A implementação da segmentação difere da paginação em um ponto essencial: as páginas têm tamanhos fixos e os segmentos não. Comparação entre a paginação e a segmentação: Consideração Paginação Segmentação O programador precisa de estar Não Sim ciente de que essa técnica está a ser utilizada? Quantos espaços de endereçamentos Um Muitos lineares existem? O espaço de endereçamento total Sim Sim pode exceder o tamanho da memória física? Os procedimentos e os dados podem Não Sim ser diferenciados e protegidos separadamente? As tabelas com tamanhos variáveis Não Sim podem ser acomodadas facilmente? A partilha de procedimentos entre Não Sim utilizadores é facilitada? Porquê que essa técnica foi inventada? Para fornecer um grande espaço de endereçamento linear sem a necessidade de comprar mais memória física Segmentação com Paginação: MULTICS Para permitir que programas e dados sejam quebrados em espaços de endereçamento logicamente independentes e para auxiliar a compartilha e a proteccção. Se os segmentos são grandes, talvez seja inconveniente ou mesmo impossível mantê-los em memória na sua totalidade. Isso gera a ideia de paginação dos segmentos, de modo que somente as páginas realmente necessárias terão de estar na memória. Cada segmento é um espaço de endereçamento comum, sendo também paginado do mesmo modo que a memória paginada não segmentada Um endereço no MULTICS consiste de duas partes: o segmento e o endereço dentro do segmento. O endereço dentro do segmento é, por sua dividido em duas partes: um número de página e uma palavra dentro da página.

10 4.8.3 Segmentação com Paginação: O Pentium Intel Parecido ao do MULTICS, difere nos números de segmentos que cada um pode ter e palavras dentro de cada segmento Resumo Troca de processos entre a memória e o disco: quando ela é utilizada, o sistema pode tratar processos em maior número do que o espaço em memória de que dispõe. Os processos para os quais não existe memória são levados para o disco. O espaço livre na memória ou no disco é controlado com o uso de mapas de bits ou lista de lacunas. Memória virtual: Em sua configuração mais simples, o espaço de endereçamento de cada processo é dividido em blocos de tamanho uniforme chamados de páginas, as quais podem ser colocadas em qualquer moldura de página disponível na memória. Existem muitos algoritmos de substituição de páginas; dois dos melhoras são o algoritmo do envelhecimento e o WSClock. Para fazer com que os sistemas de paginação trabalhem bem, a escolha do algoritmo não é suficiente; é necessário também observar questões como a determinação do conjunto de trabalho, a politica de alocação de memória e o tamanho da página. A segmentação ajuda no tratamento de estruturas de dados que alteram seus tamanhos durante a execução e simplifica a ligação e o compartilhamento. Ela facilita, o provimento de protecção diferenciada para segmentos diferentes. Muitas vezes a segmentação e a paginação são combinadas para fornecer uma memória virtual bidimensional

Capítulo 4 Gerenciamento de Memória

Capítulo 4 Gerenciamento de Memória Capítulo 4 Gerenciamento de Memória 4.1 Gerenciamento básico de memória 4.2 Troca de processos 4.3 Memória virtual 4.4 Algoritmos de substituição de páginas 4.5 Modelagem de algoritmos de substituição

Leia mais

Memória - Gerenciamento. Sistemas Operacionais - Professor Machado

Memória - Gerenciamento. Sistemas Operacionais - Professor Machado Memória - Gerenciamento Sistemas Operacionais - Professor Machado 1 Partes físicas associadas à memória Memória RAM Memória ROM Cache MMU (Memory Management Unit) Processador Tabela de Páginas TLB 2 Conceitos

Leia mais

Capítulo 4 Gerenciamento de Memória

Capítulo 4 Gerenciamento de Memória Capítulo 4 Gerenciamento de Memória 4.1 Gerenciamento básico de memória 4.2 Troca de processos 4.3 Memória virtual 4.4 Algoritmos de substituição de páginas 4.5 Modelagem de algoritmos de substituição

Leia mais

Capítulo 4 Gerenciamento de Memória

Capítulo 4 Gerenciamento de Memória Capítulo 4 Gerenciamento de Memória 4.1 Gerenciamento básico de memória 4.2 Troca de processos 4.3 Memória virtual 4.4 Algoritmos de substituição de páginas 4.5 Modelagem de algoritmos de substituição

Leia mais

Sistemas Operacionais I

Sistemas Operacionais I Sistemas Operacionais I Material Baseado no Livro Sistemas Operacionais Modernos 2ª. Ed. da Pearson Education 1 Agenda Deadlocks Gerenciamento de Memória 2 1 DEADLOCKS 3 Recursos Exemplos de recursos de

Leia mais

Gerenciamento de memória

Gerenciamento de memória Na memória principal ficam todos os programas e os dados que serão executados pelo processador. Possui menor capacidade e custo maior. S.O buscam minimizar a ocupação da memória e otimizar sua utilização.

Leia mais

Sistemas Operativos. Gestão de memória. Rui Maranhão (rma@fe.up.pt)

Sistemas Operativos. Gestão de memória. Rui Maranhão (rma@fe.up.pt) Sistemas Operativos Gestão de memória Rui Maranhão (rma@fe.up.pt) Gestão de memória idealmente a memória seria grande rápida não volátil contudo, na realidade existem limitações físicas! Portanto... hierarquia

Leia mais

AULA 13 - Gerência de Memória

AULA 13 - Gerência de Memória AULA 13 - Gerência de Memória omo sabemos, os computadores utilizam uma hierarquia de memória em sua organização, combinando memórias voláteis e não-voláteis, tais como: memória cache, memória principal

Leia mais

Gerenciamento Básico B de Memória Aula 07

Gerenciamento Básico B de Memória Aula 07 BC1518-Sistemas Operacionais Gerenciamento Básico B de Memória Aula 07 Prof. Marcelo Z. do Nascimento marcelo.nascimento@ufabc.edu.br Roteiro Introdução Espaço de Endereçamento Lógico vs. Físico Estratégias

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerenciamento de Memória Norton Trevisan Roman Marcelo Morandini Jó Ueyama Apostila baseada nos trabalhos de Kalinka Castelo Branco, Antônio Carlos Sementille, Paula Prata e nas transparências

Leia mais

Gerência de Memória. Paginação

Gerência de Memória. Paginação Gerência de Memória Paginação Endereçamento Virtual (1) O programa usa endereços virtuais É necessário HW para traduzir cada endereço virtual em endereço físico MMU: Memory Management Unit Normalmente

Leia mais

Capítulo 3 Gerenciamento de memória

Capítulo 3 Gerenciamento de memória Sistemas operacionais modernos Terceira edição ANDREW S. TANENBAUM Capítulo 3 Gerenciamento de memória Introdução Programas tendem a se expandir a fim de ocupar toda a memória disponível Programador deseja

Leia mais

O mecanismo de alocação da CPU para execução de processos constitui a base dos sistemas operacionais multiprogramados.

O mecanismo de alocação da CPU para execução de processos constitui a base dos sistemas operacionais multiprogramados. O mecanismo de alocação da CPU para execução de processos constitui a base dos sistemas operacionais multiprogramados. A multiprogramação tem como objetivo permitir que, a todo instante, haja algum processo

Leia mais

Gerenciamento de memória. Carlos Eduardo de Carvalho Dantas

Gerenciamento de memória. Carlos Eduardo de Carvalho Dantas Carlos Eduardo de Carvalho Dantas Motivos: 1 Manter a CPU ocupada o máximo de tempo para não existir gargalos na busca de dados na memória; 2 Gerenciar os espaços de endereçamento para que processos executem

Leia mais

Simulação do Processo de Substituição de Páginas em Gerência de Memória Virtual

Simulação do Processo de Substituição de Páginas em Gerência de Memória Virtual Simulação do Processo de Substituição de Páginas em Gerência de Memória Virtual Fagner do Nascimento Fonseca a, Orientador(a): Flávia Maristela S. Nascimento b a Instituto Federal da Bahia b Instituto

Leia mais

Organização e Arquitetura de Computadores

Organização e Arquitetura de Computadores Organização e Arquitetura de Computadores MemóriaVirtual Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Gerência de memória convencional Divide um programa em unidades menores Partes

Leia mais

2. NÍVEL DE SISTEMA OPERACIONAL

2. NÍVEL DE SISTEMA OPERACIONAL 2. NÍVEL DE SISTEMA OPERACIONAL Nos períodos anteriores foram mostrados os níveis iniciais da organização de um computador, quando vimos em Circuitos Digitais os detalhes do Nível 0 (zero) de Lógica Digital.

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores Arquitetura e Organização de Computadores Suporte do Sistema Operacional Material adaptado, atualizado e traduzido de: STALLINGS, William. Arquitetura e Organização de Computadores. 5ª edição Objetivos

Leia mais

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia O Sistema Operacional que você usa é multitasking? Por multitasking, entende-se a capacidade do SO de ter mais de um processos em execução ao mesmo tempo. É claro que, num dado instante, o número de processos

Leia mais

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Estruturas de Sistemas Operacionais Um sistema operacional fornece o ambiente no qual os programas são executados. Internamente,

Leia mais

A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande

A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande região de armazenamento formada por bytes ou palavras, cada

Leia mais

Nível da Arquitetura do Conjunto das Instruções

Nível da Arquitetura do Conjunto das Instruções Nível da Arquitetura do Conjunto das Instruções (Aula 13) Fluxo de Controle Fluxo Seqüencial de Controle e Desvios (1) Fluxo de Controle: É a seqüência na qual instruções são dinamicamente executadas Isto

Leia mais

Sistemas Operacionais

Sistemas Operacionais Aula 9 Sistemas Operacionais Ivan Saraiva Silva Ciência da Computação 2005.1 Gerência de Memória Um sistema de memória possui pelo menos dois níveis: Memória principal: RAM (acessada pela CPU) Memória

Leia mais

Programação de Sistemas

Programação de Sistemas Programação de Sistemas Introdução à gestão de memória Programação de Sistemas Gestão de memória : 1/16 Introdução (1) A memória central de um computador é escassa. [1981] IBM PC lançado com 64KB na motherboard,

Leia mais

Memória cache. Prof. Francisco Adelton

Memória cache. Prof. Francisco Adelton Memória cache Prof. Francisco Adelton Memória Cache Seu uso visa obter uma velocidade de acesso à memória próxima da velocidade das memórias mais rápidas e, ao mesmo tempo, disponibilizar no sistema uma

Leia mais

4) Abaixo está representado o nó_i do arquivo SO.txt em um sistema UNIX.

4) Abaixo está representado o nó_i do arquivo SO.txt em um sistema UNIX. 1) Dadas as seguintes tabelas, de Páginas e de Molduras de Páginas, dar os endereços físicos para os seguintes endereços virtuais: Tabela de Molduras Páginas 0 4k 7 0 0 4k 4k 8k X 1 4k 8k 8k 12k X 2 8k

Leia mais

Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger

Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger Gerenciamento de Entrada e Saída Hélio Crestana Guardia e Hermes Senger O controle da entrada e saída (E/S ou I/O, input/output) de dados dos dispositivos é uma das funções principais de um sistema operacional.

Leia mais

Infraestrutura de Hardware. Memória Virtual

Infraestrutura de Hardware. Memória Virtual Infraestrutura de Hardware Memória Virtual Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é entendido e executado pelo HW? Qual é a interface

Leia mais

Memória Virtual. Prof. Dr. José Luís Zem Prof. Dr. Renato Kraide Soffner Prof. Ms. Rossano Pablo Pinto

Memória Virtual. Prof. Dr. José Luís Zem Prof. Dr. Renato Kraide Soffner Prof. Ms. Rossano Pablo Pinto Memória Virtual Prof Dr José Luís Zem Prof Dr Renato Kraide Soffner Prof Ms Rossano Pablo Pinto Faculdade de Tecnologia de Americana Centro Paula Souza Tópicos Introdução Espaço de Endereçamento Virtual

Leia mais

Memória Cache. Prof. Leonardo Barreto Campos 1

Memória Cache. Prof. Leonardo Barreto Campos 1 Memória Cache Prof. Leonardo Barreto Campos 1 Sumário Introdução; Projeto de Memórias Cache; Tamanho; Função de Mapeamento; Política de Escrita; Tamanho da Linha; Número de Memórias Cache; Bibliografia.

Leia mais

Organização de Computadores 1

Organização de Computadores 1 Organização de Computadores 1 4 SUPORTE AO SISTEMA OPERACIONAL Prof. Luiz Gustavo A. Martins Sistema Operacional (S.O.) Programa responsável por: Gerenciar os recursos do computador. Controlar a execução

Leia mais

Capítulo 4 Gerência do Processador. O que sabemos é uma gota, o que ignoramos é um oceano. Isaac Newton

Capítulo 4 Gerência do Processador. O que sabemos é uma gota, o que ignoramos é um oceano. Isaac Newton Universidade Federal de Itajubá UNIFEI Instituto de Engenharia de Sistemas e Tecnologias da Informação IESTI CCO 004 Sistemas Operacionais Prof. Edmilson Marmo Moreira 4.1 Introdução Capítulo 4 Gerência

Leia mais

Arquitetura de Computadores. Sistemas Operacionais IV

Arquitetura de Computadores. Sistemas Operacionais IV Arquitetura de Computadores Sistemas Operacionais IV Introdução Multiprogramação implica em manter-se vários processos na memória. Memória necessita ser alocada de forma eficiente para permitir o máximo

Leia mais

Gerenciamento de memória

Gerenciamento de memória Sistemas Operacionais Gerenciamento de memória Capítulos 7 Operating Systems: Internals and Design Principles W. Stallings O problema Em um ambiente multiprogramado, é necessário: subdividir a memória

Leia mais

Organização de Computadores 1

Organização de Computadores 1 Organização de Computadores 1 5 CONJUNTO DE INSTRUÇÕES Prof. Luiz Gustavo A. Martins Introdução O que é um conjunto de instruções? Coleção completa das instruções que a CPU é capaz de executar (entende).

Leia mais

Sistemas Operacionais Arquivos. Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br)

Sistemas Operacionais Arquivos. Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br) Sistemas Operacionais Arquivos Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br) Copyright Carlos Ferraz Cin/UFPE Implementação do Sistema de Arquivos Sistemas de arquivos são

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores UNIVERSIDADE FEDERAL RURAL DO DO SEMI-ÁRIDO DEPARTAMENTO DEPARTAMENTO DE DE CIÊNCIAS CIÊNCIAS EXATAS EXATAS E E NATURAIS NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO CURSO DE CIÊNCIA DA COMPUTAÇÃO Arquitetura

Leia mais

FACENS Engenharia Mecatrônica Sistemas de Computação Professor Machado. Memória Armazenamento Sistema de Arquivos

FACENS Engenharia Mecatrônica Sistemas de Computação Professor Machado. Memória Armazenamento Sistema de Arquivos FACENS Engenharia Mecatrônica Sistemas de Computação Professor Machado Memória Armazenamento Sistema de Arquivos 1 Hierarquia de Memórias 2 Partes físicas associadas à memória Memória RAM Memória ROM Cache

Leia mais

Invenções Implementadas por Computador (IIC) Patentes

Invenções Implementadas por Computador (IIC) Patentes Invenções Implementadas por Computador (IIC) Patentes O que é uma IIC? Uma IIC é uma invenção que recorre a um computador, a uma rede de computadores ou a qualquer outro dispositivo programável (por exemplo

Leia mais

Processos. Paulo Sérgio Almeida 2005/2006. Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho

Processos. Paulo Sérgio Almeida 2005/2006. Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho Paulo Sérgio Almeida Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho 2005/2006 Conceito de processo Operações sobre processos Conceito de processo Conceito de processo

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 13 Gerência de Memória Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Sumário

Leia mais

Implementadas por Computador

Implementadas por Computador «Título Dia Aberto da Acção» da PI «Nome Ricardo Formador» Pereira «Título Invenções do Módulo» Implementadas por Computador «Função Desempenhada» Examinador de Patentes Universidade de «Local» Évora «dd.mm.aaaa»

Leia mais

Sistema Operacional. Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais

Sistema Operacional. Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais Sistema Operacional Processo e Threads Introdução a Processos Todos os computadores modernos são capazes de fazer várias coisas ao mesmo tempo. Enquanto executa um programa do usuário, um computador pode

Leia mais

Sistemas Operativos I

Sistemas Operativos I Gestão da Memória Luis Lino Ferreira / Maria João Viamonte Fevereiro de 2006 Gestão da Memória Gestão de memória? Porquê? Atribuição de instruções e dados à memória Endereços lógicos e físicos Overlays

Leia mais

Arquitetura de Sistemas Operacionais

Arquitetura de Sistemas Operacionais rquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Complementado por Sidney Lucena (Prof. UNIRIO) Capítulo 11 Sistema de rquivos 11/1 Organização de rquivos Um arquivo é constituído

Leia mais

IBM SmartCloud para Social Business. Manual do Utilizador do IBM SmartCloud Engage e IBM SmartCloud Connections

IBM SmartCloud para Social Business. Manual do Utilizador do IBM SmartCloud Engage e IBM SmartCloud Connections IBM SmartCloud para Social Business Manual do Utilizador do IBM SmartCloud Engage e IBM SmartCloud Connections IBM SmartCloud para Social Business Manual do Utilizador do IBM SmartCloud Engage e IBM SmartCloud

Leia mais

Sistemas Operacionais. Roteiro. Introdução. Marcos Laureano

Sistemas Operacionais. Roteiro. Introdução. Marcos Laureano Sistemas Operacionais Marcos Laureano 1/68 Roteiro Arquivos Organização de arquivos Diretórios Métodos de acesso Métodos de alocação em disco Fragmentação Tamanho de bloco Proteção de acesso 2/68 Introdução

Leia mais

BC 1518 - Sistemas Operacionais Sistema de Arquivos (aula 10 Parte 2) Prof. Marcelo Z. do Nascimento

BC 1518 - Sistemas Operacionais Sistema de Arquivos (aula 10 Parte 2) Prof. Marcelo Z. do Nascimento BC 1518 - Sistemas Operacionais Sistema de Arquivos (aula 10 Parte 2) Prof. Marcelo Z. do Nascimento 1 Gerência de espaço em disco Cópia de segurança do sistema de arquivo Roteiro Confiabilidade Desempenho

Leia mais

Notas da Aula 17 - Fundamentos de Sistemas Operacionais

Notas da Aula 17 - Fundamentos de Sistemas Operacionais Notas da Aula 17 - Fundamentos de Sistemas Operacionais 1. Gerenciamento de Memória: Introdução O gerenciamento de memória é provavelmente a tarefa mais complexa de um sistema operacional multiprogramado.

Leia mais

Computador Digital Circuitos de um computador (Hardware)

Computador Digital Circuitos de um computador (Hardware) Computador Digital SIS17 - Arquitetura de Computadores (Parte I) Máquina que pode resolver problemas executando uma série de instruções que lhe são fornecidas. Executa Programas conjunto de instruções

Leia mais

Gerência do Sistema de Arquivos. Adão de Melo Neto

Gerência do Sistema de Arquivos. Adão de Melo Neto Gerência do Sistema de Arquivos Adão de Melo Neto 1 Gerência do Sistema de Arquivos Organização dos arquivos Estrutura de diretório Gerência de espaço livre Gerência de alocação de espaços em disco Proteção

Leia mais

Unidade 11: A Unidade de Controle Prof. Daniel Caetano

Unidade 11: A Unidade de Controle Prof. Daniel Caetano Arquitetura e Organização de Computadores 1 Unidade 11: A Unidade de Controle Prof. Daniel Caetano Objetivo: Apresentar as funções o mecanismo de atuação da Unidade de Controle. Bibliografia: - STALLINGS,

Leia mais

CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO

CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO 4 CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO CONCEITOS BÁSICOS MS-DOS MICROSOFT DISK OPERATION SYSTEM INSTALAÇÃO E CONFIGURAÇÃO DE UM SISTEMA OPERATIVO LIGAÇÕES À INTERNET O que é um sistema operativo?

Leia mais

Instalação do Aparelho Virtual Bomgar. Base 3.2

Instalação do Aparelho Virtual Bomgar. Base 3.2 Instalação do Aparelho Virtual Bomgar Base 3.2 Obrigado por utilizar a Bomgar. Na Bomgar, o atendimento ao cliente é prioridade máxima. Ajude-nos a oferecer um excelente serviço. Se tiver algum comentário

Leia mais

Gestão de Memória. DCC/FCUP Fernando Silva Sistemas de Operação 1

Gestão de Memória. DCC/FCUP Fernando Silva Sistemas de Operação 1 Gestão de Memória Como organizar a memória de forma a saber-se qual o espaço livre para carregar novos processos e qual o espaço ocupado por processos já em memória? Como associar endereços de variáveis

Leia mais

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Introdução Considerações: Recurso caro e escasso; Programas só executam se estiverem na memória principal; Quanto mais processos

Leia mais

1. Arquivos Seqüenciais

1. Arquivos Seqüenciais 1. Arquivos Seqüenciais 1.1. Introdução Historicamente, os arquivos seqüências são associados as fitas magnéticas devido a natureza seqüencial deste meio de gravação. Mas os arquivos seqüências são também

Leia mais

implementação Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa Fernando Ramos, Nuno Neves, Sistemas Operativos, 2014 2015

implementação Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa Fernando Ramos, Nuno Neves, Sistemas Operativos, 2014 2015 Sistemas de ficheiros: implementação Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa Objetivos da aula Descrever algunsdetalhes daimplementação deumsistema de ficheiros Discutir algoritmos

Leia mais

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA 1. INTRODUÇÃO O conceito de concorrência é o princípio básico para o projeto e a implementação dos sistemas operacionais multiprogramáveis. O sistemas multiprogramáveis

Leia mais

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 2-1. PRINCÍPIOS DE SOFTWARE DE ENTRADA E SAÍDA (E/S) As metas gerais do software de entrada e saída é organizar o software como uma série de camadas, com as mais baixas preocupadas em esconder as

Leia mais

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Estruturas de Sistemas de Computação O sistema operacional precisa garantir a operação correta do sistema de computação. Operação

Leia mais

Sistemas Operacionais

Sistemas Operacionais 7 Sistemas Operacionais 7.1 Fundamentos da ciência da computação Cengage Learning Objetivos 7.2 Compreender o papel do sistema operacional. Compreender o processo de inicialização para carregar o sistema

Leia mais

Comunicação de Dados

Comunicação de Dados UNISUL 2013 / 1 Universidade do Sul de Santa Catarina Engenharia Elétrica - Telemática 1 Comunicação de Dados Aula 6 Agenda Projeto da camada de enlace de dados Detecção e correção de erros Protocolos

Leia mais

Computador E/S, Memória, Barramento do sistema e CPU Onde a CPU Registradores, ULA, Interconexão interna da CPU e Unidade de controle.

Computador E/S, Memória, Barramento do sistema e CPU Onde a CPU Registradores, ULA, Interconexão interna da CPU e Unidade de controle. Introdução Os principais elementos de um sistema de computação são a unidade central de processamento (central processing unit CPU), a memória principal, o subsistema de E/S (entrada e saída) e os mecanismos

Leia mais

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Gerenciamento de processos Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO 1 Conceitos Básicos Máxima utilização da CPU obtida com

Leia mais

Notas da Aula 6 - Fundamentos de Sistemas Operacionais

Notas da Aula 6 - Fundamentos de Sistemas Operacionais 1. Monitores Notas da Aula 6 - Fundamentos de Sistemas Operacionais Embora os semáforos sejam uma boa solução para o problema da exclusão mútua, sua utilização não é trivial. O programador é obrigado a

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Sistemas de Entrada/Saída Princípios de Software Sistema de Entrada/Saída Princípios de Software Tratadores (Manipuladores) de Interrupções Acionadores de Dispositivos (Device Drivers)

Leia mais

Gestor de Processos Núcleo do Sistema Operativo

Gestor de Processos Núcleo do Sistema Operativo Alínea do 1º teste 2015/16: Considere a linha: for (i=0;i

Leia mais

SOP - TADS Sistemas de Arquivos Cap 4 Tanenmbaum

SOP - TADS Sistemas de Arquivos Cap 4 Tanenmbaum SOP - TADS Sistemas de Arquivos Cap 4 Tanenmbaum Prof. Ricardo José Pfitscher dcc2rjp@joinville.udesc.br Material cedido por: Prof. Rafael Rodrigues Obelheiro Prof. Maurício Aronne Pillon Cronograma Introdução

Leia mais

ARQUITETURA DE COMPUTADORES II

ARQUITETURA DE COMPUTADORES II ARQUITETURA DE COMPUTADORES II UNIDADE 2: GERÊNCIA DE MEMÓRIA Conteúdo: INTRODUÇÃO 2 Exemplo da Biblioteca 2 2 HIERARQUIA DE MEMÓRIA 4 3 GERÊNCIA DE MEMÓRIAS CACHE 6 3 Mapeamento de endereços em memória

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Professores autores Vicente Pires Lustosa Neto Roberta De Souza Coelho Aula 11 - Gerenciamento de memória Apresentação Na última aula, aprendemos mais sobre os processos e como gerenciá-los.

Leia mais

Arquitetura de Computadores. Tipos de Instruções

Arquitetura de Computadores. Tipos de Instruções Arquitetura de Computadores Tipos de Instruções Tipos de instruções Instruções de movimento de dados Operações diádicas Operações monádicas Instruções de comparação e desvio condicional Instruções de chamada

Leia mais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais Notas da Aula 15 - Fundamentos de Sistemas Operacionais 1. Software de Entrada e Saída: Visão Geral Uma das tarefas do Sistema Operacional é simplificar o acesso aos dispositivos de hardware pelos processos

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais FATEC-PB Professor: Gustavo Wagner gugawag@gmail.com 1 Capítulo 6 Sistemas de Arquivos 6.1 Arquivos 6.2 Diretórios 6.3 Implementação do sistema de arquivos 6.4 Exemplos de sistemas

Leia mais

Capítulo 11: Implementação de Sistemas de Arquivos. Operating System Concepts 8 th Edition

Capítulo 11: Implementação de Sistemas de Arquivos. Operating System Concepts 8 th Edition Capítulo 11: Implementação de Sistemas de Arquivos Silberschatz, Galvin and Gagne 2009 Sobre a apresentação (About the slides) Os slides e figuras dessa apresentação foram criados por Silberschatz, Galvin

Leia mais

CAPÍTULO 6 NÍVEL DE SISTEMA OPERACIONAL. Nível de Sistema Operacional. Nível de Máquina Convencional. Nível de Microprogramação

CAPÍTULO 6 NÍVEL DE SISTEMA OPERACIONAL. Nível de Sistema Operacional. Nível de Máquina Convencional. Nível de Microprogramação CAPÍTULO 6 NÍVEL DE SISTEMA OPERACIONAL 6.1 Introdução Nível que automatiza as funções do operador do sistema. Nível 3 Nível de Sistema Operacional Sistema Operacional Nível 2 Nível de Máquina Convencional

Leia mais

LGTi Tecnologia. Manual - Outlook Web App. Soluções Inteligentes. Siner Engenharia

LGTi Tecnologia. Manual - Outlook Web App. Soluções Inteligentes. Siner Engenharia LGTi Tecnologia Soluções Inteligentes Manual - Outlook Web App Siner Engenharia Sumário Acessando o Outlook Web App (Webmail)... 3 Email no Outlook Web App... 5 Criar uma nova mensagem... 6 Trabalhando

Leia mais

Processos. Estruturas de Controle

Processos. Estruturas de Controle Processos Estruturas de Controle Processos e Recursos (1) LPRM/DI/UFES 2 Processos e Recursos (2) O S.O. gerencia recursos computacionais em benefício dos diversos processos que executam no sistema. A

Leia mais

Preparação da época de exames

Preparação da época de exames Preparação da época de exames Sugestões para os estudantes Imagem de http://jpn.icicom.up.pt/imagens/educacao/estudar.jpg A preparação para os Exames começa no início do Semestre O ritmo de exposição da

Leia mais

William Stallings Arquitetura e Organização de Computadores 8 a Edição

William Stallings Arquitetura e Organização de Computadores 8 a Edição William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 7 Entrada/saída Os textos nestas caixas foram adicionados pelo Prof. Joubert slide 1 Problemas de entrada/saída Grande variedade

Leia mais

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Introdução É preciso conhecer a estrutura de um sistema de computação antes que possamos explorar os detalhes de sua operação.

Leia mais

Programação Concorrente Processos e Threads

Programação Concorrente Processos e Threads Programação Concorrente Processos e Threads Prof. Eduardo Alchieri Processos O conceito mais central em qualquer sistema operacional é o processo Uma abstração de um programa em execução Um programa por

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais SISTEMAS DE ARQUIVOS MACHADO/MAIA: CAPÍTULO 11 Prof. Pedro Luís Antonelli Anhanguera Educacional SISTEMAS DE ARQUIVOS - INTRODUÇÃO O armazenamento e a recuperação de informações é

Leia mais

Como foi visto no tópico anterior, existem duas formas básicas para representar uma função lógica qualquer:

Como foi visto no tópico anterior, existem duas formas básicas para representar uma função lógica qualquer: ELETRÔNI IGITl I FUNÇÕES LÓGIS Formas de representação de uma função lógica omo foi visto no tópico anterior, existem duas formas básicas para representar uma função lógica qualquer: Soma de Produtos Produtos

Leia mais

Introdução. Uso do disco Vantagens Desvantagens Baixo custo, facilidade de manutenção do software e do hardware, simetria e flexibilidade

Introdução. Uso do disco Vantagens Desvantagens Baixo custo, facilidade de manutenção do software e do hardware, simetria e flexibilidade Introdução É sabido que os processos rodam em processadores. Nos sistemas tradicionais existe somente um único processador, de forma que não há dúvida a respeito de como ele deve ser usado. Em um sistema

Leia mais

Sistemas Operativos I

Sistemas Operativos I Arquitectura de um Computador Maria João Viamonte / Luis Lino Ferreira Fevereiro de 2006 Sumário Arquitectura de um Computador Estrutura de I/O Estrutura de Armazenamento Hierarquia de Armazenamento Protecção

Leia mais

Filas: conceitos e implementações

Filas: conceitos e implementações Estrutura de Dados I Filas: conceitos e implementações Cesar Rocha cesar@pontoweb.com.br 1 Objetivos Explorar os conceitos fundamentais acerca do uso de filas utilizando a linguagem C Organização e implementação,

Leia mais

Diminui o gargalo existente entre processador e memória principal; 5 a 10 vezes mais rápidas que a memória principal; Ligada diretamente à MP;

Diminui o gargalo existente entre processador e memória principal; 5 a 10 vezes mais rápidas que a memória principal; Ligada diretamente à MP; Diminui o gargalo existente entre processador e memória principal; Diferença de velocidade 5 a 10 vezes mais rápidas que a memória principal; Ligada diretamente à MP; Tecnologia semelhante à da CPU e,

Leia mais

Os textos nestas caixas foram adicionados pelo Prof. Joubert

Os textos nestas caixas foram adicionados pelo Prof. Joubert William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 4 Memória cache Os textos nestas caixas foram adicionados pelo Prof. Joubert slide 1 Características Localização. Capacidade.

Leia mais

Processos. Estados principais de um Processo: Contexto de um Processo. Nível de um Processo. http://www.dei.isep.ipp.pt/~orlando/so2/processos.

Processos. Estados principais de um Processo: Contexto de um Processo. Nível de um Processo. http://www.dei.isep.ipp.pt/~orlando/so2/processos. Página 1 de 5 Processos Consiste num método de descrição das actividades de um sistema operativo; Todo o software incluído no sistema operativo é organizado num grupo de programas executáveis. Cada um

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Sistema de Arquivos - II Prof. Galvez Implementação de Arquivos Arquivos são implementados através da criação, para cada arquivo no sistema, de uma estrutura de dados

Leia mais

Gerência de Processador

Gerência de Processador Gerência de Processador Prof. Edwar Saliba Júnior Junho de 2009 Unidade 03-003 Gerência de Processador 1 Introdução Com o surgimento dos sistemas multiprogramáveis, onde múltiplos processos poderiam permanecer

Leia mais

Capítulo 6. Gerenciamento de Arquivos. 6.1 Arquivos 6.2 Diretórios 6.3 Implementação (6.3.1 a 6.3.6) 6.4 Exemplos

Capítulo 6. Gerenciamento de Arquivos. 6.1 Arquivos 6.2 Diretórios 6.3 Implementação (6.3.1 a 6.3.6) 6.4 Exemplos Capítulo 6 Gerenciamento de Arquivos 6.1 Arquivos 6.2 Diretórios 6.3 Implementação (6.3.1 a 6.3.6) 6.4 Exemplos 1 Armazenamento de longo prazo 1. Deve guardar grandes volumes de dados. 2. Informação armazenada

Leia mais

Máquina de estados UNIX O

Máquina de estados UNIX O Estruturas Processos de Controle (Aula 5) Aula Interrupções Profa. Patricia Gerência fluxo, execução D. O Abstração passada Criação podendo de gerar hw e transição sw (mudança de CostaLPRM/DI/UFES que

Leia mais

Conceitos Básicos sobre Sistemas Operacionais

Conceitos Básicos sobre Sistemas Operacionais Conceitos Básicos sobre Sistemas Operacionais Ivanovitch Medeiros Dantas da Silva Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação DCA0800 - Algoritmos e

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais GERÊNCIA DO PROCESSADOR MACHADO/MAIA: CAPÍTULO 08 Prof. Pedro Luís Antonelli Anhanguera Educacional Gerenciamento do Processador A gerência do processador pode ser considerada a atividade

Leia mais

Máquina de estados UNIX O. Sistemas Operacionais 2008/1Profa. Patricia S.O. computação: recursos D. S.O S.O. controla eventos no sistema de

Máquina de estados UNIX O. Sistemas Operacionais 2008/1Profa. Patricia S.O. computação: recursos D. S.O S.O. controla eventos no sistema de Estruturas Processos de Controle (Aula 5) Aula Interrupções Profa. Patricia Gerência fluxo, execução D. O Abstração passada Criação podendo de gerar hw e transição sw (mudança de CostaLPRM/DI/UFES que

Leia mais