Buscar

Lista Gerencia de Processador e Memoria

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

GERENCIAMENTO DE PROCESSADOR
O que é PCB? Para que serve? Descreva-o.
PCB(Process Control Block) é o Bloco Descritor de Processos serve para descrever informações que o processador deve ter sobre os processos, assim como prioridades, localização e tamanho de memória usada, identificação de arquivos abertos, informações de tempo, estado do processo, contexto de execução: registradores e apontadores
Quais são as duas técnicas para alocação de descritores? Dê vantagens e desvantagens de cada uma.
Limitada e dinâmica. Limitada: todos os descritores já estão alocados, existe um número máximo de processos. Dinâmica: são alocados por demanda, a capacidade da máquina define a quantidade de processos.
O que é troca de contexto?
É o chaveamento entre processos, no qual o processador é compartilhado entre os processos e é necessário interromper um processo para poder utilizar o outro.
Indique as informações que são guardadas quando acontece uma troca de contexto.
São guardadas todas as instruções e dados do programa executado anteriormente, para que o mesmo possa voltar à execução no mesmo ponto em que foi suspenso.
O que é processo?
É uma abstração que envolve espaço de endereçamento, descritores de arquivos abertos, permissões de acesso, quotas, área de código, dados, pilha de execução e fluxo de execução.
O que é Thread?
É uma forma de um processo dividir a si mesmo em duas ou mais tarefas que podem ser executadas concorrentemente. É um fluxo de execução.
O que é Multithreading?
É quando se associam vários fluxos de execução a um único processo.
Que informações são compartilhadas por várias threads de um mesmo processo?
Recursos, espaços de endereçamento, códigos e dados.
Explique as duas maneiras de se implementar threads. Dê vantagens e desvantagens.
Threads a nível de usuários suportam somente uma Thread e Threads a nível superior tem gerencia de fluxos baseada em threads e o SO suporta os threads diretamente. O de nível de usuário(user-level) tem como vantagem o chaveamento de contexto mais rápido, mas se um thread bloquear por causa de I/O todas as outra bloqueiam também.
 Quais são os três tipos de escalonamento de processos implementados por um sistema operacional? Cite as diferenças.
A) Escalonamento de curto prazo, que serve para decidir qual processo será executado na sequência. O mesmo é executado com muita frequência e, por isso, deve ser rápido; B) Escalonamento de longo prazo, que serve para decidir quando os processos serão criados. Este tipo de escalonamento não é usado em SOs onde o usuário precisa esperar por uma resposta do processo; C) Escalonamento de médio prazo, serve para decidir os processos em swap in/swap out (interrupção e gravação em disco e cópia para memória e execução reiniciada, respectivamente)
 O que é Swapping? Explique as operações envolvidas. Qual é o escalonador que tem como tarefa decidir sobre estas operações?
Swapping é a operação mantém somente os processos atualmente em execução, usando Swap-out que interrompe um processo e o grava em disco e Swap-in que o processo é copiado para a memória e reinicia a sua execução. O escalonador com esta tarefa é o de médio prazo.
Quais são os critérios utilizados por um escalonador para escolha entre processos? Explique.
Aumentar a produção do sistema, mantem o processador sempre oculpado, produzindo mais em menos tempo e diminuir o tempo de resposta para o usuário, fazendo os processos esperarem menos tempo na fila do processador.
Como funciona o escalonamento por FIFO?
Funciona como uma fila simples na qual os processos são executados por ordem de chegada.
Como funciona o escalonamento por SJF?
È executado antes o processo que tem o menor ciclo do processador.
Como funciona o escalonamento por Prioridades?
A lista é ordenada a partir da prioridade do processo e quando há prioridades iguais é executada como FIFO.
Como funciona o escalonamento por Round-Robin?
Cada processo é executado uma quantia de tempo e depois vai para o final da fila e é executado como um FIFO.
Como funciona o escalonamento por Múltiplas Filas?
São usadas várias filas de processos prontos para executar, cada processo é colocado em uma fila, e cada fila tem uma política de escalonamento própria e outra entre filas. Os processos podem ser de tipos diferentes batch (background) e online (foreground), cada fila com um tipo tendo maior prioridade preemptiva a foreground.
O que é preempção?
É interromper um processo em execução, colocando ele no final da fila, para a execução de um com maior prioridade.
Quais as diferenças entre sistemas operacionais preemptivos e não-preemptivos?
Nos preemptivos o processo em execução pode perder o processador por algum motivo, já o não-preemptivo só libera por vontade própria.
 Dada a tabela abaixo contendo 5 processos, sua duração do próximo ciclo da CPU e sua prioridade, desenhe o diagrama temporal e calcule o tempo de espera na fila para os seguintes escalonadores:
- FIFO
- SJF
- Prioridades
- Round-Robin(somente o diagrama temporal, quantum = 2 u.t. )
 Tabela 1: Processos 
	Processo
	Ciclo CPU
	Prioridade
	A
	10
	3
	B
	4
	3
	C
	7
	3
	D
	2
	3
	E
	5
	3
GERENCIA DE MEMÓRIA
Qual a diferença entre memória lógica e física. Explique.
Na memória lógica um processo pode endereçar e acessar e na memória física ela é implementada pelos circuitos integrados.
O que é espaço de endereçamento? Qual a diferença entre espaço de endereçamento lógico e físico? Explique.
É um espaço de endereçamento relacionado a um registrador. O espaço de endereçamento lógico são todos os endereços lógicos que um processo pode acessar e o espaço de endereçamento físico são somente os endereços aceitos pelos circuitos integrados da memória.
O que é MMU? Pra que serve?
MMU é a unidade de gerencia da memória, que é o hardware responsável pelos mecanismos para gerencia de memória. 
O que é o processo de Relocação no momento da carga de um programa? Qual a diferença entre Relocação Estática e Relocação Dinâmica?
Programa acessa memória a partir do endereço 0 (zero). A Relocação Estática é feita pelo carregador relocador que ao ser carregado, devem-se corrigir os endereços usados. Na Relocação Dinâmica o programa não é modificado, é carregado por um Carregador Absoluto e o registrador BASE recebe a base do endereçamento.
Qual o impacto do tamanho do quantum em um algoritmo de escalonamento do Round-Robin, no processo de Swapping?
Se quantum for muito pequeno a troca de contexto tomará muito tempo, em relação aos processos e se quantum for muito grande perde-se a aparência de paralelismo.
Quais são as 4 soluções para alocação de memória vistas?
Alocação Contínua de memória, Paginação, Segmentação e Paginação+Segmentação.
Qual a diferença entre Alocação Contínua de Memória baseado em Partições Variáveis? Cite vantagens e desvantagens.
Variáveis: Utiliza lacunas para executar processos.Desvantagem: Sofre de fragmentação externa, Conforme processos são carregados e descarregados aparecem várias pequenas lacunas; Vantagem: o tamanho das partições é ajustado conforme a necessidade.
O que é fragmentação? Quais os dois tipos encontrados nas soluções de alocação de memória?
A fragmentação ocorre quando um ou mais processos são deslocados da memória, deixando pequenos espaços de memória livres. Os dois tipos são: Fragmentação Interna e Externa.
Em um esquema de alocação contínua de memória baseado em partições variáveis, que lacunas seriam alocadas para um processo de 40kb, em uma memória populada como a descrita na Tabela 1 usando-se as estratégias:
- First-fit: Lacuna 1
- Best-fit: Lacuna 2
- Worst-fit: Lacuna 3
Tabela 1: Processos e lacunas
	Sistema Operacional – 500kb
	Lacuna 1 – 100 Kb
	Processo 1 – 89 Kb
	Lacuna 2 – 50 Kb
	Processo 2 – 120 Kb
	Lacuna 3 – 154 Kb
Que tipo de fragmentação sofrem os algoritmos apresentados na questão anterior? Explique.
Externa, pois ficaespaço disponível que não é contíguo.
Dê uma possível solução para a Fragmentação Externa. Quais as desvantagens?
Paginação, as desvantagens são que os processos nunca têm seu tamanho proporcional à página; sobra espaço dentro das páginas e em média, tem-se meia página por processo desperdiçada.
O que é Paginação? Quais seus benefícios?
Transformação de endereços lógicos para físicos através de páginas. A página lógica é alocada para qualquer frame físico livre, a unidade de alocação é a página e não existe fragmentação externa.
Em um esquema de paginação, seja o tamanho do endereço lógico composto por 16 bits (2^16) e um tamanho de pagina de 1024 bytes. Quantos bits são usados para designação da página?
1024 = 2^10
16 – 10 = 6 bits de mais alta ordem.
 Paginação sofre algum tipo de fragmentação?De que tipo? Explique.
Sim, interna, pq os processos nunca têm seu tamanho proporcional à página, sobrando espaço dentro delas.
Qual a diferença em se ter paginas grandes e pequenas em um esquema de paginação? Dê prós e contras.
Páginas grandes - Prós: O processo terá menos páginas, a tabela de páginas será menor, a leitura de disco será mais eficiente e Overhead menor. Contra: Causam maior fragmentação interna. Páginas pequenas – Prós: Carregada em registradores (acesso rápido). Contra: Tabela de páginas grandes (tem mais trabalho para encontrar os endereços).
 Como é implementada a paginação? Onde é armazenada a tabela de páginas?
Manter um cache para acesso rápido que armazena entradas da tabela de páginas mais recentemente utilizadas, interna à MMU, TLB: Translation Look-aside Buffer.
 Que registradores a MMU precisa armazenar para suportar a paginação? Explique.
PTBR - Page Table Base Register, é o endereço físico de memória onde a tabela está colocada. PTLR - Page Table Limit Register, é o número de entradas da tabela.
 O que é TLB? Pra que serve? Explique.
TLB: Translation Look-aside Buffer. Acesso mais rápido à memória. 
 Quando um endereço de memória é solicitado, usando- se paginação e TLB, quantas vezes, e em que casos, deve-se acessar a memória principal?
Se a entrada da tabela de páginas estiver na TLB: HIT. Um acesso só à memória física. Se a entrada da tabela de páginas não estiver na TLB: MISS. Dois acesso à memória física. Carrega-se a entrada para posteriores acessos.
O que acontece com a TLB quando há troca de contexto?
Esvazia-se o cache (flush) TLB
O que se pode fazer para se previnir o esvaziamento da TLB em uma troca de contexto?
Armazena ASID: Address-Space Identifier. Cada acesso é comparado: se igual HIT, senão MISS.
O que é segmentação? Como funciona?
Transformação de endereços lógicos para físicos através de segmentos. Esquema de gerenciamento de memória que suporta o conceito de segmentos. O compilador cria os segmentos no programa compilado. MMU deve estar preparada para trabalhar com segmentação.
Quais as diferenças entre Segmentação e Paginação?
A principal diferença entre paginação e segmentação é a alocação de maneira não fixa, o tamanho depende da lógica do programa.
Como pode ser implementada a segmentação?
Pode ser implementada da mesma forma que paginação: Tabela em Registradores; tabela em Memória; Cache para a tabela.
Quais as vantagens do uso de segmentação?
Proteção; Segmentos podem ser RO, XO; Compartilhamento de memória.
Como se pode unir Segmentação com Paginação?
Cada segmento é separado em páginas e cada segmento possui uma tabela de paginação.
 O que é Memória Virtual? Como funciona?Cite vantagens e desvantagens.
É uma memória adicional que fica em disco aumentando a memória total disponível. O S.O. divide o espaço de endereçamento em áreas da memória RAM(acessos diretos) e áreas de Disco(carregados na RAM para poderem serem acessados). Vantagem: aumento do espaço de endereçamento. Desvantagem: desempenho.
Sobre quais princípios os esquemas de Memória Virtual estão apoiados?Explique-os.
Como funciona o esquema de paginação sob demanda?
Com um mecanismo de memória virtual usando paginação simples, as páginas físicas são iguais às páginas lógicas, a associação é feita por uma tabela de páginas. Todas as páginas lógicas são carregadas nas páginas físicas. A tabela de páginas tem referência a todas as páginas. O bit válido/inválido indica se a página física está carregada.
 O que é Page fault?
Uma página inválida.
Qual a diferença entre o pager e o swapper?
Swapper sempre carrega o programa inteiro e o pager somente páginas.
O que é mecanismo de substituição de páginas?
À medida que processos vão sendo alocados podem-se ter todas as páginas alocadas. Antes de alocar uma nova página deve-se liberar outra e a página a ser copiada para o disco é a página vítima.
Que bits são usados para suportar substituição de paginas? Explique-os.
Dirty Bit: Indica que a página em memória foi alterada desde a sua carga. Se a página não foi mexida, não precisa ser escrita em disco, na maioria das vezes, em page fault faze-se somente um acesso a disco e não dois. Reference Bit: Indica quando a página foi acessada. É zerado na carga da página e em determinada situações, quando a página é acessada, seta para 1. Usado para saber quando cada página é usada. Lock Bit: Para bloquear uma página, e, não ser escolhida como vítima. Impedir que páginas muito usadas sejam escolhidas.
Faça os exercícios dos slides 56 e 58, referente a algoritmos de substituição de paginas.
O que é trashing?
Quando um processo tem poucas páginas e ocorrem muitos page faults.
Qual é a melhor solução para o trashing?
Swapping
Oq pode cair: o que threads de um mesmo processo compartilham threads de nível de usuário e de sistema (diferenças), 
tipos de thread (muitos para um, um para um e diferenças), through put e turnaround time, problema de processo cpu-bound, múltiplas filas STARVATION e sua solução ,preempção.

Outros materiais