Sobre o Kernel

Definição de Kernel:
 O Kernel, que traduzindo-se obtemos "núcleo", como a própria palavra já expressa, é onde se centraliza algo, no caso de Sistemas Operacionais, o Kernel é o componente

do sistema onde é centralizada todas as comunicações de entrada e saída e processamento de dados. É neessário que se centralize tudo, pois este núcleo precisa ter o

mais baixo nível possível, servindo de ponte entre as aplicações e os dispositivos de processamento, memória e entrada e sáida de dados.

 A importância de se ter um núcleo junto com o software, é que este núcleo, define-se como um componente do sistema mais complexo do que o sistema em sí, pois está

entre o código assembler, e os programas escritos "genéricamente" em alto nível. O sistema se tornaria complexo demais sem o uso de um Kernel.



 Função do Kernel:

 Durante o uso do Sistema Operacional, diversos aplicativo podem estar em execução aleatoriamente, isto é, compartilham o mesmo dispositivo, ambos os processos

precisam da atenção do hardware para que ele possa ser processado. Para que a demanda seja processada de forma ordenada, o componente responsável por gerenciar este

compartilhamento de processos, é o próprio núcleo do sistema, o Kernel. Ele é também responsável por endereçar os programas na memória, e definir as prioridades em

acessar dispositivos de entrada e saída, tais como teclado, mouse, monitor, unidades de disco, etc.


 Sobre Kernel

O primeiro MAC OS, continha um kernel que não tinha suporte a multi tarefas, e carecia de recursos básicos, logo, no MAC OS X, foi utilizado juntamente ao sistema, o

núcleo do BSD, e Mach, que é um Kernel Micronúcleo, que basicamente cria um núcleo para gerenciar cada processo, tornando o sistema mais complexo de se desenvolver,

porém mais ágil.

 No caso da Microsoft, o Kernel foi se caracterizando aos poucos ao longo das versões, até as versões 9x do windows, o kernel era um pouco abstrato, um kernel hidrido

16 e 32 bits, requerendo o MS-DOS rodando em fundo.
 Pode-se destacar desta versão do kernel os seguintes arquivos:

IO.SYS - executavel responsavel pelas funções básicasde rotinas de entrada e saída de dados.
MSDOS.SYS - Contém configurações de baixo nível de boot.
COMMAND.COM - Executavel de linha de comando do shell
WIN.COM - Responsável em carregar a interface o sistema operacional em si.
LOGO.SYS - Contém o logo do windows em bitmap codificado exibido durante o boot do windows.

O sistema pode fazer o uso do arquivo CONFIG.SYS (que contém comandos executados antes do interpretador de comandos) e o AUTOEXEC.BAT (contém tarefas que são rodadas

antes de carregar o COMMAND.COM), mas estes dois arquivos não são tão criticos quanto os demais para o inicio do sistema.


 Sistemas Superiores do Windows, usam Kernel chamando NT.Neste existem dois tipos de acesso à máquina propriamente dita. O modo Usuário, e o Modo Kernel.
 No modo usuário, os aplicativos que rodam dele, trabalham com uma prioridade menor, o modo usuário é dividido em dois modos, o modo ambiente e o modo integral. O modo

ambiente foi inicialmente desenvolvido para trabalhar com aplicativos feitos para diferentes sistemas operacionais, rodando processos de 16 bits, parcialmente um modo

seguro de se rodar aplicativos antigos.
 O modo integral é um tipo de Modo seguro, onde os acessos são concedidos conforme as permissões de cada usuário, através do uso de uma API.

 O outro modo no Kernel NT, é o Modo kernel, que define-se como um modo que pode parar os processos do modo usuário, em casos onde estejam tentando acessar onde não se

tem a devida permissão. Aplicativos rodando sobre o Modo Kernel trabalham com um nível de prioridade maior, fazendo uma leitura direta aos drivers e ao Kernel.
 Arquivos de alta importância deste Kernel: NTOSKRNL.EXE, NTKRNLMP.EXE, Ntkrnlpa.exe e Ntkrpamp.exe.



 O Kernel do Linux

http://upload.wikimedia.org/wikipedia/en/timeline/b344a2a6fb295d5d30c8a9ce4f565969.png

http://upload.wikimedia.org/wikipedia/commons/5/5b/Linux_kernel_map.png

 Os sistemas Linux, trabalham na mesma idéia, servindo de base para o desenvolvimento de kernels proprietarios, desde 1991, até o presente momento, os Kernels Linux,

se mostraram bastante eficazes, por serem abertos e eficientes, sendo utilizados largamente em computadores, CLPs e celulares. Kernels de Unix são basicamente

idênticos, sendo o centro em meio do Sistema operativo, o Shell e serviços de rotina (inicialização e etc), tendo como responsabilidade o Hardware. Em grosso modo,

pode-se dizer respectivamente que do usuário até o Hardware, temos os apliativos, o Sistema operacional, o Shell, o Kernel, e ai então o Hardware. Existem casos onde

aplicativos podem fazer parte do Kernel como rotinas, de modo a agilizar o processo, se tornando parte do sistema operacional, como o caso do Iptables, que consiste em

trabalhar com módulos inclusos no próprio Kernel do sistema.

 De um modo bastante genérico, pode-se imaginar um Kernel como o motor de um carro, para conduzir o veículo, não manuseamos diretamente o motor, fazemos o uso de pedais, e comandos (shell) para então, controlarmos o motor (kernel) para movimentar o veículo (sistema operacional).



Fontes:

http://en.wikipedia.org/wiki/Linux_kernel

http://www.vivaolinux.com.br/artigo/Como-explicar-o-que-e-kernel-para-um-leigo/

http://en.wikipedia.org/wiki/File:Object_Manager_%28Windows%29_screenshot.png

http://en.wikipedia.org/wiki/Ntoskrnl.exe

http://en.wikipedia.org/wiki/Architecture_of_Windows_NT

http://en.wikipedia.org/wiki/Architecture_of_Windows_9x

http://en.wikipedia.org/wiki/Windows_kernel

http://pt.wikipedia.org/wiki/N%C3%BAcleo_%28inform%C3%A1tica%29

https://www.google.com.br/search?q=Kernel+unix&hl=pt-BR&safe=off&client=firefox-a&hs=Sis&tbo=u&rls=org.mozilla:pt-BR:official&tbm=isch&source=univ&sa=X&ei=O6O2UIXFFanI0QHK94HQBw&ved=0CDAQsAQ&biw=1366&bih=664

Autor : Maicon Douglas de Souza ~ Técnico em informática cursando Tecnólogo em Redes, CCNA e LPIC - 1

Artigo Sobre o Kernel publicado por Maicon Douglas de Souza em quarta-feira, 28 de novembro de 2012. Comente! 0 Comentários:
 

0 comentários: