亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 1839 | 回復(fù): 8
打印 上一主題 下一主題

遇到一個奇怪的問題 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2012-03-09 09:24 |只看該作者 |倒序瀏覽
我有一個程序a, fork出來用exec啟動了程序b,一直監(jiān)控程序b的執(zhí)行情況,一旦發(fā)現(xiàn)b出問題就殺掉b,再fork用exec啟動程序b
b的話依賴于LD_LIBRARY_PATH中的某個動態(tài)庫,a運行在后臺,a程序運行一段時間后,不斷重啟程序b,就開始不斷的報錯:b依賴的動態(tài)庫找不到了,但是我手工檢查LD_LIBRARY_PATH動態(tài)庫路徑正確,可以重啟,感覺LD_LIBRARY_PATH在后臺的環(huán)境變量被改變了,不知道是啥原因?大家誰遇到過這種情況,小弟第一次碰到這個問題,很棘手。!

a啟動b的過程如下:
pid = fork()
if(pid == 0)
{
    execv(b);
    perror();
    exit(-1);
}

論壇徽章:
0
2 [報告]
發(fā)表于 2012-03-09 09:49 |只看該作者
運行一段時間過后居然找不到動態(tài)庫了,這個真的蠻郁悶的
難道execv會改變環(huán)境參數(shù)么?

論壇徽章:
11
技術(shù)圖書徽章
日期:2014-03-01 14:44:34天蝎座
日期:2014-05-21 22:11:59金牛座
日期:2014-05-30 17:06:14
3 [報告]
發(fā)表于 2012-03-09 11:23 |只看該作者
你差一步就找到問題了。。。
execv明顯沒有傳環(huán)境變量,execle或execve才會帶
在啟動shell設(shè)置的LD_LIBRARY_PATH根本傳不到b程序

論壇徽章:
0
4 [報告]
發(fā)表于 2012-03-09 11:33 |只看該作者
execv這個函數(shù)不會把LD_LIBRARY_PATH的環(huán)境變量傳給子進程?
execle或execve函數(shù)會傳?

論壇徽章:
11
技術(shù)圖書徽章
日期:2014-03-01 14:44:34天蝎座
日期:2014-05-21 22:11:59金牛座
日期:2014-05-30 17:06:14
5 [報告]
發(fā)表于 2012-03-09 11:43 |只看該作者
函數(shù)原型已經(jīng)看出來了吧
只有execve是系統(tǒng)調(diào)用,其它五個都是基于它的庫函數(shù),你不傳,它沒義務(wù)給你構(gòu)造啊

       int execl(const char *path, const char *arg, ...);
       int execlp(const char *file, const char *arg, ...);
       int execle(const char *path, const char *arg,  ..., char * const envp[]);
       int execv(const char *path, char *const argv[]);
       int execvp(const char *file, char *const argv[]);

       int execve(const char *filename, char *const argv[], char *const envp[]);

論壇徽章:
0
6 [報告]
發(fā)表于 2012-03-09 11:57 |只看該作者
execve要如何把LD_LIBRARY_PATH的環(huán)境參數(shù)傳到子進程?我看很多網(wǎng)上的例子都是置為0,好像也是繼承父進程的環(huán)境變量

論壇徽章:
11
技術(shù)圖書徽章
日期:2014-03-01 14:44:34天蝎座
日期:2014-05-21 22:11:59金牛座
日期:2014-05-30 17:06:14
7 [報告]
發(fā)表于 2012-03-09 12:16 |只看該作者
不會獲取環(huán)境變量?
不會傳參?
如果execve的envp為0,也能繼承環(huán)境變量,上面的回復(fù)算我夢游寫下的,與本人無關(guān),謝謝

論壇徽章:
0
8 [報告]
發(fā)表于 2012-03-09 13:30 |只看該作者
搞不動為啥這個東西在剛開始運行一段時間,好像b程序獲取到了環(huán)境變量,但是運行一段時間以后,環(huán)境變量好像就獲取不到了!

論壇徽章:
0
9 [報告]
發(fā)表于 2012-03-09 14:14 |只看該作者
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP