69.4 and 69.5 now do not require debugging privileges
git-svn-id: svn://kolibrios.org@667 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -79,8 +79,11 @@ debug_terminate:
|
|||||||
debug_suspend:
|
debug_suspend:
|
||||||
; in: ebx=pid
|
; in: ebx=pid
|
||||||
; destroys eax,ebx
|
; destroys eax,ebx
|
||||||
call get_debuggee_slot
|
cli
|
||||||
jc .ret
|
mov eax, ebx
|
||||||
|
call pid_to_slot
|
||||||
|
test eax, eax
|
||||||
|
jz .ret
|
||||||
mov bl, [CURRENT_TASK+eax+TASKDATA.state] ; process state
|
mov bl, [CURRENT_TASK+eax+TASKDATA.state] ; process state
|
||||||
test bl, bl
|
test bl, bl
|
||||||
jz .1
|
jz .1
|
||||||
@@ -110,9 +113,12 @@ do_resume:
|
|||||||
debug_resume:
|
debug_resume:
|
||||||
; in: ebx=pid
|
; in: ebx=pid
|
||||||
; destroys eax,ebx
|
; destroys eax,ebx
|
||||||
call get_debuggee_slot
|
cli
|
||||||
jc .ret
|
mov eax, ebx
|
||||||
call do_resume
|
call pid_to_slot
|
||||||
|
test eax, eax
|
||||||
|
jz .ret
|
||||||
|
call do_resume
|
||||||
.ret: sti
|
.ret: sti
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
@@ -3933,8 +3933,8 @@ Architecture Software Developer's Manual, Volume 3, Appendix B);
|
|||||||
<EFBFBD> <20>⫠<EFBFBD>稪 <20>⮣<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD>⥫쭮 <20>⪫<EFBFBD><E2AAAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
<EFBFBD> <20>⫠<EFBFBD>稪 <20>⮣<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD>⥫쭮 <20>⪫<EFBFBD><E2AAAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>㭪樥<EFBFBD> 3.
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>㭪樥<EFBFBD> 3.
|
||||||
|
|
||||||
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㭪樨 <20>ਬ<EFBFBD><E0A8AC><EFBFBD><EFBFBD><EFBFBD> ⮫쪮 <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᠬ/<2F><>⮪<EFBFBD><E2AEAA>, <20><><EFBFBD><EFBFBD>饭<EFBFBD><E9A5AD><EFBFBD>
|
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㭪樨, <20><EFBFBD> 4 <20> 5, <20>ਬ<EFBFBD><E0A8AC><EFBFBD><EFBFBD><EFBFBD> ⮫쪮 <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᠬ/<2F><>⮪<EFBFBD><E2AEAA>,
|
||||||
<EFBFBD><EFBFBD> ⥪<>饣<EFBFBD> <20>㭪樥<E3ADAA> 70 <20> <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䫠<><E4ABA0><EFBFBD> <20>⫠<EFBFBD><E2ABA0><EFBFBD>.
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>饭<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> ⥪<>饣<EFBFBD> <20>㭪樥<E3ADAA> 70 <20> <20><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䫠<><E4ABA0><EFBFBD> <20>⫠<EFBFBD><E2ABA0><EFBFBD>.
|
||||||
<EFBFBD>⫠<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>ন<EFBFBD><E0A6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
<EFBFBD>⫠<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>ন<EFBFBD><E0A6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᯨ᮪ <20><><EFBFBD><EFBFBD>㭪権:
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᯨ᮪ <20><><EFBFBD><EFBFBD>㭪権:
|
||||||
* <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 0 - <20><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>⫠<EFBFBD><E2ABA0><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᮮ<>饭<EFBFBD><E9A5AD>
|
* <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 0 - <20><>।<EFBFBD><E0A5A4><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>⫠<EFBFBD><E2ABA0><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᮮ<>饭<EFBFBD><E9A5AD>
|
||||||
@@ -4032,7 +4032,7 @@ Architecture Software Developer's Manual, Volume 3, Appendix B);
|
|||||||
* <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>ਮ<EFBFBD>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>믮<EFBFBD><EBAFAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
* <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>ਮ<EFBFBD>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>믮<EFBFBD><EBAFAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
==== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 69, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 4 - <20>ਮ<EFBFBD>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD> <20>⫠<EFBFBD><E2ABA0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>⮪. ====
|
=========== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 69, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 4 - <20>ਮ<EFBFBD>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD> <20><>⮪. ==========
|
||||||
======================================================================
|
======================================================================
|
||||||
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
||||||
* eax = 69 - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
* eax = 69 - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
@@ -4040,13 +4040,10 @@ Architecture Software Developer's Manual, Volume 3, Appendix B);
|
|||||||
* ecx = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䨪<EFBFBD><E4A8AA><EFBFBD><EFBFBD>
|
* ecx = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䨪<EFBFBD><E4A8AA><EFBFBD><EFBFBD>
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>頥<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>祭<EFBFBD><E7A5AD>:
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>頥<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>祭<EFBFBD><E7A5AD>:
|
||||||
* <20>㭪<EFBFBD><E3ADAA><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>頥<EFBFBD> <20><><EFBFBD>祭<EFBFBD><E7A5AD>
|
* <20>㭪<EFBFBD><E3ADAA><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>頥<EFBFBD> <20><><EFBFBD>祭<EFBFBD><E7A5AD>
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>砭<EFBFBD><EFBFBD>:
|
|
||||||
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㦥<EFBFBD> <20><><EFBFBD> <20>⫠<EFBFBD><E2ABA0><EFBFBD> (<28><><EFBFBD> 㪠<><E3AAA0><EFBFBD><EFBFBD> <20>
|
|
||||||
<20><>饬 <20><><EFBFBD>ᠭ<EFBFBD><E1A0AD>).
|
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
====================== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 69, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 5 ======================
|
====================== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 69, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 5 ======================
|
||||||
============ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>믮<EFBFBD><EBAFAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>⫠<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD>⮪<EFBFBD>. ============
|
=================== <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>믮<EFBFBD><EBAFAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>⮪<EFBFBD>. ===================
|
||||||
======================================================================
|
======================================================================
|
||||||
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
<EFBFBD><EFBFBD>ࠬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
||||||
* eax = 69 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
* eax = 69 - <20><><EFBFBD><EFBFBD><EFBFBD> <20>㭪樨
|
||||||
@@ -4054,9 +4051,6 @@ Architecture Software Developer's Manual, Volume 3, Appendix B);
|
|||||||
* ecx = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䨪<EFBFBD><E4A8AA><EFBFBD><EFBFBD>
|
* ecx = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>䨪<EFBFBD><E4A8AA><EFBFBD><EFBFBD>
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>頥<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>祭<EFBFBD><E7A5AD>:
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>頥<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>祭<EFBFBD><E7A5AD>:
|
||||||
* <20>㭪<EFBFBD><E3ADAA><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>頥<EFBFBD> <20><><EFBFBD>祭<EFBFBD><E7A5AD>
|
* <20>㭪<EFBFBD><E3ADAA><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>頥<EFBFBD> <20><><EFBFBD>祭<EFBFBD><E7A5AD>
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>砭<EFBFBD><EFBFBD>:
|
|
||||||
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>㦥<EFBFBD> <20><><EFBFBD> <20>⫠<EFBFBD><E2ABA0><EFBFBD> (<28><><EFBFBD> 㪠<><E3AAA0><EFBFBD><EFBFBD> <20>
|
|
||||||
<20><>饬 <20><><EFBFBD>ᠭ<EFBFBD><E1A0AD>).
|
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
====================== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 69, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 6 ======================
|
====================== <20>㭪<EFBFBD><E3ADAA><EFBFBD> 69, <20><><EFBFBD><EFBFBD>㭪<EFBFBD><E3ADAA><EFBFBD> 6 ======================
|
||||||
|
@@ -3899,8 +3899,9 @@ When debugger terminates, all debugged processes are killed.
|
|||||||
If debugger does not want this, it must previously detach by
|
If debugger does not want this, it must previously detach by
|
||||||
subfunction 3.
|
subfunction 3.
|
||||||
|
|
||||||
All subfunctions are applicable only to processes/threads started
|
All subfunctions except 4 and 5 are applicable only to
|
||||||
from the current by function 70 with set debugging flag.
|
processes/threads started from the current by function 70
|
||||||
|
with set debugging flag.
|
||||||
Debugging of multithreaded programs is not supported yet.
|
Debugging of multithreaded programs is not supported yet.
|
||||||
The full list of subfunctions:
|
The full list of subfunctions:
|
||||||
* subfunction 0 - define data area for debug messages
|
* subfunction 0 - define data area for debug messages
|
||||||
@@ -3998,7 +3999,7 @@ Remarks:
|
|||||||
* If the process was suspended, it resumes execution.
|
* If the process was suspended, it resumes execution.
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
======== Function 69, subfunction 4 - suspend debugged thread. =======
|
============= Function 69, subfunction 4 - suspend thread. ===========
|
||||||
======================================================================
|
======================================================================
|
||||||
Parameters:
|
Parameters:
|
||||||
* eax = 69 - function number
|
* eax = 69 - function number
|
||||||
@@ -4006,12 +4007,9 @@ Parameters:
|
|||||||
* ecx = thread identifier
|
* ecx = thread identifier
|
||||||
Returned value:
|
Returned value:
|
||||||
* function does not return value
|
* function does not return value
|
||||||
Remarks:
|
|
||||||
* Process must be loaded for debugging (as is shown in
|
|
||||||
general description).
|
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
======== Function 69, subfunction 5 - resume debugged thread. ========
|
============= Function 69, subfunction 5 - resume thread. ============
|
||||||
======================================================================
|
======================================================================
|
||||||
Parameters:
|
Parameters:
|
||||||
* eax = 69 - function number
|
* eax = 69 - function number
|
||||||
@@ -4019,9 +4017,6 @@ Parameters:
|
|||||||
* ecx = thread identifier
|
* ecx = thread identifier
|
||||||
Returned value:
|
Returned value:
|
||||||
* function does not return value
|
* function does not return value
|
||||||
Remarks:
|
|
||||||
* Process must be loaded for debugging (as is shown in
|
|
||||||
general description).
|
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
= Fucntion 69, subfunction 6 - read from memory of debugged process. =
|
= Fucntion 69, subfunction 6 - read from memory of debugged process. =
|
||||||
|
Reference in New Issue
Block a user