亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種反調(diào)試方法和系統(tǒng)與流程

文檔序號:12669725閱讀:來源:國知局

技術特征:

1.一種反調(diào)試方法,其特征在于,該方法包括:

步驟S101,將需要反調(diào)試的進程設置為調(diào)試狀態(tài);

步驟S102,在需要反調(diào)試的進程中創(chuàng)建子進程;

步驟S103,將所創(chuàng)建的子進程附加到需要反調(diào)試的進程中;

步驟S104,子進程接收需要反調(diào)試的進程發(fā)送的反饋消息,并對該反饋消息進行處理。

2.根據(jù)權利要求1所述的反調(diào)試方法,其特征在于,將需要反調(diào)試的進程設置為調(diào)試狀態(tài)包括:

通過調(diào)用Android系統(tǒng)接口函數(shù)prctl(option,arg2,arg3,arg4,arg5)來將需要反調(diào)試的進程設置為調(diào)試狀態(tài),其中參數(shù)option是PR_SET_DUMPABLE,參數(shù)arg2的值是1, 參數(shù)arg3的值是0, 參數(shù)arg4的值是0, 參數(shù)arg5的值是0。

3.根據(jù)權利要求1所述的反調(diào)試方法,其特征在于,在需要反調(diào)試的進程中創(chuàng)建子進程包括:

通過調(diào)用Android系統(tǒng)函數(shù)fork來完成子進程的創(chuàng)建。

4.根據(jù)權利要求1所述的反調(diào)試方法,其特征在于,將所創(chuàng)建的子進程附加到需要反調(diào)試的進程中包括:

通過調(diào)用Android系統(tǒng)函數(shù)getppid來獲取到需要反調(diào)試的進程的進程ID,將所創(chuàng)建的子進程附加到需要反調(diào)試的進程中。

5.根據(jù)權利要求4所述的反調(diào)試方法,其特征在于,將所創(chuàng)建的子進程附加到需要反調(diào)試的進程中包括:

調(diào)用Android系統(tǒng)函數(shù)ptrace(PTRACE_ATTACH, ppid, NULL, NULL)來執(zhí)行附加操作,其中參數(shù)PTRACE_ATTACH表明是附加操作,參數(shù)ppid是獲取到的需要反調(diào)試的進程的進程ID,表示將所創(chuàng)建的子進程附加到該需要反調(diào)試的進程的進程ID所指示的進程中,NULL代表空缺。

6.根據(jù)權利要求1所述的反調(diào)試方法,其特征在于,子進程接收需要反調(diào)試的進程發(fā)送的反饋消息,并對該反饋消息進行處理包括:

通過調(diào)用Android系統(tǒng)函數(shù)WSTOPSIG(status)來獲取需要反調(diào)試的進程的反饋消息,其中變量status用于存放變量信號值,

判斷該status的值是否等于以下四個信號中的任意一個,四個信號包括:停止該反調(diào)試的進程的執(zhí)行信號SIGSTOP、停止該反調(diào)試的進程的運行信號SIGTSTP、當后臺作業(yè)要從用戶終端讀數(shù)據(jù)時的信號SIGTTIN、在寫終端或修改終端模式時收到的信號SIGTTOU,如果上述判斷不成立,則不對所述的反饋消息進行任何處理,如果上述判斷成立,則設置需要反調(diào)試的進程刪除所述反饋消息。

7.根據(jù)權利要求6所述的反調(diào)試方法,其特征在于,包括:

通過調(diào)用Android系統(tǒng)函數(shù)ptrace(PTRACE_CONT, ppid, 0, 0) 來實現(xiàn)刪除操作,其中,參數(shù)PTRACE_CONT用于指示需要反調(diào)試的進程繼續(xù)執(zhí)行系統(tǒng)調(diào)用過程,參數(shù)ppid是需要反調(diào)試的進程的進程ID值,參數(shù)0指示需要反調(diào)試的進程刪除所述的反饋消息。

8.一種反調(diào)試系統(tǒng),該系統(tǒng)包括設置模塊、創(chuàng)建模塊、調(diào)試模塊以及處理模塊,其特征在于:

設置模塊,用于將需要反調(diào)試的進程設置為調(diào)試狀態(tài);

創(chuàng)建模塊,用于在需要反調(diào)試的進程中創(chuàng)建子進程;

調(diào)試模塊,用于將所創(chuàng)建的子進程附加到需要反調(diào)試的進程中;

處理模塊,用于子進程等待需要反調(diào)試的進程的消息,并對消息進行處理。

9.根據(jù)權利要求8所述的反調(diào)試系統(tǒng),其特征在于,設置模塊中包括:

調(diào)用單元:

用于通過調(diào)用Android系統(tǒng)接口函數(shù)prctl(option,arg2,arg3,arg4,arg5)來設置當前進程可以被調(diào)試, 其中參數(shù)option是PR_SET_DUMPABLE,參數(shù)arg2的值是1, 參數(shù)arg3的值是0, 參數(shù)arg4的值是0, 參數(shù)arg5的值是0;

創(chuàng)建模塊中包括:

建立單元,用于通過調(diào)用系統(tǒng)函數(shù)fork來完成新進程的創(chuàng)建;

將所創(chuàng)建的子進程附加到需要反調(diào)試的進程中包括:

通過調(diào)用函數(shù)getppid來獲取到需要反調(diào)試的進程的進程ID,將所創(chuàng)建的子進程附加到需要反調(diào)試的進程中;

子進程等待需要反調(diào)試的進程的消息,并對消息進行處理包括:

通過調(diào)用Android系統(tǒng)函數(shù)WSTOPSIG(status)來獲取需要反調(diào)試的進程的反饋消息,其中變量status用于存放變量信號值,

判斷該status的值是否等于以下四個信號中的任意一個,四個信號包括:停止該反調(diào)試的進程的執(zhí)行信號SIGSTOP、停止該反調(diào)試的進程的運行信號SIGTSTP、當后臺作業(yè)要從用戶終端讀數(shù)據(jù)時的信號SIGTTIN、在寫終端或修改終端模式時收到的信號SIGTTOU,如果上述判斷不成立,則不對所述的反饋消息進行任何處理,如果上述判斷成立,則設置需要反調(diào)試的進程刪除所述反饋消息。

10.根據(jù)權利要求9所述的反調(diào)試系統(tǒng),其特征在于,將所創(chuàng)建的子進程附加到需要反調(diào)試的進程中包括:

調(diào)用函數(shù)ptrace(PTRACE_ATTACH, ppid, NULL, NULL)來執(zhí)行附加操作,其中參數(shù)request填入PTRACE_ATTACH,參數(shù)ppid是獲取到的需要反調(diào)試的進程的進程ID,表示將所創(chuàng)建的子進程附加到該需要反調(diào)試的進程的進程ID所指示的進程中,NULL代表空缺。

當前第2頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1