SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
Comunicação
entre
Processos
Florêncio de Grácio Eugênio
Francisco Pedro Macoo
Gabriel Samuel
Grit Alberto
Docente: dr. Orlávio Averú
Universidade Pedagógica
Nampula
2015
INTRODUÇÃO
Neste presente trabalho com o tema em foco “Comunicação entre processos”, que se refere a uma situação comum
dentro dos sistemas computacionais que ocorre quando dois ou mais processos precisam se comunicar. Faremos uma
breve menção a cerca do tema em causa, apresentando os conceitos, exemplos e alguns esquemas para melhor
compreensão.
Salientar ainda que este trabalho tem como objetivo Geral “entender a comunicação entre processos e seus
mecanismos.
Objetivos específicos
Descrever os principais mecanismos de comunicação entre processos;
Explicar a finalidade do sistema operativos como gerenciador de recursos;
Descrever a função do núcleo de um sistema operativo.
O trabalho apresenta a seguinte estrutura:
Introdução, desenvolvimento e referência bibliográfica.
Para realização do trabalho recorremos a várias obras disponíveis na biblioteca referentes à cadeira em estudo, e a
algumas obras disponíveis na web, todas serão abaixo citadas na referência bibliográfica.
Figura 1: exemplo de processos. Fonte os autores.
Processo
Processo é geralmente entendido como um programa em execução porém, na realidade, trata-se de uma estrutura mais
complexa que contém, além do programa no seu formato executável, todas as informações necessárias (contexto) à
execução e ao controle da execução do mesmo, como por exemplo: o contador de programa, pilhas, registradores e área de
dados. (MACHADO, 1994)
Figura 2: Estado de um Processo. Fonte (MACHADO, 1994)
Estado de um Processo
 Comunicação entre processos
De a cordo com (SILBERSCHATZ, 2010) comunicação entre processos ou a comunicação inter-processso
(IPC- inter process comunication), é uma situação comum dentro dos sistemas computacionais que ocorre
quando dois ou mais processos precisam se comunicar, isto é, quando os processos devem compartilhar ou
trocar dados entre si. A comunicação entre processos pode ocorrer em várias situações diferentes tais como:
Redireccionamento da saída (dos resultados) de um comando para outro;
Envio de arquivos para impressão;
Transmissão de dados através da rede;
Transferência de dados entre periféricos, etc.
Mecanismos de comunicação
entre processos
Sistema de transmissão de mensagens
Processos se comunicam entre si sem lançar mão de variáveis compartilhadas
A comunicação utiliza 2 funções a saber:
 Send (mensagem);
 Receive (mensagem);
Figura 3: Sistema de transmissão de mensagem. Fonte (MACHADO, 1994).
Cont.
A transmissão de mensagens fornece um mecanismo que permite que os
processos se comuniquem e sincronizem suas ações sem compartilhar o mesmo
espaço de endereço e é particularmente útil de um ambiente distribuído. As
mensagens enviadas por um processo podem ser do tamanho fixo ou variável.
Quando só mensagens de tamanho fixo podem ser enviadas, a implementação no
nível do sistema é simples. (Machado, 1994)..
Sistema de memória compartilhada
Segundo (SILBERSCHATZ, 2010) a comunicação entre processos que usa memória compartilhada requer que os
processos em comunicação estabeleçam uma região de memória compartilhada. Normalmente, a região de memória
compartilhada reside no espaço de endereço do processo que cria o seguimento de memória compartilhada. Outros
processos que quiserem se comunicar usando esse seguimento de memória compartilhada devem anexa-lo a seu
espaço de endereço. Lembre-se que, geralmente, o sistema operacional tenta impedir que um processo acesse a
memoria de outro processo. A memória compartilhada requer que dois ou mais processos concordem em eliminar essa
restrição. Assim, eles podem trocar informações lendo e gravando dados nas áreas compartilhadas.
Buffers e operações de sleep e wakeup
Figura 4: sistema buffer, fonte (TANENBAUM, 2003).
Um buffer é uma pequena área de memória ultra-rápida usada para melhorar a
velocidade de acesso a um determinado dispositivo. É encontrado em hds,
gravadores de CD, modems, e muitos outros.
Um problema típico é o do produtor-consumidor, onde dois processos distintos compartilham
um buffer, uma área de dados de tamanho fixo que se comporta como um reservatório
temporário. Se o produtor e consumidor são processos sequenciais, a solução do problema é
simples, mas sendo processos paralelos passa a existir uma situação de concorrência. O
processo produtor coloca informações no buffer enquanto o processo consumidor as retira de
la. Programas que desejam imprimir podem colocar suas entradas (nomes dos arquivos a
serem impressos ou os arquivos de impressão propriamente ditos) em uma área de spooling,
denominada de printer spool. Um outro processo (tipicamente um deamon de impressão)
verifica continuamente a entrada de entradas no spool, direcionando as para uma ou mais
impressoras existentes quando estas se tornam ociosas, com isto retirando as entradas da área
de spool. É claro que a área reservada para o spool é finita e que as velocidades dos diversos
produtores (programas que desejam imprimir) pode ser substancialmente diferente das
velocidades dos consumidores (das diferentes impressoras instaladas no sistema).
Cont.
Chamada de Procedimentos Remotos
De a cordo com (TANENBAUM, 2008) chamada de procedimentos remotos (ou RPC) é uma forma
mais estruturada de troca de mensagens entre processos servidores e clientes. Um processo servidor
dispõe de um conjunto de serviços que um processo cliente evoca como se evocasse um procedimento
local. O cliente indica o serviço desejado ao servidor, passando parâmetros para sua execução, se for
o caso.
Recebida a requisição, esta é processada pelo servidor que retorna os resultados ao cliente. O envio e
receção de parâmetros e retornos se dá por troca de mensagens. Uma biblioteca de RPC possui duas
primitivas básicas:
register_rpc(serviço): utilizada por servidores para anunciar que serviços estão aptos a processar;
call_rpc(serviço, parâmetros, resultados): utilizada por clientes para evocar serviços
Sistema Operativo como gerenciador de recursos
Imagine o que poderia acontecer se três processos, rodando em um dado computador, resolvessem
imprimir suas saídas simultaneamente na mesma impressora. As três primeiras linhas da listagem
poderiam ser do processo 1, as seguintes do processo 2 e assim por diante, até que os três
terminassem a impressão. Fica claro que tal situação não é admissível em nenhum sistema que se
preze. O sistema operacional tem por função colocar ordem neste caos potencial, armazenando em
disco todas as saídas destinadas à impressora, durante a execução dos processos.
No caso de o computador possuir múltiplos usuários, a necessidade de gerência e proteção da
memória, dos dispositivos de entrada/saída e dos demais recursos do sistema fica ainda mais
aparente.
Figura 5:um núcleo de S.O. O seu funcionamento, fonte: (TANENBAUM, 2008)
Em computação o núcleo ou cerne (em inglês kernel) é o componente central do sistema operativo da
maioria dos computadores; ele serve de ponte entre aplicativos e o processamento real de dados feito a
nível de hardware. As responsabilidades do núcleo incluem gerenciar os recursos do sistema (a
comunicação entre componentes de hardware e software). (Tanenbaum, 2008).
Função do núcleo do sistema operativo
Gerenciamento do processador
A unidade de processamento central (CPU, o processador). Esta é a parte mais central de um sistema de computação,
responsável por rodar ou executar programas nele. O núcleo tem a responsabilidade de decidir, em qualquer momento, qual
dos programas em execução deve ser alocado para o processador ou processadores (cada um dos quais geralmente pode
executar um programa por vez).
Gerenciamento de memoria
A memória é usada para armazenar ambas instruções do programa e dados. Tipicamente, ambos precisam estar presentes
na memória de modo a tornar a execução do programa possível. O núcleo é responsável pela decisão de que memória cada
processo pode utilizar, e determinar o que fazer quando menos do suficiente está disponível.
Finalidades básicas do núcleo
Gerenciamento de dispositivos
Qualquer dispositivo de entrada/saída presente no computador, tais como teclado, rato, entradas de disquete,
impressoras, telas, etc. O núcleo aloca pedidos de aplicativos para realizar entrada/saída para um dispositivo
apropriado (ou subseção de um dispositivo, no caso de arquivos em um disco ou janelas em uma tela) e fornece
métodos convenientes para o uso do dispositivo (tipicamente abstraído ao ponto onde o aplicativo não precisa mais
conhecer os detalhes da implementação do dispositivo).
Cont.
Findo o trabalho, concluímos que O principal propósito do núcleo é gerenciar os recursos do computador e
permitir que outros programas rodem e usem destes recursos. Sendo assim a maioria dos sistemas em uso,
os programas são muito maiores que a quantidade de memória principal disponível e/ou é necessário rodar
mais de um programa ao mesmo tempo. Nestes casos, a utilização de esquemas de troca, páginas e
segmentos pode ser uma alternativa.
Conclusão
Referência bibliográfica
MACHADO, francis B. E maia, luiz P., Introdução à arquitetura de sistemas operacionais,
ed. Ltc, 1994.
SILBERSCHATZ, galvin, gangne: fundamentos de sistemas operacionais 8ª edição, 2010 pag.66-68.
TANENBAUM, andrew S. Albert S. Woodhull, sistemas operativos-projecto de implementação, 3a
edição, artimed editora S.A. Porto alegre, 2008.
Disponivel em:
http://www-usr.Inf.Ufsm.Br/~rose/tanenbaum.Pdf, cessado aos 25 de março de 2015, as 11:30.
TANENBAUM, andrew S. Sistemas operacionais modernos 2. Ed. Prentice hall ( pearson ), 2003
disponivel em
http://fafiman.Br/leandro/arquivos/so/sistemas%20operacionais%20-%20tanenbaum.Pdf, cessado aos
25 de março de 2015, as 11:40
Comunicação entre processos

Mais conteúdo relacionado

Mais procurados

opinião pública
opinião públicaopinião pública
opinião públicakyzinha
 
Lógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicosLógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicosMauro Pereira
 
Trabalho módulo 1 suporte básico de vida - daniela dantas
Trabalho módulo 1   suporte básico de vida - daniela dantasTrabalho módulo 1   suporte básico de vida - daniela dantas
Trabalho módulo 1 suporte básico de vida - daniela dantasVera Filipa Silva
 
Resumo básico de introdução à informática
Resumo básico de introdução à informáticaResumo básico de introdução à informática
Resumo básico de introdução à informáticaDaiana de Ávila
 
Trabalho de estatística
Trabalho de estatísticaTrabalho de estatística
Trabalho de estatística1721lab
 
1º trabalho base dados
1º trabalho base dados1º trabalho base dados
1º trabalho base dadosessa
 
TIC - Conceitos Básicos
TIC - Conceitos BásicosTIC - Conceitos Básicos
TIC - Conceitos BásicosAntonio Semedo
 
PRA - Portefólio Reflexivo Aprendizagens [RVCC]
PRA - Portefólio Reflexivo Aprendizagens [RVCC]PRA - Portefólio Reflexivo Aprendizagens [RVCC]
PRA - Portefólio Reflexivo Aprendizagens [RVCC]J P
 
Ficha trabalho sistema gastrointestinal
Ficha trabalho sistema gastrointestinalFicha trabalho sistema gastrointestinal
Ficha trabalho sistema gastrointestinalIsabel Henriques
 
Aula 01 - Ms PowerPoint
Aula 01 - Ms  PowerPointAula 01 - Ms  PowerPoint
Aula 01 - Ms PowerPointRoney Sousa
 
Atalhos no teclado do windows
Atalhos no teclado do windowsAtalhos no teclado do windows
Atalhos no teclado do windowsHenrique Farias
 
Aula 2 - Sistemas operacionais - Windows
Aula 2 - Sistemas operacionais - WindowsAula 2 - Sistemas operacionais - Windows
Aula 2 - Sistemas operacionais - WindowsLucasMansueto
 
Aula02 - Sistemas Numéricos computacionais
Aula02 - Sistemas Numéricos computacionaisAula02 - Sistemas Numéricos computacionais
Aula02 - Sistemas Numéricos computacionaisJorge Ávila Miranda
 

Mais procurados (20)

Diabetes mine curso insulinoterapia
Diabetes mine curso insulinoterapiaDiabetes mine curso insulinoterapia
Diabetes mine curso insulinoterapia
 
Teste PowerPoint
Teste PowerPointTeste PowerPoint
Teste PowerPoint
 
opinião pública
opinião públicaopinião pública
opinião pública
 
Saúde do coração
Saúde do coraçãoSaúde do coração
Saúde do coração
 
Lógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicosLógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicos
 
Plano de sessão
Plano de sessãoPlano de sessão
Plano de sessão
 
Trabalho módulo 1 suporte básico de vida - daniela dantas
Trabalho módulo 1   suporte básico de vida - daniela dantasTrabalho módulo 1   suporte básico de vida - daniela dantas
Trabalho módulo 1 suporte básico de vida - daniela dantas
 
Resumo básico de introdução à informática
Resumo básico de introdução à informáticaResumo básico de introdução à informática
Resumo básico de introdução à informática
 
Trabalho de estatística
Trabalho de estatísticaTrabalho de estatística
Trabalho de estatística
 
1º trabalho base dados
1º trabalho base dados1º trabalho base dados
1º trabalho base dados
 
TIC - Conceitos Básicos
TIC - Conceitos BásicosTIC - Conceitos Básicos
TIC - Conceitos Básicos
 
PRA - Portefólio Reflexivo Aprendizagens [RVCC]
PRA - Portefólio Reflexivo Aprendizagens [RVCC]PRA - Portefólio Reflexivo Aprendizagens [RVCC]
PRA - Portefólio Reflexivo Aprendizagens [RVCC]
 
Ficha trabalho sistema gastrointestinal
Ficha trabalho sistema gastrointestinalFicha trabalho sistema gastrointestinal
Ficha trabalho sistema gastrointestinal
 
Aula 01 - Ms PowerPoint
Aula 01 - Ms  PowerPointAula 01 - Ms  PowerPoint
Aula 01 - Ms PowerPoint
 
Atalhos no teclado do windows
Atalhos no teclado do windowsAtalhos no teclado do windows
Atalhos no teclado do windows
 
Aula 2 - Sistemas operacionais - Windows
Aula 2 - Sistemas operacionais - WindowsAula 2 - Sistemas operacionais - Windows
Aula 2 - Sistemas operacionais - Windows
 
ECDL
ECDLECDL
ECDL
 
Aula02 - Sistemas Numéricos computacionais
Aula02 - Sistemas Numéricos computacionaisAula02 - Sistemas Numéricos computacionais
Aula02 - Sistemas Numéricos computacionais
 
A ata
A ataA ata
A ata
 
Informática Básica - Aula 03 - Hardware
Informática Básica - Aula 03 - HardwareInformática Básica - Aula 03 - Hardware
Informática Básica - Aula 03 - Hardware
 

Destaque (13)

Carnaval2009
Carnaval2009Carnaval2009
Carnaval2009
 
Sugo - Digital and Mobile Store List
Sugo - Digital and Mobile Store ListSugo - Digital and Mobile Store List
Sugo - Digital and Mobile Store List
 
José Ramón Sánchez
José Ramón SánchezJosé Ramón Sánchez
José Ramón Sánchez
 
Cacería de Rajoy
Cacería de Rajoy Cacería de Rajoy
Cacería de Rajoy
 
Alpha Award_Best Sukuk House_2015
Alpha Award_Best Sukuk House_2015Alpha Award_Best Sukuk House_2015
Alpha Award_Best Sukuk House_2015
 
B-DonnaKMarino-Portfolio
B-DonnaKMarino-PortfolioB-DonnaKMarino-Portfolio
B-DonnaKMarino-Portfolio
 
Nana Mouskouri
Nana MouskouriNana Mouskouri
Nana Mouskouri
 
Hyatt Certificate
Hyatt CertificateHyatt Certificate
Hyatt Certificate
 
Psychological Learning
Psychological LearningPsychological Learning
Psychological Learning
 
Rutenbeck; GLR Pressure Drop
Rutenbeck; GLR Pressure DropRutenbeck; GLR Pressure Drop
Rutenbeck; GLR Pressure Drop
 
Umbral Mortal y Rosa
Umbral Mortal y RosaUmbral Mortal y Rosa
Umbral Mortal y Rosa
 
Rosewood Hotels and Resorts.
Rosewood Hotels and Resorts.Rosewood Hotels and Resorts.
Rosewood Hotels and Resorts.
 
Refugiados
RefugiadosRefugiados
Refugiados
 

Semelhante a Comunicação entre processos

Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas OperacionaisAdir Kuhn
 
Apostila computacao
Apostila computacaoApostila computacao
Apostila computacaowebphotoshop
 
Apostila de sistemas operacionais emi mario gurgel
Apostila de sistemas operacionais emi mario gurgelApostila de sistemas operacionais emi mario gurgel
Apostila de sistemas operacionais emi mario gurgelPablo Mariano
 
Apostila de sistemas operacionais emi mario gurgel
Apostila de sistemas operacionais emi mario gurgelApostila de sistemas operacionais emi mario gurgel
Apostila de sistemas operacionais emi mario gurgelPablo Mariano
 
Apostila de sistemas operacionais emi mario gurgel
Apostila de sistemas operacionais emi mario gurgelApostila de sistemas operacionais emi mario gurgel
Apostila de sistemas operacionais emi mario gurgelPablo Mariano
 
Visão Geral: Introdução
Visão Geral: IntroduçãoVisão Geral: Introdução
Visão Geral: IntroduçãoAlexandre Duarte
 
Sistemas Operacionais parte 1
Sistemas Operacionais parte 1Sistemas Operacionais parte 1
Sistemas Operacionais parte 1Matheus Brito
 
Sistemas Operacionais parte 2
Sistemas Operacionais  parte 2Sistemas Operacionais  parte 2
Sistemas Operacionais parte 2Matheus Brito
 
Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)Pepe Rocker
 
Conceitos de sistemas operacionais
Conceitos de sistemas operacionaisConceitos de sistemas operacionais
Conceitos de sistemas operacionaisAparicio Junior
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosCharles Fortes
 
Sistema operacional
Sistema operacionalSistema operacional
Sistema operacionalMichael Soto
 

Semelhante a Comunicação entre processos (20)

S.o aula 1920
S.o aula 1920S.o aula 1920
S.o aula 1920
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas Operacionais
 
Apostila computacao
Apostila computacaoApostila computacao
Apostila computacao
 
Apostila de sistemas operacionais emi mario gurgel
Apostila de sistemas operacionais emi mario gurgelApostila de sistemas operacionais emi mario gurgel
Apostila de sistemas operacionais emi mario gurgel
 
Apostila de sistemas operacionais emi mario gurgel
Apostila de sistemas operacionais emi mario gurgelApostila de sistemas operacionais emi mario gurgel
Apostila de sistemas operacionais emi mario gurgel
 
Apostila de sistemas operacionais emi mario gurgel
Apostila de sistemas operacionais emi mario gurgelApostila de sistemas operacionais emi mario gurgel
Apostila de sistemas operacionais emi mario gurgel
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas Operacionais
 
S.o aula 5678
S.o aula 5678S.o aula 5678
S.o aula 5678
 
Visão Geral: Introdução
Visão Geral: IntroduçãoVisão Geral: Introdução
Visão Geral: Introdução
 
Sistema operacional
Sistema operacionalSistema operacional
Sistema operacional
 
Sistemas Operacionais parte 1
Sistemas Operacionais parte 1Sistemas Operacionais parte 1
Sistemas Operacionais parte 1
 
Sistemas Operacionais parte 2
Sistemas Operacionais  parte 2Sistemas Operacionais  parte 2
Sistemas Operacionais parte 2
 
Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)
 
Sistema
SistemaSistema
Sistema
 
Apostila SO
Apostila SOApostila SO
Apostila SO
 
Conceitos de sistemas operacionais
Conceitos de sistemas operacionaisConceitos de sistemas operacionais
Conceitos de sistemas operacionais
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
 
Curso openmp
Curso openmpCurso openmp
Curso openmp
 
Sistema operacional
Sistema operacionalSistema operacional
Sistema operacional
 
Joaopinheiro
JoaopinheiroJoaopinheiro
Joaopinheiro
 

Último

LEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaLEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaGuilhermeLucio9
 
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdfPLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdfAroldoMenezes1
 
Aulas Práticas da Disciplina de Desenho Técnico Projetivo _ Passei Direto.pdf
Aulas Práticas da Disciplina de Desenho Técnico Projetivo _ Passei Direto.pdfAulas Práticas da Disciplina de Desenho Técnico Projetivo _ Passei Direto.pdf
Aulas Práticas da Disciplina de Desenho Técnico Projetivo _ Passei Direto.pdfMateusSerraRodrigues1
 
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animalFISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animalPauloHenrique154965
 
Resistencias dos materiais I - Tensao.pptx
Resistencias dos materiais I - Tensao.pptxResistencias dos materiais I - Tensao.pptx
Resistencias dos materiais I - Tensao.pptxjuliocameloUFC
 
Eletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréEletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréGuilhermeLucio9
 
Estatística aplicada à experimentação animal
Estatística aplicada à experimentação animalEstatística aplicada à experimentação animal
Estatística aplicada à experimentação animalleandroladesenvolvim
 
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAMMODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAMCassio Rodrigo
 
Tecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraTecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraGuilhermeLucio9
 

Último (9)

LEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaLEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurança
 
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdfPLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
 
Aulas Práticas da Disciplina de Desenho Técnico Projetivo _ Passei Direto.pdf
Aulas Práticas da Disciplina de Desenho Técnico Projetivo _ Passei Direto.pdfAulas Práticas da Disciplina de Desenho Técnico Projetivo _ Passei Direto.pdf
Aulas Práticas da Disciplina de Desenho Técnico Projetivo _ Passei Direto.pdf
 
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animalFISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
 
Resistencias dos materiais I - Tensao.pptx
Resistencias dos materiais I - Tensao.pptxResistencias dos materiais I - Tensao.pptx
Resistencias dos materiais I - Tensao.pptx
 
Eletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréEletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante Tamandaré
 
Estatística aplicada à experimentação animal
Estatística aplicada à experimentação animalEstatística aplicada à experimentação animal
Estatística aplicada à experimentação animal
 
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAMMODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAM
 
Tecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraTecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade Anhanguera
 

Comunicação entre processos

  • 1. Comunicação entre Processos Florêncio de Grácio Eugênio Francisco Pedro Macoo Gabriel Samuel Grit Alberto Docente: dr. Orlávio Averú Universidade Pedagógica Nampula 2015
  • 2. INTRODUÇÃO Neste presente trabalho com o tema em foco “Comunicação entre processos”, que se refere a uma situação comum dentro dos sistemas computacionais que ocorre quando dois ou mais processos precisam se comunicar. Faremos uma breve menção a cerca do tema em causa, apresentando os conceitos, exemplos e alguns esquemas para melhor compreensão. Salientar ainda que este trabalho tem como objetivo Geral “entender a comunicação entre processos e seus mecanismos. Objetivos específicos Descrever os principais mecanismos de comunicação entre processos; Explicar a finalidade do sistema operativos como gerenciador de recursos; Descrever a função do núcleo de um sistema operativo. O trabalho apresenta a seguinte estrutura: Introdução, desenvolvimento e referência bibliográfica. Para realização do trabalho recorremos a várias obras disponíveis na biblioteca referentes à cadeira em estudo, e a algumas obras disponíveis na web, todas serão abaixo citadas na referência bibliográfica.
  • 3. Figura 1: exemplo de processos. Fonte os autores. Processo Processo é geralmente entendido como um programa em execução porém, na realidade, trata-se de uma estrutura mais complexa que contém, além do programa no seu formato executável, todas as informações necessárias (contexto) à execução e ao controle da execução do mesmo, como por exemplo: o contador de programa, pilhas, registradores e área de dados. (MACHADO, 1994)
  • 4. Figura 2: Estado de um Processo. Fonte (MACHADO, 1994) Estado de um Processo
  • 5.  Comunicação entre processos De a cordo com (SILBERSCHATZ, 2010) comunicação entre processos ou a comunicação inter-processso (IPC- inter process comunication), é uma situação comum dentro dos sistemas computacionais que ocorre quando dois ou mais processos precisam se comunicar, isto é, quando os processos devem compartilhar ou trocar dados entre si. A comunicação entre processos pode ocorrer em várias situações diferentes tais como: Redireccionamento da saída (dos resultados) de um comando para outro; Envio de arquivos para impressão; Transmissão de dados através da rede; Transferência de dados entre periféricos, etc.
  • 7. Sistema de transmissão de mensagens Processos se comunicam entre si sem lançar mão de variáveis compartilhadas A comunicação utiliza 2 funções a saber:  Send (mensagem);  Receive (mensagem); Figura 3: Sistema de transmissão de mensagem. Fonte (MACHADO, 1994).
  • 8. Cont. A transmissão de mensagens fornece um mecanismo que permite que os processos se comuniquem e sincronizem suas ações sem compartilhar o mesmo espaço de endereço e é particularmente útil de um ambiente distribuído. As mensagens enviadas por um processo podem ser do tamanho fixo ou variável. Quando só mensagens de tamanho fixo podem ser enviadas, a implementação no nível do sistema é simples. (Machado, 1994)..
  • 9. Sistema de memória compartilhada Segundo (SILBERSCHATZ, 2010) a comunicação entre processos que usa memória compartilhada requer que os processos em comunicação estabeleçam uma região de memória compartilhada. Normalmente, a região de memória compartilhada reside no espaço de endereço do processo que cria o seguimento de memória compartilhada. Outros processos que quiserem se comunicar usando esse seguimento de memória compartilhada devem anexa-lo a seu espaço de endereço. Lembre-se que, geralmente, o sistema operacional tenta impedir que um processo acesse a memoria de outro processo. A memória compartilhada requer que dois ou mais processos concordem em eliminar essa restrição. Assim, eles podem trocar informações lendo e gravando dados nas áreas compartilhadas.
  • 10. Buffers e operações de sleep e wakeup Figura 4: sistema buffer, fonte (TANENBAUM, 2003). Um buffer é uma pequena área de memória ultra-rápida usada para melhorar a velocidade de acesso a um determinado dispositivo. É encontrado em hds, gravadores de CD, modems, e muitos outros.
  • 11. Um problema típico é o do produtor-consumidor, onde dois processos distintos compartilham um buffer, uma área de dados de tamanho fixo que se comporta como um reservatório temporário. Se o produtor e consumidor são processos sequenciais, a solução do problema é simples, mas sendo processos paralelos passa a existir uma situação de concorrência. O processo produtor coloca informações no buffer enquanto o processo consumidor as retira de la. Programas que desejam imprimir podem colocar suas entradas (nomes dos arquivos a serem impressos ou os arquivos de impressão propriamente ditos) em uma área de spooling, denominada de printer spool. Um outro processo (tipicamente um deamon de impressão) verifica continuamente a entrada de entradas no spool, direcionando as para uma ou mais impressoras existentes quando estas se tornam ociosas, com isto retirando as entradas da área de spool. É claro que a área reservada para o spool é finita e que as velocidades dos diversos produtores (programas que desejam imprimir) pode ser substancialmente diferente das velocidades dos consumidores (das diferentes impressoras instaladas no sistema). Cont.
  • 12. Chamada de Procedimentos Remotos De a cordo com (TANENBAUM, 2008) chamada de procedimentos remotos (ou RPC) é uma forma mais estruturada de troca de mensagens entre processos servidores e clientes. Um processo servidor dispõe de um conjunto de serviços que um processo cliente evoca como se evocasse um procedimento local. O cliente indica o serviço desejado ao servidor, passando parâmetros para sua execução, se for o caso. Recebida a requisição, esta é processada pelo servidor que retorna os resultados ao cliente. O envio e receção de parâmetros e retornos se dá por troca de mensagens. Uma biblioteca de RPC possui duas primitivas básicas: register_rpc(serviço): utilizada por servidores para anunciar que serviços estão aptos a processar; call_rpc(serviço, parâmetros, resultados): utilizada por clientes para evocar serviços
  • 13. Sistema Operativo como gerenciador de recursos Imagine o que poderia acontecer se três processos, rodando em um dado computador, resolvessem imprimir suas saídas simultaneamente na mesma impressora. As três primeiras linhas da listagem poderiam ser do processo 1, as seguintes do processo 2 e assim por diante, até que os três terminassem a impressão. Fica claro que tal situação não é admissível em nenhum sistema que se preze. O sistema operacional tem por função colocar ordem neste caos potencial, armazenando em disco todas as saídas destinadas à impressora, durante a execução dos processos. No caso de o computador possuir múltiplos usuários, a necessidade de gerência e proteção da memória, dos dispositivos de entrada/saída e dos demais recursos do sistema fica ainda mais aparente.
  • 14. Figura 5:um núcleo de S.O. O seu funcionamento, fonte: (TANENBAUM, 2008) Em computação o núcleo ou cerne (em inglês kernel) é o componente central do sistema operativo da maioria dos computadores; ele serve de ponte entre aplicativos e o processamento real de dados feito a nível de hardware. As responsabilidades do núcleo incluem gerenciar os recursos do sistema (a comunicação entre componentes de hardware e software). (Tanenbaum, 2008). Função do núcleo do sistema operativo
  • 15. Gerenciamento do processador A unidade de processamento central (CPU, o processador). Esta é a parte mais central de um sistema de computação, responsável por rodar ou executar programas nele. O núcleo tem a responsabilidade de decidir, em qualquer momento, qual dos programas em execução deve ser alocado para o processador ou processadores (cada um dos quais geralmente pode executar um programa por vez). Gerenciamento de memoria A memória é usada para armazenar ambas instruções do programa e dados. Tipicamente, ambos precisam estar presentes na memória de modo a tornar a execução do programa possível. O núcleo é responsável pela decisão de que memória cada processo pode utilizar, e determinar o que fazer quando menos do suficiente está disponível. Finalidades básicas do núcleo
  • 16. Gerenciamento de dispositivos Qualquer dispositivo de entrada/saída presente no computador, tais como teclado, rato, entradas de disquete, impressoras, telas, etc. O núcleo aloca pedidos de aplicativos para realizar entrada/saída para um dispositivo apropriado (ou subseção de um dispositivo, no caso de arquivos em um disco ou janelas em uma tela) e fornece métodos convenientes para o uso do dispositivo (tipicamente abstraído ao ponto onde o aplicativo não precisa mais conhecer os detalhes da implementação do dispositivo). Cont.
  • 17. Findo o trabalho, concluímos que O principal propósito do núcleo é gerenciar os recursos do computador e permitir que outros programas rodem e usem destes recursos. Sendo assim a maioria dos sistemas em uso, os programas são muito maiores que a quantidade de memória principal disponível e/ou é necessário rodar mais de um programa ao mesmo tempo. Nestes casos, a utilização de esquemas de troca, páginas e segmentos pode ser uma alternativa. Conclusão
  • 18. Referência bibliográfica MACHADO, francis B. E maia, luiz P., Introdução à arquitetura de sistemas operacionais, ed. Ltc, 1994. SILBERSCHATZ, galvin, gangne: fundamentos de sistemas operacionais 8ª edição, 2010 pag.66-68. TANENBAUM, andrew S. Albert S. Woodhull, sistemas operativos-projecto de implementação, 3a edição, artimed editora S.A. Porto alegre, 2008. Disponivel em: http://www-usr.Inf.Ufsm.Br/~rose/tanenbaum.Pdf, cessado aos 25 de março de 2015, as 11:30. TANENBAUM, andrew S. Sistemas operacionais modernos 2. Ed. Prentice hall ( pearson ), 2003 disponivel em http://fafiman.Br/leandro/arquivos/so/sistemas%20operacionais%20-%20tanenbaum.Pdf, cessado aos 25 de março de 2015, as 11:40

Notas do Editor

  1. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  2. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  3. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  4. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  5. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  6. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  7. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  8. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  9. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  10. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  11. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  12. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  13. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  14. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  15. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  16. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  17. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular
  18. 40 Grupo, Curso de Lic. Em Informática, 20 ano Regular