SysFn64/ru

From KolibriOS wiki
Revision as of 14:08, 18 January 2016 by IgorA (talk | contribs)
Jump to navigation Jump to search

Функция 64 - перераспределить память приложения.

Параметры:

  • eax = 64 - номер функции
  • ebx = 1 - единственная подфункция
  • ecx = новый размер памяти

Возвращаемое значение:

  • eax = 0 - успешно
  • eax = 1 - недостаточно памяти

Замечания:

  • Есть другой способ выделения/освобождения динамической памяти - подфункции 11, 12, 13 функции 68.
  • Функция не может использоваться совместно с 68.11, 68.12, 68.13. Вызов функции будет игнорироваться, если приложение создаст локальную кучу вызовом 68.11.
  • число в ecx, это вся доступная память приложения, включая кода и стека программой. Тоесть задавая число меньшее чем размер программой заданной в заголовке, программа может сама себе освободить.

Реализация: sys_resize_app_memory: (core/sys32.inc)

Константы для регистров:

eax - SF_MEMORY_RESIZE (64)