Сколько всего нужно знать, чтобы написать операционную систему

Категория: программы

И так давайте поговорим о создании операционки, а не просто "сборку" ОС из существующего исходного кода.

Последнее вообще не требует знаний программирования.

Сколько знаний и усилий потребуется, зависит от того, какие требования предъявляются к операционной системе.

Для типичной операционной системы вам потребуется знание языка программирования высокого уровня, подходящего для разработки операционных систем (например, C, C++ и т.д.), и хотя бы немного языка ассемблера для каждой архитектуры процессора, на которую вы собираетесь ориентироваться.

Вам нужно будет знать алгоритмы и структуры данных, а также как грамотно выбирать между ними.

Вы должны понимать параллелизм, прерывания, виртуальную память, подкачку и другие концепции операционной системы.

Вам нужно будет знать общую структуру операционной системы и компоненты, необходимые для ее реализации.

Если у нее есть интерфейс программирования для приложений, вам нужно будет определить API ОС.

Вам нужно будет либо разработать, либо принять существующий формат исполняемого файла.

Если вы разработали новый формат исполняемого файла, вам нужно будет спроектировать и разработать средства разработки и компоненты ОС для его поддержки (например, загрузчик, компоновщик и т.д.).

Если у него есть программный интерфейс для драйверов устройств, вам нужно будет определить API для этого.

И, скорее всего, вам придется написать несколько драйверов устройств, чтобы сделать вашу ОС пригодной для использования (например, клавиатура, дисплей/терминал, устройство хранения и т.д.).

И, конечно же, вам нужно будет разработать тесты для всего. Объем кода тестов может даже превысить объем кода ОС.

А поскольку все нетривиальное программное обеспечение содержит необнаруженные ошибки и уязвимости, вам нужно будет придумать, как поддерживать его и обновлять в полевых условиях.

Если вы ожидаете, что разработчики будут создавать для нее приложения и драйверы, вам придется много заниматься продвижением, пропагандой и т. д.

Небольшая, простая встраиваемая ОС реального времени может занять у квалифицированного специалиста или небольшой команды несколько недель или месяцев.

Для создания Windows-подобной ОС со всеми утилитами, колокольчиками и свистками (и большим количеством драйверов устройств) могут потребоваться сотни человеко-лет.

Простая, урезанная ОС может быть создана за семестр в колледже одним или двумя студентами, при условии, что у них есть необходимые знания алгоритмов, структур данных, основ программирования и т.д.





Если вам нужен по настоящему хороший и профессиональный веб хостинг или свой высокопроизводительный сервер, то смело переходите по ссылке и заказывайте!

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *



Карта сайта
Copyright © 2023