forked from KolibriOS/kolibrios
remove unnecessary check
git-svn-id: svn://kolibrios.org@6974 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
e93f3bd431
commit
ea4f9aa063
@ -596,7 +596,7 @@ endp
|
|||||||
align 4
|
align 4
|
||||||
proc user_alloc stdcall, alloc_size:dword
|
proc user_alloc stdcall, alloc_size:dword
|
||||||
push ebx esi edi
|
push ebx esi edi
|
||||||
call init_heap
|
mov ebx, [current_process]
|
||||||
lea ecx, [ebx+PROC.heap_lock]
|
lea ecx, [ebx+PROC.heap_lock]
|
||||||
call mutex_lock
|
call mutex_lock
|
||||||
mov ecx, [alloc_size]
|
mov ecx, [alloc_size]
|
||||||
|
@ -2577,7 +2577,9 @@ dword-значение цвета 0x00RRGGBB
|
|||||||
* 3 = RAW
|
* 3 = RAW
|
||||||
* 4 и выше зарезервировано
|
* 4 и выше зарезервировано
|
||||||
* +8: более детально смотрите файл clipboard_container_rus.txt
|
* +8: более детально смотрите файл clipboard_container_rus.txt
|
||||||
|
* Функция должна использоваться совместно с 68.11. Приложение должно
|
||||||
|
предварительно проинициализировать локальную кучу вызовом 68.11.
|
||||||
|
|
||||||
---------------------- Константы для регистров: ----------------------
|
---------------------- Константы для регистров: ----------------------
|
||||||
eax - SF_CLIPBOARD (54)
|
eax - SF_CLIPBOARD (54)
|
||||||
ebx - SSF_READ_CB (1)
|
ebx - SSF_READ_CB (1)
|
||||||
@ -2989,8 +2991,10 @@ IPC применяется для посылок сообщений от одн
|
|||||||
* eax = 1 - недостаточно памяти
|
* eax = 1 - недостаточно памяти
|
||||||
Замечания:
|
Замечания:
|
||||||
* Есть другой способ выделения/освобождения динамической памяти -
|
* Есть другой способ выделения/освобождения динамической памяти -
|
||||||
подфункции 12, 13 и 20 функции 68, но после их использования будет
|
подфункции 11, 12, 13 функции 68.
|
||||||
создана куча процесса и вызов функции 64 будет игнорироваться.
|
* Функция не может использоваться совместно с 68.11, 68.12, 68.13.
|
||||||
|
Вызов функции будет игнорироваться, если приложение создаст
|
||||||
|
локальную кучу вызовом 68.11.
|
||||||
|
|
||||||
---------------------- Константы для регистров: ----------------------
|
---------------------- Константы для регистров: ----------------------
|
||||||
eax - SF_MEMORY_RESIZE (64)
|
eax - SF_MEMORY_RESIZE (64)
|
||||||
@ -3292,7 +3296,7 @@ Architecture Software Developer's Manual, Volume 3, Appendix B);
|
|||||||
eax - SF_SYS_MISC (68)
|
eax - SF_SYS_MISC (68)
|
||||||
ebx - SSF_WRITE_MSR (4)
|
ebx - SSF_WRITE_MSR (4)
|
||||||
======================================================================
|
======================================================================
|
||||||
= Функция 68, подфункция 11 - вручную инициализировать кучу процесса =
|
===== Функция 68, подфункция 11 - инициализировать кучу процесса. ====
|
||||||
======================================================================
|
======================================================================
|
||||||
Параметры:
|
Параметры:
|
||||||
* eax = 68 - номер функции
|
* eax = 68 - номер функции
|
||||||
@ -3447,6 +3451,8 @@ Architecture Software Developer's Manual, Volume 3, Appendix B);
|
|||||||
Возвращаемое значение:
|
Возвращаемое значение:
|
||||||
* eax = указатель на перераспределённый блок, 0 при ошибке
|
* eax = указатель на перераспределённый блок, 0 при ошибке
|
||||||
Замечания:
|
Замечания:
|
||||||
|
* Предварительно следует инициализировать кучу процесса вызовом
|
||||||
|
подфункции 11.
|
||||||
* Функция выделяет целое число страниц (4 Кб) так, что фактический
|
* Функция выделяет целое число страниц (4 Кб) так, что фактический
|
||||||
размер выделенного блока больше или равен запрошенному.
|
размер выделенного блока больше или равен запрошенному.
|
||||||
* Если edx=0, то вызов функции эквивалентен выделению памяти
|
* Если edx=0, то вызов функции эквивалентен выделению памяти
|
||||||
@ -3510,6 +3516,8 @@ Architecture Software Developer's Manual, Volume 3, Appendix B);
|
|||||||
* E_NOMEM = 30
|
* E_NOMEM = 30
|
||||||
* E_PARAM = 33
|
* E_PARAM = 33
|
||||||
Замечания:
|
Замечания:
|
||||||
|
* Предварительно следует инициализировать кучу процесса вызовом
|
||||||
|
подфункции 11.
|
||||||
* Если создаётся новая область, то флаги доступа устанавливают
|
* Если создаётся новая область, то флаги доступа устанавливают
|
||||||
максимальные права доступа для остальных процессов. Попытка
|
максимальные права доступа для остальных процессов. Попытка
|
||||||
открытия другим потоком с неразрешёнными правами провалится
|
открытия другим потоком с неразрешёнными правами провалится
|
||||||
@ -3619,6 +3627,8 @@ Architecture Software Developer's Manual, Volume 3, Appendix B);
|
|||||||
* edx = размер загруженного файла или 0
|
* edx = размер загруженного файла или 0
|
||||||
Примечания:
|
Примечания:
|
||||||
* функция загружает и, при необходимости, распаковывает файл (kunpack)
|
* функция загружает и, при необходимости, распаковывает файл (kunpack)
|
||||||
|
* Предварительно следует инициализировать кучу процесса вызовом
|
||||||
|
подфункции 11.
|
||||||
|
|
||||||
---------------------- Константы для регистров: ----------------------
|
---------------------- Константы для регистров: ----------------------
|
||||||
eax - SF_SYS_MISC (68)
|
eax - SF_SYS_MISC (68)
|
||||||
|
@ -2548,6 +2548,9 @@ Returned value:
|
|||||||
* eax = if successful - pointer to a memory with data
|
* eax = if successful - pointer to a memory with data
|
||||||
* eax = 1 - error
|
* eax = 1 - error
|
||||||
* eax = -1 - main list area not found
|
* eax = -1 - main list area not found
|
||||||
|
Remarks:
|
||||||
|
* The function must be used in conjunction with 68.11. The
|
||||||
|
application must pre-initialize the local heap by calling 68.11.
|
||||||
|
|
||||||
---------------------- Constants for registers: ----------------------
|
---------------------- Constants for registers: ----------------------
|
||||||
eax - SF_CLIPBOARD (54)
|
eax - SF_CLIPBOARD (54)
|
||||||
@ -2957,7 +2960,10 @@ Remarks:
|
|||||||
* There is another way to dynamically allocate/free memory -
|
* There is another way to dynamically allocate/free memory -
|
||||||
subfunctions 12, 13 and 20 of function 68, but after creation
|
subfunctions 12, 13 and 20 of function 68, but after creation
|
||||||
of the process heap 64 function call will be ignored.
|
of the process heap 64 function call will be ignored.
|
||||||
|
* The function cannot be used together with 68.11, 68.12, 68.13.
|
||||||
|
The function call will be ignored after creation of process heap
|
||||||
|
with function 68.11.
|
||||||
|
|
||||||
---------------------- Constants for registers: ----------------------
|
---------------------- Constants for registers: ----------------------
|
||||||
eax - SF_MEMORY_RESIZE (64)
|
eax - SF_MEMORY_RESIZE (64)
|
||||||
======================================================================
|
======================================================================
|
||||||
@ -3258,7 +3264,7 @@ Remarks:
|
|||||||
eax - SF_SYS_MISC (68)
|
eax - SF_SYS_MISC (68)
|
||||||
ebx - SSF_WRITE_MSR (4)
|
ebx - SSF_WRITE_MSR (4)
|
||||||
======================================================================
|
======================================================================
|
||||||
=== Function 68, subfunction 11 - manually initialize process heap ===
|
=== Function 68, subfunction 11 - initialize process heap ============
|
||||||
======================================================================
|
======================================================================
|
||||||
Parameters:
|
Parameters:
|
||||||
* eax = 68 - function number
|
* eax = 68 - function number
|
||||||
@ -3413,6 +3419,8 @@ Parameters:
|
|||||||
Returned value:
|
Returned value:
|
||||||
* eax = pointer to the reallocated block, 0 = error
|
* eax = pointer to the reallocated block, 0 = error
|
||||||
Remarks:
|
Remarks:
|
||||||
|
* Before this call one must initialize process heap by call to
|
||||||
|
subfunction 11.
|
||||||
* The function allocates an integer number of pages (4 Kb) in such
|
* The function allocates an integer number of pages (4 Kb) in such
|
||||||
way that the real size of allocated block is more than or equal to
|
way that the real size of allocated block is more than or equal to
|
||||||
requested size.
|
requested size.
|
||||||
@ -3475,6 +3483,8 @@ Error codes:
|
|||||||
* E_NOMEM = 30
|
* E_NOMEM = 30
|
||||||
* E_PARAM = 33
|
* E_PARAM = 33
|
||||||
Remarks:
|
Remarks:
|
||||||
|
* Before this call one must initialize process heap by call to
|
||||||
|
subfunction 11.
|
||||||
* If a new area is created, access flags set maximal rights
|
* If a new area is created, access flags set maximal rights
|
||||||
for other processes. An attempt from other process to open
|
for other processes. An attempt from other process to open
|
||||||
with denied rights will fail with error code E_ACCESS.
|
with denied rights will fail with error code E_ACCESS.
|
||||||
@ -3584,6 +3594,8 @@ Returned value:
|
|||||||
* edx = size of the loaded file, or zero
|
* edx = size of the loaded file, or zero
|
||||||
Remarks:
|
Remarks:
|
||||||
* function loads file and unpacks, if necessary
|
* function loads file and unpacks, if necessary
|
||||||
|
* Before this call one must initialize process heap by call to
|
||||||
|
subfunction 11.
|
||||||
|
|
||||||
---------------------- Constants for registers: ----------------------
|
---------------------- Constants for registers: ----------------------
|
||||||
eax - SF_SYS_MISC (68)
|
eax - SF_SYS_MISC (68)
|
||||||
|
Loading…
Reference in New Issue
Block a user