0 / 0 / 0
Регистрация: 21.12.2010
Сообщений: 31
|
|
Определить весь объем CMOS памяти, установленной на машине21.12.2010, 14:58. Показов 3613. Ответов 3
Друзья! Помогите написать программу, которая определит весь объем CMOS памяти, установленной на машине. Просто пишу курсач, чтение и редактирование CMOS есть, а вот как определить общий объем не знаю. Если кто нибудь сталкивался помогите найти, буду очень признателен. Заранее спасибо
0
|
21.12.2010, 14:58 | |
Ответы с готовыми решениями:
3
Нужно увеличить объем памяти. Какую память поставить, что-бы она была совместима с уже установленной? Видно не весь объем оперативной памяти
|
Ушел с форума
![]() ![]() 16355 / 7671 / 1078
Регистрация: 11.11.2010
Сообщений: 13,731
|
||||||
22.12.2010, 05:16 | ||||||
![]() Решение
hax32, "Помогите написать программу, которая определит весь объем CMOS памяти, установленной на машине." а чего его определять? На всех машинах CMOS стандартно имеет 64 регистра, пронумерованных от 00 до 3Fh. Для чтения регистра нужно послать его номер в порт с адресом 70h, а затем прочитать его через порт 71h. Для чтения всей информации из CMOS можно воспользоваться следующей программой
00h время дня: секунды (BCD 00-59h, HEX 00-3Bh) 01h время будильника: секунды (BCD 00-59h, HEX 00-3Bh) 02h время дня: минуты (BCD 00-59h, HEX 00-3Bh) 03h время будильника: минуты (BCD 00-59h, HEX 00-3Bh) 04h время дня: часы (BCD 00-23h, HEX 00-17h) в 24 часовой моде (BCD 01-12h, HEX 01-0Ch) в 12 часовой моде (до полудня) (BCD 81-92h, HEX 81-8Ch) в 12 часовой моде (после полудня) 05h время будильника: часы то же самое что и время дня: часы 06h день недели (01-07h, 01=воскресенье) 07h день месяца (BCD 01-31h, HEX 01-1Fh) 08h месяц (BCD 01-12h, HEX 01-0Ch) 09h год по модулю 100 (BCD 00-99h, HEX 00-63h) 0Ah регистр состояния A часов реального времени: бит 7: установлен, если дата/время обновляются биты 6-4: базовая частота отсчета времени (22 stage divider), по умолчанию 010b=32.768Гц биты 3-0: выбор частоты прерываний, 0000 — не задействована 0011 — 122 микросекунды (минимум) 1111 — 500 миллисекунд 0110 — 976.562 микросекунды =1024Гц (по умолчанию) 0Bh регистр состояния B часов реального времени: бит 7: =0 нормальное обновление, =1 аварийное обновление бит 6: разрешение периодических прерываний бит 5: разрешение прерываний будильника бит 4: разрешение прерываний конца обновлений бит 3: разрешение прямоугольных колебаний бит 2: режим даты (=0 BCD, =1 HEX) бит 1: (=0 12 часовая мода, =1 24 часовая мода) бит 0: =1 учитывать переход на летнее время 0Ch регистр состояния C часов реального времени: бит 7: флаг Interrupt Request =1 когда любой или все с 6 по 4 биты в 1 и appropriate enables (регистр состояния B) установле-ны в 1, вырабатывает прерывание 8 при переключении; бит 6: флаг Periodic Interrupt; бит 5: флаг Alarm Interrupt; бит 4: флаг Update-Enable Interrupt 0Dh Регистр состояния D часов реального времени: бит 7: батарея хорошая До 0Dh регистра в CMOS разных фирм хранится одинаковая информация о часах и календаре. После 0Dh в зависимости от фирмы производителя (AMSTRAD, IBM PS/2, AMI, PHOENIX и т.д.) информация разная. 0Eh (PS/2) Diagnostic Status Byte Бит 7: =1 indicates clock has lost power Бит 6: =1 indicates incorrect checksum Бит 5: =1 indicates equipment configuration is incorrect Power-on check requires that atleast one floppy be installed Бит 4: =1 indicates error in memory size Бит 3: =1 indicates controller or disk drive faileDInitialization Бит 2: =1 indicates time is invalid Бит 1: =1 indicates installed adaptors do not match configuration Бит 0: =1 indicates a time-out while reading adaptor ID 0Eh-13h (AMSTRAD) время и дата последнего использования машины 0Fh Reset Code (IBM PS/2 “Shutdown Status Byte”) 10h Биты 7-4 тип первого флоппи-дисковода Биты 3-0 тип второго флоппи-дисковода =0 нет дисковода, =1 — 360 Кб 5,24 дюйма, =2 — 1.2 Мб 5,24 дюйма, =3 — 720 Кб 3,5 дюйма, =4 — 1.4 Мб 3,5 дюйма, 11h (IBM-PS/2) First Fixed Disk Drive Type Byte (00-FFh) Note: if IBM ESDI or SCSI drive controller is used, CMOS drive type will be zero (00 -no drive) и прерывание 13h will be directed to controller ROM. 11h (AMI) Keyboard Typematic Data Бит 7 Enable Typematic (1 = On) Биты 6-5 Typematic Delay (wait before begin repeating) =0 250 ms, =1 500 ms, =2 750 ms, =3 100 ms Биты 4-0 Typematic Rate char/sec e.g. 01010b = 12.0 cps 00 –300 01 -267 02 -240 03 -218 04 -200 05 -185 06 –171 07 –160 08 -159 09 -133 0Ah -120 0Bh -109 0Ch –100 0Dh –92 0Eh -86 0Fh -80 10h -75 11h -67 12h -60 13h -55 14h -50 15h -46 16h -43 17h -40 18h – 37 19h – 33 1Ah -30 1Bh -27 1Ch -25 1Dh -23 1Eh –21 1Fh -20 12h Биты 7-4 тип первого винчестера, если =Fh то правильное зна-чение по адресу 19h Биты 3-0 тип второго винчестера, если =Fh то правильное зна-чение по адресу 1Ah 13h (AMI) Advanced Setup Options Бит 7 наличие мыши Бит 6 тест памяти расположенной выше 1 MБайта Бит 5 звуковой сигнал во время проверки памяти Бит 4 проверка ошибки паритета памяти Бит 3 отключение проверки памяти нажатием на <Esc> Бит 2 жесткий диск определенный пользователем (1 = Тип 47 data area at address 0:300h) Бит 1 ожидание нажатия на <F1> для вывода сообщений об ошибках Бит 0 включить индикатор Num Lock On при загрузке 14h Периферия: Биты 7-6: =0 1 флоппи дисковод, =1 2 флоппи дис-ковода; Биты 5-4: =0 VGA или EGA дисплей, =1 CGA 40x25 строк, =2 CGA 80x25 строк, =3 монохромный дисплей бит 3 Display Enabled, бит 2 Keyboard Enabled бит 1 наличие сопроцессора бит 0 наличие флоппи-дисковода 14h (AMSTRAD) Контрольная сумма ОЗУ пользователя 15h Базовая память в килобайтах (младший байт) 15h-16h (AMSTRAD) скан-код /код ASCII клавиши Enter 16h Базовая память в килобайтах (старший байт) 17h Расширенная память в килобайтах (младший байт) 17h-18h (AMSTRAD) скан-код /код ASCII клавиши Backspace 18h Расширенная память в килобайтах (старший байт) 19h тип первого винчестера (not in original AT specification but now nearly universally used except for PS/2). Значение от 0 до Fh не используется (would not require extension. Note: this has the effect making type 0Fh (15d) unavailable. Значения от 10h до FFh тип первого винчестера от 16d до 255d Большинство фирм-изготовителей используют следующие ти-пы 47d или 49d — "тип определен пользователем" и параметры are stored elsewhere in the CMOS. 19h-1Ah (AMSTRAD) скан-код /код ASCII кнопки 1 включения джой-стика, по умолчанию: FFFFh -(no translation) 1Ah тип второго винчестера (смотрите 19h) 1Bh (AMI) первый жесткий диск определенный пользователем (тип 47): число цилиндров, LSB 1Bh (PHOENIX) LSB of Word to 82335 RC1 roll compare register 1Bh-1Ch (AMSTRAD) скан-код /код ASCII прерываний кнопки 2 вклю-чения джойстика, по умолчанию: FFFFh -(no translation) 1Ch (AMI) первый жесткий диск определенный пользователем: число цилиндров (старший байт) 1Ch (PHOENIX) MSB of Word to 82335 RC1 roll compare register 1Dh (AMI) первый жесткий диск определенный пользователем: число головок 1Dh-1Eh (AMSTRAD) скан-код /код ASCII 1-ой клавиши мыши по умолчанию: FFFFh -(no translation) 1Dh (Zenith Z-200 monitor) Выбор устройства для загрузки системы Биты 6-5: =0 -MFM Monitor, =1 – загрузка с дискеты (А : ) =2 загрузка с винчестера ( С : ) =3 загрузка с дискеты если не найден винчестер (по умолчанию) 1Dh (PHOENIX) LSB of Word to 82335 RC2 roll compare register 1Eh (AMI) первый жесткий диск определенный пользователем: цилиндр с которого начинается компенсация записью (младший байт) 1Eh (PHOENIX) MSB of Word to 82335 RC2 roll compare register 1Fh (AMI) первый жесткий диск определенный пользователем: цилиндр с которого начинается компенсация записью (старший байт) 1Fh-20h (AMSTRAD) скан-код /код ASCII 2-ой клавиши мыши 20h (AMI) первый жесткий диск определенный пользователем: Control Byte (равен 80h если количество головок равно или больше 8) 20h (PHOENIX) первый жесткий диск определенный пользователем (тип 48) количество цилиндров LSB 21h (AMI) первый жесткий диск определенный пользователем: зона загрузки (младший байт) 21h (PHOENIX) первый жесткий диск определенный пользователем (тип 48) количество цилиндров MSB 21h (AMSTRAD) масштаб X мыши, по умолчанию: 0Ah 22h (AMI) первый жесткий диск определенный пользователем: зона загрузки (старший байт) 22h (PHOENIX) первый жесткий диск определенный пользователем (тип 48) количество головок 22h (AMSTRAD) Y масштаб мыши, по умолчанию: 0Ah 23h (AMI) первый жесткий диск определенный пользователем: количество секторов на одной дорожке 23h (PHOENIX) первый жесткий диск определенный пользователем (тип 48) компенсация записью. LSB 23h (AMSTRAD) BYTE initial VDU mode and drive count default: 20h бит 7: enables extended serial flow control (NB this is buggy) бит 6: set if two floppy drives installed биты 5-4: (from Amstrad 1640 tech ref) 00 Internal video adapter; 01 CGA адаптер — 40x25 строк; 10 CGA адаптер — 80x25 строк; 11 монохромный адаптер —80x25 строк 24h (AMI) Второй жесткий диск определенный пользователем: количество цилиндров (младший байт) 24h (AMSTRAD) BYTE initial VDU character attribute, default: 7h 24h (PHOENIX) первый жесткий диск определенный пользователем (тип 48) компенсация записью. MSB 25h (AMI) Второй жесткий диск определенный пользователем: количество цилиндров (старший байт) 25h (AMSTRAD) BYTE size of RAM disk in 2K blocks default: 0 -only used by the RAMDISK software supplied. 25h (PHOENIX) первый жесткий диск определенный пользователем (тип 48) зона посадки головок LSB 26h (AMI) Второй жесткий диск определенный пользователем: количество головок 26h (AMSTRAD) BYTE initial system UART setup byte по умолчанию: E3h – формат такой как для 14h прерывания функция 0 26h (PHOENIX) первый жесткий диск определенный пользователем (тип 48) зона посадки головок MSB 27h (AMI) Второй жесткий диск определенный пользователем: цилиндр, с которого начинается компенсация записью (младший байт) 27h (AMSTRAD) BYTE initial external UART setup byte по умолчанию: E3h – формат такой как для 0 функции прерывания 14h 14h прерывания функция 0 — инициализировать последовательный порт AL параметры порта 7-5 бит -скорость передачи, 4-3 бит – контроль четности, 2 бит – количество стоп-битов, 1-0 бит – слово, DX номер порта (00-03) 27h (PHOENIX) первый жесткий диск определенный пользователем (тип 48) количество секторов на одной дорожке 28h (AMI) Второй жесткий диск определенный пользователем: цилиндр с которого начинается компенсация записью (старший байт) 28h (HP Vectra) checksum over words 29h-2Dh 28h-3Fh (AMSTRAD) 24 байта user applications по умолчанию: нули 29h (AMI) Второй жесткий диск определенный пользователем: Control Byte (равен 80h если количество головок равно или больше 8) 29h (PHOENIX) LSB word to Intel 82335 CC0 compare register 2Ah (AMI) Второй жесткий диск определенный пользователем: зона загрузки (младший байт) 2Ah (PHOENIX) MSB word to Intel 82335 CC0 compare register 2Bh (AMI) Второй жесткий диск определенный пользователем: зона загрузки (старший байт) 2Bh (PHOENIX) LSB word to Intel 82335 CC1 compare register 2Ch (AMI) Второй жесткий диск определенный пользователем: ко-личество секторов на одной дорожке 2Ch (COMPAQ) бит 6: включить/выключить индикатор numlock при загрузке 2Ch (PHOENIX) MSB word to Intel 82335 CC1 compare register 2Dh (AMI) Configuration Options Бит 7 если =1 — инсталирован сопроцессор фирмы Weitek Бит 6 Floppy Drive Seek –выключен для быстрой загрузки Бит 5 Порядок загрузки =0 – загрузка с винчестера, а затем с флоппи; =1 загрузка с флоппи, а затем с винчестера Бит 4 Скорость загрузки (0 – низкая; 1 –высокая) Бит 3 External Cache Enable (1 = On) Бит 2 Internal Cache Enable (1 = On) Бит 1 Use Fast Gate A20 after boot (1 = On) Бит 0 Переключатель «Турбо» 2Dh (PHOENIX) Checks for values AAh or CCh 2Eh Standard CMOS Checksum (старший байт) 2Fh Standard CMOS Checksum, (младший байт) 30h Память сверх 1 мегабайта (младший байт) 31h Память сверх 1 мегабайта (старший байт) 32h байт столетия (BCD значение – текущее 20) 32h (IBM-PS2) Configuration CRC (младший байт). CRC for range 10h-31h 33h Информационный Флаг Бит 7 128K (??? believe this indicates the presence of the special 128k memory expansion board for the AT to boost the "stock" 512k to 640k -all machines surveyed have this бит set) Биты 6-0 ??? 33h (IBM PS/2) Configuration CRC (старший байт) (see entry for 32h) 33h (PHOENIX) Бит 4 содержание 4-го бита регистра микропро-цессора CP0 34h (AMI) Адреса теневой памяти и выбор пароля загрузки Биты 7-6 Выбор пароля: =0 отключен, =1 установлен, =2 зарезервирован, =3 пароль на загрузку системы Биты 5-0 Адреса теневой памяти ПЗУ: Бит 5 C8000h, бит 4 CC000h, бит 3 D0000h, бит 2 D4000h, бит 1 D8000h, бит 0 DC000h 35h (AMI) Адреса теневой памяти: бит 7 — E0000h, бит 6 — E4000h, бит 5 — E8000h, бит 4 — EC000h, бит 3 — F0000h, бит 2 — C0000h, бит 1 — C4000h, бит 0 — зарезервирован 35h (PHOENIX) Второй жесткий диск определенный пользователем (тип 48) —количество цилиндров LSB Примечание: использу-ется в том случае когда пароль в стиле PS/2 не имеет эффекта. 36h (PHOENIX) Второй жесткий диск определенный пользовате-лем (тип 48) — количество цилиндров MSB. Примечание: используется в том случае когда пароль в стиле PS/2 не имеет эффекта. 37h (IBM PS/2) байт столетия 37h (PHOENIX) Второй жесткий диск определенный пользователем (тип 48) — число головок. Примечание: используется в том случае когда пароль в стиле PS/2 не имеет эффекта. 38h-3Dh (AMI) зашифрованный пароль 38h-3Fh ??? (IBM PS/2) зашифрованный пароль. Инициализируется 00h в всех байтах. Содержит от 1 до 7 скан-кодов. 38h (PHOENIX) Второй жесткий диск определенный пользователем (тип 48) — компенсация записью. LSB. Примечание: используется в том случае когда пароль в стиле PS/2 не имеет эффекта. 39h (PHOENIX) Второй жесткий диск определенный пользователем (тип 48) — компенсация записью. MSB. Примечание: используется в том случае когда пароль в стиле PS/2 не имеет эффекта. 3Ah (PHOENIX) Второй жесткий диск определенный пользователем (тип 48) — зона посадки головок LSB. Примечание: используется в том случае когда пароль в стиле PS/2 не имеет эффекта. 3Bh (PHOENIX) Второй жесткий диск определенный пользователем (тип 48) — зона посадки головок MSB. Примечание: используется в том случае когда пароль в стиле PS/2 не имеет эффекта. 3Ch (PHOENIX) Второй жесткий диск определенный пользователем (тип 48) — количество секторов на одной дорожке. Примечание: используется в том случае когда пароль в стиле PS/2 не имеет эффекта. 3Eh (AMI) Extended CMOS Checksum (старший байт) (includes 34h -3Dh) 3Fh (AMI) Extended CMOS Checksum (младший байт) (includes 34h -3Dh)
4
|
Ушел с форума
![]() ![]() 16355 / 7671 / 1078
Регистрация: 11.11.2010
Сообщений: 13,731
|
|
23.12.2010, 04:45 | |
![]() То что проще простого? ![]()
0
|
23.12.2010, 04:45 | ||||||
Помогаю со студенческими работами здесь
4
Жесткий диск Samsung, не доступен весь объём памяти. Комп перестал видеть весь объем памяти RAM Windows XP SP3 не видит весь объём оперативной памяти Acer Aspire 5750G DXDIAG не показывает весь объем памяти Как использовать весь объем оперативной памяти в приложении на C++ Builder Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
Новые блоги и статьи
![]() |
||||
Миграция монолита в Event-Driven микросервисную архитектуру на C#
stackOverflow 11.04.2025
Монолитная архитектура – классический подход к разработке программного обеспечения. Это приложение, построенное как единое целое, где все компоненты тесно связаны между собой. Большинство проектов. . .
|
Go в Kubernetes: Управление ресурсами
golander 11.04.2025
Разработчики Go-приложений в Kubernetes часто сталкиваются с неожиданными проблемами производительности и даже внезапными отказами контейнеров. Причина этого кроется в особенностях взаимодействия. . .
|
Агрегаты и сущности в DDD микросервисах
Javaican 10.04.2025
Разработка современных программных систем часто приводит на распутье: монолит или микросервисы? Даже при выборе микросервисной архитектуры многие команды сталкиваются с проблемой правильного. . .
|
Многопоточность в C#: Task и параллельное программирование
UnmanagedCoder 10.04.2025
Современные процессоры уже давно перестали наращивать тактовую частоту в пользу увеличения количества ядер. Это создало интересную ситуацию: разработчики, привыкшие к последовательному. . .
|
Линейное решение нелинейной задачи будет иметь приблизительный результат вычисления для метода обработки данных из double buffering.
Hrethgir 10.04.2025
Вообще изначально я пренебрёг квадратурой числа, но потом понял, что для вычисления приблизительного значения - сгодится, формулу можно будет корректировать по ходу. Это потому что прямое соотношение. . .
|
Переменные в Python
py-thonny 10.04.2025
Переменная в программировании — это символическое имя, связанное с областью памяти, в которой хранится значение. Она позволяет получать доступ к данным через понятные человеку идентификаторы, а не. . .
|
Многопоточность в C#: Task и асинхронные операции
UnmanagedCoder 10.04.2025
Многопоточность позволяет выполнять несколько операций одновременно, что важно для решения двух основных задач: повышения скорости выполнения вычислительно-сложных операций и сохранения отзывчивости. . .
|
Запуск контейнеров Docker на ARM64
Mr. Docker 09.04.2025
Появление таких решений, как Apple M1/ M2, AWS Graviton, Ampere Altra и Raspberry Pi, сделало использование ARM-систем обыденностью для многих разработчиков и DevOps-инженеров. При этом Docker,. . .
|
Vue SFC компонент на PHP с Fusion
Jason-Webb 09.04.2025
PHP на сервере и JavaScript на клиенте — классическое сочетание, которое, несмотря на свою эффективность, создает определенный когнитивный диссонанс при разработке. В этом контексте появляются. . .
|
TypeScript vs JavaScript: Отличия и когда что использовать
Reangularity 09.04.2025
JavaScript появился в 1995 году как творение Брендана Эйха и быстро стал основой интерактивности в вебе. За свою историю он прошел путь от простого языка для манипуляций с DOM до полноценной. . .
|