Gerência de Processos

Gerencia de Processos

7. Processos e Threads

O Symbian OS é um sistema operacional multitarefa preemptivo, o Symbian OS possui um framework para comunicação assíncrona, batizado de Active Objects.

Os Active Objects podem ser usados para implementar processamento cooperativo, simulando a existência de várias thread’s. Os processos no Symbian OS possuem espaço de memória reservado para eles, não sendo possível que outro processo acesse essa área diretamente, por questões de segurança. Vários processos podem ser “executados” ao mesmo tempo, sendo o kernel responsável por realizar a gestão de execução. Cada processo possui pelo menos uma thread, e caso exista mais de uma, todas elas podem acessar o espaço de memória correspondente ao processo que as contém.

Um processo simples é composto por um conjunto de recursos e um fluxo de execução, multithreading é a execução de um processo composto por vários fluxos de execução que concorrem entre si, baseadas em prioridade. O núcleo do Symbian OS disponibiliza o recurso de multithreadind, onde vários fluxos de execução podem executar paralelamente, sem haver necessidade do controle dos fluxos de execução explícito no código em execução.

O nanokernel do Symbain OS suporta os mais simples fluxos de execução do sistema, o sistema também suporta a gerência e sincronização das nanothreads a partir do nanokernel. As nanothreads utilizam uma pilha, única e simples do administrador do sistema.
O modelo de arquitetura de muitos serviços no Symbian OS é o cliente/servidor. Os serviços usualmente são executados em um processo separado, de modo que a comunicação entre clientes e servidores se dá através do sistema operacional.

8.1. Estados dos processos

Figura 2 Processos e Threads

New(Pronto): Um processo que está sendo criado e tem sua seção de texto construído a partir do código em um programa, a sua seção de dados e pilha são alocadas na memória e componentes de hardware são inicializados;

Read(Pronto): Processo que está disponível para execução em um processador, mas à espera de execução;

Running(Execução): Um processo que está sendo executado em um processador, que está manipulando o hardware e executando as instruções solicitadas;

Waiting(Espera): Processo que está suspenso e aguardando algum evento externo para ocorrer;

Terminated(Terminado): Um processo no estado encerrado foi concluída a sua execução em um processador, quando um processo é finalizado, remove-se as tabelas do sistema e armazenamento de dados, e deixa de ser um processo.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

%d blogueiros gostam disto: