

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
O gerenciamento de memória em Sistemas Operacionais modernos utiliza tabelas de páginas para realizar a tradução de endereços lógicos em físicos.
Considere um sistema que utiliza paginação simples com endereços lógicos de 32 bits e páginas de 4 KB.
Assinale a alternativa que indica corretamente o número máximo de entradas na tabela de páginas de um processo nesse sistema.
2 4
2 10
2 12
2 20
2 32
Acerca do mecanismo de tradução de endereços em sistemas de memória virtual paginada, assinale a alternativa correta sobre o TLB (Translation Lookaside Buffer).
O TLB é uma área da memória principal que armazena todas as entradas da tabela de páginas do processo em execução, eliminando a necessidade de acessar o disco em caso de falta de página.
O TLB é um dispositivo de hardware que armazena entradas de tabela de páginas usadas recentemente, permitindo traduzir endereços virtuais em físicos sem acessar a tabela de páginas na memória principal.
Quando ocorre uma ausência no TLB, o sistema operacional é ativado para carregar a entrada de tabela de páginas ausente diretamente do disco para o TLB, assim como ocorre no tratamento de uma falta de página.
O TLB consulta as entradas da tabela de páginas de forma sequencial, do início ao fim, para localizar o número do quadro físico correspondente ao endereço virtual referenciado.
O TLB armazena as entradas da tabela de páginas de todo o espaço de endereçamento virtual do processo, eliminando completamente a necessidade de consultar a tabela de páginas durante a execução.
Na Gerência de Memória dos sistemas operacionais, diversas técnicas são utilizadas para organizar o uso da memória principal e permitir que múltiplos processos sejam executados de forma eficiente. Entre essas técnicas estão paginação, segmentação, fragmentação de memória e estratégias de alocação, cada uma com características específicas de organização e gerenciamento. Com base nesses conceitos, analise as assertivas abaixo e julgue-as em Verdadeiras (V) ou Falsas (F):
( ) A paginação divide a memória em blocos de tamanho variável. As páginas são blocos do processo, enquanto os quadros (frames) são blocos da memória física.
( ) Fragmentação de memória ocorre quando a memória fica dividida em pequenos espaços inutilizáveis.
( ) Na alocação de memória, o sistema operacional precisa reservar espaço na memória para os processos. Um dos tipos é a alocação contígua, em que o processo ocupa um único bloco contínuo de memória.
( ) Na segmentação, a memória é dividida em segmentos de tamanho fixo. Cada segmento representa uma parte lógica do programa, como código, dados, pilha e funções.
Qual alternativa preenche, CORRETAMENTE, de cima para baixo, os parênteses acima?
V- F -V- F.
F - F-V - V.
V-V - F-V.
F - V - V - F.
V - F - F -V.
No contexto da administração de servidores Linux, o gerenciamento eficiente da memória é essencial para manter o desempenho e a estabilidade dos serviços em produção. Um dos mecanismos utilizados pelo kernel Linux para lidar com situações de alta demanda por memória é o swap, que permite estender a capacidade da memória física utilizando espaço em disco. Analise as afirmativas a seguir sobre o mecanismo de swap:
I.A memória swap possui latência significativamente maior que a memória RAM, o que pode impactar negativamente o desempenho do sistema quando o swap é utilizado de forma intensa.
II.O Linux permite a configuração de swap tanto em partições dedicadas (swap partitions) quanto em arquivos regulares do sistema de arquivos (swap files).
III.O kernel Linux possui um parâmetro configurável, denominado swappiness, que influencia as decisões de substituição de páginas de memória (page reclaim), indicando a preferência relativa entre manter páginas na memória RAM ou movê-las para o espaço de swap; valores menores reduzem a tendência de utilização do swap, enquanto valores maiores a aumentam.
É correto o que se afirma em:
I e II, apenas.
I e III, apenas.
III, apenas.
I, II e III.
II, apenas.
Em sistemas Linux, um processo em execução pode apresentar elevado consumo de memória virtual sem, necessariamente, estar consumindo, na mesma proporção, memória física residente em RAM.
Certo
Errado
Um Analista de TI está investigando a queda de desempenho em um servidor de Business Intelligence (BI) e suspeita da ocorrência de thrashing, decorrente do excesso de trocas de páginas. Considerando que o sistema operacional Linux utiliza paginação para gerenciamento de memória, assinale a alternativa que identifica o principal mecanismo de hardware responsável por acelerar a tradução de endereços virtuais em endereços físicos nesse esquema e o risco de segurança associado à sua manipulação inadequada em ambientes multiusuário.
Cache L3, que armazena blocos de código e dados.
O Superblock do sistema de arquivos, que armazena metadados de paginação.
Header Checksum IP, armazena o valor calculado de todo cabeçalho IPv4.
TLB, cache de hardware da Tabela de Páginas; seu uso inadequado pode expor dados entre processos.
Unidade Aritmética e Lógica (ULA), que armazena o fator de preempção.
O sistema operacional Moderno implementa a alocação de memória virtual baseada em paginação, combinando técnicas e estruturas de dados encontrados em outros sistemas operacionais. A tabela de páginas de memória do Moderno foi implementada nos mesmos moldes do Linux.
Sendo assim, é correto afirmar que a tabela de páginas de memória do Moderno:
armazena informações sobre o estado de cada página, sem realizar mapeamento de endereços;
mapeia endereços virtuais para endereços físicos, sendo incapaz de influenciar a proteção de memória;
mapeia endereços virtuais para endereços físicos e é capaz de influenciar a proteção de memória;
não realiza mapeamento de endereços, sendo incapaz de influenciar a proteção de memória;
armazena informações sobre o estado de cada página, sendo incapaz de influenciar a proteção de memória.
Na operação dos microcomputadores e notebooks, o gerenciamento de memória é responsável por controlar a memória principal (RAM) e a memória secundária, para maximizar a eficiência dos processos. Nesse sentido, utiliza três processos, descritos a seguir:
I. emprega espaços de armazenamento para simular mais RAM usando disco ou SSD, movendo dados via swap,
Il. emprega áreas de tamanho fixo, para eliminar fragmentação externa, e
IIl. emprega áreas de tamanho variável, para organizar porções lógicas.
Esses três processos são denominados, respectivamente:
multitarefa preemptiva, segmentação e paginação
multitarefa preemptiva, replicação e translação
memória virtual, paginação e segmentação
memória virtual, translação e replicação
Uma empresa está utilizando um sistema operacional novo que utiliza a técnica usada em sistemas com memória virtual, sendo que essa técnica realiza a realocação de partes da memória física para um espaço de armazenamento secundário (como um disco rígido), liberando, assim, espaço nessa memória física para outros processos ou dados. Essa técnica é a de:
arvore
swapping
paginação
segmentação
Na linguagem C, o gerenciamento de memória e a manipulação de ponteiros exigem uma compreensão rigorosa de como os dados são organizados nos endereços de memória do sistema. Um conceito técnico específico e fundamental é a precedência entre o operador de desreferenciação e os operadores aritméticos em expressões complexas. Diante da necessidade de acessar o conteúdo de um ponteiro e incrementá-lo em uma única instrução dentro de um algoritmo, assinale a alternativa correta.
O modificador de tipo estático, quando aplicado a uma variável local de um algoritmo, força o compilador a armazenar o dado exclusivamente no registrador de pilha para acelerar o acesso em laços de repetição.
A declaração de um ponteiro nulo em sistemas embarcados garante automaticamente que a Unidade Central de Processamento desvie o fluxo de execução para uma rotina de tratamento de erros de barramento.
A função de biblioteca padrão utilizada para alocação dinâmica de memória retorna sempre um ponteiro do tipo caractere para assegurar a compatibilidade com a aritmética de ponteiros de dezesseis bits.
O uso de parênteses é obrigatório para garantir que o valor apontado seja incrementado antes do ponteiro, pois o operador de incremento pós-fixado possui maior precedência que o operador de desreferenciação.
A técnica de memória virtual permite que o sistema operacional execute processos cujo espaço de endereçamento lógico seja maior que a memória física disponível.
Certo
Errado
No gerenciamento de memória por meio da técnica de swapping (troca de processos), quando a alternância de processos cria múltiplos espaços vazios fragmentados na memória RAM, o sistema operacional pode utilizar a compactação de memória.
Certo
Errado
No contexto da gerência de memória em sistemas operacionais, considere os mecanismos utilizados para acelerar a tradução de endereços virtuais em endereços físicos e assinale a alternativa correta.
O TLB (Translation Lookaside Buffer) funciona como uma memória cache para entradas recentemente utilizadas da tabela de páginas, e, em caso de falta de página, o sistema operacional deve buscar a página no disco.
O barramento do sistema funciona como cache da tabela de páginas, enquanto as páginas ausentes são recuperadas diretamente de registradores do processador.
A Unidade Lógica e Aritmética (ULA) mantém uma cópia da tabela de páginas, enquanto faltas de página são resolvidas na cache L2.
A BIOS é responsável por armazenar entradas da tabela de páginas e recuperar páginas faltantes a partir do barramento local.
No Linux, o swap é usado para:
Substituir o processador
Expandir virtualmente a memória RAM.
Armazenar logs.
Gerenciar usuários.
Criar backups.
Na Gerência de Memória, em algumas situações uma técnica é aplicada com o objetivo de proporcionar maior taxa de utilização da memória principal, melhorando seu compartilhamento. Em paralelo, visa também resolver o problema da falta de memória principal em um sistema. Sempre que um programa precisa ser alocado para execução e não há espaço na memória principal, o sistema operacional escolhe, entre os processos alocados que não tem previsão de utilizar a CPU nos próximos instantes e “descarrega” esse processo da memória para uma área especial do disco, onde o processo fica armazenado temporariamente. Durante o tempo em que o processo fica nessa condição, outro que necessitava de memória entra em execução ocupando o espaço deixado pelo que saiu. O problema dessa técnica é que pode provocar um número excessivo de acesso à memória secundária em disco, levando o sistema a uma queda de desempenho. Essa técnica é conhecida como:
spooling
spoofing
swapping
sweeping
Considere os conceitos relacionados ao gerenciamento de memória, memória virtual, paginação e algoritmos de substituição de páginas em sistemas operacionais modernos e analise as afirmativas a seguir:
I. Em sistemas que utilizam paginação, o espaço de endereçamento lógico de um processo é dividido em páginas, enquanto a memória física é dividida em quadros (frames) de mesmo tamanho.
II. O uso de memória virtual permite que processos utilizem um espaço de endereçamento maior do que a memória física disponível, utilizando o armazenamento secundário como extensão da memória principal.
III. O algoritmo de substituição de páginas LRU (Least Recently Used) substitui a página que não é utilizada há mais tempo, aproximando-se do comportamento do algoritmo ótimo, embora seja difícil de implementar de forma exata devido ao custo de atualização de timestamps ou pilhas.
IV. O algoritmo FIFO (First-In, First-Out) de substituição de páginas está imune ao fenômeno conhecido como anomalia de Belady, pois sempre substitui a página mais antiga.
V. Em sistemas com paginação sob demanda, ocorre uma falta de página (page fault) quando a página referenciada não se encontra na memória principal, sendo necessária sua busca no disco.
Assinale a alternativa que apresenta a sequência CORRETA, de cima para baixo:
V – V – V – F – V
V – F – V – F – V
F – V – V – F – V
V – V – V – V – V
F – V – F – F – V
Sobre a alocação dinâmica em C, se um programador executar p = malloc(10 * sizeof(int)) e, logo após, sem liberar a memória, executar p = malloc(5 * sizeof(int)), o que ocorre tecnicamente no sistema?
O primeiro bloco é automaticamente liberado pelo SO (Garbage Collection).
Ocorre um vazamento de memória (Memory Leak), pois o endereço do primeiro bloco foi perdido.
O segundo malloc falhará, pois o ponteiro p já está ocupado.
O tamanho do bloco original é redimensionado para 5 inteiros.
O ponteiro p passará a apontar para uma área de memória contendo os dois blocos.
Analise o seguinte programa escrito em linguagem C conforme o padrão ANSI C:

Considerando o comportamento definido pelo padrão ANSI C para alocação e liberação de memória dinâmica, assinale a alternativa que descreve corretamente a execução do programa.
O programa imprime 20, pois o valor armazenado em b permanece acessível após free.
O programa imprime 30, pois p passa automaticamente a apontar para c.
O programa apresenta comportamento indefinido, pois p passa a referenciar memória já liberada.
O programa imprime 10, pois p passa a apontar para a.
O programa não executa a instrução printf.
No contexto do desenvolvimento de sistemas em Java, um Analista de Sistemas com atuação em Arquitetura de Software está revisando o gerenciamento de memória da JVM (Java Virtual Machine) para garantir a eficiência de uma aplicação corporativa em uma agência de fomento. Durante a análise, foi necessário identificar o segmento de memória responsável por armazenar as definições das classes carregadas pela JVM, incluindo metadados e informações estruturais utilizadas durante a execução do programa. Considerando o funcionamento da JVM e seu gerenciamento de memória, assinale a alternativa que representa CORRETAMENTE esse segmento.
Bytecode Verifier.
Class Loader.
Metaspace.
PermGen.
Native Memory.
A BIOS é um programa gravado de forma permanente na memória ROM (firmware) de microcomputadores do tipo IBM-PC mais antigos e que contém instruções para inicialização do microcomputador quando ele é ligado.
Mais recentemente, nos microcomputadores atuais, a BIOS foi substituída pelo firmware denominado
UEFI.
MMX.
AMX.
GPU.
PCI.