PARADIGMAS DE KERNEL´S EM SISTEMAS OPERACIONAIS


                                               Cássio Antoniazzi
                                           (cassiosvaldo@gmail.com)


                                          Engenharia da Computação
                                    Unilasalle – Centro Universitário Lasalle
                                    Av. Victor Barreto, nº2738-Canoas - RS


Resumo: Esse trabalho apresenta uma abordagem sobre dois tipos de Kernels em Sistemas Operacionais: micro
kernel e kernel monolítico.

Abstracts: This paper presents approach about two types kernels in operating systems: monolithic kernel and
microkernel.


     1.     Introdução:

  Os sistemas operacionais revolucionaram a computação moderna. Sem a existência deles não teríamos o avanço
tecnológico que se tem nos dias de hoje.

 Mas por de trás de toda essa facilidade, existem milhões de linhas de código, em linguagem muito próxima ao
hardware, fazendo todo o trabalho difícil para nós usuários. Esse conjunto de instruções tem um nome: kernel.

  Veremos a seguir um conceito sobre kernel de um sistema operacional e dois paradigmas de kernel: micro kernel
e kernel monolítico.

      2.    O que é Kernel:

Kernel de um sistema operacional é o núcleo do sistema, a camada mais próxima ao hardware do computador. É
ele quem faz a interface entre os aplicativos do sistema e o hardware. Segundo [MAXWELL2000], o kernel é o
seu coração, sua mente e seu sistema nervoso. Ele é responsável exclusivamente pelo transporte das tarefas de
mais baixo nível que tornam todas as outras tarefas possível, fazendo malabarismos com diversos processos que
ocorrem simultaneamente, gerenciando sua memória de forma que não interfiram uns nos outros, satisfazendo suas
solicitações de acesso a um disco e muito mais [MAXWELL2000].

3.    Kernel monolítico:



Os kernels monolíticos são aqueles que contém todos os sub-sistemas (serviços fornecidos pelo kernel, como por
exemplo um sistema de arquivos) em um único executável binário. Andrew S. Tanenbaum os define como “A
grande bagunça”. É verdade, drivers, serviços e tudo mais estão contidos neste mesmo binário. Esta é a forma mais
comum de kernel. Como pode ser observado no gráfico abaixo, o kernel monolítico é um bloco único que
normalmente permite o acesso em nívelde usuário aos seus sub-sistemas através de um shell (interpretador de
comandos) ou ainda em um ambiente operacional gráfico.
Vantagens:

- Desempenho.

Desvantagens:

- Insegurança, pois há acesso a todas as funções do Kernel.

- O kernel ter de ser totalmente recompilado a cada atualização em seu subsistema.



4.   Micro kernel:




Microkernel é um modelo onde o kernel oferece somente funções básicas. Os demais serviços, como vídeo e
áudio, não são considerados de extrema importância para o kernel e ficam localizados em uma camada de
abstração acima, a user space.


A idéia foi isolar o kernel e deixá-lo processando somente as tarefas básicas para o gerenciamento do sistema,
descentralizando as tarefas menos importantes
Vantagens:


● O maior ganho de um microkernel é em sua flexibilidade, pois é um kernel modular e seus subsistemas
funcionam como uma espécie de plug-in.

● Pelo fato do microkernel ser modular, ele pode perfeitamente se ajustar as necessidades da máquina em que o
sistema operacional está instalado.


Desvantagens:


● Perdem em desempenho por executarem intensas trocas de mensagens com seus módulos.




    1.   Conclusão:

Os dois diferentes paradigmas de Kernel possuem suas vantagens e desvantagens características. O que se deve ter
em mente é a aplicabilidade do kernel, em que tipo de sistema ele vai trabalhar.

Flexibilidade e tempo de resposta são duas características importantes, mas cabe ao usuário escolher qual delas
será mais decisiva ao seu sistema.



    2.   Bibliografia:

    http://www.artigonal.com/informatica-artigos/sistemas-distribuidos-991878.html

     http://ti.crinfo.com.br/?p=86

     BERENGER, Francis, MAIA, Luiz Paulo -Arquitetura de sistemas operacionais- 3ª edição (2002)

     TANENBAUM, A. S. Sistemas Operacionais Modernos, 1992.

     SILBERSCHATZ, Abraham, GALVIN, Peter, GAGNE, Greg – Sistemas Operacionais, conceitos e
     aplicações- Elsvier, 2000- RJ

Kernel

  • 1.
    PARADIGMAS DE KERNEL´SEM SISTEMAS OPERACIONAIS Cássio Antoniazzi (cassiosvaldo@gmail.com) Engenharia da Computação Unilasalle – Centro Universitário Lasalle Av. Victor Barreto, nº2738-Canoas - RS Resumo: Esse trabalho apresenta uma abordagem sobre dois tipos de Kernels em Sistemas Operacionais: micro kernel e kernel monolítico. Abstracts: This paper presents approach about two types kernels in operating systems: monolithic kernel and microkernel. 1. Introdução: Os sistemas operacionais revolucionaram a computação moderna. Sem a existência deles não teríamos o avanço tecnológico que se tem nos dias de hoje. Mas por de trás de toda essa facilidade, existem milhões de linhas de código, em linguagem muito próxima ao hardware, fazendo todo o trabalho difícil para nós usuários. Esse conjunto de instruções tem um nome: kernel. Veremos a seguir um conceito sobre kernel de um sistema operacional e dois paradigmas de kernel: micro kernel e kernel monolítico. 2. O que é Kernel: Kernel de um sistema operacional é o núcleo do sistema, a camada mais próxima ao hardware do computador. É ele quem faz a interface entre os aplicativos do sistema e o hardware. Segundo [MAXWELL2000], o kernel é o seu coração, sua mente e seu sistema nervoso. Ele é responsável exclusivamente pelo transporte das tarefas de mais baixo nível que tornam todas as outras tarefas possível, fazendo malabarismos com diversos processos que ocorrem simultaneamente, gerenciando sua memória de forma que não interfiram uns nos outros, satisfazendo suas solicitações de acesso a um disco e muito mais [MAXWELL2000]. 3. Kernel monolítico: Os kernels monolíticos são aqueles que contém todos os sub-sistemas (serviços fornecidos pelo kernel, como por exemplo um sistema de arquivos) em um único executável binário. Andrew S. Tanenbaum os define como “A grande bagunça”. É verdade, drivers, serviços e tudo mais estão contidos neste mesmo binário. Esta é a forma mais comum de kernel. Como pode ser observado no gráfico abaixo, o kernel monolítico é um bloco único que normalmente permite o acesso em nívelde usuário aos seus sub-sistemas através de um shell (interpretador de comandos) ou ainda em um ambiente operacional gráfico.
  • 2.
    Vantagens: - Desempenho. Desvantagens: - Insegurança,pois há acesso a todas as funções do Kernel. - O kernel ter de ser totalmente recompilado a cada atualização em seu subsistema. 4. Micro kernel: Microkernel é um modelo onde o kernel oferece somente funções básicas. Os demais serviços, como vídeo e áudio, não são considerados de extrema importância para o kernel e ficam localizados em uma camada de abstração acima, a user space. A idéia foi isolar o kernel e deixá-lo processando somente as tarefas básicas para o gerenciamento do sistema, descentralizando as tarefas menos importantes
  • 3.
    Vantagens: ● O maiorganho de um microkernel é em sua flexibilidade, pois é um kernel modular e seus subsistemas funcionam como uma espécie de plug-in. ● Pelo fato do microkernel ser modular, ele pode perfeitamente se ajustar as necessidades da máquina em que o sistema operacional está instalado. Desvantagens: ● Perdem em desempenho por executarem intensas trocas de mensagens com seus módulos. 1. Conclusão: Os dois diferentes paradigmas de Kernel possuem suas vantagens e desvantagens características. O que se deve ter em mente é a aplicabilidade do kernel, em que tipo de sistema ele vai trabalhar. Flexibilidade e tempo de resposta são duas características importantes, mas cabe ao usuário escolher qual delas será mais decisiva ao seu sistema. 2. Bibliografia: http://www.artigonal.com/informatica-artigos/sistemas-distribuidos-991878.html http://ti.crinfo.com.br/?p=86 BERENGER, Francis, MAIA, Luiz Paulo -Arquitetura de sistemas operacionais- 3ª edição (2002) TANENBAUM, A. S. Sistemas Operacionais Modernos, 1992. SILBERSCHATZ, Abraham, GALVIN, Peter, GAGNE, Greg – Sistemas Operacionais, conceitos e aplicações- Elsvier, 2000- RJ