sdfçlkjsdfsf

1339 palavras 6 páginas
Unidade 1-1
Processos e Threads

O que é um Processo
• Um processo é uma atividade (ou tarefa) de um programa, que contém o código e dados de uma atividade. • Essas são: leitura de dados, escrita de dados, cálculos no processador, comunicação com o usuário, comunicação com um BD, comunicação com a rede interna ou externa, entre outras.

Processos
– Um trecho de código em execução em uma máquina. – É a unidade de processamento concorrente que um processador sob um SO pode processar.
– Identificado pelo seu PID (Process Identifier).
– Unix (anos 70) foi construído para executar processos. Problema com Processos
• Nos anos 80, foi descoberto que a noção tradicional de um sistema operacional, de um processo que executa um único fluxo de execução, era diferente dos requisitos dos sistemas operacionais distribuídos.
• Solaris (anos 90), originalmente, utiliza processos.

Problema com Processos

• E também, diferente dos requisitos dos aplicativos mais sofisticados que utilizam um único processador, mas que exigem concorrência de suas atividades internas.

Problema com Processos

• O processo tradicional torna complicado e dispendioso o compartilhamento de recursos entre atividades relacionadas.

Solução para o Processamento
Concorrente

• Aprimorar a noção de processo, para que ele pudesse ser associado a múltiplas atividades internas a ele.

Surgimento de Threads
• Com o surgimento de processadores de mais alto desempenho, uma nova unidade de processamento concorrente pode ser definida dentro do próprio processo, novos fluxos de execução e assim pode-se ter múltiplos fluxos de execução (múltiplas threads) num mesmo processo. • Cada fluxo de execução é chamada Thread.

Threads
• Atualmente, um processo consiste em um ambiente de execução, contendo uma ou mais threads.

• Thread: unidade de processamento concorrente nos sistemas operacionais atuais. Contexto de um Processo







Relacionados