SóProvas


ID
238321
Banca
CESPE / CEBRASPE
Órgão
ABIN
Ano
2010
Provas
Disciplina
Sistemas Operacionais
Assuntos

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.

Alternativas
Comentários
  •  

     o escalonador de processos do sistema operacional...
     
    Acho que o erro consiste de não haver esse escalonamento pelo SO
     
    Linha de execução ao nível do usuário

    As ULT são escalonadas pelo programador, tendo a grande vantagem de cada processo usar um algoritmo de escalonamento que melhor se adapte a situação, o sistema operacional neste tipo de thread não faz o escalonamento, em geral ele não sabe que elas existem. Neste modo o programador é responsável por criar, executar, escalonar e destruir a thread. Um exemplo prático de processo chamado P1 que contém tais threads: P1T1, P1T2 e P1T3, quando o sistema operacinal da a CPU para o processo P1 cabe a ele destinar qual thread será executada, caso esta thread use todo processo do quantum, o sistema operacional chamará outro processo, e quando o processo P1 voltar a executar, P1T1 voltará a ser executada e continuará executando até seu término ou intervenção de P1, este comportamento não afetará outros processos pois o sistema continua escalonando os processos normalmente. http://pt.wikipedia.org/wiki/Thread_(ci%C3%AAncia_da_computa%C3%A7%C3%A3o)#Escalonamento

  • Acredito que seja exatamente o que o colega João falou, o sistema operacional não sabe da existência de threads a nível de usuário, somente a nível de kernel.

    Fonte: http://homepages.dcc.ufmg.br/~humberto/unifal/aulas/so/aula16_Escalonamento2.pdf

  • user level thread - gerenciamento por meio de biblioteca de thread, a aplicação faz o escalonamento
    kernel level thread- gerenciamento feito pelo kernel por meio de uma API, aqui o escalonamento é exclusivo do S.O
  • 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 NÃO trata cada thread separadamente, já que o escalonador aloca o mesmo tempo ao processo em execução, independentemente de quantas threads ele possua.
  • Apenas complementando: Quem faz o escalonamento de threads é o próprio escalonador de threads e não o escalonador de processos.
  • Questão errada.

    Existem as threads de usuário e suas caracaterísticas são:

    - núcleo só conhece os processos. desconhece as threads.

    - o quantum é do processo e não existe preempção das threads

    - Núcleo trata os processos como se fossem monothread.


    Threads de núcleo:

    - nucleo conhece a existência das threads e as gerencia (quantum é da thread)

    - nucleo possui tabela de processos e de threads

  • Prezados,

    O kernel só "enxerga" threads de nível de núcleo. Essa threads tem o escalonamento feito pelo kernel. As threads de usuário não são "enxergadas" pelo kernel , quem faz o escalonamento delas é a aplicação.

    Portanto a questão está errada.


  • e-

    Em implementação de thread nivel usuario, o processador é monothread. EM nivel kernel, ha multithreading, o qual é mais rapido alternar entre threads do que entre processos