Получаване на информация за паметта

Можете да използвате API функцията GlobalMemoryStatus, за да получите подробна информация за състоянието на паметта на компютъра. Променлива от тип TMemoryStatus се предава на функцията, която е запис, чийто тип е дефиниран, както следва:

Първото поле на записа,dwLength, описва дължината на записа TMemoryStatus. Полето трябва да се инициализира с функцията SizeOf, преди да се извика функцията GlobalMemoryStatus.

Второто поле,dwMemoryLoad, съдържа процента на използваната памет.

Третото поле,dwTotalPhys, съдържа броя на байтовете RAM (физическа памет), инсталирани на компютъра.

ПолеdwAvailPhys- свободна физическа памет в байтове.

Следващите две полета -dwTotalPageFileиdwAvailPageFile- показват общото количество, което файловете/файлът за пейджинг може да запише (като цяло не е същото като размера на последния) и количеството, което все още е налично от това количество. Всичко е в байтове.

Последните две полета се отнасят за виртуална памет. ПолетоdwTotalVirtualе общият брой байтове виртуална памет, използвани от извикващия процес. Полето AvailVirtual е количеството от тази памет, което все още е налично за извикващия процес.

Ще дам един пример за използване на функцията GlobalMemoryStatus. В Delphi можете да приложите следния код за получаване на информация за наличната RAM памет:

Функцията GetRAM връща общия брой байтове физическа памет, инсталирана на компютъра. Той чете тази информация от полето dwTotalPhys на MS записа, който е от тип TMemoryStatus. Преди това API функцията GlobalMemoryStatus се извиква с параметъра MS. Имайте предвид, че преди да извикате GlobalMemoryStatus, полето dwLength се инициализира с функцията SizeOf.