Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Изменение настроек BIOS программно


Автор: Artem 5.12.2002, 20:09
Могу ли я из приложения, или kernel-драйвера изменить настройки BIOS
(выстовить режим работы LPT порта в EPP mode)?

                                            Artem. :lookaround

Автор: suborg 6.12.2002, 03:30
Можно, но сложно. Проблема в том, что есть стандартные настройки биоса, которые тянутся еще с древних машин, их адреса в памяти всегда одни и те же. А вот то, о чем ты говоришь - уже индивидуально для разных биосов и разных производителей. Чисто теоретически cmos - просто область памяти, но никаких гарантий нет.

Автор: Artem 6.12.2002, 20:28
Покажите, пожалуйста, kак  поменять хотя бы какие-либо стандартные настройки
биоса программно.
(Желательно в Win2000 или kernel - mode драйвере)

                                        С уважением, Artem.

Автор: Andy_user 6.12.2002, 21:17
Настройки BIOS - это содержимое регистров, которые храняться в памяти CMOS. Доступ по чтению или записи к этим регистрам осуществяется через порты ввода-вывода. Производить такую операцию в среде Windows может или HAL (hal.dll и т.д.) или драйвера ядра. Если такой драйвер (кем-то разработанный) уже есть в системе и Вы знаете его программный интерфейс,
то сменить настройки BIOS можно из Вами разработанного приложения.
Если такого драйвера нет или Вам неизвестен его программный интерфейс, то придеться разрабатывать такой драйвер самим и работать с ним.
Разработка драйверов, особенно под такую систему как Windows, крайне сложная и тонкая задача.
Разбирайтесь с DDK (Driver Development Kit).
Мое мнение: а надо ли? Стоит ли игра свеч?
Решайте сами...

Автор: Artem 9.12.2002, 23:21
Драйвер-то ядра у меня есть, и читать/писать порты через него я могу...
Дело в том что я плохо себе представляю какие конкретно регистры, хранящиеся в  СМОS за что отвечают.
Не подскажите где можно найти доку/сведения по этому вопросу.
                                          Artem.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)