Arquitetura de Computadores

Slides:



Advertisements
Apresentações semelhantes
Sistemas Operacionais
Advertisements

Sistemas Operacionais
Sistemas Operacionais
Sistemas Operacionais
Sistemas Operacionais
Capitulo 6: Entrada e Saída
DESENVOLVIMENTO DE SISTEMAS PARA INTERNET
Arquitetura e organização de computadores
Barramentos Introdução.
Técnicas para operações E/S
Gerenciamento de Memória
Gerenciamento de memória
Arquitetura de Sistemas Operacionais Francis Berenger Machado
Sistemas Operacionais II
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
Indexação e Hashing Muitas consultas referenciam apenas uma pequena porção dos registros em uma tabela. Portanto necessitamos ser capaz de localizar estes.
Sincronização de Processos (3)
Sistemas Operacionais Turmas MBI1 e NBI2. Prof: Marcelo Mendes.
Claudio de Oliveira – Gerência de Memória 09/03/10 20:13 Claudio de Oliveira –
Debian Gerência de Memória.
Sistemas Operacionais I
Gerência de Memória.
Sistemas Operacionais I
Arquitectura de Computadores II
Proteção de Memória O sistema operacional deve impedir que um processo tenha acesso ou modifique uma página do sistema sem autorização. Proteção para páginas.
Sistemas Operacionais Gerenciamento de Memória
Aula prática 9 Alocação Dinâmica Monitoria de Introdução à Programação
Fundamentos da Arquitetura de Computadores
SISTEMAS OPERACIONAIS
Sistemas Operacionais
Sistemas Operacionais
Sistemas Operacionais
Gerência de Memória Fundamentos Swapping Alocação Contígua de memória
SISTEMAS OPERACIONAIS
Sistemas Operacionais I
Gerência de Memória Virtual
Organização e Arquitetura de Computadores
Ambiente de Execução - Rotinas
Processos.
Sistemas Operacionais
SISTEMAS OPERACIONAIS I
Sistemas Operacionais
SISTEMAS OPERACIONAIS I
Software Básico Nível ISA Capítulo 5 Mitsuo Takaki
Sistemas Operacionais
Sistemas Operacionais
Capítulo 8: Memória principal
Sistemas operacionais
Sistemas Operacionais
SISTEMAS OPERACIONAIS I
Troca de Mensagens Programação concorrente
DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Gerenciamento de Memória.
Sistemas Operacionais
Sistemas Operacionais
Infra-Estrutura de Software Gerenciamento de Memória.
Capítulo 4: Processos.
Gerenciamento de Memória
SISTEMAS OPERACIONAIS MACH EPOS
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
Programação Concorrente
Administração de Sistemas Operacionais 1 -Windows
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.
Faculdade Pernambucana - FAPE Sistemas Operacionais Prof. Flávio Gonçalves da Rocha.
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais FATEC-PB Professor: Gustavo Wagner
Transcrição da apresentação:

Arquitetura de Computadores Ricardo de Sousa Britto

Motivação SEGMENTAÇÃO Sistema de Memória virtual por paginação é unidimensional. Problema: Estruturas de dados dinâmicas (pilhas, tabelas de símbolos ...) podem encostar umas nas outras. Solução: Dividir a memória em segmentos Segmentos: Espaços de endereçamento unidimensionais independentes de tamanho variável

SEGMENTAÇÃO Motivação

SEGMENTAÇÃO Motivação

Funcionamento SEGMENTAÇÃO A memória é organizada de forma bidimensional. Um segmento armazena apenas um tipo de estrutura de dados e não é transparente para o usuário. Permite manipular de forma independente estruturas dinâmicas.

Funcionamento SEGMENTAÇÃO Segmentos diferentes podem ter diferentes tipos de proteção. Procedimentos podem ser armazenados em segmentos distintos. Se um procedimento for modificado, nenhum outro precisa ser modificado. Procedimentos podem ser compartilhados por processos paralelos.

Segmentção X Paginação SEGMENTAÇÃO Segmentção X Paginação

Implementação SEGMENTAÇÃO Existem duas formas de se implementar segmentação: Swapping Paginação

Segmentação por Swapping Semelhante a paginação por demanda. Memória armazena conjunto de segmentos de tamanho variável. Problema: geração de buracos = Fragmentação externa Solução: Compactação, Best fit, First fit, Compensação de Buracos.

Segmentação por Swapping

Segmentação por Swapping

Compactação SEGMENTAÇÃO Mover todos os segmentos que estiverem acima de um buraco de modo a ocupar-lo Duas abordagens: Compactar quando aparece um buraco ou quando tem um quantidade determinada Desvantagem: Gasta muito tempo para ser executada

SEGMENTAÇÃO Best Fit Colocar um novo segmento na memória de forma a deixar a menor folga possível Evita que buracos grandes sejam transformados em buracos menores Deve-se manter uma lista de buracos, contendo o endereço e tamanho deles

SEGMENTAÇÃO First Fit Deve-se manter uma lista de buracos, contendo o endereço e tamanho deles Fica-se percorrendo a lista até encontrar um buraco suficientemente grande Mais rápido que o best fit

Compensação de Buracos SEGMENTAÇÃO Compensação de Buracos Ao retirar um segmento vizinho a um buraco, cria-se um buraco maior formado pela soma do velho e do espaço novo Deve-se manter uma lista de buracos, contendo o endereço e tamanho deles Pode ser utilizado juntamente com o best fit e o first fit

Segmentação por Paginação Segmentos são divididos em um conjunto de páginas Páginas são carregadas por demanda na memória principal Em um dado momento, algumas páginas de um segmento podem estar na memória principal e outras na memória virtual É necessário manter uma tabela de páginas pra cada segmento

Segmentação por Paginação

MULTIPROGRAMAÇÃO Motivação Alguns algoritmos podem ser mais bem programados se forem implementados por meio de 2 ou mais processos cooperantes Outros algoritmos podem ser divididos em várias partes, de forma a serem executadas em paralelo

Paralelismo Real X Paralelismo Simulado MULTIPROGRAMAÇÃO Paralelismo Real X Paralelismo Simulado Paralelismo real: processos rodam em pc com mais de um processador ou roda em vários pcs Paralelismo simulado: processos compartilham um mesmo pc, sendo escalonados pelo SO

Paralelismo Real X Paralelismo Simulado MULTIPROGRAMAÇÃO Paralelismo Real X Paralelismo Simulado

MULTIPROGRAMAÇÃO Condição de Corrida Dois processos (produtor e consumidor) assíncronos comunicam-se por meio de um buffer circular. Produtor: calcula números e os armazena no buffer Consumidor: remove os números do buffer (um por vez) e os imprime

MULTIPROGRAMAÇÃO Condição de Corrida Ponteiro entrada: aponta para a próxima palavra livre do buffer Ponteiro saída: aponta para o próximo número a ser removido O topo do buffer é logicamente contíguo ao fundo Entrada = Saída, buffer vazio Quando entrada esta logicamente uma palavra atrás de saída, o buffer está cheio

MULTIPROGRAMAÇÃO Condição de Corrida

Procedimento Produtor MULTIPROGRAMAÇÃO Procedimento Produtor

Procedimento Consumidor MULTIPROGRAMAÇÃO Procedimento Consumidor

Problema Inconsistência nos valores para entrada e saída MULTIPROGRAMAÇÃO Problema Inconsistência nos valores para entrada e saída Processo produtor envia sinal de acordar para consumidor em momento errado Isso leva aos os dois processos dormirem em um determinado momento, situação que se prolonga indefinidamente

MULTIPROGRAMAÇÃO Solução Bit de espera acordado: Um bit assegura que um processo só deve dormir se este bit estiver em zero Semáforos: Bloqueiam determinado recurso para leitura e escrita. Em determinado momento, se um processo estiver alterando um recurso, nenhum outro processo pode escrever ou ler nesse momento

MULTIPROGRAMAÇÃO Semáforos