Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 8245 → Rev 8246

/kernel/trunk/docs/sysfuncr.txt
293,6 → 293,9
ecx = -1 - получить информацию о текущем потоке
Возвращаемое значение:
* eax = максимальный номер слота потока
но, если указатель в ebx недопустимый, например,
регион [ebx, ebx + 0x4C) пересекается с памятью ядра,
то тогда функция возвращает -1
* буфер, на который указывает ebx, содержит следующую информацию:
* +0: dword: использование процессора (сколько тактов в секунду
уходит на исполнение именно этого потока)
/kernel/trunk/docs/sysfuncs.txt
283,6 → 283,9
ecx = -1 - get information on the current thread
Returned value:
* eax = maximum number of the slot of a thread
but if pointer in ebx is illegal, for example,
[ebx, ebx + 0x4C) region intersects with kernel memory,
then function returns -1
* buffer pointed to by ebx contains the following information:
* +0: dword: usage of the processor (how many time units
per second leaves on execution of this thread)
/kernel/trunk/kernel.asm
3159,6 → 3159,14
; +26 dword used mem
; +30 dword PID , process idenfification number
;
; if given memory address belongs to kernel then error
push ebx
mov eax, ebx
mov ebx, 0x4C
call is_region_userspace
pop ebx
test eax, eax
jz .addr_error
 
cmp ecx, -1 ; who am I ?
jne .no_who_am_i
3249,6 → 3257,10
mov [esp+32], eax
ret
 
.addr_error: ; if given memory address is illegal
mov eax, -1
ret
 
align 4
sys_clock:
cli