Имеет смысл, что что-то вроде операционной системы будет написано на C. Но сколько из этого и что такое C? Я имею в виду, в C, если вам нужна куча памяти, вы бы назвали malloc. Но есть ли у ОС даже куча? Насколько мне известно, malloc запрашивает операционную систему для памяти, а затем добавляет ее в связанный список или двоичное дерево или что-то в этом роде. Как насчет стека вызовов? ОС отвечает за настройку всего этого материала, который используются другими приложениями, но как это сделать? Когда вы хотите открыть или создать файл на C, соответствующие функции запрашивают операционную систему для этого файла. так... Что такое С на другой стороне этого звонка? Или на другом конце выделения памяти?
Кроме того, какая часть операционной системы действительно будет записана на C? Все это? Что относительно кода, зависящего от архитектуры? Что относительно более высоких уровней абстракции - делает ли это когда-либо написанным на языках более высокого уровня, например С++?
Я имею в виду, я просто прошу об этом из чистого любопытства. Теперь я загружаю последнее ядро Linux, но оно выполняется навсегда. Я не уверен, смогу ли я следовать коду, или если я попаду в непреодолимую сложность сети, которую я никогда раньше не видел.