В основном ... ваш компьютер может просто запустить диск, потому что:
BIOS включает это дисковое устройство в порядок загрузки.
При загрузке BIOS сканирует все загрузочные устройства по порядку, такие как дисковод гибких дисков, жесткий диск и компакт-диск. Каждое устройство обращается к своему носителю и проверяет жестко запрограммированное место (обычно сектор на диске или устройстве компакт-диска) на наличие отпечатка пальца, который идентифицирует носитель, и перечисляет место перехода на диске (или носителе), где начинаются инструкции. BIOS указывает устройству переместить головку (или что-то еще) в указанное место на носителе и прочитать большой кусок инструкций. BIOS передает эти инструкции процессору.
ЦП выполняет эти инструкции. В вашем случае эти инструкции будут запускать ОС Ubuntu. С таким же успехом они могут быть инструкциями по остановке или добавлению 10 + 20 и т. Д.
Как правило, ОС запускается с того, что берет большой кусок памяти (опять же, непосредственно из ЦП, поскольку команды библиотеки, такие как GlobalAlloc и т. Д., Недоступны, поскольку они предоставляются еще не загруженной ОС. ) и приступает к созданию структур для самой ОС.
ОС предоставляет набор «функций» для приложений: управление памятью, файловая система, ввод / вывод, планирование задач, работа в сети, управление графикой, доступ к принтерам и так далее. Это то, что он делает до того, как вы «получите контроль»: создание / запуск всех служб, чтобы более поздние приложения могли работать вместе, не топтали память друг друга и имели хороший API для служб, предоставляемых ОС.
Каждая «функция», предоставляемая ОС, - это большая тема. ОС предоставляет их все, поэтому приложениям просто нужно беспокоиться о вызове нужной библиотеки ОС, а ОС управляет ситуациями, например, если две программы пытаются выполнить печать одновременно.
Например, без ОС каждое приложение должно было бы иметь дело с ситуацией, когда другая программа пытается распечатать, и все равно «делать что-то», например, печатать, или отменять другое задание и т. Д. Вместо этого, только ОС должна иметь дело с При этом приложения просто говорят ОС «распечатайте этот материал», и ОС обеспечивает печать одного приложения, а всем остальным приложениям просто нужно дождаться завершения первого или пока пользователь не отменит его.
Наименьшее количество байтов для ОС на самом деле не имеет смысла, поскольку «ОС» может подразумевать много или очень мало функций. Если бы все, что вам нужно, это запустить программу с компакт-диска, это будет очень мало байтов. Однако это не ОС. Задача ОС - предоставлять службы (я называл их функциями), позволяющие запускать множество других программ, и управлять доступом к этим службам для программ. Это сложно, и чем больше общих ресурсов вы добавляете (сети, Wi-Fi, записывающие устройства для компакт-дисков, джойстики, видео iSight, два монитора и т. Д.), Тем труднее становится.
person
Community
schedule
31.12.2008