SóProvas


ID
137155
Banca
CESGRANRIO
Órgão
Casa da Moeda
Ano
2009
Provas
Disciplina
Sistemas Operacionais
Assuntos

Determinado sistema operacional apresenta a seguinte lista de segmentos de memória disponíveis, em sequência:

10 KB, 20 KB, 40 KB, 80 KB, 160 KB

Nesse momento, um processo solicita alocação de memória para 16 KB. Considerando-se o uso do algoritmo first fit, que segmento será utilizado na alocação?

Alternativas
Comentários
  • First Fit é um algoritmo utilizado por sistemas operacionais para decidir em que local da memória um processo deve ser alocado.Ele funciona escolhendo sempre o primeiro espaço vazio na memória que caiba o processo. Tem um tempo médio de espera entre processos relativamente baixo, principalmente se levado em conta sua facilidade de implementação. É mais eficaz que o Best Fit e menos que o Worst Fit.O algoritmo Next Fit é um melhoramento do First Fit
  • O FIrst Fit aloca na primeira lacuna que couber. 16 kb nao cabe em 10 kb entao vai para o proximo. 16 kb cabe em 20 kb. Resposta letra b
  • O First-Fit é um representante dos algoritmos para “Estratégias de Alocação de Memória”. Nele, a primeira posição livre de tamanho suficiente para carregar o programa é escolhida. Podemos citar como exemplos de algoritmos de Estratégias de Alocação: Lista de Áreas Livres, Best-fit, Worst-fit e First-fit.
    Tanembaum, em seu livro traduzido, chama as técnicas de “Gerenciamento de Memória com Listas Encadeadas” e traduz os termos assim:
    • Algoritmo Primeiro Ajuste (first-fit): “o gerenciador de memória varre toda a lista de segmentos até localizar uma lacuna suficientemente
    grande.” É um algoritmo rápido, pesquisando o mínimo possível.
    • Próximo ajuste (lista de áreas livres): “funciona da mesma maneira que o primeiro ajuste, exceto que monitora a posição em que ele está
    sempre que encontra uma lacuna adequada. Da próxima vez que é chamado para localizar uma lacuna, ele começa pesquisando na lista a
    partir do lugar em que deixou da última vez, em vez de sempre partir do começo”.
    • Melhor ajuste (best-fit): “pesquisa na lista inteira e pega a menor lacuna que seja adequada”.
    • Pior ajuste (worst-fit): “sempre pega a maior lacuna disponível para evitar o problema de dividir lacunas quase exatas entre um processo e
    uma lacuna minúscula”.
    • Ajuste rápido: “mantém listas separadas para os tamanhos de lacunas mais comuns”.
    O enunciado informa uma lista de segmentos livres e indica que um segmento de 16KB deve ser alocado conforme regras do algoritmo first fit. Então, o primeiro segmento em que couber o segmento será o utilizado, ou seja, a letra B que possui 20KB disponíveis. É importante observar que o segmento de 20KB será dividido em 2 segmentos (uma vez que não é do mesmo tamanho do segmento a ser armazenado): um de 16KB, que será utilizado, e outro com os 4KB restantes. Assim, a nova lista de segmentos disponíveis será 10 KB, 04 KB, 40 KB, 80 KB, 160 KB.
  • Alocação de Memória

    Best-fit: a melhor partição é escolhida, aquela que irá deixar o menor espaço sem utilização. Aumenta o problema de fragmentação devido ao pouco espaço disponível para execução dos programas.

    Worst-fit: a pior partição é escolhida, aquela que o programa deixa o maior espaço sem utilização. Diminui o problema de fragmentação devido ao grande espaço disponível para execução dos programas.

    First-fit: a primeira partição livre de tamanho suficiente para carregar o programa é escolhida. É a estratégia mais rápida e que consome menos recursos do sistema.

    Alternativa: B