Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

SERVIÇO PÚBLICO FEDERAL 
UNIVERSIDADE FEDERAL DO RIO GRANDE 
CENTRO DE CIÊNCIAS COMPUTACIONAIS 
DISCIPLINA 
Sistemas Operacionais 
PROFESSORA 
Karina S. Machado 
 
Lista de Exercícios de Revisão – 3º Bimestre – Gerenciamento de Memória e Introdução a 
sistemas de arquivos 
(Essa lista não precisa ser entregue) 
1. Defina Paginação, Segmentação e Swapping. 
2. Explique como um endereço gerado na CPU é dividido, quando se trabalha com páginas. Faça um 
esquema que mostre como o Sistema operacional localiza o conteúdo de uma determinada página 
que é necessária para a execução de um processo. 
3. Como funcionam as páginas compartilhadas? Quando são utilizadas? 
4. Explique as três formas de estruturar as páginas: paginação hierárquica, tabelas hash e páginas 
invertidas. 
5. Sobre paginação, explique como o sistema operacional pode oferecer suporte de hardware para a 
implementação de um sistema de paginação eficiente: conjunto de registradores dedicados, tabela 
de página na memória principal, cache especial TLB,. 
6. Explique o método básico de implementação de gerência de memória com segmentação. 
7. Quais as principais vantagens da gerência de memória com segmentação? E quais as principais 
desvantagens? 
8. O que é a memória virtual? Quais as vantagens de trabalhar com essa técnica? 
9. O que é paginação por demanda? E Lazy swapper? 
10. Explique o algoritmo de falha de página (você pode utilizar um esquema para descrever melhor esse 
algoritmo) e como funciona a substituição de páginas. 
11. Explique o algoritmo de substituição de páginas “aproximação LRU- Algoritmo da Segunda Chance”. 
12. Resuma a gerência de memória no Linux. 
13. Como funciona o algoritmo de paginação de memória no Windows? 
14. Considere um sistema de memória virtual que implemente paginação, onde o limite de frames por 
processo é igual a três. Descreva para a string de referencia abaixo, o número total de falhas de 
página (page fault) para as estratégias de realocação de páginas FIFO, Ótimo, LRU, LFU e MFU. 
Indique qual a mais eficaz para cada item. 
a) 1 / 2 / 3 / 1 / 4 / 2 / 5 / 3 / 4 / 3 
b) 1 / 2 / 3 / 1 / 4 / 1 / 3 / 2 / 3 / 3 
 
15. Um sistema operacional implementa o gerenciamento da memória virtual com paginação, com 
frames de 2Kb. A partir da tabela descrita a seguir, que representa o mapeamento de páginas de 
um processo em um determinado instante de tempo, responda: 
 
 
a. Qual o endereço físico de uma variável que ocupa o último byte da página 3? 
b. Qual o endereço físico de uma variável que ocupe o primeiro byte da página 2? 
c. Qual o endereço físico de uma variável que tenha deslocamento 10 na página 3? 
 
16. Um sistema possui quatro frames. A tabela abaixo apresenta, para cada página, o momento da 
carga (Carga), o momento do último acesso (Referência), o bit de referência e o bit de modificação 
 
a. Qual página será substituída utilizando o algoritmo FIFO? 
b. Qual página será substituída utilizando o algoritmo LRU? 
c. LRU modificado – algoritmo da segunda chance melhorado (que utiliza os bits BR e BM)? 
 
17. Considere um processo com limite de páginas reais igual a quatro e um sistema que implemente a 
política de substituição FIFO. Quantos pages faults ocorrerão considerando que as páginas virtuais 
são referenciadas na seguinte ordem: 0172327103. Repita o problema utilizando a política LRU. 
18. Conceitue arquivo? Cite 3 requisitos para armazenar informação a longo prazo? 
19. Fale sobre nomeação de arquivos e sua importância nos sistemas de arquivos atuais. 
20. Algumas operações de arquivo são: criar, escrever, ler e excluir. Descreva os passos executados pelo 
Sistema operacional para realizar essas operações. (você pode precisar do livro para esta questão) 
21. Existem basicamente 3 formas de estruturar um arquivo: sequência desestruturada de bytes, 
registros de tamanho fixo e árvore de registros. Descreva essas estruturas utilizando exemplos. 
22. Cite e explique as 3 principais métodos de acesso a arquivo: seqüencial, aleatório direto e aleatório 
com uso de índice. 
23. Quais os principais atributos de um arquivo? 
24. O que são diretórios? Quais suas funções? 
25. No âmbito de sistemas operacionais, a Anomalia de Belady é um conceito relacionado à gerência de 
 a) threads. 
 b) deadlocks. 
 c) memória. 
 d) processos. 
 e) coordenação distribuída. 
 
26. Sistemas operacionais fazem o controle de acesso à memória primária, protegendo as áreas de 
memória de uma aplicação do acesso por outra aplicação. Esse mecanismo de controle utiliza 
técnicas de paginação e segmentação de memória. 
 Certo 
 Errado 
 
27. O sistema operacional, através do gerenciador de memória, deve tentar manter na memória 
principal o maior número de processos residentes, permitindo maximizar o compartilhamento do 
processador e demais recursos computacionais. Mesmo na ausência de espaço livre, o sistema deve 
permitir que novos processos sejam aceitos e executados. A técnica de swapping foi introduzida 
para contornar o problema de insuficiência de memória principal, e consiste de: 
 a) dividir o programa em módulos, de forma que seja possível a execução 
 independente de cada módulo, utilizando uma mesma área de memória. 
 b) dividir a memória principal em pedaços de tamanho fixo, chamados partições, onde o 
tamanho das partições é estabelecido na fase de inicialização do sistema. 
 c) dividir a memória em pedaços de tamanho variável, de modo que cada programa 
utilize apenas o espaço necessário para sua execução. 
 d) escolher um processo residente, a ser transferido da memória principal para a 
memória secundária (swap out), sendo que, posteriormente, o processo é carregado de volta da 
memória secundária para a memória principal (swap in) 
 e) desenvolver as aplicações de modo a não ultrapassar o espaço de endereçamento de 
memória disponível. 
 
28. Um sistema operacional é uma camada de software que atua entre o hardware e os diversos 
aplicativos existentes em um sistema computacional, executando diversas atividades, de modo a 
garantir a disponibilidade de recursos entre todos os programas em execução. O gerenciador de 
memória é uma atividade do sistema operacional, responsável por: 
 
a) distribuir a capacidade de processamento de forma justa entre as aplicações, evitando que 
uma aplicação monopolize o processador. 
b) implementar a interação com cada dispositivo, através de drivers, criando modelos 
abstratos que permitam agrupar vários dispositivos distintos sob a mesma interface de 
acesso. 
c) definir usuários e grupos de usuário, bem como identificar usuários que se conectam ao 
sistema, através de procedimentos de autenticação. 
d) criar as abstrações de arquivos e diretórios, definindo interface de acesso e regras para o 
seu uso. 
e) disponibilizar, para cada aplicação, um espaço de memória próprio, independente e 
isolado dos demais, inclusive do núcleo do sistema operacional. 
 
29. Na alocação particionada dinâmica de memória 
A) ocorre fragmentação externa. 
B) ocorre fragmentação interna. 
C) não ocorre fragmentação externa. 
D) não ocorre nenhuma fragmentação. 
E) utilizam-se partições de tamanho fixo. 
 
30. Em relação à segmentação no gerenciamento de memória, é correto afirmar: 
A) Há apenas um espaço de endereço linear. 
B) O espaço de endereço virtual não pode ser maior do que o tamanho da memória. 
C) O programador não precisa estar ciente de que há segmentação. 
D) A segmentação não manipula tabelas de tamanhos variáveis. 
E) Os segmentos não têm tamanho fixo. 
 
31. No gerenciamento de memória, são características típicas da segmentação: 
A) Segmentos do programa sempre do mesmo tamanho. 
B) Programas normalmente separados em módulos. 
C)Segmentos de tamanho máximo inexistentes. 
D) Segmentos sem possibilidade de controle pelo usuário. 
E) Eliminações de qualquer tipo de fragmentações. 
 
32. No contexto de gerenciamento de memória, é correto afirmar: 
A) Cada entrada em uma tabela de segmentos possui a “base”, que contém o endereço físico inicial 
do segmento residente na memória e o “limite”, que especifica o tamanho do segmento. 
B) O swapping é uma técnica utilizada para mudar a localização dos processos na memória, 
agrupando-os em um único segmento e, assim, otimizar a execução dos processos concorrentes. 
C) O hardware MMU (Unidade de Gerência de Memória) tem como função mapear os endereços 
físicos em endereços virtuais para serem vistos pela memória. 
D) Na realocação dinâmica, todas as rotinas são carregadas na memória principal e aquelas que não 
são usadas são agrupadas em segmentos contíguos da memória. 
E) A alocação contígua à memória principal é dividida em duas partes: a parte alta para o sistema 
operacional e o vetor de interrupções, e parte baixa para os processos do usuário. 
 
33. Para controlar os arquivos, os sistemas operacionais têm, em regra, diretórios ou pastas que 
também são arquivos. 
Certo 
Errado 
 
 
 
Lista de Sistemas Operacionais - 3º bimestre 
 
1) 
Paginação: Esquema de gerenciamento de memória que permite que o espaço de endereços 
físicos de um processo seja não-contíguo.. Consiste: 
 Dividir a memória física em blocos de tamanho fixo (Quadros) 
Dividir a memória lógica em blocos do mesmo tamanho (Páginas) 
 
 Mapear os endereços virtuais em endereço de memória física pela MMU (Unidade de 
gerenciamento de memória) através de Tabelas (Job Table, Page Map Table e Memory Map 
Table). 
Evita a segmentação externa mas não a interna. 
 
Segmentação: Outro esquema de gerenciamento de memória, consiste em dividir os processos 
em segmentos que refletem sua estrutura funcional, para que o S.O. possa realocá-los mais 
facilmente na memória e auxiliar o compartilhamento de memória entre processos. 
Evita a fragmentação interna mas não a externa. 
 
Swapping: Técnica criada para melhorar a eficiência do gerenciamento de memória e resolver 
o problema de falta de memória, através do uso de certa quantidade de disco como memória 
principal e fazendo a troca dos processos que estarão ocupando a memória. 
I. Swap-out: Da memória principal para o disco 
II. Swap-in: Do disco para a memória 
 
Alternativa 
- Swapping: Processo no qual uma área do disco é separada para ser utilizada como extensão 
da memória. O processo que está na memória executa e então é mandado para o disco e um 
processo em disco é enviado para a memória para ser executado. 
- Paginação: técnica de gerência de memória que permite que o espaço de endereço físico de 
um processo seja não contíguo. 
 
 
 
 
- Segmentação: Técnica de gerenciamento de memória onde programas são divididos em 
segmentos de tamanhos variados. 
 
 
 
 
Alternativa - ​​paginação divide a memória em espaços de tamanhos iguais, segmentação 
divide o programa em espaços relativos a sua lógica interna. 
 
 
 
2) É dividido em número da página (P) e Deslocamento da página (D). 
 
Alternativa 
A CPU envia o endereço lógico, que consiste em 2 partes: o ​número da página (P)​ e um 
deslocamento (D)​. Com essas informações, é disparada uma busca na ​tabela de páginas​ pela 
página em questão, a mesma aponta para um endereço físico de memória e nesse endereço é 
aplicado o deslocamento. 
 
3) É uma técnica da paginação que permite que uma página seja compartilhada, ou seja, um 
trecho de código pode ser compartilhado (read-only) entre vários processos, estando no 
mesmo espaço de endereçamento lógico de todos os processos, proporcionando economia de 
espaço. São utilizados em compiladores, sistemas de janelas, SGBDs, Editores de texto, etc. 
 
4) Paginação hierárquica (multinível): Como forma de evitar que haja uma tabela de 
páginas muito grande na memória, nós dividimos essa tabela grande em várias tabelas, sendo 
que a tabela de primeiro nível irá referenciar todas as outras que estarão no disco. Apenas a 
página de primeiro e segundo nível precisam estar na memória (o restante estará em disco). 
Tabelas Hash: O número da página virtual é usado para função Hash. Cada entrada na 
tabela contém uma lista encadeada que contém: O número da página virtual, o frame e um 
ponteiro para o próximo elemento. 
Páginas Invertidas: 
 
5) Um conjunto de registradores dedicados pode ser muito eficiente numa situação onde haja 
uma tabela de páginas pequena (com 256 entradas). Nos dias atuais, a demanda de dados é 
muito grande e, portanto, uma tabela de páginas desse tamanho não é suficiente. 
Registradores dedicados para essa tarefa se tornam inviáveis, sendo necessário aplicar a 
tabela de páginas na memória principal. Consequentemente, o tempo de acesso aos 
endereços se torna demasiadamente grande. Para resolver o problema, surgiu o TLB 
(Translation Lookaside Buffer), um pequeno dispositivo de alta velocidade capaz de relacionar 
endereços virtuais com endereços físicos sem usar, a todo instante, a memória principal. 
 
6) O mecanismo de mapeamento da segmentação é muito semelhante ao da paginação. Além 
do endereço do segmento na memória física, cada entrada na tabela possui informações sobre 
o tamanho do segmento e se ele está ou não na memória. Uma diferença notável está em 
como é definido o tamanho de cada bloco na memória física. A divisão de um programa está 
correlacionada com a sua própria estrutura, permitindo blocos com tamanhos diferentes dentro 
da memória. 
 
7) O método da segmentação facilita o compartilhamento de métodos e dados entre os 
processos e também a proteção de dados. 
 
8) Memória virtual é uma técnica utilizada para gerenciar uma grande quantidade de dados 
onde não há uma memória principal com tamanho suficiente. Através dessa técnica, é possível 
utilizar outros dispositivos de armazenamento (geralmente o disco rígido) para trabalhar junto à 
memória principal. 
 
9) Paginação por demanda consiste em carregar as páginas de um processo na memória 
principal, a medida em que forem sendo necessários, ou seja, as páginas que não são 
necessárias nunca serão carregadas na memória, evitando o uso desnecessário. Lazy 
Swapper é o mesmo que paginação por demanda, a principal diferença com o “Swap” comum é 
que este carrega apenas as páginas e não o processo todo. 
 
10) ​Confirmem se é isso mesmo, tá no slide aula 25 mas ta mal explicado. 
a. A página não foi encontrada (page fault) 
b. Encontra o local da página no disco 
c. Encontra um local livre na tabela de páginas 
i. Livre: Usa o local para inserir a página. 
ii. Não livre: Usa um algoritmo de substituição de página 
1. Remove a página “vítima” 
d. Atualiza a tabela de páginas 
e. Lê a página que entrou e atualiza a tabela novamente 
 
11) 
12) 
A. Memória virtual paginada, 
B. Segmentos de códigos compartilhado, 
C. O sistema monitora o uso de memória física, e mapeia conforme necessário, 
D. Três zonas de memórias diferentes: ZONE_DMA (acesso direto), ZONE_NORMAL 
(mapeadas regularmente) e ZONE_HIGHMEN (páginas que não são mapeadas), 
E. Swap: Parte do disco é utilizada como memória principal 
 
 
13) 
14) 
15) 
16) 
17) 
 
18) Arquivo é um mecanismo de abstração de disco, que oferece meios de armazenar 
informações e lê-las quando necessário, e também pode ser utilizado pelos processos. Isso é 
feito de forma a isolar o usuário dos detalhes de armazenamento e do funcionamento dos 
discos. 
19) Na minha visão, a nomeação dos arquivos possui duas funções principais: A primeira é 
ajudar o usuário do sistema operacional na manutenção da abstração do espaço de disco, ou 
seja, permitir ao usuário controlar seus arquivos de forma simples. Já a segundaé ajudar a 
compiladores e programas a se “comunicarem” com o arquivo, por exemplo, um compilador de 
C só irá compilar um arquivo que possua a extensão .c, mesmo que o sistema operacional não 
se importe. Outro ponto importante é lembrar que os sistemas operacionais modernos diferem 
na convenção dos nomes dos arquivos, devido a diferença do seu sistema de arquivos 
(FAT-32, NFTS, etc.) o que difere nos possíveis caracteres na nomeação e também na 
extensão dos arquivos. 
 
20)Criar: O arquivo é criado sem dados, estabelecendo alguns atributos. 
Ler: Dados são lidos do arquivo, os bytes vem da posição atual. Deve-se oferecer um buffer 
para armazenar os dados e especificar a quantidade de dados necessária. 
Excluir: Uma chamada de sistema remove o arquivo e libera o espaço no disco. 
 
21)Sequencia de bytes: O sistema operacional trata o arquivo como uma sequência de bytes, 
os programas podem colocar qualquer coisa nos arquivos e nomea-los de qualquer forma 
(flexibilidade). 
Sequencia de registros: O arquivo é uma sequência de registro de tamanho fixo, as leituras e 
escritas retornam registros. 
Árvore de registros: Existe um campo chave que remove a linearidade da busca, permite uma 
melhor busca de chaves específicas. 
 
22) 
23)Varia de acordo com o sistema, mas os principais são: Nome, Tipo, Local, Data, Tamanho, 
Proteção e algumas flags de controle. 
 
24) Diretórios são arquivos do sistema. Sua principal função é manter a estrutura do sistema de 
arquivos. Ou seja, organizar o disco rígido, CDs, DVDs, PenDrives, etc. Os diretórios são 
ramificações e os arquivos são as folhas (utiliza-se da estrutura Árvore). 
 
25) ​C​​ -​ ​​É quando a curva de quantidade de page faults se comporta de maneira inesperada, 
indicando que existam mais page faults para 4 frames do que para 3 utilizando o algoritmo de 
substituição de páginas FIFO. Esse é um problema relacionada a memória e ocorre no 
esquema de memória virtual realizando paginação. 
26) ​Certo 
27) ​D 
28)​E 
29)​ A 
30) ​E 
31)? 
32) ​A 
33) ​Certo

Mais conteúdos dessa disciplina