Baixe o app para aproveitar ainda mais
Prévia do material em texto
Faculdade Bilac 1 Curso: Ciência da Computação Disciplina: Fundamentos de Sistemas Operacionais Profa. Dra. Maria Teodora Ferreira Atividade 2: Compreender os conceitos básicos relacionados aos processos e threads em sistemas operacionais. Exercícios 1) O processo é um conceito chave em todos os sistemas operacionais. Nesse contexto, considere: I. Um programa ao ser executado deve estar sempre associado a um processo. II. Um processo (às vezes chamado de tarefa ou de processo sequencial) pode ser entendido inicialmente como um programa em execução. III. A troca de um processo por outro no processador, gerenciada pelo SO, é denominada mudança de paradigma. IV. Um processo é formado por três partes conhecidas como: contexto de hardware; contexto de software e espaço de endereçamento. É correto o que se afirma em a) I, II, III e IV. b) I, II e III, apenas. c) I, III e IV, apenas. d) I, II e IV, apenas. e) II e III, apenas. 2) Com relação à estrutura do processo, assinale a alternativa incorreta: a) O contexto de hardware armazena o conteúdo dos registradores gerais da UCP, além dos registradores de uso específico. b) Quando um processo perde a utilização da UCP o sistema salva as informações no contexto de hardware do processo. c) No contexto do software, são especificados limites e características dos recursos que podem ser alocados pelo processo. d) Identificação são os limites de cada recurso do sistema que um processo pode alocar. e) Cada processo possui seu próprio espaço de endereçamento, que deve ser devidamente protegido do acesso dos demais processos. 3) Um processo passa por uma série de estados. Em relação aos estados de transição de processos, assinale a alternativa incorreta, a) Quando um evento ocorre, ele transita de pronto para bloqueado. Quando um processo é despachado, ele transita de pronto para em execução. Quando um processo é bloqueado, ele transita de em execução para bloqueado. b) Quando o quantum de um processo expira, ele transita de em execução para pronto. c) Quando um processo é bloqueado, ele transita de em execução para bloqueado. d) Quando o quantum de um processo expira, ele transita de em execução para pronto. 4) Sobre estados de processos em Sistemas Operacionais, analise as afirmações e assinale a alternativa que aponta a(s) correta(s). I. Um processo, em um sistema multiprogramável (multitarefa), não é executado todo o tempo pelo processador. Durante sua existência, ele passa por uma série de estados. Basicamente, existem três estados em que um processo pode se encontrar no sistema. Faculdade Bilac 2 II. Execução (running), um processo é classificado como running quando aguarda uma oportunidade para executar, ou seja, esperando que o sistema operacional aloque a UCP para sua execução. III. Pronto (ready), um processo é dito neste estado quando está sendo processado pela UCP. Em sistemas com apenas um processador, somente um processo pode estar pronto em um dado instante de tempo. IV. Espera (wait), neste estado um processo aguarda algum evento externo ou por algum recurso para poder prosseguir seu processamento. Como exemplo, podemos citar o término de uma operação de entrada/saída ou a espera de uma determinada data e/ou hora para poder continuar sua execução. a) Apenas I. b) Apenas I e III. c) Apenas I e IV. d) Apenas II, III e IV. e) I, II, III e IV. 5) A figura abaixo apresenta um diagrama de estado básico mostrando três estados de um processo em computador gerenciado por um sistema operacional. Considerando que o computador, onde o sistema operacional se encontra, tem um único processador de um núcleo, assinale a alternativa que melhor define um desses estados. a) Em execução: neste estado o processo é executado, podendo ter mais de um estado. b) Bloqueado: o processo ao chegar neste estado, além de ser bloqueado ele é descartado, não podendo mais voltar ao estado Em execução. c) Pronto: neste estado, o processo foi executado e finalizado. d) Em execução / pronto: ambos estados o processo é executado, entretanto no último o processo é executado e finalizado. e) Pronto: o processo está temporariamente parado enquanto aguarda ser executado. 6) No contexto de sistemas operacionais, sobre processos é correto afirmar: a) Um computador multiprocessador pode ter tantos processos em execução quanto são os processadores. b) Os termos processo e programa são sinônimos. c) Todo processo utiliza o mesmo espaço de endereço. d) A qualquer dado instante somente um processo pode executar instruções em um computador com qualquer tipo de arquitetura. e) Um processo não pode ter um número zero de processos-pai. 7) Assinale a alternativa correta sobre o conceito de processo em um Sistema Operacional (SO). a) O conceito de processo é a base para a implementação de qualquer SO seja ele monoprogramável, multiprogramável ou de múltiplos processadores. b) Num sistema multiusuário, cada usuário tem garantia de possuir o processador e todos os demais recursos reservados exclusivamente para si sempre que for necessário. c) Um processo é formado por duas partes: contexto de software e contexto de hardware, que juntas mantêm todas as informações necessárias à execução de um programa. Faculdade Bilac 3 d) A gerência do processador é uma das principais funções de um sistema operacional. Através dos processos, um programa pode alocar recursos, compartilhar dados e trocar informações. e) Um processo pode ser entendido como um conjunto de programas em execução, que têm suas informações mantidas pelo sistema operacional. 8) São os possíveis estados de um processo em um Sistema Operacional: a) novo, em execução, em espera, pronto e terminado. b) entrada, processamento e saída. c) velho, parado, rodando, ocioso e fantasma. d) inicial, intermediário, em processamento e finalizado. 9) O estado de um processo é definido, em parte, pela sua atividade presente. Quando o processo está esperando para ser atribuído a um processador, ele se encontra em um estado denominado: a) de espera. b) de execução. c) pronto. d) novo. e) encerrado. 10) Nos conceitos de ciência da computação, um processo é um módulo executável que pode conter threads. Um conceito importante sobre threads que estão contidas no mesmo processo é que a) Podem compartilhar a memória do processo. b) Evitam que processos concorrentes acessem recursos do processo principal. c) Acessam a memória estática ao contrário de processos convencionais. d) Controlam o acesso da memória dinâmica (heap) dos processos externos. e) Possuem proteção contra problemas comuns de processos, como vazamento e acessos inválidos da memória. 11) Qual o significado do conceito Multithread em um sistema operacional? a) Condição em que processos ficam bloqueados esperando por algum evento que nunca vai acontecer. b) Guardar dados para posterior utilização, evitando a repetição de acesso a dispositivos lentos. c) Capacidade de processar algum job assim que este chega ao sistema através da sobreposição de operações muito lentas com processamento. d) Utilização de porções de memória para guardar dados que vêm de dispositivos com baixa velocidade para agilizar o processamento de algum dado. e) É uma forma de um processo dividir a si mesmo em duas ou mais tarefas que podem ser executadas simultaneamente. 12) Os threads de usuário são admitidas acima do kernel e gerenciadas sem o suporte do kernel, enquanto os threads de kernel sãoadmitidos e gerenciados a) exclusivamente pela memória RAM. b) diretamente pela unidade central de processamento. c) diretamente pelo sistema operacional. d) exclusivamente por uma deadlock específica. e) exclusivamente pelo IPL ou boot. 13) Em se tratando de processos leves (threads), assinale a alternativa incorreta Faculdade Bilac 4 a) O multithreading de uma aplicação interativa pode permitir que um programa continuasse executando mesmo se parte dele estiver bloqueada ou executando uma operação demorada, aumentando, assim, a capacidade de resposta para o usuário. b) Dentro de um mesmo processo, threads compartilham o mesmo contexto de software e espaço de endereçamento com os demais threads, porém cada thread possui seu contexto de hardware individual. c) Programas concorrentes com múltiplos threads são mais lentos do que programas concorrentes implementados com múltiplos processos, pois operações de criação, troca de contexto e eliminação dos threads geram maior overhead. d) A grande diferença entre aplicações monothread e multithread está no uso do espaço de endereçamento. Processos independentes e subprocessos possuem espaços de endereçamento individuais e protegidos, enquanto threads compartilham o espaço dentro de um mesmo processo. e) Como threads de um mesmo processo compartilham o mesmo espaço de endereçamento, não existe qualquer proteção no acesso à memória, permitindo que um thread possa alterar dados dos outros. Exercícios on line Livro Tanenbaum, Sistemas Operacionais Modernos - Capítulo 2, Seções 2.1 e 2.2 http://wps.prenhall.com/br_tanenbaum_sistemas_3/207/53028/13575254.cw/index.html. Livro Deitel, Sistemas Operacionais - Capítulos 3 e 4: http://wps.prenhall.com/br_deitel_sistemas_3/39/10059/2575352.cw/index.html Bons Estudos! GABARITO QUESTÃO ALTERNATIVA CORRETA 1 D 2 D 3 B 4 B 5 E 6 A 7 D 8 A 9 C 10 A 11 E 12 B 13 C
Compartilhar