A Seção crítica corresponde à região no qual ocorre a sincronização de processos em um sistema computacional
Por: louco123456 • 30/11/2017 • Trabalho acadêmico • 6.166 Palavras (25 Páginas) • 583 Visualizações
Programação Concorrente – Lista de exercício
- (ENADE) A seção crítica corresponde à região no qual ocorre a sincronização de processos em um sistema computacional.
Nessa seção, naquele instante, só poderá ser ocupada por uma thread, pois objetivo e disciplinar o uso de métodos específicos a partir de várias requisições. Cada processo deve solicitar autorização para entrar em sua seção crítica, solicitação essa implementada pela seção de entrada.
Em relação à seção crítica é válido afirmar:
- Uma solução para o problema da seção crítica deve satisfazer três requisitos: Exclusão mútua; progresso; espera limitada.
- Cada processo dispõe de várias seções críticas constituído de um segmento de código
- Uma seção crítica está vinculada a vários processos.
Considerando o contexto apresentado, assinale a alternativa correta.
- A alternativa II está correta e a alternativa I está incorreta.
- A alternativa I e II estão corretas.
- A alternativa I e III estão corretas.
- A alternativa II e III não estão corretas.
- A alternativa II está correta e a alternativa III está incorreta.
- A virtualização permite que um único computador hospede múltiplas máquinas virtuais, cada uma com seu próprio sistema operacional. Essa técnica tem ganhado importância nos dias atuais e vem sendo utilizada para resolver diversos tipos de problemas.
Considerando os diversos aspectos a serem considerados na utilização da virtualização, avalie as afirmações abaixo.
- Um sistema operacional sendo executado em uma máquina virtual utiliza um subconjunto da memória disponível na máquina real.
- Uma das aplicações da virtualização é a disponibilização de múltiplos sistemas operacionais para teste de software.
- A virtualização só pode ser utilizada em sistemas operacionais Linux.
- Um sistema operacional executado em uma máquina virtual apresenta um desempenho superior ao que alcançaria quando executado diretamente na mesma máquina real.
É correto apenas o que se afirma em A I.
B III.
C I e II. D II e IV. E III e IV.
- Apesar de todo o desenvolvimento, a construção de computadores e processadores continua, basicamente, seguindo a arquitetura clássica de von Neumann. As exceções a essa regra encontram-se em computadores de propósitos específicos e nos desenvolvidos em centros de pesquisa. Assinale a opção em que estão corretamente apresentadas características da operação básica de um processador clássico.
- Instruções e dados estão em uma memória física única; um programa é constituído de uma sequência de instruções de máquina; uma instrução é lida da memória de acordo com a ordem dessa sequência e, quando é executada, passa- se, então, para a próxima instrução na sequência.
- Instruções e dados estão em memórias físicas distintas; um programa é constituído de um conjunto de instruções de máquina; uma instrução é lida da memória quando o seu operando-destino necessita ser recalculado; essa instrução é executada e o resultado é escrito no operando de destino, passando-se, então, para o próximo operando a ser recalculado.
- Instruções e dados estão em uma memória física única; um programa é constituído de um conjunto de instruções de máquina; uma instrução é lida da memória quando todos os seus operandos-fonte estiverem prontos e disponíveis; essa instrução é executada e o resultado é escrito no operando de destino, passando-se, então, para a instrução seguinte que tiver todos seus operandos disponíveis.
- Instruções e dados estão em memórias físicas distintas; um programa é constituído de um conjunto de instruções de máquina; uma instrução é lida da memória quando todos os seus operandos-fonte estiverem prontos e disponíveis; essa instrução é executada e o resultado é escrito no operando de destino, passando-se, então, para a instrução seguinte que estiver com todos os seus operandos disponíveis.
- Instruções e dados estão em memórias físicas distintas; um programa é constituído de uma sequência de instruções de máquina; uma instrução é lida da memória de acordo com a ordem dessa sequência e, quando é executada, passa- se, então, para a próxima instrução na sequência.
- As memórias cache são usadas para diminuir o tempo de acesso à memória principal, mantendo cópias de seus dados. Uma função de mapeamento é usada para determinar em que parte da memória cache um dado da memória principal será mapeado. Em certos casos, é necessário usar um algoritmo de substituição para determinar qual parte da cache será substituída.
Suponha uma arquitetura hipotética com as seguintes características:
- A memória principal possui 4 Gbytes, em que cada byte é diretamente endereçável com um endereço 32 bits.
- A memória cache possui 512 Kbytes, organizados em 128 K linhas de 4 bytes.
- Os dados são transferidos entre as duas memórias em blocos de 4 bytes. Considerando os mapeamentos direto, totalmente associativo e associativo por conjuntos (em 4 vias), redija um texto que contemple as organizações dessas memórias, demonstrando como são calculados os endereços das palavras, linhas (blocos), rótulos (tags) e conjunto na memória cache em cada um dos três casos. Cite as vantagens e desvantagens de cada função de mapeamento, bem como a necessidade de algoritmos de substituição em cada uma delas.
Com relação ao gerenciamento de memória com paginação em sistemas operacionais, assinale a opção correta.
A As páginas utilizadas por um processo, sejam de código ou de dados, devem ser obrigatoriamente armazenadas na partição de swap do disco, quando o processo não estiver sendo executado.
B Todas as páginas de um processo em execução devem ser mantidas na memória física enquanto o processo não tiver terminado.
C Um processo somente pode ser iniciado se o sistema operacional conseguir alocar um bloco contíguo de páginas do tamanho da memória necessária para execução do processo.
D O espaço de endereçamento virtual disponível para os processos pode ser maior
que a memória física disponível.
E Um processo somente pode ser iniciado se o sistema operacional conseguir alocar todas as páginas de código desse processo.
- Para explicar deadlock, Dijkstra contou a estória do jantar dos filósofos em que numa mesa redonda, com 5 pratos e 5 talheres, 5 filósofos se sentaram a fim de comer e pensar. Os filósofos compartilhavam de talheres comuns, pois, após pensarem, cada um em seu tempo, pegava o talher disponível a direita, para depois pegar o da esquerda e assim comer. Só depois de comer, o filósofo disponibilizaria o talher para outro filósofo. Sendo assim, havia hora ou outra um filósofo precisaria esperar o talher ser disponibilizado para comer. O problema de deadlock surgia quando todos os filósofos pegavam um talher da direita, não tendo assim talher a esquerda disponível o que fazia todos esperar eternamente um talher ser disponibilizado, já que eles precisavam de dois talheres para comer e só disponibilizaria o seu talher após comer.
Para este problema, veja três prováveis soluções abaixo:
- - Permitir que apenas quatro filósofos sentem a mesa simultaneamente
- - Permitir que um filósofo pegue um garfo apenas se o outro estiver disponível
- - Permitir que um filósofo ímpar pegue primeiro o seu garfo da esquerda e depois o da direita, enquanto um filósofo par pegue o garfo da direita e, em seguida, o da esquerda
Assinale a alternativa correta.
- Somente a solução I funciona.
- Somente as soluções I e III funcionam.
- A solução III não funciona.
- Todas as soluções funcionam.
- O problema do jantar dos filósofos não tem solução.
- Como a memória principal de um computador é organizada?
O computador possui dispositivos que permitem armazenar dados, instruções e resultados. A esses dispositivos dá-se o nome de memórias. Comunicam diretamente com o processador e armazenam temporariamente (RAM e Cache) ou permanentemente (ROM) pequenas quantidades de informação. Devido ao seu cariz fundamental, este tipo de memória foi designado MEMÓRIA PRINCIPAL, CENTRAL ou PRIMÁRIA.
...