30 de outubro de 2009

O que é um Kernel?


Na computação, o kernel é o componente central da maioria dos sistemas operacionais de computador. As suas responsabilidades incluem a gestão de recursos do sistema (a comunicação entre os componentes de hardware e software). Tal como um componente básico de um sistema operativo, um kernel fornece o mais baixo nível de abstração para a camada de recursos (principalmente memória, processadores e dispositivos I/O) que o aplicativo deve controlar a desempenhar a sua função. Ele normalmente faz com que essas instalações se tornem disponíveis para a aplicação através de processos e mecanismos de comunicação de chamadas de sistema.
Estas tarefas são feitas de forma diferente por diferentes partes, em função da sua conceção e implementação. Embora o Kernel monolítico tente atingir estes objetivos, executando todo o código no mesmo espaço de endereçamento para aumentar o desempenho do sistema, microkernels executam a maior parte dos seus serviços no espaço usuário, com o objetivo de melhorar a durabilidade e modularidade do código. Um monte de possibilidades existe entre estes dois extremos.

Sobre a definição de 'kernel' Jochen Liedtke disse que a palavra é "tradicionalmente utilizada para designar a parte do sistema operativo que é obrigatório e comum a todos os outros softwares."

A maioria dos sistemas operacionais dependem do kernel. A existência de um kernel é uma consequência natural de ter um sistema operacional de computador como uma série de camadas de abstração, baseando-se em cada uma das funções das camadas próprias. O kernel, a partir deste ponto de vista, é simplesmente o nome dado ao mais baixo nível de abstração que é implementada no software. Embora seja chamado hoje principalmente o kernel, inicialmente a mesma parte do sistema operacional também foi chamado de núcleo ou centro, e foi originalmente desenvolvido como contendo apenas funcionalidades indispensáveis do sistema operacional.

Na maioria dos casos, o gestor de arranque começa a execução do kernel em modo supervisor, O kernel inicializa em si e, em seguida, começa o primeiro processo. Após isto, o kernel normalmente não se executa diretamente, apenas em resposta a eventos externos (por exemplo, através de chamadas de sistema utilizado por aplicações para solicitar serviços do kernel, ou através de interrupções utilizadas pelo hardware para notificar o kernel de eventos). Além disso, o kernel normalmente fornece um loop que é executado sempre que não estão disponíveis processos a correr, que é muitas vezes chamado de processo ocioso .

O Desenvolvimento do kernel é considerado uma das mais complexas e difíceis tarefas de programação. A sua posição central em um sistema operacional implica a necessidade de bom desempenho, que define o kernel como um pedaço de software e faz a sua correta concepção e execução difícil .Por diversas razões, um kernel pode até não ser capaz de utilizar os mecanismos de abstração que fornece ao outro software. Essas razões incluem gestão de memória e falta de reentrancy, tornando assim o seu desenvolvimento ainda mais difícil para os engenheiros de software.
Um kernel normalmente irá fornecer recursos para baixo nível de programação, de processos , inter-processo de comunicação, processo de sincronização, manipulação de controle e blocos de processos, interromper movimentação, processo de criação e destruição, e do processo de suspensão.

Tipos de Kernel:

* Monolithic kernels
* Microkernels
* Kernel Híbrido
* NanoKernels
* ExoKernels

4 comentários:

Anônimo disse...

Muito bom este artigo, como estou iniciando carreira na area, me abriu e muito a mente!!!!

Valeu!!!

Blogger disse...

Ai cara ta muito boa a materia!! só acho que você precisava falar mais um pouco sobre o que se espera do futuro!! otima materia

Anônimo disse...

http://prixviagrageneriquefrance.net/ viagra prix
http://commanderviagragenerique.net/ viagra
http://viagracomprargenericoespana.net/ viagra generico
http://acquistareviagragenericoitalia.net/ acquistare viagra

Anônimo disse...

http://achatcialisgenerique.lo.gs/ cialis pas her
http://commandercialisfer.lo.gs/ cialis prix
http://prezzocialisgenericoit.net/ acquisto cialis
http://preciocialisgenericoespana.net/ precio cialis

voltar para o topo