Baixe o app para aproveitar ainda mais
Prévia do material em texto
SISTEMAS OPERACIONAIS Professor (a): MAURO CESAR CANTARINO GIL Aula 01 Analise as seguintes instruções: I - Desabilitar todas as interrupções; II - Ler o horário do relógio; III - Alterar o horário do relógio; IV - Alterar o mapa de memória. Quais dessas instruções só podem ser executadas pelo kernel de um sistema operacional? I, II e IV III e IV I, III e IV I, II e III II A CITAÇÃO " Principalmente usado em controle de processos, telecomunicações, etc. O SO monitora várias entradas que afetam a execução de processos, mudando os modelos de computadores do ambiente, e assim afetando as saídas, dentro de um período de tempo garantido (normalmente < 1 segundo)". REFERE-SE A: TEMPO REAL MULPROCESSADOR MULTITAREFA TIME SHARING INTERATIVO Em relação ao Sistema Operacionais quanto à Arquiteturas do Núcleo - Kernel, qual o termo se completa o texto abaixo com as lacunas em branco. O conceito de _______________ é de reduzir o kernel a comunicações de processos básicos econtrole de I/O, e deixar os outros serviços de sistemas situados no user-space (espaço dousuário) em forma de processos normais(chamados de servers - servidores). Existe um server para cada problema de gerenciamento de memória, um server faz gerenciamento de processos, e outro gerencia drivers, e assim por diante. kernel superkernel kernel monlítico; microkernel camadas A arquitetura microkernel caracteriza-se por conter um núcleo simples e enxuto que gerencia a troca de mensagens entre os serviços do sistema operacional. Assinale a opção que representa um exemplo de sistema operacional que adota esta arquitetura: MINIX Windows XP Windows Vista Windows 7 Linux A maioria dos autores classifica os sistemas operacionais entre os seguintes tipos: sistemas monotarefa ou multitarefa, sistemas monousuário ou multiusuário, sistemas monoprocessados ou multiprocessados. Em relação a essas classificações, marque a alternativa correta: Todo sistema operacional multiusuário é ao mesmo tempo um sistema multitarefa. Um sistema operacional multitarefa é necessariamente um sistema multiprocessado. Todo sistema operacional multitarefa é necessariamente um sistema multiusuário. Em sistemas operacionais multitarefa monoprocessados a execução de diferentes programas é simultânea. Um sistema operacional multiprocessado não é necessariamente um sistema multitarefa. Para que uma aplicação execute instruções privilegiadas deverá efetuar: o acesso com uma conta privilegiada. uma interrupção uma chamada ao sistema a execução de um programa específico uma solicitação ao administrador do sistema Marque a alternativa INCORRETA em relação ao conceito de sistemas operacionais: É impossível fazer uso de um computador que não tenha um sistema operacional instalado. Atua como uma interface entre o usuário e o computador. Um sistema operacional é responsável por gerenciar os recursos computacionais. Um sistema operacional deve facilitar acesso aos recursos do sistema, assim como compartilhá-los de forma organizada e protegida. São componentes básicos de um sistema operacional: interface com o usuário; gerência do processador; gerência de memória; gerência de dispositivos; sistema de arquivos. Em relação aos tipos de Sistemas Operacionais, marque qual opção N Ã O faz sentido. Sistemas Monousuários e Monotarefas Sistemas Multiusuários e Multitarefas Sistemas Monotarefas com mais de um usuário Sistemas Multitarefas com Múltiplos usuários Sistemas Monousuário e Multitarefas Aula 02 Suponha que um usuário acionou um programa que, ao ser carregado, solicitou a digitação de uma senha. Quando o programa foi acionado, o processo passou pelos estados "pronto" e "execução". Em seguida o programa ficou no estado "espera", pois dependia de uma operação de E/S (leitura do teclado) para prosseguir. Quando o usuário informar a senha o processo passará para qual estado? EXECUÇÃO PRONTO CRIADO ESPERA TERMINADO Processos do tipo _________, permitem a comunicação direta do usuário com o processo durante o seu processamento. Marque a opção que melhor completa a frase acima. Processos em Lote Processos CPU bound Processos I/O bound Processos Background Processos Foreground Sabemos que os programas são carregados na memória principal sob a forma de processos e que um mesmo processo pode assumir estados diferentes ao longo do seu ciclo de vida. Sendo assim, os estados genéricos de um processo são: Novo, Executando, Esperando, Pronto e Terminado Novo, Executando, Esperando, Pronto e Zumbi Novo, Executando, Esperando, stand by e Terminado Transição, Executando, Esperando, Pronto e Terminado Novo, Executando, Stand by, Pronto e Terminado Marque a opção que melhor representa a afirmação a seguir. Armazena o conteúdo dos registradores gerais da UCP, além dos registradores de uso específico, como program counter (PC), stack pointer (SP) e registrador de status¿. Limites Espaço de Endereçamento Thread Contexto de Software Contexto de Hardware Um processo do tipo CPU-bound é aquele que faz poucas operações de entrada e saída. Por outro lado, processos do tipo I/O-bound são aqueles que fazem muita leitura de disco ou requerem muita interação com o usuário. Desta forma, conclui-se que os processos que ficam a maior parte do tempo nos estados "pronto" e "executando" são os processos do tipo: CPU-bound e I/O-bound ao mesmo tempo. I/O-bound. CPU-bound. O processo em questão não é CPU-bound nem I/O-bound. Não é possível classificar o processo com as informações fornecidas. Em sistemas multiprogramáveis os processos podem assumir diferentes estados. Os três estados mais importantes são: running (execução); ready (pronto); e wait (espera). Mudanças entre esses estados podem ocorrer a qualquer momento. Assinale dentre as assertivas seguir a unica mudança de estado que NÃO pode acontecer: EXECUÇÃO para PRONTO EXECUÇÃO para ESPERA ESPERA para PRONTO PRONTO para EXECUÇÃO ESPERA para EXECUÇÃO Suponha que um usuário acionou um programa que, ao ser carregado, solicitou a digitação de uma senha. Quando o programa foi acionado, o processo passou pelos estados "pronto" e "executando". Em seguida o programa ficou no estado "espera", pois dependia de uma operação de E/S (leitura do teclado) para prosseguir. Quando o usuário informar a senha o processo passará do estado "espera" diretamente para o estado "execução"? Não. O processo passa para o estado "pronto" e aguarda até que o sistema operacional o selecione para execução. Não. O processo ficará em estado de "espera" e aguarda até que o sistema operacional o selecione para execução. Sim. Mas somente se o computador tiver mais de uma CPU. Sim. Assim que liberar o processador ele será executado. sim, pois independente da quantidade de CPU´s ele será executado. Um processo, segundo Machado, é formado por três partes, conhecidas como contexto de hardware, contexto de software e espaço de endereçamento.A figura ilustra, de maneira abstrata, os componentes da estrutura de um processo, que juntos, mantêm todas as informações necessárias a execução de um programa. Sobre os componentes é correto afirmar que: o contexto de hardware mantém informações nos registradores do processador, enquanto um processo está em execução, podendo salvá-las caso o processo seja interrompido. o contexto de hardware de um processoé composto por três grupos de informações sobre o processo:identificação, quotas e privilégios. o contexto de hardware mantém informações nos registradores do processador, enquanto um processo está em execução, mas não pode salvá-las caso o processo seja interrompido. o espaço de endereçamento armazena o conteúdo dos registradores gerais da UCP, além dos registradores de uso específico, como program counter(PC), stack pointer (SP) e registrador de status(PSW). o contexto de software armazena o conteúdo dos registradores gerais da UCP, além dos registradores de uso específico, como program counter(PC), stack pointer (SP) e registrador de status(PSW). Aula 03 Considere uma aplicação baseada em threads em um sistema operacional com suporte a threads de kernel. Se uma das threads desta aplicação for bloqueada para aguardar um acesso ao disco podemos afirmar que as demais threads deste processo: Serão interrompidas provocando um erro no processo. Serão bloqueadas também para impedir a ocorrência de erros Não serão bloqueadas mas ficaram aguardando o desbloqueio da thread que solicitou o acesso ao disco Poderão continuar executando se não dependerem da thread que foi bloqueada Terão a prioridade reduzida para aguardar o desbloqueio da thread que solicitou o acesso ao disco Uma das diferenças entre threads em modo usuário e threads em modo kernel é: Uma thread em modo kernel não pode executar instruções privilegiadas e a em modo usuário pode. A thread em modo kernel depende de uma biblioteca para ser utilizada e a thread em modo usuário não depende. Uma thread em modo kernel bloqueada bloqueia todo o processo obrigatoriamente e a em modo usuário não bloqueia. A thread em modo usuário não pode utilizar funções do sistema operacional e a thread em modo kernel pode. A thread em modo kernel é escalonada diretamente pelo sistema operacional e a de usuário não. Podemos verificar informações sobre os processos em execução utilizando o gerenciador de tarefas do sistema operacional Windows e no Linux com o comando PS. Dentre as informações fornecidas podemos destacar o PID (process identification ou identificador do processo), que faz parte do espaço de endereçamento do processo. do contexto de software do processo. do gerenciamento de arquivo. do contexto de hardware do processo. do controle de memória do processo. O uso de interrupções é fundamental para a existência de: Sistemas multitarefa dispositivos de hardware como monitor e impressora bibliotecas de software comunicação de dados dispositivos de hardware como teclado e disco Alguns sistemas operacionais permitem a implementação de thread, que é um fluxo de dados executável dentro de processo. Dentre as características a seguir, marque aquela que NÃO corresponde ao THREAD. A thread de usuário é criada e gerenciada por uma biblioteca no nível usuário. O suporte a múltiplas thread é uma característica do sistema operacional. Posix Pthreads, Win32 threads, Java threads são bibliotecas de threads A thread kernel é criada e gerenciada pelo kernel, porém em casos específicos podem ser gerenciadas, diretamente, pelo usuário. Existem dois tipos de thread: thread usuário e thread kernel Threads são fluxos de execução distintos dentro de um mesmo processo. Assinale a afirmativa que NÃO está de acordo com o conceito de threads. Compartilhamento de recursos Economia de tempo de processamento Utilização de múltiplos processadores Melhor aproveitamento na fatia de tempo Fornecem a interface entre os processos e o sistema operacional sendo um mecanismo de proteção ao núcleo Sabe-se que cada processo tem seu próprio contexto de software, contexto de hardware e espaço de endereçamento. Threads de um mesmo processo compartilham o mesmo contexto de software e espaço de endereçamento, apesar de terem contexto de hardware próprio. De acordo com as afirmações, marque a alternativa correta. O uso de threads não influencia no desempenho, pois durante a interrupção de um thread é necessário salvar o contexto de hardware, de software e espaço de endereçamento O uso de threads representa ganhos em termo de desempenho, pois durante a interrupção de um thread apenas o contexto de software precisa ser salvo, já que o contexto de hardware e o espaço de endereçamento são os mesmos entre os vários threads. O uso de threads representa ganhos em termos de desempenho, pois durante a interrupção de um thread apenas o contexto de hardware precisa ser salvo, já que o contexto de software e o espaço de endereçamento são os mesmos entre os vários threads O uso de threads diminui o desempenho, pois durante a interrupção de um thread é necessário salvar o contexto de hardware, de software e espaço de endereçamento. O uso de threads representa ganhos em termos de desempenho, pois durante a interrupção de um thread apenas o espaço de endereçamento precisa ser salvo, já que o contexto de software e de hardware são os mesmos entre os vários threads Threads são fluxos de execução distintos dentro de um mesmo processo. É a unidade de execução de um sistema. Qual das afirmativas abaixo não estão de acordo com o conceito de threads ? Fornecem a interface entre os processos e o sistema operacional sendo um mecanismo de proteção ao núcleo Utilização de múltiplos processadores Melhor aproveitamento na fatia de tempo Economia de tempo de gerenciamento Compartilhamento de recursos Aula 04 Exclusão mútua é uma técnica usada em programação concorrente para evitar que dois processos ou threads tenham acesso, simultaneamente, a um recurso compartilhado, acesso esse denominado por REGIÃO CRÍTICA. Julgue as sentenças a seguir e marque a INCORRETA. Quando não houver processo executando uma região crítica qualquer processo que solicitar acesso deverá obtê-lo imediatamente É permitido que mais de um processo por vez possa executar uma região crítica Um processo interrompido fora de uma região crítica não pode impedir que outro processo tenha acesso a esta região crítica Não pode haver nem deadlock nem starvation Um processo deve permanecer executando uma região crítica por tempo finito O trecho do código-fonte de um programa que, ao ser executado, requer um recurso e pode levar o sistema a uma condição de corrida é denominado: Região de entrada Região restante Região problemática Região crítica Região de saída Starvation é uma situação que ocorre quando: O processo tenta mas não consegue acessar uma variável compartilhada. Pelo menos um processo é continuamente postergado e não executa. Quando Quantum está acima de 400 ms A prioridade de um processo é ajustada de acordo com o tempo total de execução do mesmo. Pelo menos um evento espera por um evento que não vai ocorrer. Em programação concorrente, quando um processo nunca é executado ("morre de fome"), pois processos de prioridade maior sempre o impedem de ser executado, podemos concluir que ocorreu ? Starvation Deadlock Bloqueio do processo Espera ocupada Exclusão mútua Preciso de canetas e apagador para a aula. Peguei as canetas, mas parei para conversar um pouco. Ao tentar pegar o apagador fiquei sabendo que outro professor pegou o apagador para um reunião não programada e aguardava a caneta que não estava mais sobre a mesa para começar a reunião. Fiquei esperando que o apagador fosse devolvido e, como isso não aonteceu, resolvi guardar as canetas para a segunda aula e continuaraguardando o apagador. Fiquei sabendo que o outro professor também não começou a reunião pois ficou aguardando as canetas e também resolveu aguardar. Nesta situação podemos identificar a ocorrência de: Uma condição de corrida Um deadlock que poderá ser solucionado quando o professor desistir da aula. Um deadlock que poderá ser solucionado se um dos professores tirar o recurso das mãos do outro. Um deadlock em função da exclusão mútua no acesso aos dois recursos Um evento que será solucionado assim que terminar a aula Exclusão mútua é uma técnica usada em programação concorrente para evitar acesso simultâneo a um recurso compartilhado, acesso esse denominado por REGIÃO CRÍTICA. Julgue as sentenças a seguir e marque a INCORRETA. Quando não houver processo executando uma região crítica qualquer processo que solicitar acesso deverá obtê-lo imediatamente Um processo interrompido fora de uma região crítica não pode impedir que outro processo tenha acesso a esta região crítica Um processo deve permanecer executando uma região crítica por tempo finito Não pode haver nem deadlock nem starvation É permitido que mais de um processo, em execução, possa executar, simultaneamente, uma região crítica Em programação concorrente existe uma condição na qual o processo nunca é executado, pois processos de prioridade maior sempre são executados antes. Assinale a alternativa que descreve o nome desta condição: Starvation Bloqueio Deadlock Espera ocupada Exclusão mútua Embora ambos tenham seu escalonamento feito pelo gerenciamento de processos, threads e processos são estruturalmente distintos. Qual é a principal diferença entre eles? Escolha a alternativa correta. Threads possuem o mesmo contexto de software Apenas threads podem ser executados em paralelo. Processos executam mais rapidamente. Processos apenas podem ocorrer em sistemas de grande porte. Threads apenas podem ocorrer em processadores multicore. Aula 05 Deadlock pode ser definido como uma situação em que um processo aguarda por um recurso que nunca estará disponível ou um evento que nunca ocorrerá. Para que ocorra a situação de deadlock, algumas condições são necessárias simultaneamente. Assinale alternativa que contém todas essas condições: Exclusão mútua e espera por recurso. Não-preempção. Espera por recurso e não-preempção. Exclusão mútua, espera por recurso e não-preempção. Exclusão mútua e não-preempção. Diversos conceitos são fundamentais para que se implemente concorrência entre processos. Região Crítica é um desses conceitos, que pode ser melhor definido como sendo: Um trecho de programa cujas instruções podem ser executadas em paralelo e em qualquer ordem Um trecho de programa onde existe o compartilhamento de algum recurso que não permite o acesso concomitante por mais de um processo Um trecho de programa que deve ser executado em paralelo com a Região Crítica de outro programa Um trecho de programa onde existe algum recurso a que somente o sistema operacional pode ter acesso Um trecho de programa onde existe algum recurso cujo acesso é dado por uma prioridade O semáforo possui regras de acesso. Analise as regras abaixo que permitem o acesso adequado ao semáforo e, em seguida, assinale a alternativa correta: I. O semáforo deve ser inicializado com um valor não negativo. II. A operação DOWN decrementa o semáforo; III. A operação UP incrementa o semáforo; IV. Se o semáforo valer zero e for decrementado, o processo entra em estado de pronto Estão corretas as sentenças: apenas II e III II, III e IV I, II e III I, III e IV apenas I e IV No âmbito de sistemas operacionais, uma seção ou região crítica é a: área do programa que é executada 80% do tempo. parte da memória usada para operações criptográficas. área da memória que contém dados compartilhados. área do sistema operacional que contém o código do loader. parte do programa que acessa dados compartilhados. São técnicas utilizadas na sincronização entre processos: I. Starvation II. Instruções TSL III. Semáforos IV. Monitores Somente as afirmativas I e II são verdadeiras. Todas as afirmativas são verdadeiras. Somente as afirmativas II e III são verdadeiras. Somente as afirmativas II, III e IV são verdadeiras. Somente as afirmativas I, II, III são verdadeiras. Considere o código alterado com semáforo para um produtor no problema clásico de produtores e consumidores. A alteração no código consiste em entrar na região crítica antes de saber se há um espaço vazio para inserir um item produzido. O que pode acontecer de errado considerando que o semáforo mutex controla o acesso a região crítica e os semáforos espaço_vazio e espaço_ocupado controlam a quantiadade de itens produzidos? Pode ocorrer um deadlock caso não haja espaços vazios para inserir um item produzido. Nada, esta alteração não influencia no resultado. O resultado pode ser alterado por um consumidor sem que um produtor tenha conhecimento. O resultado pode ser alterado por um produtor sem que um consumidor tenha conhecimento. Nenhuma das alternativas. A exclusão mútua deve afetar apenas os processos concorrentes somente quando um deles estiver fazendo acesso ao recurso compartilhado. A parte do código do programa onde é feito o acesso ao recurso compartilhado é denominada de: Condição de Corrida Exclusão Mútua de Execução Espera Ocupada Aplicação Concorrente Região Crítica São técnicas utilizadas na sincronização entre processos? I. Starvation II. Instruções TSL III. Semáforos IV. Monitores Todas as afirmativas são verdadeiras. Somente as afirmativas II e III são verdadeiras. Somente as afirmativas I e II são verdadeiras. Somente as afirmativas I, II, III são verdadeiras. Somente as afirmativas II, III e IV são verdadeiras. Aula 06 O projeto de um escalonador adequado, deve levar em conta uma série de diferentes necessidades, ou seja, o projeto de uma política de escalonamento deve contemplar os seguintes objetivos. Dentre as ações abaixo, julgue a INCORRETA. Oferecer tempos de resposta razoáveis. Manter o processador ocupado o maior parte do tempo possível. Balancear o tempo de CPU entre as tarefas. Maximizar a taxa de atendimento (vazão) do sistema (throughput). Minimizar o número usuários interativos do sistema. Suponha o seguinte cenário: você é um engenheiro de sistemas e está projetando um sistema operacional. No seu projeto você contemplou uma arquitetura de sistema operacional multiprogramado no qual vários processos serão executados de forma concorrente. Imagine que, neste contexto, seja importante que o sistema operacional adote como critério de escalonamento a escolha dos processos que tiverem o menor tempo de processador ainda por executar. Neste caso optaria por adotar qual critério de escalonamento? Circular Shortest-Job-First (SJF) First-In-First-Out (FIFO) Por Prioridade Não preemptivo Os processos no sistema operacional que possuem um timer, chamado de quantum, onde todos os processos ganham o mesmo valor de quantum para rodarem na CPU, caracterizam o escalonamento de processos do tipo: FCFS - First come, first served. SRT - Shortest Remaining Time. FIFO - First in, first out. RR - Round-Robin. SJF - Shortest Job First. Em quais situações um processo é escalonado para executar em um sistema monoprocessado?I. Quando o processo em execução finaliza. II. Quando o processo em execução fica em estado de pronto. III. Quando o processo em execução fica em estado de espera. Apenas I e II estão corretas. Apenas a III está correta. Apenas II e III estão corretas. Apenas a I está correta. Apenas I e III estão corretas. Em um sistema operacional, um processo pode, em um dado instante de tempo, estar em um de três estados: em execução, pronto ou bloqueado. Considere as afirmativas abaixo sobre as possíveis transições entre estes estados que um processo pode realizar. I. Do estado pronto para o estado em execução II. Do estado pronto para o estado bloqueado III. Do estado bloqueado para o estado em execução IV. Do estado bloqueado para o estado pronto Quais são as afirmativas verdadeiras? Todas as afirmativas são verdadeiras. Somente as afirmativas III e IV são verdadeiras. Somente as afirmativas I e III são verdadeiras. Somente as afirmativas II e III são verdadeiras. Somente as afirmativas I e IV são verdadeiras. Em relação à política de escalonamento por preempção, é correto afirmar que o sistema operacional: executa apenas processos em monoprogramação pode interromper um processo em execução, com o objetivo de alocar outro processo na UCP executa tipicamente o processo tipo BATCH. (em lote) possui capacidade limitada e processos simples executa apenas processos que ainda não estão ativos Na política de escalonamento First-In-First-Out (FIFO), é selecionado para execução o processo que: tiver maior prioridade. estiver em modo usuário. tiver o menor tempo de processador ainda por executar. ocupar menos espaço em memória. chegar primeiro ao estado de pronto. Considere a seguinte chegada de processo e respectivos tempos de execução: Processo Tempo de Chegada Duração P1 0.0 8 P2 1.0 5 P3 3.0 2 P4 5.0 4 Considere ainda que se utiliza um esquema de escalonamento Preemptivo Shortest Job First - SJF. Pergunta-se: qual o tempo médio de espera neste sistema? 4,2 2,3 4,8 3,1 3,3 Aula 07 Várias foram as técnicas propostas para otimizar a alocação de memória. Entretanto, independentemente da técnica utilizada, pode acontecer de não haver memória principal disponível para todos os processos. Para solucionar este problema foi proposta uma técnica que é implementada em praticamente todos os sistemas operacionais atuais. Esta técnica consiste em selecionar um processo residente da memória que é transferido da memória principal para a memória secundária. Desta forma, libera-se memória principal para execução de novos processos. Para que o processo que está em memória secundária retorne à memória principal, o procedimento inicial é repetido, sendo outro processo transferido para a memória secundária. Selecione a assertiva que descreve o nome desta técnica: Memória virtual Trashing Swapping Dinamic memory acess (DMA) Page faults A maioria dos sistemas operacionais da atualidade utiliza o recurso chamado Memória Virtual. Uma das funções da Memória Virtual é a paginação ou troca (swapping). Assinale a alternativa que contém a afirmação correta a respeito do swapping: Swapping é a capacidade de troca de componentes de hardware de um computador, mesmo que o mesmo esteja ligado. Swapping possibilita ao sistema operacional e às aplicações o uso de mais memória do que a fisicamente existente em um computador. O swapping é uma técnica de endereçamento que faz com que cada processo enxergue sua área de memória como um segmento contíguo. A principal função do swapping é impedir que um processo utilize endereço de memória que não lhe pertença. O swapping é um mecanismo necessário em computadores de 64 bits que permite o endereçamento de memórias superiores a 4 Gbytes. Considerando uma lista de blocos livres para gerência de alocação de memória, em que consiste o algoritmo first fit (primeiro encaixe)? O algoritmo first fit consiste em fazer o gerenciador de memória procurar pelo espaço na lista de blocos livres que se adeque melhor aos requisitos do processo solicitante. O algoritmo first fit consiste em modificar a lista de blocos livres para que ela disponibilize um espaço livre para um processos solicitante o mais breve possível. O algoritmo first fit consiste em fazer o gerenciador de memória procurar pelo primeiro espaço na lista de blocos livres que seja grande o suficiente para os requisitos do processo solicitante. O algoritmo first fit não está relacionado com gerência de alocação de memória, mas com gerência de processador em um sistema multiprocessado. Ele serve para alocar o primeiro processador disponível ao processo que foi escalonado. O algoritmo first fit consiste em fazer o gerenciador de memória procurar pelo espaço na lista de blocos livres que seja o menor possível para os requisitos do processo solicitante. Várias foram as técnicas propostas para otimizar a alocação de memória. Entretanto, independentemente da técnica utilizada, pode acontecer de não haver memória principal disponível para todos os processos. Para solucionar este problema foi proposta uma técnica que é implementada em praticamente todos os sistemas operacionais atuais . Esta técnica consistem em selecionar um processo residente da memória que é transferido da memória principal para a memória secundária. Desta forma, libera-se memória principal para execução de novos processos. Para que o processo que está em memória secundária retorne à memória principal, o procedimento inicial é repetido, sendo outro processo transferido para a memória secundária. Estamos nos referindo a que técnica? Trashing Dinamic memory acess (DMA) Memória virtual Swapping Page faults A fragmentação interna ou externa ocorre durante o processo de alocação de memória para um processo. Correlacione o método de alocação com o tipo de fragmentação que pode ocorrer: Contíguo estático - Contíguo relocável - Contíguo dinâmico - Paginação I- Fragmentação interna II- Fragmentação interna III- Fragmentação externa IV- Fragmentação interna I - IV - III - II I - II - III - IV I - IV - II - III I - II - IV - III I - III - II - IV Quando se trata sobre a gerência da memória principal, um ponto que crucial que deve ser considerado é a fragmentação. Neste sentido assinale a alternativa INCORRETA sobre o tipo de ocorrência de fragmentação para o tipo de alocação em memória principal. Fragmentação externa na alocação por segmentação. Fragmentação externa na alocação particionada dinâmica. Fragmentação externa na alocação por paginação. Fragmentação interna na alocação particionada estática. Fragmentação interna na alocação por paginação. Os modelos de alocação particionada estática e dinâmica permitem, respectivamente: Fragmentação relocável e não relocável fragmentação somente na última partição em ambos os casos fragmentação externa e interna Fragmentação paginada e não paginada fragamentação interna e externa A maioria dos sistemas operacionais da atualidade utiliza o recurso chamado Memória Virtual. Uma das funções da Memória Virtual é a paginação ou troca (swapping). Assinale a alternativa que contém a afirmação correta a respeito do swapping. Swapping é a capacidade de troca de componentes de hardware de um computador, mesmo que o mesmo esteja ligado. Swapping possibilita ao sistema operacional e às aplicações o uso de mais memória do que a fisicamente existenteem um computador. O swapping é uma técnica de endereçamento que faz com que cada processo enxergue sua área de memória como um segmento contíguo. A principal função do swapping é impedir que um processo utilize endereço de memória que não lhe pertença. O swapping é um mecanismo necessário em computadores de 64 bits que permite o endereçamento de memórias superiores a 4 Gbytes. Aula 08 Um computador tem 8 molduras de página, atualmente ocupadas pelas páginas abaixo. Página Carga Último Acesso 0 123 270 1 231 250 2 101 278 3 145 279 4 123 253 5 109 167 6 132 198 7 143 185 Dados os momentos de carga e último acesso, a próxima página a ser retirada pela política LRU (menos recentemente utilizada) é: 2 0 5 3 6 Qual a técnica aplicada à gerência de memória para programas que esperam por memória livre para serem executados. Onde o sistema escolhe um processo residente, que é transferido da memória principal para a memória secundária (swap out) geralmente disco, e posteriormente, o processo pode ser carregado de volta da memória secundária para a principal (swap in) e pode continuar sua execução como se nada tivesse ocorrido. Alocação Contígua Simples Memória Virtual por Paginação Swapping Técnica de overlay Memória Virtual por Segmentação Qual o tipo de página que a política NRU procura remover inicialmente? As páginas referenciadas e não modificadas(bits M e R igual a 0). As páginas não referenciadas e não modificadas (bits M e R iguais a 0). As páginas referenciadas e não modificadas (bit M igual a 0 e bit R igual a 1). As páginas não referenciadas e modificadas (bit M igual a 1 e bit R igual a 0). As páginas referenciadas e modificadas (bits M e R iguais a 1). Em um sistema com gerenciamento de memória paginado o endereço é composto por 32 bits, sendo 10 reservados para a identificação da página. Qual o tamanho da página? 16KB 4MB 4KB 8MB 32MB Marque a assertiva que representa a soma dos períodos em que um processo permaneceu no estado de pronto: Tempo de espera Utilização do processador Throughtput Tempo de turnaround Tempo de resposta Suponha que um programador esteja medindo o desempenho de seus programas. Para este programador, é muito importante saber o tempo total que o processo leva desde sua criação até o seu término. Os sistemas operacionais atuais disponibilizam uma série de informações que podem auxiliar este programador. Marque a alternativa que representa a informação que este programador precisa: Utilização do processador Tempo de resposta Tempo de turnaround Tempo de espera Throughtput Um sistema operacional trabalha com gerência de memória por páginas (paginação). O espaço de endereçamento virtual do sistema dividido em páginas de tamanho 25bytes. Existem quatro processos a serem executados nesse sistema, todos com códigos relocáveis, cujos tamanhos são: A(113bytes), B(37bytes), C(96bytes), D(100bytes). Diante desse cenário podemos afirmar que: O processo D ocasionará maior fragmentação quando todas as suas páginas estiveram carregadas na memória física e caso o novo tamanho de página seja de 10bytes a fragmento causado por este processo aumentará significativamente O processo A terá uma tabela de páginas menor que todos os outros processos, muito embora o mapeamento seja facilitado se o tamanho da página do sistema for menor O processo C terá uma tabela de páginas maior que o processo A tanto para este tamanho de página como para páginas de tamanho 10bytes O processo B ocasionará menor fragmentação quando todas as suas páginas estiveram carregadas na memória física e caso o novo tamanho de página seja de 10bytes a fragmento causado por este processo não se altera, apesar do mapeamento ser facilitado O processo D ocasionará menor fragmentação quando todas as suas páginas estiveram carregadas na memória física e caso o novo tamanho de página seja de 10bytes a fragmento causado por este processo não se altera, apesar do mapeamento ser dificultado Um sistema operacional trabalha com gerência de memória por páginas (paginação). Quatro processos serão executados nesse sistema e terão seus códigos (relocáveis) divididos em páginas. Após preencher a tabela abaixo com a quantidade de páginas ocupadas e o tamanho do fragmento interno à última página para cada processo assinale a alternativa correta: O processo B ocupa mais páginas que o processo D em ambas as situações O processo A ocupará 6 páginas de 15bytes Os fragmentos do processo C para as duas situações apresentadas são 9 e 14 bytes, respectivamente O processo A não apresenta fragmento na situação 1 O processo B não apresenta fragmento em qualquer das duas situações Aula 09 Em relação aos modelos de entrada e saída, considere: I. Na entrada e saída mapeada, o programa vê os dispositivos periféricos como endereços de memória, mandando dados para eles como se estivesse escrevendo na memória. II. No modo de transferência simples o controlador de DMA devolve o controle de barramento à CPU a cada transferência de um byte (ou palavra); no modo de transferência por bloco o controlador de DMA não devolve o controle do barramento à CPU até que toda a transferência tenha sido efetuada. III. Na entrada e saída mapeada, se cada dispositivo tem seus registradores de controle em uma página diferente do espaço de endereçamento, o sistema operacional pode dar a um usuário o controle sobre dispositivos específicos, simplesmente incluindo as páginas desejadas em sua tabela de páginas. IV. Os controladores de DMA que usam endereçamento de memória física para suas transferências requerem que o sistema operacional converta o endereço virtual do buffer de memória pretendido em um endereço físico e escreva esse endereço físico no registrador de endereço do DMA. Está correto o que se afirma em I, III e IV, apenas I, II e IV, apenas II, III e IV, apenas I, II e III, Apenas I, II, III e IV. O sistema operacional é responsável por uma ou mais das seguintes atividades relacionadas ao gerenciamento de disco: (I) Gerenciamento do espaço livre. (II) Alocação do armazenamento. (III) Interpretação de comandos. (IV) Escalonamento do disco. Está correto o que se afirma em: II, III e IV, apenas. I, III e IV, apenas. I, II e IV, apenas. I, II, III e IV. I, II e III, apenas. Os dispositivos de E/S podem ser classificados de diferentes maneiras, com relação ao tipo de transferência de dados são classificados em: Orientados à páginas e blocos Orientados a hardware e software Orientados a páginas e segmentos Orientados a usuários e ao equipamentos Orientados a blocos e a caracteres São algortimos de escalonamento de acesso ao disco: C-Scan e round robin Scan e gang scheduling FCFS e round robin C-scan e prioridade Scan e FCFS Estamos terminando o primeiro semestre de 2010 e os principais lançamentos no mercado da informática se concentram nos produtos digitais portáteis, especialmente os netbooks, os tablets e os smartphones. E esse nicho do mercado desperta a atenção e acirra a briga das empresas pelos sistemas operacionais. O iPhone OS4 (da Apple), o Windows 7 (da Microsoft) e o Android (da Google) são alguns dos mais "badalados" nesse momento, dos quais são demandadas características de gerenciamento de: O cenário apresentado não é aplicável, pois o mesmo não é uma realidadede mercado. Processadores específicos que consomem mais energia e por isso aumentam a freqüência de recarga das baterias Memórias com tecnologia flash cada vez maiores e mais lentas, o que faz crescer a necessidade de disco rígido externo para essas plataformas de portáteis Dispositivos de E/S genéricos como, por exemplo, leitores de Blu-Ray, mini DV e teclados USB Dispositivos de E/S mais específicos como, por exemplo, display multitouch, webcam, cartões de memória Indique se será gerada uma interrupção de hardware ou uma exceção em cada situação abaixo: - Erro de divisão por zero. - Violação de acesso a uma área de memória não permitida. - Controladora de HD indica o término de uma operação de E/S - Um click no mouse. - Disparo do alarme do temporizador. exceção - interrupção - interrupção - interrupção - exceção. exceção - exceção - interrupção - interrupção - interrupção. interrupção - interrupção - interrupção - exceção - interrupção. interrupção - interrupção - interrupção - exceção - exceção. interrupção - interrupção - exceção - exceção - interrupção. A utilização de dispositivos com DMA é indicado para: Dispositivos que efetuam grande transferência de dados para a memória. Dispositivos muito mais rápidos que o processador Dispositivos de alta prioridade Qualquer dispositivo de Entrada ou de Saída Dispositivos que necessitam de intervenção do usuário Os sistemas operacionais são divididos em diversos componentes que possuem características e funções específicas. As características abaixo se referem a qual componente de sistema? 1) Gerenciamento de Espaço Livre; 2) Alocação do Espaço de Armazenamento; 3) Programação de alocação do Disco; Gerenciamento de Memória Secundaria; Gerenciamento do Sistema de I/O; Gerenciamento de Arquivos; Gerenciamento de Memória Principal Gerenciamento de Processos; Aula 10 Dentre as funcionalidades de um sistema de arquivos, podemos considerar INCORRETA a seguinte função. Evitar a fragmentação interna na memória principal. Atender às requisições de armazenamento e recuperação de informações. Prover rotinas para acesso. Garantir a validade do arquivo. Prover acesso a dispositivos diferentes. Os sistemas operacionais dos microcomputadores devem ser capazes de gerenciar os sistemas de arquivos das unidades de disco. Analise as sentenças sobre sistemas de arquivos e, em seguida, assinale a alternativa correta: I. Existem três formas de implementação de estrutura de espaços livres: ligação encadeada de blocos (cada bloco possui uma área reservada ao armazenamento dos endereços de todos os blocos livres), tabela de blocos livres (contendo o endereço de todos os blocos de cada segmento e o número de blocos livres contíguos) e o mapa de bits II. A proteção de acesso por grupos de usuários consiste em associar cada usuário do sistema a um grupo, sendo que usuários do mesmo grupo podem compartilhar arquivos entre si III. Não é possível proteger o acesso entre usuários de um mesmo computador. Somente a sentença III está correta Somente a sentença II está correta Somente as sentenças I e III estão corretas Somente as sentenças II e III estão corretas Somente as sentenças I e II estão corretas Dentre os critérios para a escolha de uma organização de arquivo, podemos considerar INCORRETO. Facilidade de atualização. Economia em armazenamento. Facilidade de manutenção. Escolha por tipo Menor tempo de acesso. Em um sistema monoprocessado, um escalonador pode interromper o processo em execução? Marque a resposta correta com a justificatia correta. Sim, o sistema operacional emite um aviso para o escalonador executar a interrupção. Não, o escalonador é um processo e não pode executar nenhuma operação enquanto não estiver de posse do processador. Sim, o escalonador deve interromper o processo no final da fatia de tempo destinada ao processo que está em execução. Não, nenhum processo pode ser interrompido quando está de posse do processador. Depende do sistema operacional. Controle de processos, gerenciamento de arquivo, gerenciamento de dispositivos, manutenção de informações e comunicações são as cinco categorias principais de chamadas de sistemas. Quais das alternativas abaixo se refere a chamadas de sistemas da categoria "gerenciamento de arquivos"? end, abort; send, receiver messages; Get time or date, set time or date create, delete communication connection; Read, write, reposition; Criar , apagar, renomear, imprimir, descarregar,listar, manipular arquivos e diretórios, são características de qual componente do sistema operacional? Informações de estado; Gerenciamento de arquivos; Comunicações; Suporte a linguagem de programação; Carga e execução de programas; Controle de Processos, Gerenciamento de arquivo, Gerenciamento de Dispositivos, Manutenção de Informações e Comunicações são as cinco categorias principais de chamadas de sistemas, quais das alternativas abaixo se refere a chamadas de sistemas da categoria "Gerenciamento de arquivos"? create, delete communication connection; send, receiver messages; Read, write, reposition; Get time or date, set time or date end, abort; Um device driver, ou simplesmente driver, tem como função implementar a comunicação do subsistema de E/S com os dispositivos de E/S. Sendo assim, um device driver é bem definido na alternativa: recebe comandos gerais sobre acessos aos dispositivos, traduzindo-os para comandos específicos, que poderão ser executados pelos controladores. torna as operações de E/S mais simples para o usuário bem como suas aplicações. permite a comunicação entre o sistema computacional e o mundo externo. realiza as funções comuns a todos os tipos de dispositivos. manipula diretamente os dispositivos de E/S.
Compartilhar