Baixe o app para aproveitar ainda mais
Prévia do material em texto
Lista de exercícios (Gerenciamento de memória) Aluno: Wellython Salmo de Souza Sá Aluno: Edvandro Rodrigues Pereira 1. Considerando as estratégias para escolha da partição dinamicamente, conceitue as estratégias best-fit e worst-fit especificando prós e contras de cada uma. Best-fit deixa um menor espaço sem utilização, mas, tende a deixar a memória com muitas partes livres aproximas. Worst-fit deixa um maior espaço sem utilização. 2. Considere um sistema que possua as seguintes áreas livres na memória principal, ordenadas crescentemente: 10 Kb, 4 Kb, 20 Kb, 18 Kb, 7 Kb, 9 Kb, 12 Kb e 15 Kb. Para cada programa abaixo, qual seria a partição alocada utilizando-se as estratégias first-fit, best-fit e worst-fit? a) 12 Kb first-fit = 12kb → 20kb best-fit = 12kb → 12kb worst-fit = 9kb → 10kb b) 10 Kb first-fit = 10kb → 10kb best-fit = 10kb → 10kb worst-fit = 9kb → 9kb c) 9 Kb first-fit = 12kb → 20kb best-fit = 12kb → 12kb worst-fit = 9kb → 15kb 3. Explique o que é a atividade de swapping e diga como ela pode prejudicar o desempenho do sistema computacional. É uma atividade que faz uma transferência temporária entre a memória principal e a secundaria só que pode demorar muito e consome muito a CPU. 4. Quando é mais interessante utilizarmos o algoritmo best-fit? E o worst-fit? O best-fit, quando se deseja um processo mais rápido, e o worst-fit quando deseja criar o maior espaço possível. 5. Considerando partições fixas de memória de 100K, 500K, 200K, 300K e 600K (nessa ordem), como cada um dos algoritmos first-fit, best-fit e worst-fit colocaria processos de 212K, 417K, 112K e 426K (nessa ordem)? Calcule a quantidade de espaço desperdiçado em cada algoritmo. First-fit P1 - Espaço B, sobrando 288k P2 - Espaço E, sobrando 183k P3 - Espaço de 288k, sobrando 176k P4 - Não tem espaço suficiente Best-fit P1 - Espaço D, sobrando 88k P2 - Espaço B, sobrando 83k P3 - Espaço C, sobrando 88k P4 – Espaço E, sobrando 174k Worst-fit P1 - Espaço E, sobrando 388k P2 - Espaço B, sobrando 83k P3 - Espaço de 388k, sobrando 276k P4 – Não há espaço suficiente Next-fit P1 - Espaço B, sobrando 288k P2 - Espaço E, sobrando 183k P3 - Espaço de 288k, sobrando 176k P4 – Não há espaço suficiente 6. Considere um sistema cuja gerência de memória é feita através de partições variáveis. Inicialmente, existem as seguintes páginas: 10K, 4K, 20K, 18K, 7K, 9K, 12K e 13K, nessa ordem. Desenhe a memória com suas páginas e mostre como as páginas serão ocupadas pelos processos de tamanho: 5K, 10K, 15K, 8K, 3K, 7K e 6K. Considere essa ordem de solicitação. Simule os seguintes algoritmos: a) First-fit 5k, 4k, 20k, 18k, 7k, 9k, 12k e 13k 5k, 4k, 10k, 18k, 7k, 9k, 12k e 13k 5k, 4k, 4k, 18k, 7k, 9k, 12k e 13k b) Best-fit 10k, 4k, 20k, 18k, 2k, 9k, 12k e 13k 0k – 4k, 20k, 18k, 2k, 9k, 12k e 13k 0k – 4k, 20k, 18k, 2k, 3k, 12k e 13k c) Worst-fit 10k, 4k, 15k, 18k, 7k, 9k, 12k e 13k 10k, 4k, 15k, 8k, 7k, 9k, 12k e 13k 10k, 4k, 9k, 8k, 7k, 9k, 12k e 13k d) Next-fit 5k, 4k, 20k, 18k, 7k, 9k, 12k e 13k 5k, 4k, 10k, 18k, 7k, 9k, 12k e 13k 5k, 4k, 10k, 12k, 7k, 9k, 12k e 13k 7. O que é DMA e qual a vantagem desta técnica? O DMA é a técnica que permite a transferência de bloco de dados entre os dispositivos de E/S e a memoria principal sem intervenção do processador. Quando o sistema deseja ler ou gravar um bloco de dados, o processador informa ao controlador sua localização, o dispositivo de E/S, a posição inicial da memória de onde os dados serão lidos ou gravados e o tamanho do bloco. Com estas informações o controlador realiza a transferência. A vantagem desta técnica é o ganho de tempo de CP U. 8. Como a técnica de buffering permite aumentar a concorrência em um sistema computacional? Quando se usa buffers o computador não vai precisar interromper o processamento tão frequentemente para ir buscar os dados no disco, o buffer faz com que o processador e dispositivos de E/S fiquem mais ocupados e os processos que dependem de tais dados podem ser ativados mais rapidamente, aumentando assim a concorrência. O buffer armazena diversos registros, nele poderá conter dados lidos e não processados e dados processados mais não gravados, desta forma o buffer poder á ficar lotado de dados a ser em manipulados pelo processador, que será melhor utilizado e seu tempo de ociosidade será menor. 9. Explique o mecanismo de spooling de impressão. O uso de spool é u ma maneira de lidar com dispositivos de E/S dedicados em um sistema de multiprogramação. Considere um dispositivo “spooled” típico: uma impressora. Embora seja tecnicamente fácil deixar qualquer processo do usuário abrir o arquivo especial de caractere para a impressora, suponha que um processo o abriu e então não fez nada por horas. Nenhum outro processo poderia imprimir nada . Em vez disso, o que é feito é criar um processo especial, chamado daemon, e um diretório especial, chamado de diretório de spooling. Para imprimir um arquivo, um processo primeiro gera o arquivo inteiro a ser impresso e o coloca no diretório de spooling. Cabe ao daemon, que é o único processo com permissão de usar o arquivo especial da impressora , imprimir os arquivos no diretório. Ao proteger o arquivo especial contra o us o direto p elos usuários, o problema de ter alguém mantendo-o aberto por um tempo desnecessariamente longo é eliminado. O spooling é usa do não somente par a impressoras. Ele também é empregado em outras situações de E/S . Por exemplo, a transferência de arquivos por uma rede muitas vezes usa um daemon de rede. Para enviar um arquivo para algum lugar, um usuário o coloca em um diretório de spooling da rede. Mais tarde, o daemon da rede o retira do diretório e o transmite. O Spool, basicamente, refere-se à um processo de transferência de dados que os colocando em uma área de trabalho temporária onde outro programa pode acessá-lo para futuramente processá- lo. Basicamente, o Spooling consiste em colocar trabalhos em um buffer, uma área da memória ou de um disco onde um dispositivo pode acessá-la quando estiver preparado. 10. Em um sistema multiprogramável, seus usuários utilizam o mesmo editor de textos (200Kb), compilador (300 Kb), software de correio eletrônico (200 Kb) e uma aplicação coorporativa (500 Kb). Caso o sistema não implemente reentrância, qual o espaço de memória principal ocupado pelos programas quando 10 usuários estiverem utilizando todas as aplicações simultaneamente? Qual o espaço liberado quando o sistema implementa reentrância em todas as aplicações? Quando 10 usuários estão utilizando todas as a plicações simultaneamente, e quando o sistema não implementa reentrância será resultado em (Soma dos KB) x (Quantidade de usuários), no caso ser ia 1200x10 que resulta em 12.000KB de memória utilizados. Sem reentrância cada usuário ter ia sua cópia do código na memória. Se o sistema implementar reentrância , o espaço utilizado seria de (12000-1200) que resulta em 10.800KB. Com reentrância apenas uma cópia é necessária na memória.
Compartilhar