Para resolver o problema de hierarquia de processos, foi criado o conceito "thread", no qual um processo pode efetuar várias operações concorrente ou simultaneamente, sem o consumo de espaço de endereçamento. Neste caso, o processo é dividido no número de threads sem que haja necessidade de ser criado um outro processo concorrente. Baseado nesta idéia, indique a afirmativa INCORRETA.

Qual o significado do conceito Multithread num sistema operacional?

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

Acerca de características dos sistemas operacionais modernos,
julgue os itens subsequentes.

Uma thread pode estar, basicamente, em três estados diferentes: execução, bloqueado e pronto. A transição do estado de execução para o estado de bloqueio é ativada por meio dos algoritmos de escalonamento.

Considere as seguintes afirmações sobre Threads.
I. É uma forma de um processo se dividir em tarefas que podem ser executadas concorrentemente.
II. Os sistemas que suportam múltiplas threads são chamados de multithread.
III. Em hardwares com múltiplas CPUs (multi-core), as threads podem ser processadas de forma simultânea.
Sobre as afirmações, está correto o contido em

Imagem 001.jpg

Nos itens de 121 a 127, são apresentadas informações adicionais
à situação hipotética acima, seguidas de uma assertiva a ser
julgada.

Um dos grupos de analistas investigou minuciosamente o funcionamento interno do sistema operacional de determinada máquina, especialmente no que concerne ao funcionamento de processos e threads, tendo constatado que, nessa máquina, podiam existir vários processos computacionais simultâneos e que cada processo podia ter um ou mais threads. Esse grupo constatou, ainda, que o escalonamento desses threads era de responsabilidade do kernel do sistema operacional. Essas informações foram enviadas para o outro grupo de analistas, que desconhecia qual era o sistema operacional da máquina analisada. Com base nessas informações, esse segundo grupo, após identificar que esse modelo de gerenciamento de processos e threads é compatível com o de uma máquina com sistema operacional Windows XP, lançou a hipótese de que o escalonamento dos threads, nessa máquina, é fundamentado em um algoritmo que atribui prioridades para determinar a ordem na qual os threads serão executados. Nessa situação, o segundo grupo não cometeu erro de julgamento aparente.

Em relação aos sistemas operacionais, julgue os itens subsequentes.

Quando as várias threads em um processo possuem sua linha de execução no nível de usuário, o escalonador de processos do sistema operacional trata cada thread separadamente, de forma independente do processo associado, já que o escalonador aloca o mesmo tempo ao processo em execução, independentemente de quantas threads ele possua.

Com relação a sistemas operacionais e sistemas distribuídos, julgue os
seguintes itens.

Há sistemas nos quais threads podem ser suportados no nível de usuário e no nível de sistema operacional. Se os threads no nível de usuário são mapeados para os threads no nível de sistema operacional, para se obter maior concorrência na execução dos threads no nível de usuário, em vez de mapear só um thread no nível de usuário para cada thread no nível de sistema operacional, tipicamente deve-se mapear mais de um no nível de usuário para cada um no nível de sistema operacional.

Julgue os seguintes itens, a respeito da relação entre arquitetura de
computadores e sistemas operacionais.

A programação com o uso de múltiplas threads permite reduzir o tempo de execução de um aplicativo, no entanto, a utilização de threads somente é possível se o processador tiver um único núcleo (single-core).

Julgue os seguintes itens, a respeito da relação entre arquitetura de
computadores e sistemas operacionais.

Um aplicativo pode ser instanciado em vários processos, que compartilham o mesmo código, mas cada um deles é uma atividade diferente, com seus dados e valores de entradas e saída. Por sua vez, um programa pode possuir várias threads, que compartilham a mesma área de dados, e cada uma dessas threads representa uma linha de execução de uma tarefa específica dentro do programa.

Processos e threads são estruturas do sistema operacional que permitem compartilhar a capacidade de processamento entre múltiplas tarefas paralelas ou pseudo-paralelas. A principal diferença entre eles consiste no fato de que
As threads de usuário são admitidas acima do kernel e gerenciadas sem o suporte do kernel, enquanto as threads de kernel são admitidas e gerenciadas

No que concerne ao gerenciamento de memória, julgue o próximo item, relativo athreads, processos, segmentação eswap.

Threads são unidades de execução independentes dentro de um processo, cada uma com seu próprio contador de programa, sua própria pilha e seu próprio espaço de endereços.

Um sistema operacional (SO) moderno possui diversas
características que o distinguem de um sistema operacional dos
computadores de primeira geração. Acerca das características dos
sistemas operacionais modernos, julgue os itens subseqüentes.

Em um sistema operacional de tempo real, o conceito de multithread difere de um sistema operacional de rede porque, neste último, a thread não tem prioridade de execução.
Multithreading é um conceito fundamental para o melhor aproveitamento de recursos por um sistema operacional.
Para o emprego eficaz desse conceito, é fundamental a existência de mecanismos de sincronização eficientes.

Nesse contexto, analise as afirmativas a seguir.

I. Por definição, semáforos possuem um contador, cujos valores podem ser 0,1 ou 2.
II. Mutexes são projetados para garantir que apenas uma thread possa acessar um recurso compartilhado por vez.
III. Mutexes podem ser considerados uma generalização de semáforos, por conta da maior flexibilidade do contador de um mutex.

Está correto o que se afirma em
Página 1