Arquitetura

 Esrutura do Symbian OS

O Symbian OS é distribuido nas seguintes camadas, de cima para baixo:

  1. UI Framework Layer;

Camada superior do sistema, ela fornece frameworks e bibliotecas, além de especialidades para a construção de uma interface para o usuário e utilitários utilizados pelos componentes de interface com do usuário.

A arquitetura de interface do usuário Symbian OS é baseado em um núcleo chamado de Uikon e uma hierquia de classe para controles de interface de usuário chamado de Ambiente de Controle. Juntos, eles fornecem o framework que define o comportamento da GUI (Graphical User Interface) básica, de acordo com a GUI de execução e as interações com gráficos adjacentes da arquitetura.

  1. Application Services Layer;

  A Camada de Aplicação de Serviços, fornece independente do usuário, a interface de aplicações em Symbian OS. Estes serviços se dividem em três grupos principais:

  • Sistema de nível de serviços, utilizados por todas as aplicações;

Ex.: manipulação de textos.

  • Serviços para tipos genéricos de aplicações e aplicações como serviços;

Ex.: Serviço de sincronização de dados.

  • Serviços baseados em aplicações voltados a certa tecnologias.

Ex.: E-mail, navegação na internet.

As aplicações segue o padrão de arquitetura de software clássico MVC (Model Viewer Controller). A Camada de Aplicação e Serviços, reflete a maneira que o sistema como um todo evolui.

  1. Java ME;

O suporte a Java foi incluído no sistema operacional Symbian desde o início, mas o sistema inicialmente era baseado em pJava e JavaPhone, depois foi utilizado o Java ME e hoje usa o CLDC.

O Symbian Java é baseada em torno de:

  • Uma máquina virtual e apoio em camadas para o sistema Java;
  • Uma implementação na linguagem CLDC (Connected Limited Device Configuration);
  • Um número baixo de plug-in’s que implementam a interface entre o CLDC e o sistema nativo.
  1. OS Services Layer;

O OS Services Layer é, um software que faz a mediação entre outros softwares. . Ele é utilizado para mover informações entre programas, ocultando ao programador diferenças de protocolos de comunicação, plataformas e dependências do sistema operacional. Esta camada fornece os servidores, frameworks e bibliotecas. Estão divididos em 4 blocos principais por área funcional:

  • Serviços do sistema operacional genérico;
  • Serviços de comunicações;
  • Multimídia e serviços gráficos;
  • Serviços de Conectividades.

Juntos, eles fornecem tecnologia específica, mas de aplicativos independentes no sistema operacional.

  1. Base Services Layer;

A camada base de serviços, fornece pouco a nível de usuário, ela fornece o servidor de arquivos e as bibliotecas do usuário.

  1. Kernel Services & Hardware Interface Layer.

 O Kernel é responsável pela gestão e controle do sistema operacional, isso contempla funcionalidade para comunicação entre processos, gestão de estruturas para sincronismos, como semáforos, objetos de exclusão mútua e a criação de threads e processos. Tambem é composto por quase 100  DLL’s carregadas em memória com funções básicas para as aplicações. Estas são de dois tipos estáticas e polimórficas, as estáticas são coleções de classes e de funções básicas do sistema; as polimórficas funcionam como plug-in’s para as aplicações.

O Symbian OS, até a versão 7, era baseado no núcleo do EPOC, o EKA1, possuía alguns recursos com multi-programação pré-empitiva e proteção de memória. A partir da versão 8.0 passou a ser utilizado o EKA2, tendo suporte do sistema de tempo real, que implica em disponibilizar um tempo limite maior para os processos que exigem a prioridade em tempo real, fazendo gestão de fluxo de execução.

O nanokernel tem por função principal simplificar a supervisão dos fluxos de execução, mais não aceita alocação de memória dinâmica.

         6.1. Estrutura do Kernel

O Kernel do Symbian OS tem uma estrutura (Figura 1) mais complexa do que o dos sistemas operacionais comuns. Ele executa muitos serviços que são executados em tempo real e ao mesmo tempo tem que lidar com a necessidade de disponibilizar um ambiente de operação e interação similar a um Desktop.

Figura 1. Estrutura do Kernel do Symbian OS

Quanto a estrutura do Kernel a nível de administrador :

PDD (Physical device driver), responsável pela comunicação diretamente com o hardware;

LDD (Logical Device Driver), interface de comunicação com os níveis superiores do software;

ASSP (Application specific standard product), pode comunicar-se diretamente com o processador, fazer interrupções, controlar acesso direto a memória, gestão de energia;

Personality Layer, trata-se de um modo especial de interação entre o sistema operacional e diretamente o hardware;

 RTOS(Real Time OS), foi desenvolvido para implementar a funcionalidade telefônica, ele implementa as funções de GSM do smartphone através da ligação direta com o hardware;

 Memory Model, é um modelo de como a memória esta organizada num dispositivo e como sistema operacional irá funcionar com ela;

 Symbian OS Kernel, depende do Nanokernel pois implementa os diversos modelos de memória exigidos pela plataforma;

 Nanokernel, executa as partes mais básicas e primitivas do Symbian OS e é utilizado, na maioria das vezes, pela parte telefônica do sistema operacional.

Quanto a nível de usuário, temos:

Microkernel Servers, que faz os pedidos para inicial as operações em Kernel-Mode;

HAL (Harware Abstraction Layer) que oferece suporte ao áudio, vídeo e tecnolgias de aceleração de reconhecimento de voz, dentre outras, já as demais, são bibliotecas do sistema e threads a nível de usuário

Anúncios

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 )

Foto do Google+

Você está comentando utilizando sua conta Google+. 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 )

Conectando a %s

%d blogueiros gostam disto: