A casca, claro.
A metáfora original que nos deu a palavra "kernel" para isso em primeiro lugar é muitas vezes esquecida. A metáfora é que um sistema operacional é uma semente ou uma noz. O "kernel" da semente é o núcleo do sistema operacional, fornecendo serviços de sistema operacional para programas de aplicativos, que é cercado pelo "shell" da semente, que é o que os usuários vêem de fora.
Algumas pessoas querem amarrar o "kernel" (e, na verdade, "shell") a ser mais específico do que isso. Mas, na verdade, há muita variação nos sistemas operacionais. Não menos importante, essas variações são o que constitui um "shell" (que pode variar de sh
do Solaris ao Interpretador de Comando de Console do Netware ao Workplace Shell do OS / 2 e ao Explorador do Windows NT), mas também há muita variação de um sistema operacional para outro no que é, e não é, uma parte de um "kernel" (que pode ou não incluir E / S de disco, por exemplo). É melhor lembrar que esses termos são metáforas .
Existem outras terminologias. Na terminologia de mainframe da IBM, o "kernel" na metáfora seed / nut é chamado de programa de controle . Outros nomes incluem o supervisor, o monitor, o núcleo, e o executivo. O núcleo é outra metáfora biológica razoavelmente óbvia. É interessante que também seja outro nome. Harvey M. Deitel, em seus Sistemas Operacionais , chama o programa de controle de núcleo e diz
The nucleus normally represents a small portion of the code of what is commonly thought to be the entire operating system [...]
A palavra "núcleo" vem do latim núcleo , e significa o kernel de uma noz (c.f. em latim nux , que significa "noz"). Então, até mesmo chamar o programa de controle de "o núcleo" está, de fato, fazendo essa mesma analogia do sistema operacional como uma porca. É uma analogia que é usada para mais do que apenas sistemas operacionais. Se você estiver familiarizado com a química, por exemplo, você saberá que um núcleo atômico está cercado por elétrons em cascas .
O que a pessoa sob pseudônimo new123456
escreve abaixo exemplifica os erros resultantes do esquecimento das origens dessas metáforas na medida em que se confunde a parte com o todo e confunde o kernel com todo o sistema operacional. Ser um programa "userland" não torna o shell menos do lado de fora do sistema operacional, nem o menor que inclui o kernel. Além disso, longe de ser uma idéia somente DOS que não se aplica ao Unix além da versão 7, esta idéia é difundida e atual no mundo Unix.
(É irônico que new123456
confunda isso com um DOSismo. A metáfora kernel / shell era bastante estranha ao DOS em seus primeiros anos, o que favoreceu processador de comandos e similares, da CP / M Como o CP / M antes dele, o MS-DOS era dividido em sistema operacional de disco básico (BDOS), sistema básico de entrada e saída (BIOS - não o firmware do sistema , nota), o processador de comandos , e os utilitários de manutenção .O código foi realmente dividido em arquivos desta forma.Esse é outro exemplo, de fato, de como o kernel / shell metáfora realmente não cobre ou combina totalmente com as divisões atuais em muitos sistemas operacionais.
new123456
está esquecendo o que a Deitel escreveu sobre o núcleo sendo parte do sistema operacional geral. Um sistema operacional é ambos kernel e shell. Isto é, afinal de contas, a metáfora. A Deitel também não está sozinha. Há resmas de livros Unix explicando a metáfora Unix-as-a-nut, a partir dos anos 80. Eu recomendo o Teachers Yourself FreeBSD de Urban e Tiemann em 24 Horas (SAMS, ISBN 9780672324246), pela simples razão de que na página 54 há um diagrama que ilustra a metáfora do sistema operacional como semente, e - surpreendentemente - é um dos poucos livros a fazer isso.
O nome "núcleo" é provavelmente o nome mais antigo; Certamente anterior ao Unix, o que favorece a terminologia kernel / shell que hoje - provavelmente em grande parte graças ao Unix - é a mais prevalente. Aqui está o que está no livro de 1974 de Alan C. Shaw O design lógico dos sistemas operacionais (Prentice-Hall, ISBN 9780135401125) por exemplo:
That part of the system which permanently resides in main storage has historically been called the nucleus. The nucleus will usually consist of a minimal set of primitives and processes for the management of processes, resources, and input-output.Shaw tem um diagrama também. ☺