Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ограничение оперативной памяти 
:(
    Опции темы
stin10
Дата 14.6.2005, 08:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 14.6.2005

Репутация: нет
Всего: нет



прога на делфи делает не важно что , к примеру складывает два числа, как сделать так чтобы запускать прогу с выделеным для неё объемой оперативной памяти
PM MAIL   Вверх
Marriage
Дата 14.6.2005, 09:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 842
Регистрация: 4.5.2004
Где: Таганрог

Репутация: нет
Всего: 2



НАсколько я понимаю, больше чем нужно у тебя прога хавать не будет ...
Смысла выделять нет ...

Это сообщение отредактировал(а) Marriage - 14.6.2005, 09:13


--------------------
Praemonitus, praemunitus
PM MAIL ICQ   Вверх
stin10
Дата 14.6.2005, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 14.6.2005

Репутация: нет
Всего: нет



это не будет другая будет, дело не в проге а сути проблемы
PM MAIL   Вверх
Snowy
Дата 14.6.2005, 11:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Ограничения на процессы можно накладывать в WinNT системах.
Системы 9х не поддерживают данных функций.
Чтобы ограничить процесс или процессы, их помещают в задание.
На задание накладываются всевозможные ограничения, помещают в него процессы.
Ищи в инете функцию CreateJobObject.
От нее уже и иди дальше.
Код

CreateJobObject(psa: PSECURITY_ATTRIBUTES, pszName: PCTSTR): handle;


Заполняешь структуры PSECURITY_ATTRIBUTES и PCTSTR.
Код

hjob:=CreateJobObject(psa, pszName); // создаем JOB
AssignProcessToJobObject(hjob, GetCurrentProcess()); // Запихиваем наш процесс в него (можно и не наш)
CloseHandle(hjob); // отпускаем JOB

PM MAIL   Вверх
stin10
Дата 14.6.2005, 14:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 14.6.2005

Репутация: нет
Всего: нет



а как применительно к ограничению оперативной памяти
PM MAIL   Вверх
Snowy
Дата 14.6.2005, 15:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Я бы накатал примерчик, но это слишком заморочисто.
В структурах OBOBJECT_EXTENDED_LIMIT_INFORMATION и JOBOBJECT_BASIC_LIMIT_INFORMATION (это часть предыдущей структуры) нужно выставлять флаги ограничения на минимальный и максимальный объем памяти на процесс или общей памяти на все процессы в задании, выставить значения ограничений в ProcessMemoryLimit или JobMemoryLimit. Потом присвоить эти ограничения хэндлу задания через SetInformationJobObject. Потом создать новый процесс и воткнуть его в это задание.
Слишком много информации ковырять нужно. Сейчас времени на это нет.
Поищи какой-нить пример по CreateJobObject. По аналогии воткни нужные значения в описанные выше структуры.
Просто сделано не для программистов, а для системы, чтобы ей было удобно. Зато можно ограничивать почти все. Кроме памяти можно задать максимальное время работы, что можно, а что нельзя юзать, приоритет, запретить юзать клипборд, изменение системных параметров, юзать чужие окна, и многое другое.
Система навороченная, поэтому все не так просто. Нужно повозиться. С чем и желаю успехов. Прямая тебе дорога в MSDN за инфой...
Добавлено @ 15:45
Вот тут можно по русски почитать:
http://vsokovikov.narod.ru/Msdn_api/Global...tejobobject.htm
Но в MSDN информации больше.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0444 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.