если вопрос про язык на котором ядро, то основной = С. Платформо-зависимые части содержат ASM. С++ тоже в ходу.
Для политик безопасности используется Haskell, который потом компилируется в С. В частности для того, что бы оставалась возможность формальной верификации.
Сейчас активно обсуждаем возможность перепилить ключевые компоненты ядра на Rust, т.к. (с одной стороны) он позволяет значительно повысить доверие к коду, что для нас критически важно. А с другой стороны = работа серьезная, предварительно оценивается в 1 год работы. Т.е. это должно быть взвешенное решение.