Мой вопрос: поскольку я разработчик программного обеспечения, мне любопытно, есть ли такая вещь, как операционная система, которую кто-то создал, которая пуста, например, она загружается из загрузочного сектора, ядра и т. д., но просто не работает. ничего не загружайте, чтобы вы могли помещать туда свои собственные программы, такие как ваш собственный файловый менеджер, браузер, который вы сделали. Я понимаю, если такой вещи не существует, и ЕСЛИ так, может быть, вы могли бы указать мне на некоторые веб-ресурсы/учебники, которые могли бы помочь мне в создании моей собственной ОС, чтобы сделать все это.
Пустая операционная система для начала сборки
- Возможно, вы захотите проверить встроенные операционные системы. Если я правильно понял ваш вопрос, вам нужна система, которая загружается только в ядро, желательно микроядро, а затем останавливается. Исходя из этого базового уровня, вы сами решаете, какие дополнительные функции добавить. Сборщик платформ Windows CE позволял создавать такие минимальные конфигурации. QNX также может быть сконфигурирован таким образом. Кроме того, есть линейка операционных систем Greenhills Integrity, которую вы могли бы рассмотреть, и это лишь некоторые из них. 08.04.2016
- спасибо, я проверю это 08.04.2016
- Может быть, этот вопрос является дубликатом Minix vs Linux для изучения дизайна операционной системы? а>. 08.04.2016
- Лично мне сейчас любопытно, как далеко вы могли бы урезать freebsd до минимума.... 08.04.2016
- интересная идея, я даже не знаю, как бы я ее разобрал. :П 08.04.2016
- @BarryWizard Как обычно: много кофе, много пиццы, много времени, много внимания и немного технологий виртуализации (например, виртуальная коробка). Затем начните работать и попытайтесь скомпилировать загрузчик и ядро без лишнего... только для того, чтобы потом увидеть, что было бы неплохо иметь оболочку и файловую систему... ;) 08.04.2016
- да ок спасибо за совет 08.04.2016
Ответы:
[..] загружается из загрузочного сектора, ядра и т. д., но ничего не загружается [..]
Еще одна менее известная возможность — использовать ядра крупы. По сути, они позволяют вам выбрать некоторые драйверы, универсальное микро (нано? экзо?) ядро и ваши приложения и смешать их вместе в загрузочную систему.
Вы также можете просмотреть некоторые хобби-проекты ОС, чтобы разобраться с «деталями низкого уровня» для вас, возможно, внести некоторые драйверы. Такие системы, поскольку обычно они очень небольшого размера, можно легко модифицировать (учитывая, что код не является полным беспорядком).
Вы также можете взглянуть на NetBSD и попытаться сократить это до того, что вам нужно. Бонусом здесь является очень хорошо написанный код большей части этого.
Хотя ...
[..] так что вы можете поместить туда свои собственные программы, такие как ваш собственный файловый менеджер, браузер, который вы сделали [...]
... это похоже на то, что вам было бы веселее строить, например. дистрибутив Linux. Основным шагом может быть просто получение ядра Linux, сборка (статического) приложения и установка его в качестве инициализации. Или вы можете взглянуть на Linux From Scratch.org/">Linux From Scratch для более систематического подхода.