Які функції BIOS під час роботи операційної системи?


78

Мені завжди було цікаво, чи має BIOS (крім проведення POST, запуску завантажувача та передачі керування в ОС після натискання кнопки живлення) якесь призначення чи функцію під час роботи операційної системи?

Чи взаємодіє операційна система з BIOS під час роботи і якщо так, то як?


Відповіді:


72

З сучасними ОС практично немає . Як повідомляється, Лінус Торвальдс заявив, що його завдання полягає в тому, щоб "просто завантажити ОС і вивести звідти чорт".

Старіші операційні системи, такі як MS-DOS, покладалися на BIOS для багатьох завдань (наприклад, доступ до диска), викликаючи переривання.

З сучасними ОС завантажувач швидко переходить у 32- або 64-бітний режим і виконує ядро ​​ОС. Ядро може реєструвати власні обробники переривань, які можуть викликатися програмами користувальницького простору. Підпрограми ядра можуть бути більш портативними (оскільки вони не залежать від конкретного обладнання), більш гнучкими (постачальники ОС можуть змінювати їх на вимогу, а не користуватися тим, що поставляється з обладнанням), більш досконалими (вони можуть виконувати довільно складні код, а не те, що було запрограмовано в BIOS), і більш захищений (оскільки ОС може контролювати доступ до спільних ресурсів і не давати програмам клопотати один про одного, реалізуючи власні довільні схеми дозволів).

Для взаємодії з конкретним обладнанням ОС можуть завантажувати та використовувати власні драйвери пристроїв. Таким чином, немає необхідності в ОС або додатках взагалі викликати більшість BIOS-процедур. Насправді, з міркувань безпеки, переривання BIOS навіть відключено. Оскільки BIOS живе в 16-бітному реальному режимі, то важче викликати сучасні ОС.

Хоча використання BIOS дуже обмежене під час роботи ОС, її функції все ще використовуються периферійно. Наприклад, коли комп'ютер спить , ОС не працює, і в кінцевому підсумку потрапляє на вбудоване програмне забезпечення, щоб встановити обладнання до правильного стану, щоб призупинити і відновити ОС. Ці використання, як правило, обмежені викликами ACPI, а не дзвінками до повного інтерфейсу BIOS. ACPI - це розширення BIOS, яке "приводить управління живленням під управління операційною системою (OSPM), на відміну від попередньої BIOS-центральної системи, яка для визначення енергоменеджменту та політики конфігурації спиралася на програмне забезпечення, орієнтоване на платформу" .

Зауважимо, що офіційно "BIOS" відноситься до певного інтерфейсу мікропрограмного забезпечення, але термін зазвичай використовується для позначення програмних засобів комп'ютера в цілому. Деякі останні комп’ютери (особливо Apple) замінили BIOS (sensu strictu) на UEFI , що, звичайно, тоді є тим, що покликано реалізувати ці функції.

Для отримання додаткової інформації про те, як роль BIOS зменшувалася з часом, дивіться у Вікіпедії .


15
Існує деяка мінімальна взаємодія через системний годинник (час доби).
MSalters

7
Ви справді впевнені в цьому? А як щодо керування вентиляторами, вже згаданого режиму управління системою, всього ACPI, який, наприклад, регулює швидкість процесора?
Олександр

32
Я міг би спробувати відпаяти мікросхему BIOS під час роботи машини.
JohnnyFromBF

5
@Ian чому ускладнює себе. Знайдіть старішу дошку з розстебнутим біосом і просто дістаньте фішку. Крім того, IIRC на деяких останніх дошках оверклокера все ще є апаратний перемикач, який дозволяє перемикатися між двома BIOS. Зробіть спалах зображення B, завантажте A, перемкніть на B під час роботи.
Ден Нілі

17
@Ian Я це зробив. Я втратив живлення під час прошивки BIOS, він не завантажувався після цього. У нас було 20 машин з точно такою ж технікою, і вони старіли. Тож я завантажив одну, вийняв мікросхему BOIS, увімкнув накручений і спалахнув. Обидва чіпи BOIS після цього спрацювали чудово. Зрозуміло, це DOS, який працює за флеш-програмним забезпеченням. Досі вражаюче думаю. (Дошки були брендованими гігабайт, Pentium 4 сумісний, наскільки я пам’ятаю)
Ekin Koc

32

BIOS надає ряд операційних систем, більшість з яких пов'язані з управлінням живленням:

  • модифікація процесорних та шинних годин
  • включення / відключення пристроїв материнської плати
  • контроль потужності порту розширення
  • призупинити на диск та призупинити оперативну пам'ять
  • відновити налаштування події

Підвіска до диска реалізована в ОС більшу частину часу, оскільки ОС може швидше відновити її стан (перезавантажується лише стан ядра, а стан програми поміняється при необхідності, що значно швидше, ніж перезавантаження всієї ОЗУ), але функція залишається в специфікації.

Призупинення оперативної пам’яті не може бути реалізовано ОС, оскільки вона покладається на те, що BIOS пропускає ініціалізацію та тестування оперативної пам’яті, тому ОС потрібен API, щоб повідомити BIOS, що вона має намір відновити з поточним вмістом ОЗУ. Для надання цієї послуги BIOS просить ОС залишити певну область ОЗУ неушкодженою.

Інтерфейс ОС для всіх служб BIOS - це фрагмент віртуального машинного коду, який потрібно запустити на емуляторі і який генерує необхідні операції вводу / виводу в апаратному забезпеченні. Для призупинення це, як правило, реалізується таким чином, що виконання одного з апаратних записів запускає переривання, яке передає керування в BIOS.


17

Є три основні області, в яких ОС використовує BIOS в сучасних системах, наприклад, в тих, що використовують стандарт UEFI. Перший - це низка сервісів, відома як послуги виконання UEFI. Ці сервіси дозволяють ОС захоплювати інформацію, про яку знає лише BIOS, наприклад час використання BIOS, порядок завантаження, поточний профіль безпеки користувача, інформацію про материнську плату, DIMM тощо.

Другий - Режим управління системою - це прихований розділ пам'яті (SMRAM), до якого можна отримати переривання з високим пріоритетом (SMM). Багато BIOS використовують це для впровадження функцій OEM із високою безпекою або для впровадження апаратних робіт.

Третє - ACPI. ACPI забезпечує конфігурацію, управління електроживленням та апаратними даними та кодом, використовуваним ОС для розширення того, що драйвери ОС можуть дізнатися, використовуючи галузевий стандарт або драйвер пристрою. Наприклад, чи є спеціальний сигнал для управління потужністю жорсткого диска, чи є спеціальний спосіб поговорити з акумулятором, який не охоплюється стандартом.

Тім


9

Сучасні ОС використовують BIOS в основному лише для завантаження, але все ж є деякі види використання, які, зокрема, включають:

  • Реагує на кнопку живлення (вимкніть ПК через 4 секунди,
    включені).
  • Зміна налаштувань яскравості екрана на ноутбуках
  • Події батареї на ноутбуках
  • Підвіска

Я подумав, що яскравість досягнуто зміною значень кольору безпосередньо перед малюванням.
Коул Джонсон

3
@ColeJohnson: Ні: На Thinkpads принаймні це фактично змінює яскравість підсвітки.
Механічний равлик

1
Яскравість - це апаратно керований імпульсний модульований сигнал, що вмикає та вимикає яскравий білий світлодіод на високій частоті. Це світло є одним з основних споживачів акумуляторів

1

Крім того, що було зазначено вище, Intel починає змінюватись іншим способом і вдосконалюватиметься, надаючи позадіапазонний доступ до апаратного забезпечення за допомогою технології Active Management, вбудованої в біос і материнську плату, якими можна керувати незалежно від ОС. За допомогою цих дощок ви можете зробити справді трохи. Незалежно від того, чи вважаєте ви його вбудованою чи другою ОС - це інша річ, але оскільки у неї є апаратне забезпечення на борту та компоненти в біографії, я дотримуюся вбудованого.

Інфо маркетинг guff

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.