· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.ASSEMBLER —› Определение размера опративной памяти

. 1 . 2 . >>

Посл.отвђт Сообщенiе


Дата: Мар 28, 2004 12:49:23

Возникла проблема - нужно узнать размер оперативной памяти
Поиск по сети и по форуму не помог(хотя я мож не правильно ищу) нашел какую то статью про определение размера, но там сказано что например 128 мб не увидит, а сейчас я меньше и не видел
У кого есть инфа буду рад..


Дата: Мар 28, 2004 13:59:46

неужели есть программисты, у которых нету MSDNа или Win32Hlp? =\
LOCAL globalStatus: MEMORYSTATUS	
mov globalStatus.dwLength, sizeof MEMORYSTATUS
invoke GlobalMemoryStatus, addr globalStatus
PrintHex globalStatus.dwTotalVirtual	
ret


например, если у тебя 512 RAMы, выдаст:

globalStatus.dwTotalPhys = 1FF88000 (funget.asm, 297)

т.е. 536379392 байтов


Дата: Мар 28, 2004 14:53:21

2 Funbit -
Спасибо но по моему ты меня не знаеш:)
MSDN - Есть причём три диска :)
Я не оринтируюсь ни на Windows ни на #nix мне нужно на голый комп сидящий в защищённом режиме:)


Дата: Мар 28, 2004 19:55:50

Самый общий способ:
пишешь 0 - сравниваешь, пишешь FF - сравниваешь..


Дата: Мар 28, 2004 20:37:07

Same
теперь знаю :)
но ничем не могу помочь :)


Дата: Мар 28, 2004 20:37:11

S_T_A_S_
пишешь 0 - сравниваешь, пишешь FF - сравниваешь..

А мне всегда больше нравилось $55 $аа. :)


Дата: Мар 28, 2004 20:51:09


Дата: Мар 29, 2004 08:20:59

Устанавливаешь либо P-MODE либо Unreal-mode с поддержкой 32-битных адресов и пишешь тупо, начиная с 2Мб два значения: 1 и 2 к примеру (0 писать не надо, работать наверно будет, но подразумевается что в пустой памяти обычно нули и есть), сравнивая с тем, что записалось. Записались оба значения верно - память есть, нет - нету. Шаг советую 4096 байт (можно и побольше).


Дата: Мар 29, 2004 08:35:30

Kirk,johnfound,S_T_A_S_ - Это я знаю наверно так и сделаю - Я думал сущетвуют боее универсальные способы
Pavia Тут - http://www.mega-tokyo.com/osfaq2/index.php и то лучше описано
Всем спасибо я думаю тема закрыта


Дата: Мар 29, 2004 12:07:34

пишешь тупо, начиная с 2Мб два значения: 1 и 2 к примеру

А если в модуле памяти есть проблемы скажем с 7м битом? т.е. модуль глючный, а определится как нормальный..
Сейчас конечно это не так важно, но johnfound не зря такие константы написал :)

но подразумевается что в пустой памяти обычно нули и есть
Они там будут только если их туда записать, а так сами по себе они откуда возьмутся?


Дата: Мар 30, 2004 02:49:12

2S_T_A_S_: Я образно, конечно 0x55 и 0xaa лучше, а насчёт нулей я пользуясь наблюдениями за своим железом, у меня память обнуляется на 2ух компах.


Дата: Мар 30, 2004 02:51:08

А потом, если тестировать на глючность модули, то надо сканить каждый байт, что занимает вообще говоря прилично времени, но если это несущественно, тогда это даже лучше.


Дата: Мар 30, 2004 06:46:42

Kirk

Так память я думаю БИОСом обнуляется.. а так она пару минут может даже будет инфу хранить после выключения..
Сканить каждый бит не надо, IMHO достаточно учесть только столбцы и строки в адресации модуля DRAM


Дата: Мар 30, 2004 23:50:46

S_T_A_S_
Не думаю что современная память будет хранить инфу после отключения, это должна быть память на ферридах(древняя) или на триггерах - это уже кэш в процессорах на них.
Если бы память не нужно было регенерировать - она могла бы работать на частоте процессора.


Дата: Мар 31, 2004 12:12:41

Johnikum
Скажу сразу, что с современной памятью я не экспериментировал.
Эксперименты были с совковыми экземплярами ДОЗУ (серию уже не помню, ну это и не важно): РУ5 - время хранения < 2х секунд. РУ7 (следующее поколение, буржуйские аналоги применялись в 286) ~ 20 сек.
Сейчас - устойчивость информации к внешним воздействиям в ДОЗУ выше, и намного (уже давно как убрали бит четности), так что я думаю это время стало еще больше.
Это можно и проверить, на БИОС ради такого перешивать мне чего-то не хочется.

Если бы память не нужно было регенерировать - она могла бы работать на частоте процессора

Регенерация и скорость работы памяти практически ни как не связаны.
Все упирается в невозможность проводников на текстолите работать на такой скорости. И стоимость решений возможных.

. 1 . 2 . >>


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.085