𝖂𝖎ƙ𝖎𝖊

Núcleo (sistema operacional): mudanças entre as edições

imported>Nuno Tavares
m (*cat +fusãoMicro-kernel)
imported>Nuno Tavares
m (+monolítico +img)
Linha 6: Linha 6:


Quando há [[periferico|periféricos]] ou elementos de um [[sistema computacional]] que o kernel não cobre, então se faz necessário escrever a [[interface]] para eles, os chamados [[device driver]]s. Geralmente, os kernels oferecem uma função para se executar [[chamadas de sistema]], como por exemplo a [[ioctl()]] do [[Linux]]. Valendo-se dessa função, podem-se escrever rotinas para qualquer [[dispositivo]].
Quando há [[periferico|periféricos]] ou elementos de um [[sistema computacional]] que o kernel não cobre, então se faz necessário escrever a [[interface]] para eles, os chamados [[device driver]]s. Geralmente, os kernels oferecem uma função para se executar [[chamadas de sistema]], como por exemplo a [[ioctl()]] do [[Linux]]. Valendo-se dessa função, podem-se escrever rotinas para qualquer [[dispositivo]].
==Kernel monolítico==
[[Image:Kernel-monolithic.png|thumb|right|Diagrama de interacção de um kernel monolítico (ou mono-bloco).]]
'''Kernel monolítico''' ou '''mono-bloco''' é um kernel que implementa um interface de alto nível para possibilitar [[chamada de sistema|chamadas de sistema]] específicas para gestão de [[processo]]s, [[concorrência]] e [[gestão de memória]] por parte de módulos dedicados que são executados com privilégios especiais.
Alguns exemplos deste tipo de kernel:
* [[BSD]]
* [[Linux]]
* [[Windows NT|Microsoft Windows NT]]


==Micro-kernel==
==Micro-kernel==
[[Image:Kernel-microkernel.png|thumb|right|Diagrama de interacção de um micro-kernel.]]
'''Micro-kernel''' é um termo usado para caracterizar o sistema cujas funcionalidades do sistema saíram do kernel e foram para servidores, que se comunicam com um núcleo mínimo, usando o mínimo possível o "espaço do sistema" (nesse local o programa tem acesso a todas as instruções e a todo o hardware) e deixando o máximo de recursos rodando no "espaço do usuário" (no espaço do usuário, o software sofre algumas restrições, não podendo acessar alguns hardwares, nem tem acesso a todas as instruções).
'''Micro-kernel''' é um termo usado para caracterizar o sistema cujas funcionalidades do sistema saíram do kernel e foram para servidores, que se comunicam com um núcleo mínimo, usando o mínimo possível o "espaço do sistema" (nesse local o programa tem acesso a todas as instruções e a todo o hardware) e deixando o máximo de recursos rodando no "espaço do usuário" (no espaço do usuário, o software sofre algumas restrições, não podendo acessar alguns hardwares, nem tem acesso a todas as instruções).



Edição das 03h16min de 24 de julho de 2005

Kernel de um sistema operacional é entendido como o núcleo deste ou, numa tradução literal, cerne. Ele representa a camada mais baixa de interface com o Hardware, sendo responsável por gerenciar os recursos do sistema computacional como um todo. É no kernel que estão definidas funções para operação com periféricos (mouse, disco, impressora, interface serial/interface paralela), gerenciamento de memória, entre outros. Resumidamente, o kernel é um conjunto de programas que fornece para os programas de usuário (aplicativos) uma interface para utilizar os recursos do sistema.

Quanto à sua arquitetura, o kernel pode ser monolítico - em um único bloco, com todas as funcionalidades carregadas na memória - ou modular - com os módulos específicos para cada tarefa carregados opcionalmente, dinamicamente.

O kernel é a parte mais importante do sistema operacional, pois, sem ele, a cada programa novo que se criasse seria necessário que o programador se preocupasse em escrever as funções de entrada/saída, de impressão, entre outras, em baixo nível, causando uma duplicação de trabalho e uma perda enorme de tempo. Como o kernel já fornece a interface para que os programas possam acessar os recursos do sistema de um nível mais alto e de forma transparente, fica resolvido o problema da duplicação do trabalho.

Quando há periféricos ou elementos de um sistema computacional que o kernel não cobre, então se faz necessário escrever a interface para eles, os chamados device drivers. Geralmente, os kernels oferecem uma função para se executar chamadas de sistema, como por exemplo a ioctl() do Linux. Valendo-se dessa função, podem-se escrever rotinas para qualquer dispositivo.

Kernel monolítico

Diagrama de interacção de um kernel monolítico (ou mono-bloco).

Kernel monolítico ou mono-bloco é um kernel que implementa um interface de alto nível para possibilitar chamadas de sistema específicas para gestão de processos, concorrência e gestão de memória por parte de módulos dedicados que são executados com privilégios especiais.

Alguns exemplos deste tipo de kernel:


Micro-kernel

Diagrama de interacção de um micro-kernel.

Micro-kernel é um termo usado para caracterizar o sistema cujas funcionalidades do sistema saíram do kernel e foram para servidores, que se comunicam com um núcleo mínimo, usando o mínimo possível o "espaço do sistema" (nesse local o programa tem acesso a todas as instruções e a todo o hardware) e deixando o máximo de recursos rodando no "espaço do usuário" (no espaço do usuário, o software sofre algumas restrições, não podendo acessar alguns hardwares, nem tem acesso a todas as instruções).


ast:Kernel ca:Nucli del sistema operatiu cs:Kernel de:Kernel en:Kernel (computer science) es:Kernel fi:Käyttöjärjestelmän ydin fr:Noyau (informatique) id:Kernel (Ilmu komputer) is:Stýrikerfiskjarni it:Kernel ja:カーネル ko:커널 (컴퓨터) lt:Branduolys (OS) nl:Kernel no:Kjerne (datamaskiner) pl:Jądro systemu operacyjnego ru:Ядро (операционной системы) sv:Operativsystemskärna zh:内核

talvez você goste