exercicios sistemas operacionais

acessem meu site jmtipb.esy.es e vejam produtos e serviços oferecidos para você. que desenvolver um site ou aplicativo fale comigo eu faço para você.
1
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Sistemas Operacionais
1- Analise as sentenças abaixo sobre as vantagens e desvantagens da memória virtual e, em seguida, assinale a alternativa correta:
I. Maior tempo de resposta para as referências à memória, se comparado à memória primária
II. Maior complexidade do hardware e do esquema de gerenciamento
III. Possibilidade de estimar, de forma precisa e segura, o tempo a ser gasto em qualquer referência à memória
( ) Somente a sentença III está correta.
( ) Somente as sentenças I e II estão corretas.
( ) Somente as sentenças II e III estão corretas.
( ) Somente as sentenças I e III estão corretas.
2- Quando tratamos de alocação de memória é necessário que haja uma estratégia definida para esta tarefa porque:
( ) Cada processo precisar ter seu espaço protegido, embora nunca seja necessário compartilhar informações entre processos.
( ) Espaços são solicitados e liberados em função da execução de cada tarefa e cada processo precisar ter seu espaço protegido.
( ) Pode ser necessário compartilhar informações com outros processos e todos os processos compartilham sempre o mesmo espaço sem proteção.
( ) A gerência do processador não é tão importante quanto a gerência de memória, pois o que confere desempenho ao sistema é somente a estratégia de alocação de memória e não o escalonamento de processos.
3- O que é e para que serve o escalonamento? Explique também como funciona e quais as diferenças existentes entre os escalonamentos FIFO e CIRCULAR (round robin)?
Resposta: _________________________________________________________ __________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
4- O gerenciamento de dispositivos de Entrada e Saída (E/S) é uma das mais complexas tarefas do sistema operacional em função da diversidade de dispositivos existentes, pois:
( ) Existe uma forma de criar device drivers por tipo de dispositivo, o que diminui a complexidade do controle das operações de E/S.
( ) Os device drivers dos dispositivos funcionam em qualquer sistema operacional, o que diminui a complexidade e facilita esse gerenciamento.
( ) Não é difícil generalizar e sintetizar o processo de transferência de dados de qualquer dispositivo, independente do tipo.
( ) Não existe uma implementação genérica que atenda a todos os dispositivos.
5- Analise as sentenças abaixo sobre os critérios para escolha de uma organização de arquivo, em seguida, assinale a alternativa correta:
I. Menor tempo de acesso
II. Facilidade de atualização e de manutenção
III. Economia em armazenamento e confiabilidade
2
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
( ) Somente as sentenças II e III estão corretas.
( ) Somente as sentenças I e III estão corretas.
( ) Somente as sentenças I e II estão corretas.
( ) Todas as três sentenças estão corretas.
6- Quando estudamos as diferentes estratégias de organização lógica do espaço de memória, apresentamos o conceito de fragmentação interna, que consiste no:
( ) Espaço não utilizado dentro de uma partição, por exemplo, na estratégia tipo Estático.
( ) Espaço não utilizado contíguo a uma partição, por exemplo, na estratégia tipo Contíguo Simples.
( ) Espaço não utilizado fora de uma partição, por exemplo, na estratégia tipo Dinâmico.
( ) Espaço total utilizado dentro de uma partição, por exemplo, na estratégia tipo Segmentado.
7- Considerando um sistema operacional em lote e a política de escalonamento job mais curto primeiro. Cada tarefa e seu respectivo tempo de execução (em segundos) e representado por (identificação, tempo). Qual o tempo médio de retorno para as tarefas (A, 8), (B, 4), (C, 2), (D, 3) e (E, 5)?
( ) 12,6 segundos.
( ) 14,1 segundos.
( ) 10,4 segundos.
( ) 13,4 segundos.
8- Uma das partes perceptíveis no Sistema Operacional é o Sistema de Arquivos. Os usuários se utilizam dele para armazenar seus dados. Do ponto de vista do sistema operacional, um sistema de arquivo tem um conjunto de características, por um conjunto de operações e um conjunto de atributos que podem variar de sistema operacional para sistema operacional. Descreva as características de arquivos, as operações básicas e a formação de atributos.
Resposta: _________________________________________________________ __________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
9- O sistema de arquivos é fundamental pois todos os arquivos e diretórios serão armazenados segundo regras definidas por esse componente do sistema operacional. Quanto aos atributos de um arquivo podemos citar:
( ) Nome; Proteção; Identificador do criador (usuário); Tamanho previsto; Data.
( ) Proteção; Localização; Identificador do processo e do thread (criador); Tamanho futuro; Hora.
( ) Nome; Localização; Identificador do criador (usuário); Tamanho atual; Data e hora.
( ) Classificação; Margem de erro; Identificador de quem eliminou; Tamanho atual; Data e hora.
10- O que é política de escalonamento de um sistema operacional?
( ) Uma política de escalonamento é composta por critérios estabelecidos para determinar qual processo em estado de pronto será escolhido para fazer uso do processador.
( ) Uma política de escalonamento é composta por critérios estabelecidos para determinar qual serviço em estado de pronto será escolhido para fazer uso do processador.
( ) Uma política de escalonamento é composta por critérios pré-estabelecidos para determinar qual programa (Ex. C++, JAVA, VB) em estado de pronto será escolhido para fazer uso do processador.
( ) Uma política de escalonamento é composta por critérios estabelecidos para determinar qual programa (Ex. C++, JAVA, VB) em estado de pronto será escolhido para fazer uso do processador.
3
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito


Gabarito

1- Somente as sentenças I e II estão corretas.
2- Espaços são solicitados e liberados em função da execução de cada tarefa e cada processo precisar ter seu espaço protegido.
3- Gabarito – Com a possibilidade da UCP ser compartilhada entre diversos processos (multiprogramação), o sistema operacional possui critérios para determinar qual a ordem na escolha dos processos para que estes passem do estado de PRONTO para EXECUTANDO. O procedimento de seleção é função do sistema operacional, sendo conhecido como escalonamento (scheduling) e a parte do código do sistema operacional responsável pelo escalonamento é o escalonador (scheduler). No escalonamento não preemptivo FIFO (First In First Out) os processos são ordenados por ordem de chegada, assim, o primeiro a entrar na fila será o primeiro a ser atendido. Já no escalonamento preemptivo circular a ordenação é feita da mesma forma, porém, existe um tempo limite para que os processos permaneçam em estado de execução (quantum).
4- Não existe uma implementação genérica que atenda a todos os dispositivos.
5- Todas as três sentenças estão corretas.
6- Espaço não utilizado dentro de uma partição, por exemplo, na estratégia tipo Estático.
7- 10,4 segundos.
8- Gabarito – Arquivos têm como características: Persistência: Arquivos são armazenados em discos, ou em outro meio de armazenamento não volátil, e não desaparecem ao término da sessão. Compartilhamento: Arquivos podem ser compartilhados por processos diferentes. Estrutura: Possuem uma organização interna em função do tipo de informação que armazena. Quanto às operações básicas, estas são: Criação: operação de escrita em disco com a criação do arquivo. Gravação: operação de escrita em discos dos dados do arquivo. Leitura: operação responsável pela leitura dos dados a partir do disco. Exclusão: operação responsável pela retirada do arquivo do disco. Em relação aos atributos, estes são informações de controle próprias de cada arquivo que, dependendo do sistema de arquivos, variam. Exemplos de atributos são: Nome: Representação utilizada para o usuário. Tipo: Necessário em sistemas que utilizam mais de um tipo de arquivo. Localização: Identificação da posição de um arquivo em um dispositivo específico. Tamanho: Registro do tamanho atual do arquivo. Proteção: Informações de controle de acesso. Usuário: Identificação do criador do arquivo. Data e hora: Registro da criação, último acesso e última modificação.
9- Nome; Localização; Identificador do criador (usuário); Tamanho atual; Data e hora.
10- Uma política de escalonamento é composta por critérios estabelecidos para determinar qual processo em estado de pronto será escolhido para fazer uso do processador.
4


Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Sistemas Operacionais
1- Durante a execução de um programa podem ocorrer eventos inesperados, que causam um desvio forçado no fluxo de execução de um programa. Esses eventos são conhecidos por interrupção. É correto afirmar que:
( ) As interrupções são eventos síncronos ou assíncronos gerados por um dispositivo de hardware.
( ) As interrupções são somente os eventos síncronos gerados por um dispositivo de hardware ou pelo sistema operacional.
( ) As interrupções são eventos síncronos ou assíncronos gerados somente pelo sistema operacional.
( ) As interrupções são eventos síncronos ou assíncronos gerados pelo sistema operacional ou por outro processo de maior prioridade.
( ) As interrupções são somente os eventos assíncronos gerados por um dispositivo de hardware ou pelo sistema operacional.
2- Nos sistemas operacionais multitarefa é necessário controlar a concorrência de acesso aos recursos e dispositivos, evitando assim a perda de dados. Analise as sentenças abaixo que tratam desse assunto e, em seguida, assinale a alternativa correta:
I. Os mecanismos que garantem a comunicação entre processos concorrentes e o acesso a recursos compartilhados são chamados mecanismos de sincronização.
II. Semáforo e monitor são soluções de software para implementação de exclusão mútua entre a região crítica de processos concorrentes, garantindo assim a sincronização.
III. O monitor aumenta a responsabilidade do programador na implementação das variáveis de controle, uma vez que o compilador se encarrega de realizar a exclusão mútua.
( ) Somente as sentenças I e II estão corretas.
( ) Somente a sentença II está correta.
( ) Somente a sentença II e III estão corretas.
( ) Somente a sentença III está correta.
( ) Somente a sentença I está correta.
3- 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.
( ) I/O-bound.
( ) O processo em questão não é CPU-bound nem I/O-bound.
( ) CPU-bound e I/O-bound ao mesmo tempo.
( ) Não é possível classificar o processo com as informações fornecidas.
4- Suponha que um usuário esteja utilizando um editor de texto em um terminal Windows. Em um dado momento ele nota que o computador ficou lento. O usuário confirma que aparentemente não há nenhum programa sendo executado além do Windows e do Word. Ao conferir no gerenciador de tarefas, ele observa que existe um novo processo chamado "backup". Entretanto, não há nenhuma interface para lidar com esse processo. Neste caso, podemos dizer que o processo "backup" é um processo do tipo:
( ) Background.
( ) Thread.
( ) Underground.
( ) Daemon.
( ) Foreground.
5- Em um sistema multiprogramável, um processo ativo pode estar nos seguintes estados:
5
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
( ) interrupção, pronto ou execução.
( ) latência, espera ou atividade.
( ) latência, pronto ou atividade.
( ) espera, pronto ou execução.
( ) espera, pronto ou interrupção.
6- Nos sistemas operacionais multitarefa é necessário controlar a concorrência de acesso aos recursos e dispositivos, evitando assim a perda de dados. Analise as sentenças abaixo que tratam desse assunto e, em seguida, assinale a alternativa correta:
I. Monitor é a implementação automática da exclusão mútua entre procedimentos realizada pelo compilador da linguagem de programação.
II. Região Crítica é a única parte do código do programa onde não é feito acesso ao recurso compartilhado e exclusão mútua consiste na exclusividade de acesso a um recurso compartilhado.
III. Semáforo é uma variável real e negativa, não manipulada pelo programador.
( ) Somente a sentença I está correta.
( ) Somente a sentença III está correta.
( ) Somente a sentença II está correta.
( ) Somente as sentenças I e II estão corretas.
( ) Somente a sentença II e III estão corretas.
7- Quais são técnicas de sincronização entre processos?
I. Semáforos
II. Habilitar/Desabilitar interrupções
III. Condição de Corrida
IV. Algoritmo de Peterson
( ) Somente I, II e IV.
( ) Somente I e II.
( ) Somente II e IV.
( ) Somente I.
( ) Somente IV.
8- 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:
( ) Um trecho de programa onde existe algum recurso cujo acesso é dado por uma prioridade.
( ) Um trecho de programa onde existe o compartilhamento de algum recurso que não permite o acesso concomitante por mais de um programa.
( ) Um trecho de programa cujas instruções podem ser executadas em paralelo e em qualquer ordem.
( ) Um trecho de programa que deve ser executado em paralelo com a Região Crítica de outro programa.
9- Um sistema informatizado opera 24 horas por dia, por meio de uma conexão direta ao computador central, realizando todas as solicitações no momento em que as transações ocorrem, com destaque pelo menor tempo de resposta, requisito de suma importância para a sua eficiência e performance. Duas aplicações para emprego desse sistema são exemplificadas pelo controle de passagens de grandes companhias aéreas ou rodoviárias e pela monitoração do lançamento de um foguete. Por suas características, esse sistema opera na modalidade de processamento conhecida como:
( ) batch e real time.
( ) on-line e time sharing.
( ) on-line e real time.
( ) off-line e time sharing.
( ) off-line e real time.

Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
10- Durante a execução de um programa podem ocorrer eventos inesperados, que causem um desvio forçado no fluxo de execução de um programa. Esses eventos são conhecidos por interrupção ou exceção. Em relação ao conceito de interrupção e exceção, é correto afirmar que:
( ) O mecanismo de interrupções ser implementado em sistemas operacionais multitarefa e monotarefa.
( ) Uma grande diferença entre a interrupção e a exceção é que no caso da interrupção o próprio programador pode escrever uma rotina de tratamento, evitando que o programa seja encerrado.
( ) Uma exceção independe da instrução que está sendo executada, pois é sempre gerada por algum evento externo ao programa.
( ) É através das exceções que o sistema operacional sincroniza diferentes atividades, como rotinas, programas dos usuários e dispositivos.
( ) Exceções partem de eventos síncronos e previsíveis.


Gabarito

1- As interrupções são eventos síncronos ou assíncronos gerados por um dispositivo de hardware.
2- Somente as sentenças I e II estão corretas.
3- CPU-bound.
4- Background.
5- espera, pronto ou execução.
6- Somente a sentença II está correta.
7- Somente I, II e IV.
8- Um trecho de programa onde existe o compartilhamento de algum recurso que não permite o acesso concomitante por mais de um programa.
9- on-line e real time.
10- Exceções partem de eventos síncronos e previsíveis.


Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito

Sistemas Operacionais
1- 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 "executando"?
( ) 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. Pois independente da quantidade de CPU´s ele será executado.
( ) Sim. Assim que liberar o processador ele será executado.
( ) Não. O processo passa para o estado "pronto" e aguarda até que o sistema operacional o selecione para execução.
2- Os sistemas operacionais criam estruturas de controle, chamadas processo, para controlar a execução dos programas, sejam do usuário ou do próprio sistema. Essa estrutura registra informações sobre a situação do processo durante todo seu processamento, sendo uma dessas informações o estado do processo.
Avalie as sentenças a seguir e assinale a correta.
( ) A transição entre os três estados (PRONTO, ESPERA E EXECUÇÃO) é possível em ambos os sentidos.
( ) O escalonador também pode selecionar processo em ESPERA para execução.
( ) O escalonador organiza a fila de processos em estado de PRONTO. Para escalonadores preemptivos existe a possibilidade de determinar uma fatia de tempo (time slice) para que o processo se mantenha em estado de EXECUÇÃO, após esse tempo o processo retorna para a fila de PRONTO.
( ) O estado de ESPERA representa o processo aguardando o fim da fatia de tempo de um processo em EXECUÇÂO.
( ) O estado de EXECUÇÃO representa o processo aguardando ser escalonado, ou seja, o processo depende da escolha por parte do sistema operacional para que possa executar seu código (instruções).
3- O uso de interrupções é fundamental para a existência de:
( ) sistemas multitarefa.
( ) comunicação de dados.
( ) bibliotecas de software.
( ) dispositivos de hardware como teclado e disco.
( ) dispositivos de hardware como monitor e impressora.
4- Os sistemas operacionais podem ser classificados em relação a possibilidade de concorrência entre processos e a possibilidade de uso concorrente por mais de um usuário. Neste contexto podemos afirmar que:
( ) Todo sistema multiusuário é também multitarefa.
( ) Alguns sistemas multiusuário são também multitarefa.
( ) Todo sistema multitarefa é também multiusuário.
( ) Sistemas monousuário são obrigatoriamente monotarefa.
( ) Sistemas monotarefa podem ser multiusuário.
5- O que poderia potencialmente acontecer se threads bloqueados em um semáforo não saíssem da fila na ordem ‘primeiro a entrar, primeiro a sair’?
( ) O semáforo entraria em loop momentâneo.
( ) Um thread poderia sofrer adiamento indefinido.
( ) Um thread poderia sofrer adiamento momentâneo.
( ) O semáforo executaria um deadlock.
6- Os Sistemas Operacionais são divididos em grupos relacionados com o tipo de computador que controlam e o tipo de aplicativos que suportam. Um sistema operacional permite que diversos usuários utilizem simultaneamente os recursos do computador é chamado de:
( ) multiexecutado.
( ) multprocessado.
( ) multiusuário.
( ) multitarefa.
7- Durante a execução de um programa podem ocorrer eventos inesperados, que causam um desvio forçado no fluxo de execução de um programa. Esses eventos são conhecidos por interrupção. É correto afirmar que:
( ) As interrupções são somente os eventos assíncronos gerados por um dispositivo de hardware ou pelo sistema operacional.
( ) As interrupções são somente os eventos síncronos gerados por um dispositivo de hardware ou pelo sistema operacional.
( ) As interrupções são eventos síncronos ou assíncronos gerados somente pelo sistema operacional.
( ) As interrupções são eventos síncronos ou assíncronos gerados por um dispositivo de hardware.
( ) As interrupções são eventos síncronos ou assíncronos gerados pelo sistema operacional ou por outro processo de maior prioridade.
8- Joãozinho estuda computação e achou a fórmula mágica para acertar na loteria! Ele apenas tem que fazer um programa que dado as sequências de números sorteados em todos os concursos passados consegue gerar a sequência de números que será sorteado no próximo concurso, através de um mecanismo envolvendo altos cálculos estatísticos. Joãozinho põe a prova seu programa, mas não consegue obter o resultado a tempo, mesmo rodando o programa por dias consecutivos. Este programa é o exemplo de um programa:
( ) Foreground.
( ) Background.
( ) I/O-bound.
( ) CPU-bound.
9- Sabemos que o mecanismo de interrupção possibilitou a implementação de sistemas multitarefa. Analise as sentenças abaixo sobre interrupções e, em seguida, assinale a alternativa correta:
I. Um programa que está em execução no momento em que ocorre uma interrupção externa tem o seu contexto salvo, o que permite retomarmos seu processamento posteriormente a partir do ponto onde ocorreu a interrupção
II. São exemplos de eventos geradores de interrupção interna (exceção): divisão por zero e overflow
III. Interrupções internas são geradas por eventos assíncronos e as externas por eventos síncronos
( ) Somente as sentenças II e III estão corretas.
( ) Somente a sentença II está correta.
( ) Somente as sentenças I e III estão corretas.
( ) Somente a sentença I está correta.
( ) Somente as sentenças I e III estão corretas
10- Nos sistemas operacionais multitarefa é necessário controlar a concorrência de acesso aos recursos e dispositivos, evitando assim a perda de dados. Analise as sentenças abaixo que tratam desse assunto e, em seguida, assinale a alternativa correta:
I. Os mecanismos que garantem a comunicação entre processos concorrentes e o acesso a recursos compartilhados são chamados mecanismos de sincronização.
II. Semáforo e monitor são soluções de software para implementação de exclusão mútua entre a região crítica de processos concorrentes, garantindo assim a sincronização.
III. O monitor aumenta a responsabilidade do programador na implementação das variáveis de controle, uma vez que o compilador se encarrega de realizar a exclusão mútua.
( ) Somente as sentenças I e II estão corretas.
( ) Somente as sentenças II e III estão corretas.
( ) Somente a sentença I está correta.
( ) Somente a sentença III está correta.

Gabarito

1- Não. O processo passa para o estado "pronto" e aguarda até que o sistema operacional o selecione para execução.
2- O escalonador organiza a fila de processos em estado de PRONTO. Para escalonadores preemptivos existe a possibilidade de determinar uma fatia de tempo (time slice) para que o processo se mantenha em estado de EXECUÇÃO, após esse tempo o processo retorna para a fila de PRONTO.
3- sistemas multitarefa.
4- Todo sistema multiusuário é também multitarefa.
5- Um thread poderia sofrer adiamento indefinido.
6- Multiusuário.
7- As interrupções são eventos síncronos ou assíncronos gerados por um dispositivo de hardware.
8- CPU-bound
9- Somente as sentenças I e III estão corretas.
10- Somente as sentenças I e II estão corretas.


Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Sistemas Operacionais
1- 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 "executando"?
( ) 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. Pois independente da quantidade de CPU´s ele será executado.
( ) Sim. Assim que liberar o processador ele será executado.
( ) Não. O processo passa para o estado "pronto" e aguarda até que o sistema operacional o selecione para execução.
2- Suponha que um usuário esteja utilizando um editor de texto em um terminal Windows. Em um dado momento ele nota que o computador ficou lento. O usuário confirma que aparentemente não há nenhum programa sendo executado além do Windows e do Word. Ao conferir no gerenciador de tarefas, ele observa que existe um novo processo chamado "backup". Entretanto, não há nenhuma interface para lidar com esse processo. Neste caso, podemos dizer que o processo "backup" é um processo do tipo:
( ) Daemon.
( ) Underground.
( ) Thread.
( ) Foreground.
( ) Background.
3- Nos sistemas operacionais multitarefa é necessário controlar a concorrência de acesso aos recursos e dispositivos, evitando assim a perda de dados. Analise as sentenças abaixo que tratam desse assunto e, em seguida, assinale a alternativa correta:
I. Monitor é a implementação automática da exclusão mútua entre procedimentos realizada pelo compilador da linguagem de programação
II. Região Crítica é a única parte do código do programa onde não é feito acesso ao recurso compartilhado e exclusão mútua consiste na exclusividade de acesso a um recurso compartilhado
III. Semáforo é uma variável real e negativa, não manipulada pelo programador
( ) Somente a sentença II está correta.
( ) Somente a sentença I está correta.
( ) Somente a sentença III está correta.
( ) Somente as sentenças I e II estão corretas.
( ) Somente a sentença II e III estão corretas.
4- Os Sistemas Operacionais são divididos em grupos relacionados com o tipo de computador que controlam e o tipo de aplicativos que suportam. Um sistema operacional permite que diversos usuários utilizem simultaneamente os recursos do computador é chamado de:
( ) multiexecutado.
( ) multprocessado.
( ) multiusuário.
( ) multitarefa.
5- 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:
( ) Um trecho de programa onde existe o compartilhamento de algum recurso que não permite o acesso concomitante por mais de um programa.
( ) 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 cujo acesso é dado por uma prioridade.
( ) Um trecho de programa cujas instruções podem ser executadas em paralelo e em qualquer ordem.
6- 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 Principal.
( ) Gerenciamento de Processos.
( ) Gerenciamento do Sistema de I/O
( ) Gerenciamento de Arquivos.
( ) Gerenciamento de Memória Secundaria.
7- Durante a execução de um programa podem ocorrer eventos inesperados, que causam um desvio forçado no fluxo de execução de um programa. Esses eventos são conhecidos por interrupção. É correto afirmar que:
( ) As interrupções são somente os eventos assíncronos gerados por um dispositivo de hardware ou pelo sistema operacional.
( ) As interrupções são somente os eventos síncronos gerados por um dispositivo de hardware ou pelo sistema operacional.
( ) As interrupções são eventos síncronos ou assíncronos gerados somente pelo sistema operacional
( ) As interrupções são eventos síncronos ou assíncronos gerados por um dispositivo de hardware.
( ) As interrupções são eventos síncronos ou assíncronos gerados pelo sistema operacional ou por outro processo de maior prioridade.
8- Uma das partes perceptíveis no Sistema Operacional é o Sistema de Arquivos. Os usuários se utilizam dele para armazenar seus dados. Do ponto de vista do sistema operacional, um sistema de arquivo tem um conjunto de características, por um conjunto de operações e um conjunto de atributos que podem variar de sistema operacional para sistema operacional. Descreva as características de arquivos, as operações básicas e a formação de atributos.
Resposta: _________________________________________________________ __________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
9- O uso de interrupções é fundamental para a existência de:
( ) sistemas multitarefa.
( ) comunicação de dados.
( ) bibliotecas de software.
( ) dispositivos de hardware como teclado e disco.
( ) dispositivos de hardware como monitor e impressora.
10- Quais as diferenças entre a paginação e a segmentação no que se refere à divisão dos programas em blocos e à ocorrência de fragmentação?
Resposta: _________________________________________________________ __________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.

Gabarito

1- Não. O processo passa para o estado "pronto" e aguarda até que o sistema operacional o selecione para execução.
2- Background.
3- Somente a sentença II está correta.
4- Multiusuário.
5- Um trecho de programa onde existe o compartilhamento de algum recurso que não permite o acesso concomitante por mais de um programa.
6- Gerenciamento de Memória Secundaria.
7- As interrupções são eventos síncronos ou assíncronos gerados por um dispositivo de hardware.
8- Gabarito – Arquivos têm como características: Persistência: Arquivos são armazenados em discos, ou em outro meio de armazenamento não volátil, e não desaparecem ao término da sessão. Compartilhamento: Arquivos podem ser compartilhados por processos diferentes. Estrutura: Possuem uma organização interna em função do tipo de informação que armazena. Quanto às operações básicas, estas são: Criação: operação de escrita em disco com a criação do arquivo. Gravação: operação de escrita em discos dos dados do arquivo. Leitura: operação responsável pela leitura dos dados a partir do disco. Exclusão: operação responsável pela retirada do arquivo do disco. Em relação aos atributos, estes são informações de controle próprias de cada arquivo que, dependendo do sistema de arquivos, variam. Exemplos de atributos são: Nome: Representação utilizada para o usuário. Tipo: Necessário em sistemas que utilizam mais de um tipo de arquivo. Localização: Identificação da posição de um arquivo em um dispositivo específico. Tamanho: Registro do tamanho atual do arquivo. Proteção: Informações de controle de acesso. Usuário: Identificação do criador do arquivo. Data e hora: Registro da criação, último acesso e última modificação.
9- sistemas multitarefa.
10- Gabarito – Na paginação o espaço de endereçamento virtual e o espaço de endereçamento real são divididos em blocos do mesmo tamanho, da mesma forma que os processos. Dessa forma qualquer “pedaço” de qualquer processo “se encaixa” na memória. Esses blocos de tamanhos fixos são chamados PÁGINAS. A fragmentação ocorrerá na última página, caso ela não seja completada de código (nem todo programa é múltiplo do número páginas). Já na segmentação o programa é dividido pela sua estrutura lógica e não em tamanhos fixos. Os blocos têm tamanhos diferentes e são chamados SEGMENTOS. O endereço virtual é composto pelo número do segmento e o deslocamento dentro do segmento. O endereço físico é calculado a partir do endereço físico do segmento mais o deslocamento dentro do segmento. A fragmentação nesse caso é externa, fora do segmento.

Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Sistemas Operacionais
1- 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:
( ) Espera por recurso e não-preempção.
( ) Não-preempção.
( ) Exclusão mútua, espera por recurso e não-preempção.
( ) Exclusão mútua e espera por recurso.
( ) Exclusão mútua e não-preempção.
2- 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:
( ) MULTITAREFA.
( ) INTERATIVO.
( ) MULPROCESSADOR.
( ) TEMPO REAL.
( ) TIME SHERING.
3- No âmbito de sistemas operacionais, uma seção ou região crítica é a:
( ) parte do programa que acessa dados compartilhados.
( ) área da memória que contém dados compartilhados.
( ) área do sistema operacional que contém o código do loader.
( ) parte da memória usada para operações criptográficas.
( ) área do programa que é executada 80% do tempo.
4- O Microsoft Windows XP é nativamente um sistema operacional:
( ) Que previne-se contra deadlocks.
( ) Multiprogramado.
( ) Nenhuma das alternativas.
( ) Microkernel.
( ) Monotarefa.
5- Sabe-se que cada processo tem seu próprio contexto de software, contexto de hardware e espaço de endereçamento. Já as 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. Isto posto, marque a assertiva VERDADEIRA:
( ) O uso de threads diminui o desempenho, pois durante a interrupção de um thread é necessário salvar 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 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 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.
( ) O uso de threads não influencia no desempenho, pois durante a interrupção de um thread é necessário salvar 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 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.
6- Suponha um sistema operacional multiprogramado no qual há vários processos sendo 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. Assinale a alternativa que representa o critério de escalonamento adequado para a situação descrita:
( ) Shortest-Job-First (SJF)
( ) First-In-First-Out (FIFO)
( ) Translation Lookaside Buffer (TLB)
( ) Paginação
( ) Por Prioridade
7- 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 B não apresenta fragmento em qualquer das duas situações.
( ) O processo A não apresenta fragmento na situação 1.
( ) Os fragmentos do processo C para as duas situações apresentadas são 9 e 14 bytes, respectivamente.
( ) O processo A ocupará 6 páginas de 15bytes.
8- Processos podem ser classificados como CPU-bound ou I/O bound, de acordo com a utilização elevada do processador(UCP) e dos dispositivos de entrada/saída(E/S), respectivamente. Analisando os gráficos abaixo podemos afirmar que:
( ) o gráfico 1 representa um processo de I/O bound e o gráfico 2 representa um processo de CPU-bound.
( ) tanto o gráfico 1 quanto o gráfico 2 representam processos de CPU-bound.
( ) tanto o gráfico 1 quanto o gráfico 2 representam processos de I/O bound.
( ) o gráfico 2 representa um processo de I/O bound e o gráfico 1 representra um processo de CPU-bound.
( ) ao longo do tempo o gráfico 1 representa um processo de I/O bound, já no gráfico 2 não é possível verificar o tipo de processo que representa.
9- À medida que o sistema operacional UNIX expandiu-se, o kernel tornou-se grande e difícil de gerenciar. Na metade dos anos 1980, pesquisas na Universidade Carnegie Mellon desenvolveram um sistema operacional chamado Mach que modularizou o kernel, utilizando o enfoque do microkernel. O que caracteriza a estrutura microkernel? Cite ainda uma vantagem de sua implementação.
Resposta: _________________________________________________________ __________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
10- O escalonamento de CPU trata do problema de decidir qual dos processos na fila de prontos deve ser entregue à CPU. Considere que o algoritmo de escalonamento Round-Robin esteja sendo utilizado e que o conjunto de processos abaixo chegue no momento 0, com a extensão do tempo de burst de CPU indicada em milissegundos. Dado: P1 é o primeiro processo na fila de prontos, P2 é o segundo e P3 é o terceiro
Se for utilizado um quantum de 4 milissegundos, o tempo de espera médio será de:
( ) 5.
( ) 6.
( ) 2.
( ) 4.
( ) 3.
11- Existem dois tipos de escalonamento os preemptivos e não preemptivos. Qual a diferença entre eles? Dê pelo menos um exemplo de algoritmo de escalonamento preemptivo e não preemptivo.
Resposta: _________________________________________________________ __________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.


Gabarito
1- Exclusão mútua, espera por recurso e não-preempção.
2- TEMPO REAL.
3- parte do programa que acessa dados compartilhados.
4- Multiprogramado.
5- 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.
6- Shortest-Job-First (SJF)
7- Os fragmentos do processo C para as duas situações apresentadas são 9 e 14 bytes, respectivamente.
8- o gráfico 2 representa um processo de I/O bound e o gráfico 1 representa um processo de CPU-bound.
9- Gabarito – Este método estrutura o SO removendo todos os componentes não essenciais do kernel (o resultado é um kernel menor) implementando-os como programas de nível de sistema e de usuário. Vantagens: - facilidade de expandir o SO, ou seja, todos os novos serviços são adicionados ao espaço de usuário e, consequentemente, não exigem a modificação do kernel. - O SO resultante é mais fácil de ser transportado de uma plataforma de harware para outra. ¿ Proporciona maior segurança e confiabilidade, já que a maioria dos serviços, exceto o kernel, opera como processo de usuário.
10- 6.
11- Gabarito: No escalonamento não-preemptivo o sistema operacional não interrompe o processo em execução para substituí-lo por outro processo. Já o preemptivo é caracterizado pela possibilidade do sistema operacional interromper um processo em execução e passá-lo para o estado de pronto. Exemplos: não-preemptivo: fifo, sjf preemptivo: escalonamento circular, por prioridades, por múltiplas filas.

Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Sistemas Operacionais
1- Um computador com endereços de 32 bits usa uma tabela de páginas de dois níveis. Os endereços virtuais são divididos em um campo de 11 bits para o primeiro nível da tabela, outro campo de 11 bits para o segundo nível e um último campo para o deslocamento. Quantas páginas podem existir neste sistema?
( ) 232.
( ) 212.
( ) 222.
( ) 211.
( ) 210.
2- 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 aconteceu, resolvi guardar as canetas para a segunda aula e continuar aguardando 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:
( ) 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 deadlock que poderá ser solucionado quando o professor desistir da aula.
( ) Uma condição de corrida.
( ) Um evento que será solucionado assim que terminar a aula.
3- Para melhor análise do desempenho dos processos com os diferentes tipos de escalonamento existentes, os processos são classificados em dois tipos: CPU-bound e I/O-bound. Com esse conceito definido podemos afirmar que:
( ) Os processos I/O-bound levam vantagem em escalonamentos feitos com o mecanismo de preempção por tempo, enquanto os processos CPU-bound se beneficiam através de mecanismos de preempção por prioridade.
( ) Os processos I/O-bound podem levar vantagem em qualquer escalonamento baseado composto com critérios de prioridade.
( ) Os processos CPU-bound levam vantagem em escalonamentos feitos com o mecanismo de preempção por tempo, enquanto os processos I/O-bound se beneficiam através de mecanismos de prioridade dinâmica.
( ) Não faz diferença o tipo de escalonamento, pois sempre os processos CPU-bound levam vantagem sobre os processos I/O-bound.
( ) Independente do tipo de escalonamento, os processos I/O-bound levam vantagem sobre os processosCPU-bound.
4- Considere uma aplicação baseada em threads em um sistema operacional com suporte a threads de kernel. Se um dos threads desta aplicação for bloqueada para aguardar um acesso ao disco podemos afirmar que as demais threads deste processo:
( ) Não serão bloqueadas mas ficaram aguardando o desbloqueio da thread que solicitou o acesso ao disco
( ) Serão interrompidas provocando um erro no processo.
( ) Serão bloqueadas também para impedir a ocorrência de erros.
( ) 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.
5- 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:
21
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
( ) Espera por recurso e não-preempção.
( ) Exclusão mútua e espera por recurso.
( ) Exclusão mútua, espera por recurso e não-preempção.
( ) Não-preempção.
( ) Exclusão mútua e não-preempção.
6- Considerando que um processo em um determinado sistema operacional pode estar no estado executando, pronto ou bloqueado, marque a sentença correta.
( ) O processo passa do estado de execução para o estado de pronto se o próprio processo solicitar acesso a um dispositivo de hardware.
( ) O processo passa do estado de execução para o estado de pronto se for interrompido pelo temporizador (relógio).
( ) O processo passa do estado de execução para o estado de pronto se for interrompido pelo sistema operacional.
( ) O processo passa do estado de pronto para o estado de bloqueado se for solicitado um acesso ao disco.
( ) O processo passa do estado de bloqueado para o estado de executando se for solicitado pelo próprio processo.
7- Uma das partes que compõe um processo é o contexto de hardware e que está relacionado com a troca de contexto (mudança de contexto) de um processo. Explique o que é o contexto de hardware de um processo e como é a implementação da troca de contexto.
Resposta: _________________________________________________________ __________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
8- Um sistema operacional multitarefa tem como característica fundamental:
( ) Ser também multiusuário.
( ) A execução simultânea de processos.
( ) A execução concorrente de processos.
( ) Uso simultâneo de mais de uma unidade de disco.
( ) Uso de interface gráfica.
9- Suponha um posto de abastecimento que venda apenas gasolina. Este posto tem 5 (cinco) caixas para que os clientes façam o pagamento. Cada caixa executa uma instância de um programa que atualiza o estoque (em litros) de gasolina. O arquivo que contém o estoque fica em um servidor, sendo compartilhado entre os cinco caixas. Sempre que um cliente faz o pagamento, o sistema do caixa faz, basicamente, três operações:
1. Lê o arquivo de estoque para saber a quantidade de litros que há em estoque.
2. Subtrai do estoque a quantidade de litros comprada pelo cliente.
3. Grava o arquivo de estoque com a quantidade de litros calculada no passo "2".
Considerando a situação exposta, descreva que problemas podem decorrer do compartilhamento do recurso "arquivo de estoque" pelos cinco processos executados de forma concorrente.
Resposta: _________________________________________________________ _______________________________________________________________
22
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
10- Em um sistema monoprocessado, um escalonador pode interromper o processo em execução? Marque a resposta correta com a justificativa correta.
( ) Não, nenhum processo pode ser interrompido quando está de posse do processador.
( ) Sim, o sistema operacional emite um aviso para o escalonador executar a interrupção.
( ) Sim, o escalonador deve interromper o processo no final da fatia de tempo destinada ao processo que está em execução.
( ) Depende do sistema operacional.
( ) Não, o escalonador é um processo e não pode executar nenhuma operação enquanto não estiver de posse do processador.
23
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Gabarito
1- 222.
2- Um deadlock em função da exclusão mútua no acesso aos dois recursos.
3- Os processos CPU-bound levam vantagem em escalonamentos feitos com o mecanismo de preempção por tempo, enquanto os processos I/O-bound se beneficiam através de mecanismos de prioridade dinâmica.
4- Poderão continuar executando se não dependerem da thread que foi bloqueada.
5- Exclusão mútua, espera por recurso e não-preempção.
6- O processo passa do estado de execução para o estado de pronto se for interrompido pelo temporizador (relógio)
7- Gabarito – O contexto de hardware armazena o conteúdo dos registradores gerais da UCP, além dos registradores de uso específico. A mudança de contexto consiste em salvar o conteúdo dos registradores do processo que está deixando a UCP e carregá-los com os valores referentes aos do novo processo que será executado. Ou seja´substituir 0 contexto de hardware de um processo por outro.
8- A execução concorrente de processos.
9- Gabarito – O arquivo de estoque pode ser gravado de forma inconsistente. Se um caixa já tiver executado o passo 1 ou 2 e ainda não tiver executado o passo 3 (ou seja, a gravação do arquivo) e outro caixa executar o passo 1, esse segundo caixa irá fazer uma leitura do arquivo de estoque desatualizado, desconsiderando a operação realizada pelo primeiro caixa. Dessa forma, quando o segundo caixa fizer a gravação, a operação realizada pelo primeiro caixa terá sido ignorada.
10- Não, o escalonador é um processo e não pode executar nenhuma operação enquanto não estiver de posse do processador.
24
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Sistemas Operacionais
1- Na execução de processos existem duas importantíssimas rotinas que são o escalonador e o dispatcher. Uma destas rotinas depende da outra para sua execução. Descreva a função de cada uma delas e responda qual a rotina que depende da outra para ser executada?
Resposta: _________________________________________________________ ___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
2- Para evitar os problemas causados pelo compartilhamento de recursos entre processos executados de forma concorrente foram propostos mecanismos de exclusão mútua. Os mecanismos de exclusão mútua são classificados entre soluções de hardware e soluções de software. Das alternativas abaixo, marque a unica que apresenta uma solução de HARDWARE para o problema da exclusão mútua.
( ) Segundo algoritmo.
( ) Primeiro algoritmo.
( ) Instrução test-and-set.
( ) Algoritmo de Peterson.
( ) Algoritmo de Dekker.
3- Em relação ao uso de threds em modo kernel, analise as assertivas a seguir:
I - Threads em modo kernel podem ser utilizados em sistemas operacionais monothread.
II - Threads em modo usuário são criadas e destruidas pelo sistema operacional.
III - Threads em modo kernel não bloqueiam o processo quando entram em estado de espera
Marque a alternativa que contém as assertivas VERDADEIRAS:
( ) Somente II.
( ) Somente I.
( ) Somente I e III.
( ) Todas são verdadeiras.
( ) Somente III .
4- Os sistemas operacionais podem ser classificados em relação a possibilidade de concorrência entre processos e a possibilidade de uso concorrente por mais de um usuário. Neste contexto podemos afirmar que:
( ) Sistemas monousuário são obrigatoriamente monotarefa.
( ) Alguns sistemas multiusuário são também multitarefa .
( ) Sistemas monotarefa podem ser multiusuário.
( ) Todo sistema multiusuário é também multitarefa.
( ) Todo sistema multitarefa é também multiusuário.
5- Os sistemas operacionais criam estruturas de controle, chamadas processo, para controlar a execução dos programas, sejam do usuário ou do próprio sistema. Essa estrutura registra informações sobre a situação do processo durante todo seu processamento, sendo uma dessas informações o estado do processo. Avalie as sentenças a seguir e assinale a correta.
( ) O estado de EXECUÇÃO representa o processo aguardando ser escalonado, ou seja, o processo depende da escolha por parte do sistema operacional para que possa executar seu código (instruções).
( ) O escalonador também pode selecionar processo em ESPERA para execução.
25
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
( ) O escalonador organiza a fila de processos em estado de PRONTO. Para escalonadores preemptivos existe a possibilidade de determinar uma fatia de tempo (time slice) para que o processo se mantenha em estado de EXECUÇÃO, após esse tempo o processo retorna para a fila de PRONTO.
( ) O estado de ESPERA representa o processo aguardando o fim da fatia de tempo de umprocesso em EXECUÇÂO.
( ) A transição entre os três estados (PRONTO, ESPERA E EXECUÇÃO) é possível em ambos os sentidos.
6- No contexto de processos, como pode ocorrer uma condição de corrida?
( ) Não haverá condição de corrida em sistemas multitarefa.
( ) Uma condição de corrida ocorre quando um ou mais processos iniciam a execução concomitante e competem no tempo para terminar primeiro.
( ) Uma condição de corrida é uma técnica utilizada para medir o tempo de execução de um processo.
( ) Uma condição de corrida é uma técnica computacional aplicada aos processos para que os mesmos sejam comparados com relação ao tempo de execução.
( ) Uma condição de corrida pode ocorrer quando dois ou mais processos estão lendo ou escrevendo algum dado compartilhado e o resultado final depende de qual e quando executa precisamente.
7- Na política de escalonamento First-In-First-Out (FIFO), é selecionado para execução o processo que:
( ) chegar primeiro ao estado de pronto.
( ) tiver o menor tempo de processador ainda por executar.
( ) estiver em modo usuário.
( ) ocupar menos espaço em memória.
( ) tiver maior prioridade.
8- Existem diferentes maneiras de implementar a concorrência dentro de uma aplicação. São exemplos desta implementação os processos independentes, subprocessos e threads. Quais as diferenças entre estas implementações?
Resposta: _________________________________________________________ ___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
9- Durante a execução de um programa podem ocorrer eventos inesperados, que causem um desvio forçado no fluxo de execução de um programa. Esses eventos são conhecidos por interrupção ou exceção. Em relação ao conceito de interrupção e exceção, é correto afirmar que:
( ) Exceções partem de eventos síncronos e previsíveis.
( ) O mecanismo de interrupções ser implementado em sistemas operacionais multitarefa e monotarefa.
( ) Uma exceção independe da instrução que está sendo executada, pois é sempre gerada por algum evento externo ao programa.
( ) Uma grande diferença entre a interrupção e a exceção é que no caso da interrupção o próprio programador pode escrever uma rotina de tratamento, evitando que o programa seja encerrado.
( ) É através das exceções que o sistema operacional sincroniza diferentes atividades, como rotinas, programas dos usuários e dispositivos.
10- São critérios de escalonamento de processos em sistemas operacionais:
( ) throughput, tempo de controle, tempo de stayaround.
( ) threadout, velocidade de espera, memória de turnaround.
26
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
( ) througset, custo de recicling, tempo de turnover.
( ) output, paralelismo de controle, tempo de movearound.
( ) throughput, tempo de espera, tempo de turnaround.
27
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Gabarito
1- Gabarito – Escalonador é o responsável por implementar os critérios da política de escalonamento dos processos e o dispatcher é o responsável pela troca de contexto dos processos. Após o escalonado determinar qual processo deve fazer uso do processor, o dispatcher irá realizar a troca. Sendo assim é o dispatcher que depende do escalonador.
2- Instrução test-and-set.
3- Somente III.
4- Todo sistema multiusuário é também multitarefa.
5- O escalonador organiza a fila de processos em estado de PRONTO. Para escalonadores preemptivos existe a possibilidade de determinar uma fatia de tempo (time slice) para que o processo se mantenha em estado de EXECUÇÃO, após esse tempo o processo retorna para a fila de PRONTO.
6- Uma condição de corrida pode ocorrer quando dois ou mais processos estão lendo ou escrevendo algum dado compartilhado e o resultado final depende de qual e quando executa precisamente.
7- chegar primeiro ao estado de pronto.
8- Gabarito: Nos processos independentes não existe vínculo entre o processo criado e o seu criador. Cada processo possui seu próprio contexto de hardware, contexto de software e espaço de endereçamento. Já os subprocessos são criados dentro de uma hierarquia, onde existe uma dependência entre o processo criador e o subprocesso. Caso o processo pai deixe de existir o processo filho deixará também, apesar de cada processo possuir sua própria PCB. Diferentemente dos dois exemplos anteriores, os threads compartilham o espaço de endereçamento e o contexto de software, porém cada thread possui seu próprio contexto de hardware.
9- Exceções partem de eventos síncronos e previsíveis.
10- throughput, tempo de espera, tempo de turnaround.
28
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Sistemas Operacionais
1- O gerenciamento dos sistemas de entrada/saída de dados é normalmente implementado em duas camadas: uma responsável pelo controle do dispositivo e outra, pelo gerenciamento de entrada/saída.
( ) Por que isso representa um projeto eficiente? Escolha a alternativa correta.
( ) Porque permite evitar o uso de DMA para a operação de entrada/saída. Porque permite separar as operações de entrada das operações de saída de dados.
( ) Porque permite o uso de duas linguagens de programação na sua implementação, pois o controle do dispositivo exige a programação em linguagem de máquina.
( ) Porque permite o compartilhamento dos dispositivos de entrada/saída através do gerenciamento de entrada/saída.
( ) Porque permite separar características de hardware de características funcionais do dispositivo de entrada/saída.
2- Um sistema operacional pode ser definido como um conjunto de rotinas executado pelo processador. Também é certo dizer que o sistema operacional atua como uma interface entre o usuário e o computador. Marque a alternativa INCORRETA em relação ao conceito de sistemas operacionais:
( ) Um sistema operacional deve facilitar acesso aos recursos do sistema.
( ) 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.
( ) Um sistema operacional deve compartilhar os recursos do sistema de forma organizada e protegida.
( ) Um sistema operacional é responsável por gerenciar os recursos computacionais.
( ) É impossível fazer uso de um computador que não tenha um sistema operacional.
3- 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:
( ) I/O-bound.
( ) O processo em questão não é CPU-bound nem I/O-bound.
( ) CPU-bound e I/O-bound ao mesmo tempo.
( ) CPU-bound.
( ) Não é possível classificar o processo com as informações fornecidas.
4- 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 contexto de software do processo.
( ) do gerenciamento de arquivo.
( ) do espaço de endereçamento do processo.
( ) do contexto de hardware do processo.
( ) do controle de memória do processo.
5- Starvation é uma situação que ocorre quando:
( ) Quando Quantum esta acima de 400 ms .
( ) A prioridade de um processo é ajustada de acordo com o tempo total de execução do mesmo.
( ) Pelo menos um processo é continuamente postergado e não executa.
( ) Pelo menos um evento espera por um evento que não vai ocorrer.
( ) O processo tenta mas não consegue acessar uma variável compartilhada.
29
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
6- 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 wait decrementa o semáforo; se o valor ficar negativo o processo é bloqueado. III. A operação signal incrementa o semáforo; se o valor não ficar positivo o processo bloqueado pela operação wait é desbloqueado. IV. As operações de incrementar e decrementar devem não ser operações atômicas, ou indivisíveis. Estão corretas as sentenças:
( ) II, III e IV.
( ) I, III e IV.
( ) I, II e III.
( ) apenas I e IV.
( ) apenas II e III.
7- Considerando o momento em que a UCP encontra-se livre, ela será entregue ao processo que tiver o menor tempo de duração para o próximo surto de UCP, caso o sistema operacional esteja utilizando um algoritmo de escalonamento:
( ) SJF.
( ) Múltiplas Filas.
( ) FIFO.
( ) FCFS.
( ) Round Robin.
8- Sabemos que o sistema operacional é a mais importante plataforma lógica de um sistema computacional e que, através de suas gerências, controlam todas as operações e funcionalidades. Um dos grandes desafios é estabelecer uma política de escalonamento eficiente que proporcione à CPU um fluxo de processos considerável, minimizado o tempo de resposta e, consequentemente, maximizando a vazão de tarefas. Diante desta consideração responda as perguntas a seguir:
a) Como se classificam os tipos de escalonamento?
b) Descreva as políticas de escalonamento: Por prioridades e Shortest-Job-First (SJF)
Resposta: _________________________________________________________ ___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
9- 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 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 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.
( ) 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.
30
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
( ) 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 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.
10- Um sistema multiusuário pode ser um sistema monotarefa? Justifique a sua resposta.
Resposta: _________________________________________________________ ___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
31
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Gabarito
1- Porque permite separar características de hardware de características funcionais do dispositivo de entrada/saída.
2- É impossível fazer uso de um computador que não tenha um sistema operacional.
3- CPU-bound.
4- do contexto de software do processo.
5- Pelo menos um processo é continuamente postergado e não executa.
6- I, II e III.
7- SJF.
8- Gabarito – a)Preemptivo e Não-preemptivo. b)Por prioridade A cada processo que alcança o estado de pronto é associada uma prioridade de execução. Os processos de maior prioridade são escalonados preferencialmente. Este tipo de preempção é implementado através de um clock, que interrompe o processador em determinados intervalos de tempo, para que a rotina de escalonamento reavalie prioridades e, se necessário, escalone outro processo. O processo interrompido volta para a fila de prontos. Shortest-Job-First (SJF) cada processo é associado ao seu tempo de execução. Dessa forma, quando o processador está livre, o processo em estado de pronto que precisar de menos tempo de UCP para terminar seu processamento é selecionado para execução (shortest-job-first).
9- 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.
10- Gabarito – Não. Um sistema multiusuário deve ser multitarefa pois a existência de um usuário "logada" já implica na criação de, no mínimo, uma tarefa.
32
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Sistemas Operacionais
1- Existem diferentes maneiras de implementar a concorrência dentro de uma aplicação. São exemplos desta implementação os processos independentes, subprocessos e threads. Quais as diferenças entre estas implementações?
Resposta: _________________________________________________________ ___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
2- Na execução de processos existem duas importantíssimas rotinas que são o escalonador e o dispatcher. Uma destas rotinas depende da outra para sua execução. Descreva a função de cada uma delas e responda qual a rotina que depende da outra para ser executada?
Resposta: _________________________________________________________ ___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
3- Para evitar os problemas causados pelo compartilhamento de recursos entre processos executados de forma concorrente foram propostos mecanismos de exclusão mútua. Os mecanismos de exclusão mútua são classificados entre soluções de hardware e soluções de software. Das alternativas abaixo, marque a única que apresenta uma solução de HARDWARE para o problema da exclusão mútua.
( ) Algoritmo de Dekker.
( ) Primeiro algoritmo
( ) Instrução test-and-set.
( ) Algoritmo de Peterson.
( ) Segundo algoritmo
4- Uma alternativa para o aumento de desempenho de sistemas computacionais é o uso de processadores com múltiplos núcleos, chamados multicores. Nesses sistemas, cada núcleo, normalmente, tem as funcionalidades completas de um processador, já sendo comuns, atualmente, configurações com 2, 4 ou mais núcleos. Com relação ao uso de processadores multicores, e sabendo que threads são estruturas de execução associadas a um processo, que compartilham suas áreas de código e dados, mas mantêm contextos independentes, analise as seguintes asserções:
Ao dividirem suas atividades em múltiplas threads que podem ser executadas paralelamente, aplicações podem se beneficiar mais efetivamente dos diversos núcleos dos processadores multicores.
PORQUE
O sistema operacional nos processadores multicores pode alocar os núcleos existentes para executar simultaneamente diversas sequências de código, sobrepondo suas execuções e, normalmente, reduzindo o tempo de resposta das aplicações às quais estão associadas.
Acerca dessas asserções, assinale a opção correta.
( ) As duas asserções são proposições verdadeiras, mas a segunda não é uma justificativa correta da primeira.
( ) A primeira asserção é uma proposição falsa, e a segunda, uma proposição verdadeira.
( ) As duas asserções são proposições verdadeiras, e a segunda é uma justificativa correta da primeira.
33
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
( ) A primeira asserção é uma proposição verdadeira, e a segunda, uma proposição falsa.
( ) Tanto a primeira quanto a segunda asserções são proposições falsas.
5- Em relação ao uso de threds em modo kernel, analise as assertivas a seguir:
I - Threads em modo kernel podem ser utilizados em sistemas operacionais monothread .
II - Threads em modo usuário são criadas e destruidas pelo sistema operacional.
III - Threads em modo kernel não bloqueiam o processo quando entram em estado de espera .
Marque a alternativa que contém as assertivas VERDADEIRAS:
( ) Somente I.
( ) Somente III.
( ) Todas são verdadeiras.
( ) Somente II.
( ) Somente I e III.
6- No contexto de processos, como pode ocorrer uma condição de corrida?
( ) Uma condição de corrida é uma técnica utilizada para medir o tempo de execução de um processo.
( ) Uma condição de corrida ocorre quando um ou mais processos iniciam a execução concomitante e competem no tempo para terminar primeiro.
( ) Não haverá condição de corrida em sistemas multitarefa.
( ) Uma condição de corrida pode ocorrer quando dois ou mais processos estão lendo ou escrevendo algum dado compartilhado e o resultado final depende de qual e quando executa precisamente.
( ) Uma condição de corrida é uma técnica computacional aplicada aos processos para que os mesmos sejam comparados com relação ao tempo de execução.
7- Os sistemas operacionais podem ser classificados em relação a possibilidade de concorrência entre processos e a possibilidade de uso concorrente por mais de um usuário. Neste contexto podemos afirmar que:
( ) Sistemas monotarefa podem ser multiusuário.
( ) Sistemas monousuário são obrigatoriamente monotarefa.
( ) Todo sistema multiusuário é também multitarefa.
( ) Alguns sistemas multiusuário são também multitarefa.
( ) Todo sistema multitarefa é também multiusuário.
8- 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 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 primeiro espaço na lista de blocos livres que seja grande o suficiente para os 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 espaço na lista de blocos livres que seja o menor possível para os requisitos do processo solicitante.
9- 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:
34
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
( ) Exclusão mútua e espera por recurso.
( ) Exclusão mútua, espera por recurso e não-preempção.
( ) Espera por recurso e não-preempção.
( ) Não-preempção.
( ) Exclusão mútua e não-preempção.
10- Durante a execução de um programa podem ocorrer eventos inesperados, que causem um desvio forçado no fluxo de execução de um programa. Esses eventos são conhecidos por interrupção ou exceção. Em relação ao conceito de interrupção e exceção, é correto afirmar que:
( ) Exceções partem de eventos síncronos e previsíveis.
( ) Uma exceção independe da instrução que está sendo executada, pois é sempre gerada por algum evento externo ao programa.
( ) Uma grande diferença entre a interrupção e a exceção é que no caso da interrupção o próprio programado pode escrever uma rotina de tratamento, evitando que o programa seja encerrado.
( ) O mecanismo de interrupções ser implementado em sistemas operacionais multitarefa e monotarefa.
( ) É através das exceções que o sistema operacional sincroniza diferentes atividades, como rotinas, programas dos usuários e dispositivos.
35
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Gabarito
1- Gabarito: Nos processos independentes não existe vínculo entre o processo criado e o seu criador. Cada processo possui seu próprio contexto de hardware, contexto de software e espaço de endereçamento. Já os subprocessos são criados dentro de uma hierarquia, onde existe uma dependência entre o processo criador e o o subprocesso. Caso o processo pai deixe de existir o processo filho deixará também, apesar de cada processo possuir sua própria PCB. Diferentemente dos dois exemplos anteriores, os threads compartilham o espaço de endereçamento e o contexto de software, porém cada thread possui seu próprio contexto de hardware.
2- Gabarito: Escalonador é o responsável por implementar os critérios da política de escalonamento dos processos e o dispatcher é o responsável pela troca de contexto dos processos. Após o escalonado determinar qual processo deve fazer uso do processor, o dispatcher irá realizar a troca. Sendo assim é o dispatcher que depende do escalonador.
3- Instrução test-and-set.
4- As duas asserções são proposições verdadeiras, e a segunda é uma justificativa correta da primeira.
5- Somente III.
6- Uma condição de corrida pode ocorrer quando dois ou mais processos estão lendo ou escrevendo algum dado compartilhado e o resultado final depende de qual e quando executa precisamente.
7- Todo sistema multiusuário é também multitarefa.
8- 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.
9- Exclusão mútua, espera por recurso e não-preempção.
10- Exceções partem de eventos síncronos e previsíveis.
36
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Sistemas Operacionais
1- Sabemos que o sistema operacional é a mais importante plataforma lógica de um sistema computacional e que, através de suas gerências, controlam todas as operações e funcionalidades. Um dos grandes desafios é estabelecer uma política de escalonamento eficiente que proporcione à CPU um fluxo de processos considerável, minimizado o tempo de resposta e, consequentemente, maximizando a vazão de tarefas. Diante desta consideração responda as perguntas a seguir:
a) Como se classificam os tipos de escalonamento?
b) Descreva as políticas de escalonamento: Por prioridades e Shortest-Job-First (SJF)
Resposta: _________________________________________________________ ___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
2- O que é uma system call e qual a sua importância para a segurança do sistemas? (MAIA, 3ª edição)
Resposta: _________________________________________________________ ___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
3-
A execução de duas transações, Ti e Tj, em um banco de dados, é serializável se produz o mesmo resultado para a execução serial de qualquer intercalação de operações dessas transações (Ti seguida de Tj ou Tj seguida de Ti). O uso de bloqueios (locks) é uma maneira de se garantir que transações concorrentes sejam serializáveis. A tabela acima mostra informações relativas a três transações, T1, T2 e T3, que operam sobre dois dados compartilhados, A e B, e utilizam bloqueios para controle de concorrência. Com relação às transações T1, T2 e T3, julgue os itens seguintes:
I - O conjunto (T1, T2) não é serializável, e há o perigo de ocorrer deadlock durante a execução concorrente dessas transações.
II - O conjunto (T1, T3) não é serializável, mas não há o perigo de ocorrer deadlock durante a execução concorrente dessas transações.
III - O conjunto (T2, T3) é serializável, e não há o perigo de ocorrer deadlock durante a execução concorrente dessas transações. Assinale a opção correta.
37
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
( ) Apenas os itens II e III estão certos.
( ) Todos os itens estão certos.
( ) Apenas os itens I e III estão certos.
( ) Apenas um item está certo.
( ) Apenas os itens I e II estão certos.
4- Um computador com endereços de 32 bits usa uma tabela de páginas de dois níveis. Os endereços virtuais são divididos em um campo de 11 bits para o primeiro nível da tabela, outro campo de 11 bits para o segundo nível e um último campo para o deslocamento. Quantas páginas podem existir neste sistema?
( ) 210 .
( ) 232.
( ) 211.
( ) 222.
( ) 212.
5- Suponha que um usuário esteja utilizando um editor de texto em um terminal Windows. Em um dado momento ele nota que o computador ficou lento. O usuário confirma que aparentemente não há nenhum programa sendo executado além do Windows e do Word. Ao conferir no gerenciador de tarefas, ele observa que existe um novo processo chamado "backup". Entretanto, não há nenhuma interface para lidar com esse processo. Neste caso, podemos dizer que o processo "backup" é um processo do tipo:
( ) I/O-bound.
( ) background.
( ) CPU-bound.
( ) foreground.
( ) Monotarefa.
6- 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 interna na alocação por paginação.
( ) Fragmentação interna na alocação particionada estática.
( ) Fragmentação externa na alocação por segmentação.
( ) Fragmentação externa na alocação por paginação.
( ) Fragmentação externa na alocação particionada dinâmica.
7- Os sistemas operacionais podem ser classificados quanto às atribuições do kernel, dividindo-se em: arquitetura monolítica, arquitetura em camadas e arquitetura microkernel. Marque a alternativa CORRETA:
( ) A arquitetura em camadas tem como vantagem o alto desempenho.
( ) A maioria dos sistemas operacionais atuais é desenvolvida usando a arquitetura em camadas, já que há pelo menos a camada "usuário" e a camada "kernel".
( ) Na arquitetura monolítica, caso um serviço pare, o kernel não é comprometido, já que a principal função do núcleo é gerenciar a comunicação (troca de mensagens) entre as aplicações e os serviços.
( ) A arquitetura microkernel caracteriza-se por se tratar de um conjunto de módulos que funcionam como se fosse um único programa.
( ) A arquitetura monolítica é a que tem a implementação mais complexa.
8- Uma das medidas utilizadas para avaliar o desempenho de um critério de escalonamento é denominado throughput. Esta medida informa:
( ) O tempo decorrido entre a admissão de um processo no sistema até o seu término.
( ) A taxa de utilização da CPU
38
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
( ) O tempo decorrido entre a submissão de uma tarefa até a saída do primeiro resultado produzido.
( ) A fração do tempo de processador utilizada pelo processo no último minuto.
( ) O número de processos executados em um determinado intervalo de tempo.
9- Starvation é uma situação que ocorre quando:
( ) 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.
( ) Pelo menos um processo é continuamente postergado e não executa.
( ) O processo tenta mas não consegue acessar uma variável compartilhada.
( ) Quando Quantum esta acima de 400 ms.
10- Dentre os diversos algoritmos de escalonamento, escolha entre as alternativas a opção que indique o algoritmo que busca beneficiar os processos I/O-bound?
( ) Round Robin (Circular).
( ) FIFO não preemptivo.
( ) FCFS.
( ) Múltiplas filas com realimentação.
( ) Prioridades.
39
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Gabarito
1- Gabarito – a)Preemptivo e Não-preemptivo. b)Por prioridade A cada processo que alcança o estado de pronto é associada uma prioridade de execução. Os processos de maior prioridade são escalonados preferencialmente. Este tipo de preempção é implementado através de um clock, que interrompe o processador em determinados intervalos de tempo, para que a rotina de escalonamento reavalie prioridades e, se necessário, escalone outro processo. O processo interrompido volta para a fila de prontos. Shortest-Job-First (SJF) cada processo é associado ao seu tempo de execução. Dessa forma, quando o processador está livre, o processo em estado de pronto que precisar de menos tempo de UCP para terminar seu processamento é selecionado para execução (shortest-job-first).
2- Gabarito – Pode ser entendida como a porta de entradapara o acesso ao núcleo do sistema operacional e a seus serviços. Para cada serviço disponível no sistema existe uma system call associada e cada sistema operacional tem seu próprio conjunto de chamadas, com nomes, parâmetrose formas de ativação.. A sua importância está relacionada a implementação de mecanismos de proteção aonúcleo do sistema e de acesso aos seus serviços.
3- Apenas os itens II e III estão certos.
4- 222.
5- Background.
6- Fragmentação externa na alocação por paginação.
7- A maioria dos sistemas operacionais atuais é desenvolvida usando a arquitetura em camadas, já que há pelo menos a camada "usuário" e a camada "kernel".
8- O número de processos executados em um determinado intervalo de tempo.
9- Pelo menos um processo é continuamente postergado e não executa.
10- Múltiplas filas com realimentação.
40
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Sistemas Operacionais
1- 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 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 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 espaço na lista de blocos livres que seja o menor possível para os requisitos do processo solicitante.
( ) 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.
2- Uma das partes que compõe um processo é o contexto de hardware e que está relacionado com a troca de contexto (mudança de contexto) de um processo. Explique o que é o contexto de hardware de um processo e como é a implementação da troca de contexto.
Resposta: _________________________________________________________ ___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
3- Explique a diferença entre unidade de alocação de recursos e unidade de escalonamento no contexto de ambiente monothread e multithread.
Resposta: _________________________________________________________ ___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________.
4- Qual instrução não precisa ser executada em modo privilegiado?
( ) Obter a hora corrente.
( ) Limpar memória.
( ) Ativar interrupções por tempo.
( ) Desativar interrupções por tempo.
( ) Iniciar um processo.
5- 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. O procedimento de desfragmentação de um disco não tem efeito permanente, havendo necessidade de ser realizado periodicamente.
41
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
II. No momento da criação de um arquivo é possível determinar previamente seu tamanho, o que favorece o uso da técnica de alocação contígua de blocos.
III. A extensão do modelo de dois níveis para a estrutura de diretórios em árvore permitiu que os arquivos fossem mais bem organizados. Entretanto, esse modelo de diretórios em árvore deixou de ser adotado pela maioria dos sistemas operacionais atualmente.
( ) Somente as sentenças I e III estão corretas.
( ) Somente a sentença III está correta.
( ) Somente a sentaça I está correta.
( ) Somente as sentenças I e II estão corretas.
( ) Somente as sentenças II e III estão corretas.
6- Suponha que determinada unidade de disco tenha 4.000 cilindros numerados de 0 a 3999. A unidade atualmente está atendendo a uma requisição no cilindro 53 e a requisição anterior foi no cilindro 55. Sabe-se que a unidade de disco utiliza o escalonamento SCAN e que a fila de requisições pendentes é: 98, 183, 37, 122, 11, 124, 60 e 67
Qual das requisições pendentes será a segunda a ser atendida?
( ) 37
( ) 98
( ) 11
( ) 67
( ) 60
7- 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.
( ) Todo sistema operacional multitarefa é necessariamente um sistema multiusuário.
( ) Um sistema operacional multiprocessado não é necessariamente um sistema multitarefa.
( ) Um sistema operacional multitarefa é necessariamente um sistema multiprocessado.
( ) Em sistemas operacionais multitarefa monoprocessados a execução de diferentes programas é simultânea.
8- 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. Cada endereço ocupa 16 bits. Qual o tamanho máximo do processo?
( ) 24MB.
( ) 4GB.
( ) 16MB.
( ) 32MB.
( ) 8GB.
9- Os sistemas operacionais criam estruturas de controle, chamadas processo, para controlar a execução dos programas de usuário. Essa estrutura registra informações sobre a situação do processo durante todo seu processamento, sendo uma dessas informações o estado do processo. Quanto aos estados básicos de um processo podemos afirmar que:
( ) Ao solicitar uma operação de E/S (por exemplo, entrada de dados pelo usuário via teclado) um processo que esteja em execução fica aguardando a conclusão da operação no estado de pronto
( ) Não há nenhuma relação entre os estados de pronto e de execução.
( ) Sempre que um processo é criado, ele entra no estado de execução sem necessidade de escalonamento
42
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
( ) O estado de execução está diretamente associado aos dispositivos de E/S, ou seja, um processo que aguarda a conclusão de um operação de E/S encontra-se nesse estado.
( ) O escalonador seleciona processos que estejam no estado de pronto e os coloca em execução, obedecendo os critérios estabelecidos (tempo, prioridade).
10- Uma thread é a execução de um fluxo de processamento. Iso significa que um processo pode ser composto por várias threads. Neste contexto é corrto afirmar que:
( ) Uma thread equivale a um processo filho pois a execução de cada threads é independente.
( ) Uma thread pode existir sem estar associada a um processo
( ) Threads de um mesmo processo podem ater suas execuções independentess e compartilham espaço de memória.
( ) Uma thread pode ser equivalente a um processo filho se a execução for independente.
( ) Uma thread pode ser compartilhada por vários processos pois o espaço de endereçamento é compartilhado.
11- 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 do Sistema de I/O;
( ) Gerenciamento de Memória Principal;
( ) Gerenciamento de Processos;
( ) Gerenciamento de Memória Secundaria;
( ) Gerenciamento de Arquivos.
43
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Gabarito
1- 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.
2- Gabarito – O contexto de harware armazena o conteúdo dos registradores gerais da UCP, além dos registradores de uso específico. A mudança de contexto consiste em salvar o conteúdo dos registradores do processo que está deixando a UCP e carregá-los com os valores referentes aos do novo processo que será executado. Ou seja substituir o contexto de hardware de um processo por outro.
3- Gabarito – Em ambientes monothread, o processo é ao mesmo tempo a unidade de alocação de recursos e a unidade de escalonamento. Já em ambientes multithread, a unidade de alocação de recursos é o processo e o thread a unidade de escalonamento.
4- Obter a hora corrente.
5- Somente a sentença I está correta.
6- 11.
7- Todo sistema operacional multiusuário é ao mesmo tempo um sistema multitarefa.
8- 8GB.
9- O escalonador seleciona processos que estejam no estado de pronto e os coloca em execução, obedecendo os critérios estabelecidos (tempo, prioridade).
10- Threads de um mesmo processo podem ater suas execuções independentess e compartilham espaço de memória.
11- Gerenciamento de Memória Secundaria.
44
Exercícios – Sistemas Operacionais – Lincoln Kazuhiro Ito
Sistemas Operacionais
1-

faço trabalhos avulsos de programação em php , javascript , html , VBA-EXCEL e EXCEL formulas avançadas . pode entrar em contato no whatsapp 83988596239. nós combinaremos os valores de acordo com a demanda.

Nenhum comentário:

Postar um comentário

Programando com JS 2 / 5 - Resto 2

  Desafio Leia um valor inteiro N . Apresente todos os números entre 1 e 10000 que divididos por N dão resto igual a 2. Entrada A ...