BIOS считается ОС? [закрыто]

11

Этот вопрос приходит на ум при работе с RAID-массивами, но не обязательно относится к теме.

Как BIOS может считывать данные с жесткого диска для эффективной загрузки ОС, когда многим ОС нужны драйверы, чтобы делать то же самое? Есть ли у BIOS список драйверов, из которых он извлекает, как у одной из основных ОС, таких как Windows или Linux?

Чад Харрисон
источник
2
Stumbler

Ответы:

10

Во-первых, BIOS - это базовая система ввода-вывода, а не технически операционная система ... Что касается загрузки RAID и т. Д., То, что происходит во время загрузки, - это машина запрашивает любое добавление в карты, спрашивая, есть ли у них BIOS для загрузки. Мистер RAID-карта выкрикивает: «Да, я сначала должен кое-что сделать», затем он запускает свой «BIOS» (в данном случае ОС), сам выполняет некоторые вычисления, а затем передает управление в основной BIOS («Эй, Я сделал, вот вся информация, которую нужно знать о необходимости знать, понимаете? ").

Как только основной BIOS снова получает контроль, он может пройти, как сказать: «Аааа, я вижу, что у мистера RAID есть загрузочный том, я по возможности переберу его, а затем попробую другие приемы».

Поэтому не «технически» это BIOS операционная система, а система ввода / вывода для подготовки к реальной операционной системе

Канадский Люк
источник
11
« он запускает свой« BIOS »(в данном случае ОС) » - BIOS или расширения BIOS просто не являются ОС. Важной целью ОС является управление ресурсами . BIOS, как отдельная программа загрузки, не заботится о сохранении информации о распределении ресурсов. В BIOS нет подпрограмм open () или close () для ограничения доступа к оборудованию. Любой исполняемый код может использовать функции чтения / записи BIOS. BIOS не соответствует основному назначению ОС.
опилки
@sawdust а как насчет включения или отключения бортовых устройств? Это ограничит доступ к оборудованию.
Бон Гарт
@BonGart - Включение / отключение BIOS - это просто инструмент настройки, который заменяет физическую установку или удаление устройства. Это общесистемное действие и действует до перенастройки или сбоя устройства. На самом деле я имел в виду понятия ОС для синхронизации и исключения, такие как мьютексы и семафоры, которые могут контролировать / ограничивать на уровне процесса и / или потока. Или, например, спулер печати; программа спула ОС владеет принтером и запрещает любое прямое использование этого принтера. Вы должны отправить задание на печать в диспетчер очереди, который ставит в очередь запросы на печать.
опилки
10

BIOS , буквально «базовая система ввода / вывода», представляет собой набор небольших программ жестко закодированных в материнскую плату компьютера (обычно хранится на EEPROM ). Эти программы включают в себя возможность изменять настройки, писать текст и принимать пользовательский ввод с основных устройств ввода-вывода (материнская плата должна эмулировать их для современных устройств VGA и USB-мыши / клавиатуры) и, самое главное, предоставляет функциональные возможности для поиска и загрузки. операционные системы присутствуют на любых атакованных устройствах хранения.

Сам по себе BIOS не является операционной системой. BIOS - это небольшая программа для загрузки операционной системы. Хотя в некоторых операционных системах возможно вызывать различные подсистемы BIOS, для этого требуется, чтобы ЦП переключился обратно в реальный режим, поскольку BIOS не обеспечивает поддержку виртуальной памяти, переключение задач (и, следовательно, возможность запуска программ). ) или поддержка драйвера устройства (и, таким образом, не может получить прямой доступ к оборудованию вне диапазона, доступного для прямой карты, и к чему-либо, что не включено в вызовы прерывания BIOS ).

Как сказал Линус Торвальдс :

Не то, чтобы я когда-либо утверждал, что BIOS тоже замечательный, но, по крайней мере, все знают, что BIOS - это просто загрузчик, и не пытаются сделать что-то еще.

Абсолютно самое большое преимущество BIOS заключается в том, что он настолько неудобен и явно старомоден, что вам нужно быть сумасшедшим, чтобы хотеть сделать что-то серьезное в нем [...], не думайте о том, что он является какой-то грандиозной платформой для чего-то еще. чем "просто загрузить ОС и убраться отсюда".

Наконец, следует отметить, что BIOS значительно отличается от UEFI ( Unified Extensible Firmware Interface ), последний значительно ближе к обеспечению базового интерфейса операционной системы (предоставление драйверов устройств и поддержки приложений). До сих пор остается сомнительным вопрос о том, может ли даже UEFI считаться настоящей операционной системой самостоятельно, хотя он значительно ближе к тому, чтобы считаться ОС, чем BIOS.

cp2141
источник
2

Чтобы разобраться со многими замечаниями и замечаниями, я еще раз отредактировал ответ.

BIOS - это операционная система?

Что ж, если операционная система определяется как программное обеспечение, которое позволяет пользователю взаимодействовать с аппаратным обеспечением «компьютера», то да ... технически и буквально это операционная система.

Определяет ли переключение задач то, что делает операционную систему?

Учитывая, что MS-DOS была действительной операционной системой, и до версии 5 переключение задач не поддерживалось, переключение задач не влияет на то, является ли программное обеспечение операционной системой.

Виртуализация памяти определяет, что делает операционную систему?

Опять же, используя MS-DOS в качестве примера, хотя поддержку виртуализации памяти можно было добавить, запустив расширители во время процесса загрузки, их не было необходимости использовать. Таким образом, виртуализация памяти также не является обязательным условием для того, что составляет операционную систему.

Если он хранится в прошивке, это ОС?

Некоторые утверждают, что маршрутизатор не использует операционную систему. Например, кажется, есть спор относительно того, считается ли DD-WRT операционной системой. Есть ли устройства, которые хранят операционную систему в прошивке? Современные телефоны, iPod и другие устройства хранят сложные операционные системы, в которые могут быть добавлены программы в прошивке. Таким образом, только то, что ОС загружена в микропрограммное обеспечение, не исключает, что данное программное обеспечение считается операционной системой.

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

Отойди от современного смартфона. Посмотрите на дешевый одноразовый сотовый телефон. Операционная система хранится в прошивке, но вы не можете добавлять программы. Он работает как есть, и только с той функциональностью, которая ему предлагается. Вы перемещаетесь по меню, как и любая другая ОС, вы выбираете, что вы хотите делать (играть в игры и т. Д.), И с большим количеством из них несколько лет назад у них не было возможности добавлять какое-либо дополнительное программное обеспечение.

Если это не современно, разве это не операционная система?

Исторический момент, когда ОС создавалась и запускалась, не имеет отношения к тому, является ли она операционной системой.

Таким образом, BIOS может не быть красивым, и он может не предлагать вам экстремальную функциональность. Тем не менее, это все еще операционная система.

Бон Гарт
источник
3
Определение операционной системы в Википедии само по себе сомнительно. (Я слышал некоторые другие) Но в любом случае вы полностью упускаете [...] предоставление общих услуг для компьютерных программ , которые, я думаю, необходимы для ОС.
Баарн
1
Я больше склоняюсь к прошивке, чем к ОС. Биос не обладает интеллектом, он просто общается с оборудованием на очень низком уровне и передает эту информацию в ОС. UEFI меняет игру, хотя.
Моав
1
Это тонкая грань между прошивкой и ОС, субъективно, как ад.
Моав
1
Хорошо, я сдаюсь, это биос, теперь вы можете отрубить мне голову .. ;-)
Моав
2
@BonGart BIOS не имеет поддержки виртуальной памяти и планирования задач - и, следовательно, не имеет возможности запускать программы (то есть он не может быть запущен одновременно с чем-либо еще). Хотя я согласен с тем, что он обеспечивает базовую поддержку ввода-вывода, это небольшая программа, а не операционная система ... Или вы бы классифицировали небольшой фрагмент кода на моем микроконтроллере, который получает пароль и включает светодиод (таким образом, предоставляя базовое I / O поддержка) операционная система, а?
Прорыв
2

То, что является или не является «операционной системой», является вопросом суждения. Возможно (и я утверждал это в 1980 году), оригинальная DOS для ПК / MS не была «операционной системой» (несмотря на ее название), поскольку она предоставляла только службы ввода-вывода (и грубый анализатор команд) и не имела настоящих средств управления системой. ,

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

Что касается того, как BIOS управляет загрузкой с диска и т. Д. Без драйверов, то условно / стандартные «загрузочные» устройства включают в себя набор операций, которые можно использовать без необходимости настройки сложной инфраструктуры управления. В некоторых случаях это только способность читать несколько секторов в относительно фиксированном месте, но это все, что нужно в большинстве случаев.

Даниэль Р Хикс
источник
Итак, вы включаете компьютер, загружаете MS-DOS, а затем сможете запускать программы. Вы говорите, что MS-DOS не была ОС ... где тогда была ОС? Похоже, вы говорите, что MS-DOS - это не то, что вы считаете настоящей ОС, даже если она технически функционировала как одна (и, следовательно, была одна).
Бон Гарт
1
Раньше было много компьютеров без «операционной системы», просто «управляющий во время выполнения» или некоторые другие, которые обеспечивали файловые службы и анализатор команд. Они никогда не называли их «операционными системами».
Даниэль Р Хикс
2
@bonGart « где тогда была ОС? » нет необходимости иметь ОС, то есть распределителя ресурсов / менеджера, для выполнения программ на компьютере. На ранних (или простых) компьютерах (включая микросхемы с CP / M) просто была резидентная программа-загрузчик, а загруженная программа имела полный доступ ко всем ресурсам компьютера. Не было споров за ресурсы, следовательно, не было необходимости в ОС.
опилки
@sawdust - правильно. И на шаг впереди «резидентного загрузчика программ» была резидентная библиотека времени выполнения (бумажная лента, дискета и функции клавиатуры / дисплея - может быть, принтер) и «монитор» или «исполнитель» или что-то такое, что обнаружило бы, когда одна программа закончил загружать следующий. DOS был не намного сложнее, чем эти.
Даниэль Р Хикс