作者****:李先靜
今 天遇到乙個問題,需要監視某個應用程式的退出事件,並得到它的退出碼。waitpid只能監視子程序,對其它程序沒有效果,怎麼才能reparent乙個 程序呢?我在核心裡找了半天也沒有找到相應的系統呼叫,後來想到偵錯程式都可以,那一定有辦法。偵錯程式是用ptrace實現的,我試了一下,發現其實很簡 單。做了些測試,也沒有發現效能上的損失,我想這種方法應試是可行的。發出來給有類似需要的朋友參考吧:
#include#include
#include
#include
int reparent_process(int pid)
return ret;
}int main(int argc, char* argv)
pid = atoi(argv[1]);
reparent_process(pid);
ret = waitpid(pid, &status, 0);
printf("%s:%d pid=%d ret=%d status=%x/n", __func__, __line__, pid, ret, status);
return 0;
}
reparent指定程序到當前程序
作者 李先靜 今 天遇到乙個問題,需要監視某個應用程式的退出事件,並得到它的退出碼。waitpid只能監視子程序,對其它程序沒有效果,怎麼才能reparent乙個 程序呢?我在核心裡找了半天也沒有找到相應的系統呼叫,後來想到偵錯程式都可以,那一定有辦法。偵錯程式是用ptrace實現的,我試了一下,發...
git 合併指定檔案到當前分支
前言,最近接到領導通知,說要將上一周完成的功能 合併到另外乙個分支上。然後我就切換目標分支,發現 的提交記錄已經滯後了很多,又不能將 全部合併過來,就只能研究如何將部分 合併過來。話不多說,擼起袖子加油幹 git checkout 目標分支 git checkout patch 檔案所在分支 檔案物...
linux繫結程序到指定cpu
方法之一 top p pidof 程序名稱 方法之二 top p ps h o pid c 程序名稱 如果還要檢視此程序下的各執行緒,可用如下 top h p pidof process 我是分割線 top實時顯示程序在那個cpu上 1 top 2 按 1 實時顯示cpu資訊 3 按 f 進入顯示配...