Довброго времени суток. Подскажите в какие адреса мэппится биос и весь ли его образ, что прошивается, проецируется на эти адреса. Вопрос два встал при задаче разблокировки IntelVX на ноуте sony vgn cr31sr. Есть утилита под дос symcmos, которая дампит что то типа CMOS, а именно, типа, BIOS NVRAM. Дамп CMOS не совпадает с тем что выдаёт она в текстовом файле. Дамп CMOS получен через CMOS manager Application(cmos.exe,cmosio.sys), серез порты 70,71..., есть другие утилиты дампящие CMOS, их вывод совпадает с предидущими, но symcmos выводит манмого больше данных и совершенно другие. Да, можно дизасемблировать и начать вникать, но вопрос довольно поверхностный, и надеюсь конкретный и ,думаю, кто то уже вникал в него.
CMOS отношения к памяти BIOS не имеет и никуда не маппится. Это была отдельная микросхема с часами и 64 байтами: часы + настройки для BIOS. Потом она переползла в чипсет и объем ее был расширен - соответственно через порт 70,71 вроде только 64 байта получаются.
БИОС целиком размещается 4ГБайта минус размер биоса. Что касается CMOS. Через 70h, 71h получается 256 байт. Через 72h, 73h получается следующие 256 байт и тд. Только чтобы до них добраться надо будет еще и разблокировать. Про BIOS NVRAM может имелось ввиду участок RAM который использует BIOS и именуется AcpiNVS ?
Нет. CMOS - это и был NVRAM. Размер CMOS в "документации" на маму/БИОС. Разблокировка тоже может разной быть - она ведь нужна лишь разработчику БИОС. А главное : ты не отклонился от темы вопроса? Может дело вообще не в CMOS ? Про БИОС - сходи на rom.by
valterg Тас и сижу щас сутками. Вопрос чисто на понимание,кстате, вопроса на самом деле два, просто написано и оформлено коряво. На первый я ужн ролучил ответ и забыл. А где храниться DMI информация (SMBIOS)?
Pavia AcpiNVS- походу оно. Там должны храниться настройки инициализации чипсетов. .[NVRAMMAP-002] .D = DEFAULTS F = FIXEDFIELD L = STACKLESS S = STRUCFIELD B = BYTESTRING .O = OVERRIDE C = CRC/CKSM M = MEMBERFIELD K = CHECKSUM R = READONLY .E = OEMOVERRIDE .Token Start Std Attributes . Media Width Mfg Name 01d1 0 0000 50 0000 0000 F rsvd_0_0 01d4 0 0050 08 0000 0000 F cmosRegA 01d7 0 0058 01 0000 0000 F cmosDaylightSavings 01da 0 0059 07 0000 0000 F L cmosRegB 01dd 0 0060 08 0000 0000 F L cmosRegC 01e0 0 0068 07 0000 0000 F rsvd_D_0 01e3 0 006f 01 0000 0000 F L cmosValidRamBit 01e6 0 0070 02 0000 0000 F rsvd_E_0 01e9 0 0072 01 0000 0000 F L cmosTimeFailedBit 01ec 0 0073 01 0000 0000 F L cmosDiskFailedBit
Вот интересно, а ответы в дубликате темы http://www.wasm.ru/forum/viewtopic.php?id=34918 остались незамеченными? Width: 01 означает, что поле занимает 1 бит (что, в общем, логично). Media: 0 означает, что используется первая таблица CMOS, адресуемая через 70h/71h. Start: 00fc означает, что это 00fc-ый бит, то есть 4-й бит в 1F-м байте (считая с 0). Attributes: K означает, что поле входит в те биты, по которым подсчитывается контрольная сумма, и просто изменить его не получится - BIOS обнаружит ошибку контрольной суммы CMOS и сбросит все настройки в умолчальные (а Std: 0 означает, что по умолчанию этот бит сброшен) - а нужно ещё пересчитать контрольную сумму. Кстати, вроде symcmos и это умеет делать, если как-то попросить.