Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Количество оперативной памяти в системе. [XP]


programmer90 ©   (2008-05-30 19:11:00) 

Ещё раз здрасти.Вот ещё один вопрос: как узнать сколько всего оперативной памяти в системе, что за процедура или функция.
И как узнать сколько памяти расходуется моим приложением.
Всем спасибки.


programmer90   (2008-06-02 09:35:00) [1]

Loginov Dmitry.   (31.05.08 00:48) [15]
Можно оба варианта, и с подкачкой и без подкачки.


Loginov Dmitry.   (2008-05-31 00:48:00) [2]

Кстати, по [0]:

> Ещё раз здрасти.Вот ещё один вопрос: как узнать сколько
> всего оперативной памяти в системе, что за процедура или
> функция.
> И как узнать сколько памяти расходуется моим приложением.
>


Сначало бы неплохо выяснить, с какой целью автору все это нужно.
А то начнет определять сколько памяти расходуется, так и попадет в минуса.
Особенно, если прицепится к файлу подкачки :)


nimble_   (2008-05-31 00:41:00) [3]

Удалено модератором


Loginov Dmitry.   (2008-05-31 00:39:00) [4]

On computers with more than 4 GB of memory, the GlobalMemoryStatus function can return incorrect information, reporting a value of –1 to indicate an overflow. For this reason, applications should use the GlobalMemoryStatusEx function instead.

On Intel x86 computers with more than 2 GB and less than 4 GB of memory, the GlobalMemoryStatus function will always return 2 GB in the dwTotalPhys member of the MEMORYSTATUS structure. Similarly, if the total available memory is between 2 and 4 GB, the dwAvailPhys member of the MEMORYSTATUS structure will be rounded down to 2 GB. If the executable is linked using the /LARGEADDRESSAWARE linker option, then the GlobalMemoryStatus function will return the correct amount of physical memory in both members.

Функция с сюрпризами, однако :)


nimble_   (2008-05-31 00:36:00) [5]

Удалено модератором


Loginov Dmitry.   (2008-05-31 00:32:00) [6]


> При >2 гигов функция вернет минус.


А может не вернет. Ну тогда и фиг с нею. Главное в минус не уйти :)


Palladin   (2008-05-31 00:31:00) [7]

волшебные три буквы AWE и весь пух идет прахом


Loginov Dmitry.   (2008-05-31 00:30:00) [8]


> Плз, тогда, как по-умному узнать размер ОЗУ?


> 2 гига памяти максимум определит!


Хуже другое. При >2 гигов функция вернет минус. А если логика программы построена на таких проверках, то лучше без них вообще обойтись, иначе придется потом заставлять юзеров "лишнюю" память вынимать.


nimble_   (2008-05-31 00:23:00) [9]

Удалено модератором


Умищ   (2008-05-31 00:22:00) [10]


> Loginov Dmitry.   (30.05.08 23:59) [3]
> > Function GetRAMSize:integer;> Var MS : TMemoryStatus;>
>  Begin GlobalMemoryStatus(MS);>  Result := MS.dwTotalPhys;
> > End;За такое - только расстреливать!


За что?


nimble_   (2008-05-31 00:15:00) [11]

Удалено модератором


Loginov Dmitry.   (2008-05-31 00:14:00) [12]

Удалено модератором


nimble_   (2008-05-31 00:07:00) [13]

Удалено модератором


Loginov Dmitry.   (2008-05-30 23:59:00) [14]


> Function GetRAMSize:integer;
> Var MS : TMemoryStatus;
>  Begin GlobalMemoryStatus(MS);
>  Result := MS.dwTotalPhys;
> End;


За такое - только расстреливать!


programmer90   (2008-05-30 20:24:00) [15]

nimble_благодарю-с, более подробного ответа я не ожидал.
На счет перевода... а он и не нужен, все и так ясно :)


nimble_   (2008-05-30 19:14:00) [16]

Удалено модератором


Наверх

Титульная страница Поиск, карта сайта Написать письмо