>>140777> Начал ты за здравие, кончил же — за упокой.
Если ты про шифры, то их правильная и годная реализация - это сложно. И вообще там довольно много всего. Даже для покрытия самых распространённых штук. Это целая инфраструктура.
> Исполнять задачи
Если мы говорим об ОС общего назначения, то наличие TCP/IP стека это одна из самых критичных фич. Лично мне вообще ни одного примера реалистичного в голову не приходит. Другое дело, что это не обязательно часть ядра. Я просто не люблю микроядра в чистом виде.
Есть железка. Поверх него идёт прошивка/загрузчик/гипервизор. Потом ядро и драйвера. Следом пользовательское пространство. Понятие Операционная Система довольно размыто и может местами быть на всех уровнях кроме железа (но всё равно зависит от оного).
О чём тхред? Вроде как об ОС и инфраструктуре с нуля. Ничто не мешает добавить во влажные фантазии чуточку реалистичности. Вот ещё моих мыслей об этом:
- Нет смысла брать обскурные архитектуры. Не взлетит.
- Пилим ядро на безопасном ЯП. Вообще тут либо C, либо C++, а лучше Rust. Можно ещё что-то похожее, но выбор ограничен. Можно свой ЯП. Если это твой фетиш.
- Микроядра это идея конечно годная, но есть ньюансы. Лично я за модульное гибридное ядро с мощным, но простым интерфейсом.
- Capability-based security как в ядре, так и в общем дизайне системного уровня.
- API должно позволять эмуляцию POSIX, но это не надо тянуть в ядро.
- Ядро частями в гипервизоре. Так можно творить достаточно сильное колдунство, которое красиво выглядит в коде и работает достаточно быстро. Но у меня AArch64 головного мозга, да.
- ОСь должна предоставлять хотяб часть всем знакомых фич. Иначе даже во влажных фантазиях уныло выглядит.
Может ещё что-то, но только отталкиваясь от конкретики. Для начала стоит общую концепцию сформировать. Я рекомендую книжку Operating Systems: Principles and Practice. Не читал, но рекомендую. Вообще я пробовал в написание своей ОС, но разумеется не осилил. Слишком уж много там всего.