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

FUNDAMENTOS EM SISTEMAS OPERACIONAIS

Por:   •  17/7/2021  •  Trabalho acadêmico  •  438 Palavras (2 Páginas)  •  121 Visualizações

Página 1 de 2

Comunicação entre Processos

A comunicação entre processos é o grupo de mecanismos que permite aos processos transferirem informação entre si.

A execução de um processo pressupõe por parte do sistema operativo, entre outras coisas, a criação de um contexto de execução próprio que, de certa forma, abstrai o processo dos componentes reais do sistema.

O processo caracteriza-se por uma entidade dinâmica, que muda de estados e concorre por recursos do sistema. Cada processo está associado a um Bloco de Controle de Processo (PCB), composto por informações como: contador de programa (PC), descritores de arquivo e endereços de memória.

Os processos executando no Sistema Operacional podem ser independentes ou cooperativos. Processos independentes não compartilham dados com outros processos, os cooperativos sim. Os Principais motivos para cooperação entre esses processos são o compartilhamento de informações, velocidade de computação e modularidade. A cooperação requer que os processos comuniquem entre si e sincronizem suas ações.

Existem diferentes modelos de comunicação entre processos, sendo os mais comuns a troca de mensagens e a memória compartilhada entre os processos.

Os mecanismos de troca de mensagens, permite a processos locais ou remotos se comunicarem, para a comunicação existir deve haver entre eles um canal de comunicação, a implementação da maioria destes canais se baseia nas primitivas de mensagens send e receive.

Dois ou mais processos utilizam a região de memória compartilhada, conectando-a no seu espaço de endereçamento. Deve se ter a garantia de que os dois processos não estejam gravando dados no mesmo local simultaneamente.

A sincronização entre processos, permite gerir o acesso concorrente a recursos do sistema operativo de forma controlada por parte dos processos, de maneira que um recurso não seja modificado em simultâneo, ou que os processos não fiquem em espera que o recurso seja libertado.

Escalonamento de processos

Escalonamento de processos é o ato de realizar o chaveamento dos processos ativos, de acordo com regras bem estabelecidas, de forma que todos os processos estejam em execução o tempo todo e podendo interagir com cada programa enquanto está em execução, decidindo qual o próximo processo a ser executado.

Existem várias formas de implementar o escalonamento e estes devem seguir critérios como justiça, eficiência, minimizar o tempo de resposta a comandos de usuários interativos, maximizar o número de serviços processados por hora etc.

À medida que os processos entram no sistema, são colocados em uma fila, onde estão prontos e aguardando para serem executados no núcleo de uma CPU, sendo armazenadas em uma lista encadeada.

Quando um processo é alocado em um núcleo da CPU, ele é executado por um tempo e, eventualmente, termina, é interrompido ou aguarda a ocorrência de um determinado evento, como a conclusão de uma solicitação de E/S.

...

Baixar como (para membros premium)  txt (2.9 Kb)   pdf (32.6 Kb)   docx (8 Kb)  
Continuar por mais 1 página »
Disponível apenas no TrabalhosGratuitos.com