cupuyc Вообще такие вопросы уместнее задавать на osdev.org Но если хотите конкретики то для x86 платформы (о других точно не знаю уж извините) на C++ невозможно написать : 1. Загрузчик ядра 2. Обработчик гейтов, обработчик системных вызовов когда надо переключатся из пользовательского контекста в юзерский и менеджер памяти вообще без ассемблерной части не обойдется. 3. Любые драйвера для девайсов в конце концов уйдут в ассемблер () Если уж совсем в сторону x86 то 4. Работу с аппаратными гипервизорами Если не понимаете почему почитайте Application Programming Guide от интел.
А слабо написать ОС на почти чистом Коболе? Технически возможно, между прочим А вообще, дурацкая и тема, и спор...
friackazoid конкретней. что именно в звгрузчике ядра вы собрались писать на ассемблере? менеджер памяти - вообще можно сделать без единой ассемблерной строчки. единственное - переключение контекстов задач. с какого фига? вобщем всё что вы назвали на 90 процентов можно написать на СИ++.
cupuyc На любом более-менее вменяемом ЯВУ (вменяемом с точки зрения функционала, а не синтаксиса) можно написать не 90, а все 99% оси. Другое дело, что можно и нужно -- разные вещи. Я бы, например, писал вещи, от которых сильно зависит производительность системы в целом, именно на асме, а вот остальное -- можно и подумать. Тут ведь сильно зависит ещё от того, для чего ось нужна, какие к ней требования и т.п. Например, если она с прикладными задачами должна помещаться в 32 килобайта памяти, тогда выбора нет -- пиши всё на асме.
Ну так напиши что конкретно в драйвере требует ассемблера. Я говорю что достаточно написать функции: inport8(), inport16(), inport32(), outport8(), outport16(), outport32(). Это будет явно меньше 10%, остальное всё спокойно пишется на HLL. Ты драйвера под Windows или Linux видел хоть раз? И что, много там ассемблера?