O próprio kernel depende das bibliotecas C padrão?

O próprio kernel depende das bibliotecas C padrão?

Estou investigando mais profundamente como o Linux realmente funciona, especialmente em dispositivos embarcados, com todos os diferentes componentes necessários para criar um sistema totalmente funcional.

Entendo que uma implementação de biblioteca C padrão, como glibc, é separada e necessária para que meu aplicativo de espaço do usuário se comunique e, portanto, trabalhe em conjunto com o kernel do Linux.

No entanto, o próprio código do Linux realmente depende desta biblioteca padrão? O Linux pode ser executado sozinho sem ter isso?

Responder1

Não, o kernel não depende da biblioteca C padrão (ou de qualquer outra biblioteca), ele é independente. Os programas de espaço do usuário também não dependem necessariamente da biblioteca C. A biblioteca C fornece wrappers convenientes para chamadas do sistema, mas elas podem ser chamadas diretamente sem passar pela biblioteca C, e outros tempos de execução de linguagem podem fornecer seus próprios wrappers.

(Isso significa que o kernel contém a implementação de algumas funções que normalmente seriam fornecidas pela biblioteca C, às vezes em versões simplificadas mais apropriadas para o kernel. Consulteeste FAQ para iniciantes do kernelpara detalhes.)

informação relacionada