Você está na página 1de 10

6.

1 Em relao a vantagem e desvantagem da E/ S mapeada na memria


com relao E/S independente. Enumere duas vantagens e duas desvantagens.
Vantagens:
1. No h necessidade de mais linhas de controle no barramento para distinguir comandos
de memria de comandos de entrada e sada.
2. O endereamento mais flexvel. Registradores podem ser utilizados para dados ou
mdulos de entrada e sada, tambm, diversos modos de endereamento de instruo
podem ser usados.
Desvantagens:
1. Memria mapeada de entrada e sada utiliza instrues de referencia de memria, que,
em algumas mquinas, so maiores que instrues de entrada e sada, fazendo com que
o programa se torne maior.
2. O endereamento lgico do hardware dos mdulos de entrada e sada mais complexo,
por causa do tamanho do endereamento dos perifricos.
6.2 Em quase todos os sistemas que incluem mdulos de DMA, o acesso do mdulo de
DMA memria principal tem prioridade mais alta do que o acesso da Cpu. Por qu?
Se o processador da CPU tem um ciclo roubado ao tentar ler ou escrever na memria,
normalmente nenhum dano ocorre, exceto um pequeno atraso de tempo. Entretanto, numa
transferncia via DMA, que est transferindo dados de ou para algum perifrico, uma
parada longa de transferncia (negao de continuidade de acesso a memria principal)
pode gerar perdaou corrupo dos dados.
6.3 Considere o sistema de disco descrito no Exerccio 5.6 e suponha que o disco gira a
360
rpm. Um processador l um setor do disco usando E/S dirigida por interrupo, com
uma interrupo por byte transferido. Se o processador gasta 2,5 Ils para processar cada
interrupo, qual a porcentagem do tempo do processador despendida no tratamento
de EI S (desconsidere o tempo de busca no disco)?
Se temos o disco girando a 360 rpm, ento um byte lido do disco em:
T = tempo de transferncia
b = nmero de bytes transferidos
N = nmero de bytes da trilha
r = velocidade de rotap (rpm)
T = b/(r*N) = 1 / (360 rpm * 512 bytes/ setor * 96 setores/trilha)
T = 3,4 s
Se uma interrupo ocorre a cada byte, ento o sistema operacional ir processar a
interrupo (2,5 s), a seguir realizar alguma outra tarefa, depois, processar outra
interrupo, etc... O tempo entre as interrupes igual ao tempo necessrio para ler 1
byte. Em outras palavras, o disco ir ler 1 byte, ento interromper o sistema operacional,
depois, ler outro byte. O sistema operacional apenas poder realizar algum outro trabalho
se tiver tempo suficiente para processar uma interrupo antes que outra ocorra. Neste
caso, o processador ir despender 2,5 s / 3,4 s / byte ou 74% de seu tempo no tratamento
de E/S.
6.4 Repita o Exerccio 6.3 usando DMA e supondo uma interrupo a cada setor
transferido.
Com DMA, existe apenasuma interrupo por cada setor inteiro. Isto leva 3,4 s/byte * 512
bytes/setor = 1,741 s para ler o setor. Desta forma, o processador somente gasta 2,5 s /
1741 s = 0,14% do tempo de tratamento de E/S.
Nota:
No est sendo levado em considerao o tempo de atraso rotacional, na resposta acima.
Caso este tempo seja includo, ento o tempo para ler um byte ser aumentado na forma:

T = b / (r*N) + 1/(2*r) = 8,3 ms


Isto significa que o tempo que o processador utiliza para processar uma interrupo bem
pequeno (aproximadamente 0,003% em ambos os casos).
6.5 Um mdulo de DMA transfere caracteres para a memria usando a tcnica de roubo
de
ciclo, a partir de um dispositivo que transfere dados taxa de 9600 bps. O processador
busca instrues a uma taxa de 1 milho de instrues por segundo (1 MIPS). Qual a
diminuio na velocidade do processador em virtude da atividade do mdulo de DMA?
O processador acessa a memria principal a cada uma vez a cada 1 micro segundo (1
MIPS).
O mdulo de DMA transfere dados taxa de 9600 bps.
O tempo para esta taxa : 1/9600 = 104 segundos
O DMA rouba 104 rd ciclo.
A diminuio da velocidade do processador em virtude da atividade do mdulo de DMA
ser:
(1/104) * 100% = 0,96%
6.6 Um computador de 32 bits possui dois canais seletores e um canal multiplexador. Cada
canal seletor contm dois discos magnticos e duas unidades defita magntica. Ao canal
multiplexador so conectadas duas impressoras de linha, duas leitoras de carto e dez
terminais de vdeo / teclado. Considere as seguintes taxas de transferncia:
Unidade de disco: 800 Kbytes/s
Unidade de fita magntica: 200 Kbytes/s
Impressora de linha: 6,6 Kbytes / s
Leitora de carto: 1,2 Kbyte / s
Terminal de vdeo / teclado: 1 Kbyte / s
Estime a taxa mxima agregada de transferncia de E/S nesse sistema.
Considerando-se que apenas um dispositivo por vez tem acesso ao canal, a mxima
transferncia se da na ordem calculada:
1 * 800 (unidade Disco canal seletor)
1 * 800 (unidade Disco canal seletor)
2* 6,6 (impressora de linha canal multiplexador)
2 * 1,2 (leitor de carto canal multiplexador)
10 * 1(terminal de vdeo/teclado canal multiplexador)
800 + 800 + 2*6,6 + 2*1,2 + 10*1 = 1625,6 Kbytes / seg
6.7 Um computador contm um processador e um dispositivo O de E/S, conectados
memria
principal M por meio de um barramento compartilhado com uma largura do barramento
de dados de um palavra. O processador pode executar no mximo 106
instrues por segundo. Uma instruo requer, em mdia, cinco ciclos de mquina, trs
dos quais usam o barramento de memria. Uma operao de leitura ou de escrita na
memria gasta um ciclo de mquina. Suponha que o processador execute programas
continuamente, que consomem 95% da sua taxa de execuo de instrues, mas no
envolvem
qualquerinstruo de E/S. Suponha, ainda, que o ciclo do processador tem a
mesma durao do ciclo de barramento e que o dispositivo de E/S para ser usado para
transferir grandes blocos de dados entre Me D.
a. Supondo que usada EIS programada e que a transferncia de E/S de uma palavra
requer
a execuo de duas instrues pelo processador, estime a taxa mxima de transferncia
de dados de E/S em palavras por segundo atravs de D.
b. Estime essa mesma taxa supondo que usado acesso direto memria.
ENTRADA ESADA 237

a) Como o computador utiliza 95% de sua capacidade em execuo de instrues, resta


apenas 5% do seu tempo para dispositivos de entrada e sada (E/S).
Executando 10^6 instrues por segundo:
A taxa de execuo de E/S ser: 10 ^6 * 0,05 = 50.000 instrues por segundo.
A taxa de transferncia de E/S SER: 25000 palavras por segundo.
b) O nmero de ciclos de mquina disponvel para DMA ser:
10^6 * ( 0.05 * 5 + 0.95 * 2 ) = 2150.000 ciclos = 2,15 * 10^6 ciclos
Que ser a mxima taxa de transferncia do DMA.
6.8 Uma fonte de dados produz caracteres ASCII de 7 bits, a cada qual anexado um bit
de
paridade. Obtenha uma expresso para a taxa efetiva mxima de transferncia de dados
(taxa de transferncia de bits de caracteres ASCII), sobre uma linha de R bps, para os
seguintes casos:
a. Transmisso assncrona, com um bit de parada a cada 1,5 unidade de dados.
b. Transmisso sncrona de bits, com umquadro de transmisso de 48 bits de controle e
128
bits de informao.
c. O mesmo que em (b), mas com um campo de informao de 1024 bits.
d. Transmisso sncrona de caracteres, com um quadro de transmisso de 9 caracteres de
controle e 16 caracteres de informao.
e. O mesmo que em (d), com campo de informao de 128 caracteres.
Taxa Mxima de transferncia (TM) = Frao da taxa(f) * Linha de R bips (R)
TM = f * R
a) Para 7 bits de dados; 1 bit de partida; 1,5 bit de parada; 1 bit de paridade
f = 7 / (1 + 7 + 1 + 1,5) = 0,67
TM = 0,67 * R
b) Com cada quadro contendo 176 bits (48+128)
O nmero de caracteres ser: 128 / 8 = 16
O nmero de bits de dados ser: 16 * 7 = 112
TM = (112/176) * R = 0,64 * R
c) Cada campo com 1024 bits;
O nmero de caracteres ser:
1024 / 8 = 128
O nmero de bits de dados ser:
128 * 7 = 896
TM = (896 / 1072) * R = 0,84 * R
d) Com quadro de transmisso de 9 caracteres de controle e 16 de informao;
Cada quadro contm: ( 9 * 16) * 8 = 200 bits
O nmero de bits de dados ser:
16 * 7 = 112 bits
TM = (112 / 200) * R = 0,56 * R
e) Com quadro de transmisso de 9 caracteres de controle e 128 de informao;
Cada quadro contm: (9 * 128) * 8 = 1096 bits
TM = (896 * 1096) * R = 0,82 * R
6.9 O problema a seguir baseado em uma metfora dos mecanismos de EiS sugerida
em
Erkert (1990) (Figura 6.23):
Dois garotos esto jogando, um de cadalado de uma cerca alta. Um deles, chamado

Servidor
de mas, tem um belo p de mas, carregado com deliciosas mas, do seu lado
da cerca; ele sente-se feliz em fornecer mas ao outro garoto sempre que ele solicita. O
outro garoto, chamado Comedor de mas, adora comer mas, mas no tem nenhuma.
De fato, ele deve comer mas a uma taxa fixa (uma ma por dia mantm o mdico
longe). Se comer mas a uma taxa mais alta, ele ficar doente. Se comer mais devagar,
sofrer de desnutrio. Nenhum dos garotos pode falar e, portanto, o problema transferir
mas do Servidor para o Comedor de mas na taxa correta.
a. Suponha que existe um relgio com alarme no alto da cerca, que pode ser programado
para disparar o alarme. Como o relgio pode ser usado para resolver o problema?
Desenhe
um diagrama de tempo para ilustrar a soluo.
b. Suponha agora que no existe nenhum relgio. Em vez disso, o Comedor de mas tem
uma bandeira, que ele pode balanar quando desejar uma ma. Sugira uma nova
soluo.
Seria til que o Servidor de mas tambm tivesse uma bandeira? Em caso afirmativo,
incorpore isso sua soluo. Discuta as desvantagens dessa abordagem.
c. Agora dispense a bandeira e suponha que exista um longo pedao de corda. Sugira
uma
soluo que utilize a corda e seja melhor do que a apontada em (b).
a)
A transferncia das mas deve ser sincronizada com o relgio, que deve ser ajustado
para tocar conformeas necessidades de ma do Comedor de mas.
Num momento inicial, ambos devem saber que devem iniciar o processo de servir /comer
mas. Isto deve acontecer a partir do momento em que o relgio desliga na primeira vez,
o que dar incio ao processo.
Quando o relgio tocar novamente, o Servidor de mas deve pegar uma ma e atira-la
por sobre a cerca.
No prximo toque ser a vez do Comedor de mas apanhar a ma atirada sobre a cerca
e come-la.
Esta sequncia de procedimentos deve ser a anloga a transferncia sincronizada de
dados entre dispositivos de um computador, como por exemplo, leitura de dispositivo de
entrada e sada de dados(E/S), utilizando-se barramento.
Dados
E/S
Pulso clock
Endereo
Durante o primeiro pulso do sinal de clock, a linha de endereos vai para nvel alto,
colocando bits de endereo no barramento. No segundo pulso, a linha de leitura de E/S
ativada, fazendo com que os bits de dados sejam colocados na linha de dados. Durante o
terceiro pulso de clock, ACPU l os dados.
b) Os garotos devem possuir, cada um, uma bandeira de sinalizao e acordar que
sempre que o Comedor de maas sinalizar com sua bandeira, colocando-a na posio
hasteada, o Servidor de mas dever pegar uma ma e atira-la por sobre a cerca e, em
seguida, hastear a sua bandeira, por certo espao de tempo, para sinalizar que enviou
uma ma. Isto evitar que, caso o comedor de mas venha a esquecer sua
bandeirahasteada, o Servidor de mas continue enviando-as sem que o segundo
realmente delas necessite.
A sequncia seria aproximadamente como abaixo:
O Comedor de mas hasteia sua bandeira avisando que est com fome.
O Servido de mas v a bandeira de seu colega hasteada; pega uma ma e a atira
sobre a cerca.
O Servidor de mas hasteia, por certo espao de tempo, sua bandeira, para avisar que
enviou a ma solicitada.

O Comedor de mas ao ver a bandeira do amigo hasteada, sabe que a ma est


disponvel e a recolhe.
O Comedor de mas mantm sua bandeira abaixada at que ele tenha fome novamente.
Um problema com este procedimento que o Servidor de mas poderia estar atarefado
com outras atividades e no perceber a solicitao de seu amigo e o deixaria faminto. Para
evitar este problema, seria necessrio que o Servidor de mas no fizesse outra coisa a
no ser vigiar a indicao de seu companheiro, o que seria desperdcio de atividades.
Em computao, as etapas acima seriam denominadas de E/S assncrona.
c) Assumindo que a corda vai de um lado a outro da cerca e esteja atada ao corpo de cada
garoto, o Comedor de mas deve sinalizar que est com fome, dando um leve puxo na
corda, que ir alertar ao Servidor de mas a parar o que estiver fazendo e atirar uma
ma para o amigo, aps o que, tambm aplica um leve puxo na corda para avisar que a
ma est disponvel.
Se porventura o Servidor de mas estivermuito ocupado em outra tarefa, este pode
desamarrar a corda de seu corpo e terminar a atividade em que estiver envolvido,
amarrando-a a si novamente ao trmino da ocupao.
Este procedimento equivale, em computao, a um sinal de requerimento de interrupo.
6.10 Suponha que um microprocessador de 16 bits e dois de 8 bits devam ser conectados
a
um barramento do sistema. Considere os seguintes detalhes:
1. Todos os microprocessadores possuem as caractersticas de hardware necessrias
para qualquer tipo de transferncia de dados: EIS programada, EIS dirigida por interrupo
e DMA.
2. Todos os microprocessadores tm barramento de endereo de 16 bits.
3. Duas placas de memria, cada uma com capacidade de 64 Kbytes, so conectadas ao
barramento. O projetista quer usar uma memria compartilhada que seja a maior
possvel.
4. O barramento do sistema contm, no mximo, quatro linhas de interrupo e uma
linha de DMA. Faa quaisquer outras hipteses que julgar necessrias.
a. Especifique o tipo e o nmero de linhas do barramento do sistema.
b. Explique como os dispositivos relacionados acima so conectados ao barramento do
sistema.
Suposies:
Os mdulos de memria de 64 possuem interface de 8-bits
No necessrio controle de barramento; arbitrao lgica decide qual processador tem o
tempo do barramento.
Quando o DMA usa o barramento, todos os processadores entram em estado de HOLD.
Controle de interrupo debarramento necessita ser interfaceado com o processador
( selecionar um ou criar lgica para mais); interrupo de E/S.
7.1 Considere um computador multiprogramado, no qual todas as tarefas tm
caractersticas
idnticas. Durante um intervalo de computao T, uma tarefa gasta a metade do
tempo em EIS e a outra metade em atividade do processador. Cada tarefa executa um
total de N perodos. Suponha que seja usada uma fila de prioridade circular e que as
operaes de EI S possam se sobrepor com a operao do processador. Defina as
seguintes
quantidades:
Tempo de resposta = tempo real para completar uma tarefa
Taxa de execuo de tarefas = nmero mdio de tarefas completadas por perodo de
tempoT
Utilizao do processador = porcentagem de tempo que o processador est ativo
(noocioso)

Calcule cada uma dessas quantidades para os casos em que h uma, duas e quatro
tarefas
simultneas, supondo que o perodo T seja distribudo de cada uma das seguintes
maneiras:
a. A primeira metade para EIS (I/O-bound) e a segunda metade para o processador.
b. O primeiro e quarto quartos para EIS e o segundo e terceiro quartos para o processador.
T = perodo de tempo (intervalo de computao)
N = nmero de perodos
Operaes de E/S podem sobrepor-se com operao do processador
Operaes do processador so contnuas (no se sobrepem)
TRT = Tempo real de resposta = tempo real para executar uma tarefa
TN = T*N = Taxa deexecuo de tarefas
Formato de clculo idntico para respostas: a) e b)
Para um trabalho: TRT = TN, com utilizao de 50% do trabalho do processador
Para dois trabalhos: TRT = NT , com utilizao de 100% de trabalho do processador
Para quatro trabalhos: TRT = ( 2*N -1) * N, com utilizao de 100% de trabalho do
processador
7.2 Um programa limitado por EIS um programa que, quando executado sozinho, gasta
mais
tempo esperando por EIS do que usando o processador. Um programa limitado pelo
processador
o oposto. Suponha que um algoritmo de escalonamento de curto prazo favorea
programas que tenham usado pouco tempo do processador no passado recente.
Explique por que esse algoritmo favorece os programas limitados por EI S e, ainda, evita
situaes em que os programas limitados por processamento fiquem sem tempo de
processador.
Programas limitados por E/S utilizam pouco tempo do processador e so, desta forma,
favorecidos pelo algoritmo. Entretanto, se um processo de programa limitado pelo
processador negado pelo processador por um perodo te tempo mais longo, este mesmo
algoritmo ir garantir a este processo a utilizao do processador, j que este processo
no teve acesso adequado ao processador no passado recente. Sendo assim, no
acontecer de o programa limitado pelo processador ter acesso permanentemente
negado.
7.3 Um programa computa a seguinte soma das linhas de uma matriz A de dimenso
100 x100:
n
Ci = aij
J=1
Suponha que o computador use paginao sob demanda, com pginas de tamanho igual
a mil palavras, e que o total de memria principal alocada para dados seja de cinco blocos
de pginas. A taxa de faltas de pginas seria diferente caso a matriz A fosse armazenada
na memria virtual por linha ou por coluna? Explique.
Considerando-se que a memria principal pode guardar 5 blocos de pginas:
O tamanho da ARRAY de 10 pginas;
Caso a ARRAY seja armazenada em linhas, ento, a cada dez pginas, estas devero
ser transferidas para a memria principal. Se a ARRAY for armazenada em colunas,
ento cada linha ser dispersa ao longo das dez pginas, e cada pgina dever ser
acessada 100 vezes, uma para cada calculo de linha (10 * 10).
7.4 Suponha que a tabela de pginas do processo que est sendo executado no
processador seja

tal como a apresentada a seguir. Todos os endereos nessa tabela so nmeros decimais,
a
partir de zero, e so endereos de bytes de memria. O tamanho de uma pgina 1024
bytes.
Nmero de Pgina virtual | Bit entradaVlida | Bit Pgina Referenciada |Bit Pgina
Modificada | Nmero de Bloco de Pgina |
0|1|1|0|4|
1|1|1|1|7|
2|0|0|0|-|
3|1|0|0|2|
4|0|0|0|-|
5|1|0|1|0|
a. Descreva exatamente como um endereo virtual gerado pela CPU traduzido para
um endereo fsico na memria principal.
b. A qual endereo fsico, se houver, corresponderia cada um dos seguintes endereos
virtuais? (No tente manipular nenhuma falta de pgina, se houver).
(i) 1052
(ii) 2221
(iii) 5499
a) Dividindo endereos binrios em nmero de pginas virtuais e OffSet:
Utilizando VPN como ndice de tabela de pagina:
Extraindo nmero de quadro de pgina:
Concatenando OffSet para gerar endereo fsico de memria:
b) 1052 = 1024 + 28 mapas para VPN 1 em PFN 7 ( 7 * 1024 +28 = 7196).
2221n = 2 * 1024 + 173 mapas para VPN 2, falta de pgina.
5499 = 5 * 1024 + 379 mapas para VPN 5 em PFN 0 ( 0 * 1024 + 379 + 379).
7.5 Por que o tamanho de pgina em um sistema de memria virtual no deve ser nem
muito
pequeno nem muito grande?
Com um tamanho muito pequeno de paginas, dois problemas ocorrem:
Muitos poucos dados so transferidos para cada pagina e, por isto, ser necessria uma
grande quantidade de E/S para acessar muitas pequenas pginas. O overhead ( cdigo
extra que tem que ser armazenado para organizar o programa tabelamento de tamanho
de pgina, comprimento de campo para numerao da pgina) ,
serdesproporcionalmente alto.
Se as pginas forem muito grande, haveria desperdcio da memria principal, j que
apenas uma pequena parte da pgina seria utilizada.
7.6 A seguinte seqncia de nmeros de pginas virtuais encontrada no curso de uma
execuo
em um computador com memria virtual:
342647132635123
Suponha que seja adotada uma poltica de substituio da pgina usada menos
recentemente
(LRU). Faa um grfico da taxa de acerto de pgina (frao de referncias a pginas
em que a pgina encontrada na memria principal) em funo da capacidade de
pginas da memria principal n, para 1 ~ n ~ 8. Suponha que a memria principal esteja
inicialmente vazia.

Um total de 15 pginas so referenciadas, a distribuio se d como abaixo:


N|1|2|3|4|5|6|7|8|
Taxa | 2/15 | 3/15 | 4/15 | 2/15 | 1/15 | 2/15 | 1/15 | 0/15 |
7.7 No computador VAX, o endereo de uma tabela de pginas de usurio um endereo
virtual no espao de sistema. Qual a vantagem de ter tabelas de pginas de usurios
na memria virtual, e no na memria principal? Qual a desvantagem?
A principal vantagem de se ter tabelas de pginas de usurios na memria virtual poupar
espao de memria fsica. Isto ocorre por duas razes:
Uma tabela de pgina de usurio pode ser paginada na memria somente quando for
necessria.
O sistema operacional pode alocartabelas de pgina dinamicamente, criando somente
uma, quando o processo gerado.
Como desvantagem, existe o fato de que translao de endereos requer trabalho extra.
7.8 Considere um sistema de computao com segmentao e paginao. Quando um
segmento
est na memria, algumas palavras so desperdiadas na ltima pgina. Alm
disso, para um tamanho de segmento s e um tamanho de pgina p, existem s/p entradas
na tabela de pginas. Quanto menor o tamanho da pgina, menor o desperdcio na
ltima pgina do segmento, mas maior a tabela de pginas. Que tamanho de pgina
minimiza a sobrecarga total?
Em mdia, p/2 palavras so desperdiadas na ltima pgina. Sendo assim, o total do
desperdcio dado por:
w = desperdcio
d = p/2 + s/p
Para encontrar o valor mnimo, igualamos a derivada a zero e achamos valor em relao a
p.
dw/dp = (1/2) (s / p^2) = 0
p = sqr (2s)
7.9 Um computador possui uma memria cache, uma memria principal e um disco, usado
para memria virtual. Se uma palavra referenciada est na memria cache, o tempo de
acesso de 20 ns. Se est na memria principal, mas no na cache, so necessrios 60
ns
para carreg-la na cache, sendo a referncia ento iniciada novamente. Se no est na
memria principal, so necessrios 12 ms para buscar a palavra no disco, seguidos de
60 ns para copi-la na cache, e ento a referncia novamente iniciada. A taxa de acerto
na cache de 0,9 ena memria principal de 0,6. Qual o tempo mdio, em
nanossegundos,
necessrio para acessar uma palavra referenciada nesse sistema?
Considerando as probabilidades indicadas, produz-se uma tabela com valores:
Local da palavra referenciada | | Probabilidade | | Tempo total de acesso em nano seg. |
Na memria cache | | | 0,9 | | | 20 | | |
No na memria cache, | | (0,1) * (0,6) = 0,06 | | | 60 + 20 = 80 | |
mas na memria principal | | | | | | | |
No na memria cache, | | (0,1) * (0,4) = 0,04 | | 12 ms + 60 + 20 = 12000080 |
nem na memria principal | | | | | | | |
A mdia de tempo de acesso ser:
Mdia = (0,9) * (20) + (0,06) * (80) + (0,04) * (12000080) = 480026 ns
7.10 Suponha que uma tarefa seja dividida em quatro segmentos do mesmo tamanho e

que
o sistema construa uma tabela de descritores de pgina com oito entradas para cada
segmento.
O sistema usa, portanto, uma combinao de segmentao e paginao. Suponha,
ainda, que o tamanho da pgina seja de 2 Kbytes.
a. Qual o tamanho mximo de cada segmento?
b. Qual o espao de endereamento lgico mximo da tarefa?
c. Suponha que um valor localizado no endereo fsico 00021ABC seja acessado pela
tarefa.
Qual o formato do endereo lgico que a tarefa gera para esse valor? Qual o espao
de endereamento fsico mximo do sistema?
2^32 memria / 2^11 tamanho pgina = 2^11quadro pgina
Memria principal (2^32 bytes)
2^32 memria / 2^11 tamanho pgina = 2^11 quadro pgina
Tabela de descritor de pgina
Segmento:
a) Tamanho mximo do segmento 8 * 2K = 16 K
b) Espao de endereamento mximo 16K * 4 = 64 K
c) Espao de endereamento fsico 2^32 = 4 G Bytes
7.11 Considere um microprocessador capaz de enderear at 232 bytes de memria
principal
fsica. Ele implementa um espao de endereamento lgico segmentado, com tamanho
mximo de 231 bytes. Cada instruo contm um endereo completo de duas partes. So
usadas unidades de gerenciamento de memria (memory-management units - MMUs)
externas, cujo esquema de gerenciamento aloca blocos contguos de memria fsica para
os segmentos. Esses blocos tm tamanho fixo e igual a 222 bytes. O endereo fsico inicial
de um segmento sempre divisvel por 1024. Mostre, em detalhes, a interconexo do
mecanismo externo de mapeamento, que converte endereos lgicos em fsicos, usando
um
nmero apropriado de MMUs. Mostre tambm, detalhadamente, a estrutura interna de
uma MMU (considerando que cadaMMU possui uma memria cache de descritores de
segmento
com 128 entradas e com mapeamento direto) e como cada MMU selecionada.
Consideraes:
O endereo fsico inicial de um segmento sempre divisvel por 1048. Seus 11 bits mais a
direita so sempre 0.
O espao mximo de endereos lgicos 2^9 = 512segmentos * ( 2^22 bytes / segmento)
= 2^31 bytes.
O formato lgico do endereo dado por:
| Segmento | | | | |
| nmero ( 9) | | Offset (22 ) |
Entradas em tabela de mapeamento: 2^9 = 512
Nmero de unidades de gerenciamento de memria necessrias = 4
Cada 9-bits de nmero de segmento vai para uma MMU;
7 bits so necessrios para as 128 tabelas de entrada
Os outros 2 bits mais significativos so decodificados para selecionar a MMU
Cada entrada na tabela tem 22 bits.
MMU-3
MMU-2

MMU-1
MMU-0
Endereo Fsico 32-bit
Tabela
128x21
MICROPROCESSA
DOR
DECODIF
7.12 Considere um espao de endereamento lgico paginado (composto de 32 pginas
de 2
Kbytes cada), mapeado em um espao de memria fsica de 1 Mbyte.
a. Qual o formato do endereo lgico do processador?
b. Qual o nmero de entradas na tabela de pginas e qual o tamanho de cada entrada
(desconsiderando
os bits de "permisso de acesso")?
c. Qual seria o efeito sobre a tabela de pginas, se o espao fsico de memria fosse
reduzido
pela metade?
a) O formato do endereo lgico do processador dado por:
| Nmero | | | | |
| Pgina ( 5 ) | | Offset ( 11 ) |
b) O nmero de entradas na tabela de pginas 32, com cada entrada de 9 bits de
tamanho.
c) Se o nmero total de entradas permanecer em 32 e o tamanho da pgina no mudar,
ento cada entrada ficaria com 8 bits de tamanho.

Você também pode gostar