структура памяти BIOS

Тема в разделе "WASM.ELECTRONICS", создана пользователем rpy3uH, 28 авг 2007.

  1. rpy3uH

    rpy3uH New Member

    Публикаций:
    0
    Регистрация:
    14 сен 2006
    Сообщения:
    503
    Мне нужно узнать параметры аппаратуры из BIOS, я где то достал код который делает дамп памяти BIOS (через \\Device\PhysycalMemory). Кто знает в какой области памяти BIOS написано про аппартную конфигурацию компьютера. Меня интерисует:
    1. Информация о самой BIOS
    2. Информация о материнке
    3. Информация о жёстком диске
    Заранее благодарен
     
  2. _BC_

    _BC_ БЦ

    Публикаций:
    0
    Регистрация:
    20 янв 2005
    Сообщения:
    759
    1. DMI
    2. DMI
    3. В биосе -- нет, надо идентифицировать отдельно

    Для чтения DMI нужен доступ только к F-сегменту биос, т.е. 0F0000h-0FFFFFh.
     
  3. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    BIOS он большой, конкретнее что интересует? Четкой структуры, там нет.

    Есть DMI(Desktop Management Interface). Содержит много разной информации ожелезе.
    Наиболее свежее и полное описание в файле DSP0134_old.pdf Файл описывает System Management BIOS (SMBIOS)
    Ищешь сигнатуру _DMI_ дальше разбираешь табицы.

    1. Название производителя ищется в ключевых точках, после проверяется. Зависит от поставщика биоса. Опять таки DMI
    2. Информация о материнки, это DMI.

    Есть еще ID BIOS(как, только его не обызвают), оно отрожает название материнки. Его производителя. И зависит от поставщика биоса в DMI не отражен.
    3. Нету там такой.
     
  4. Vov4ick

    Vov4ick Владимир

    Публикаций:
    0
    Регистрация:
    8 окт 2006
    Сообщения:
    581
    Адрес:
    МО
    Информация о сменном железе (дисководы, кол-во ОЗУ и прочая) лежит в КМОП-памяти и на современных машинах уже не стандартизована, хотя раньше была...
     
  5. rpy3uH

    rpy3uH New Member

    Публикаций:
    0
    Регистрация:
    14 сен 2006
    Сообщения:
    503
    спасибо за ответы
    через гугль нашёл файл DSP0134.pdf http://www.google.ru/search?hl=ru&newwindow=1&q=DSP0134.pdf&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr=
    вроде написана дата: May 2, 2007
    скачаю посмотрю
     
  6. rpy3uH

    rpy3uH New Member

    Публикаций:
    0
    Регистрация:
    14 сен 2006
    Сообщения:
    503
    Всем спасибо. Скачал разобрался написал программу, всё отлично работает. Но разочаровался: серийный номер моей материнской платы MB-1234567890, и мне кажется он у всех такой, вообще ерунда какая-то...
     
  7. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    rpy3uH'BIOS ID
    DMI, вещь не точная. У меня он номер материнской не выводит. Но, в качестве MB ID береться BIOS ID.
    Для AWARD биоса есть еще вот такие данные.

    Код (Text):
    1. ps:=Ptr($F000,$E060);
    2. if Pos('Award',ps^)<>0 then IsAward:=True
    3.  else IsAward:=False;
    4. if IsAward then
    5.  begin
    6.  WriteLn(ps^);
    7.  pS:=Ptr($F000,$EC70);
    8.  WriteLn('BIOS ID: ',pS^);
    9.  p:=Ptr($F000,$ECE0);
    10.  WriteLn('BIOS Number: ',p);
    11.  ps:=Ptr($F000,$ECE9);
    12.  end
    У других биосах будет по другому.
     
  8. rpy3uH

    rpy3uH New Member

    Публикаций:
    0
    Регистрация:
    14 сен 2006
    Сообщения:
    503
    возможно так и есть, но второй структуре (type 1) под названием System Information есть поле UUID оно вроде уникальное