TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Projetos

Artigo: Projetos. Pesquise 862.000+ trabalhos acadêmicos

Por:   •  17/3/2015  •  2.582 Palavras (11 Páginas)  •  229 Visualizações

Página 1 de 11

SISTEMAS OPERACIONAIS

PROF JOÃO CARLOS C BORGES

Processos

“Muito do que eu tinha, não consegui libertar;

Muito do que eu libertei voltou pra mim.” (Lee Wilson Dodd)

1. INTRODUÇÃO

O conceito de processo é a base para a implementação de um sistema multiprogramável.

O processador é projetado apenas para executar instruções, não sendo capaz de

distinguir qual programa se encontra em execução.

A gerência de processos é uma das principais funções de um Sistema Operacional. Através

de processos, um programa pode alocar recursos, compartilhar dados, trocar informações

e sincronizar sua execução. Nos sistemas multiprogramáveis, os processos

são executados concorrentemente, compartilhando, dentro outros recursos, o uso do

processador, da memória principal e dos dispositivos de E/S. Nos sistemas com múltiplos

processadores, não só existe a concorrência de processos pelo uso do processador, como

também a execução simultânea de processos nos diferentes processadores.

2. ESTRUTURA DO PROCESSO

Nos primeiros sistemas computacionais apenas um programa podia ser executado de

cada vez. Tal programa tinha acesso a todos os recursos do sistema. Atualmente, diversos

programas executam simultaneamente num sistema computacional. Entretanto, para

que isso seja possível é necessário um controle maior na divisão de tarefas entre os vários

programas. Daí resultou o conceito de processo.

Um processo é um programa em execução, incluindo os valores correntes de todos os

registradores do hardware, e das variáveis manipuladas por ele no curso de sua execução.

Embora um processador execute vários processos ao mesmo tempo, dando ao usuário

a impressão de paralelismo de execução, num dado instante apenas um processo

progride em sua execução. Em outras palavras, em cada momento o processador está

executando apenas um processo e seu uso é compartilhado entre os vários processos

existentes. Um processo que num instante está usando o processador depois de um certo

tempo é interrompido e o processador é cedido a outro processo. Assim, num grande

intervalo de tempo todos os processos terão progredido. O rápido chaveamento do processador

entre vários processos é chamado multiprogramação. Para que haja esse chaveamento

é necessário o uso de algum algoritmo de escalonamento para determinar

quando o trabalho de um processo deve ser interrompido e qual o próximo processo a

ser servido.

A diferença entre um processo e um programa é sutil, mas crucial. Imagine um cientista

de programação que tem excelentes dotes culinários e esteja preparando um bolo

de aniversário para a filha. Ele tem à sua disposição uma receita de bolo, e uma dispensa

com os ingredientes necessários. A receita é o programa, ou seja, um algoritmo em alguma

linguagem conhecida, o cientista de programação é o processador e os ingredientes

os dados de entrada. Já o processo vem a ser a atividade resultante da preparação

do bolo: leitura da receita, busca dos ingredientes, mistura dos ingredientes, etc. Imagine

agora que a filha do nosso cientista apareça chorando, por haver sido picada por uma

abelha, enquanto o pai está fazendo o bolo. Neste caso, o cientista deve guardar em que

ponto da receita ele estava (o estado do processo corrente é salvo), apanhar um livro de

primeiros socorros e seguir as instruções contidas no capítulo do livro sobre picada de

abelhas. Aqui vemos o processador, mais precisamente o cientista da computação, sendo

chaveado de um processo (preparação do bolo), para outro de maior prioridade (administração

de cuidados médicos), cada um deles constituído de um programa diferente

(receita versus livro de primeiros socorros). Quando o ferrão da abelha tiver sido retirado

da filha do cientista, este poderá voltar à preparação do bolo, continuando seu trabalho a

partir do ponto onde ele foi interrompido.

5

Sistemas Operacionais – PROF JOÃO CARLOS 31

A idéia principal é que um processo constitui uma atividade. Ele possui programa, entrada,

saída e um estado. Um único processador pode ser compartilhado entre os vários

processos, com algum algoritmo de escalonamento usado para determinar quando parar

o trabalho sobre um processo e servir outro.

Um processo também pode ser definido como o ambiente onde um programa é executado.

Este ambiente, além das informações sobre a execução, possui também o quanto

de recursos do sistema cada programa pode utilizar, como o espaço de endereçamento,

tempo de processador e área em disco.

Um processo é formado por três partes, que juntas mantêm todas as informações necessárias

à

...

Baixar como (para membros premium)  txt (18.8 Kb)  
Continuar por mais 10 páginas »
Disponível apenas no TrabalhosGratuitos.com