Você está na página 1de 4

SISTEMAS OPERACIONAIS SINCRONIZAO E COMUNICAO ENTRE PROCESSOS

Alexandre S. Gafforelli, Filipe Alvarenga, Jeferson Lus de Moraes Machado, Johan V. Kovalsikoski, Rafael Mesquita QI Escolas e Faculdades Av. Jlio de Castilhos 435 - Centro Porto Alegre RS Brasil.
alexmastersoft@hotmail.com, filipe1202@gmail.com, jefmac@gmail.com, johan.kovalsikoski@gmail.com, mesquita.cob@gmail.com

Abstract. This meta-paper describes the structure of operating systems, synchronization and communication between processes. Resumo. Este meta-artigo descreve as estrutura de sistemas operacionais, sincronizao e comunicao entre processos.

1. Introduo
Em um sistema de computador os recursos de hardware so limitados. Os aplicativos para rodar em um computador necessitam de determinados recursos do hardware. Para gerenciar os seus recursos era necessrio um programa que tivesse acesso diretamente ao hardware de forma a conhecer suas limitaes. O sistema operacional foi desenvolvido para facilitar o acesso dos aplicativos ao hardware. Neste artigo vamos ver as principais caractersticas do Sistema Operacional bem como a sincronizao e comunicao entre processos.

2. Processos
Para entender como o sistema operacional gerencia os recursos de hardware de modo a fazer com que os aplicativos funcionem corretamente preciso entender como funciona os processos dentro do computador. O processador o principal aliado do sistema operacional nessa importante tarefa executando instrues a partir de um clico de busca e execuo seguindo os seguintes passos: buscar instrues a serem executadas; armazena o endereo das instrues nos registradores; codifica os bits; executas as instrues. O processador executa essas aes de forma automtica, porm ele executa as instrues sem distinguir qual programa encontra em processamento ai que entra o sistema operacional que gerencia a concorrncia dos programas e a alternncia na execuo das instrues. Assim o processo permite que sistemas multiprogramveis implementem a concorrncia de diversos programas e atender mltiplos usurios simultaneamente. Para que um programa possa ser executado outro precisa ser interrompido, para que o ultimo possa ser executado posteriormente as informaes precisam ser guardadas e nenhuma informao deve estar faltando. Essas informaes so usadas pelo sistema operacional gerenciar a execuo concorrente dos programas.

2.1.Caracteristicas dos processos Segundo [site Faculdade QI Professor Joo Moreira, referncia n1] A criao de um novo processo ocorre a partir do momento que o Sistema Operacional adiciona um novo PCB a sua estrutura e a aloca um espao de endereamento de memoria para o uso. J a eliminao dos processos todos os recursos do sistema que esto disponibilizados para o processo so deslocados para outros processos e o PCB eliminado do sistema operacional. Um processo ainda pode ser definido como o ambiente onde um programa executado. A execuo de um programa pode variar, dependendo do processo em que executado, ou seja, em funo dos recursos que o sistema operacional disponibiliza para o programa. A troca de um processo por outro no processador, comandado pelo sistema operacional denominada mudana de contexto que basicamente consiste em mudar o apontador para o conjunto de registradores do processo a ser executado. A estrutura de um processo para execuo de um programa tem a seguinte estrutura: Contexto de hardware: que consiste no processador que processa e faz troca de contexto do processo; Contexto de software onde o sistema operacional que gerencia os recursos de hardware identificando cada processo, definindo os limites de recursos do hardware para cada processo atravs de quotas e definindo o privilgio de cada processo que o processador ir executar; espao de endereado; Espao de endereamento: que a rea da memria que reservado e protegido para o endereamento de cada processo; Bloco de controle de um processo: e o local onde o sistema operacional mantm as informaes sobre o contexto de hardware e de software de cada processo ele fica na memoria principal em uma rea exclusiva do sistema operacional

2.2. Estados dos Processos Um processo quando ativado passa por trs diferentes estados: Execuo: os processos podem se alterar segundo a politica estabelecida pelo sistema operacional em sistemas com uma nica CPU somente um processo executado em um determinado instante. Pronto (ready): so processos que esto prontos para ser executado, quem define qual processo ser executado primeiro. Espera: so processos que esto aguardo um evento externo ou a liberao de algum recurso para continuar. Alm desses estados que os processos podem assumir, pode ocorrer ainda mudana de estado durante o ciclo de vida dos processos: um processo pronto ir passar para o estado de execuo; um processo que j foi executado pode ficar esperando algum dispositivo de entrada para prosseguir; um processo em espera pode passar ao estado de pronto isso ocorre quando a operao solicitada atendida ou recurso

esperado cedido; um processo pode sair de execuo para pronto essa execuo ocorre por eventos gerados pelo sistema. 2.3. Classificao dos processos Segundo[site Faculdade QI Professor Joo Moreira, referncia n1] os processos pode ser classificados de acordo com a maneira que processado ou a utilizao do processador: CPU-bound: Um processo para maior parte do tempo no estado de execuo, ou pronto. Seu tempo de execuo definido principalmente pelo tempo de seus ciclos de processador com poucas operaes de leitura e gravao esse tipo de processo usado para clculos cientficos. I/O-bound: Nesse tipo de processo a execuo definida principalmente pela durao das operaes dos dispositivos de entrada e sada. So processos que praticamente no fazem uso do processador ou processos que fazem uso diretamente do disco e so usados em processos iterativos, ou seja, a comunicao do usurio com o sistema. Fila foreground: Quando um processo criado ele vai para sua respectiva fila numa fila foreground os processos pode ter a comunicao direta do usurrio durante o seu processamento atravs dos canais E/S.

Fila Processo Background: So filas de processos que no possuem comunicao do usurio durante o processamento. Canais de E/S no esto associados a estas filas. Processos independentes: a maneira mais simples de implementar a concorrncia nos sistemas. No existe vinculo do processo criado com o seu criador. Possui contexto de hardware, software e espao de endereamento. Subprocessos: So processos que so gerados por outros processos ou processos pai. Dessa forma os processos filhos esto ligados aos processos pai. E quando os processos pai so eliminados os processos filhos (subprocessos) so eliminados tambm.

Processos do Sistema Operacional: Possuem a finalidade de disponibilizar servios para processos das aplicaes e do prprio sistema operacional tais como interface de comandos e temporizao. Processos podem ser interrompidos por sinais gerados pelo sistema operacional ou pelos dispositivos de entrada e sada. Os sinais so importantes para interrupo de processos, pausa e gerenciamento de filas. 3. Aplicaes concorrentes Os processos preciso comunicar-se entre si atravs de memorias compartilhadas na memoria principal. preciso a sincronizao dos processos que fazem a gravao com aqueles que fazem a leitura. Existem aplicaes que fazem a leitura e a gravao de arquivos e estes processos precisam estar sincronizados. O

mecanismo de sincronizao so aqueles que garantem a comunicao entre processos concorrentes e os acessos a recursos compartilhados assim garantindo a confiabilidade na execuo de aplicaes concorrente.

4. Consideraes finais
Para que cada aplicativo executado em um computador funcione perfeitamente preciso que o sistema operacional gerencie todos os processos que nele so executados de forma automtica ou pela solicitao do usurio. As aplicaes que rodam em um computador mesmo as mais simples fazem um uso deu uma estrutura complexa de processos que so gerenciados pelo sistema. Para desenvolver aplicaes mais eficientes essencial entender como esses processos funcionam.

6. Referencias
1.FAQI, < http://faculdade.qi.edu.br/moodle/enrol/index.php?id=357 >.