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

Chinaunix

標(biāo)題: current結(jié)構(gòu)體在用戶(hù)層使用 [打印本頁(yè)]

作者: txbdir    時(shí)間: 2014-07-28 19:30
標(biāo)題: current結(jié)構(gòu)體在用戶(hù)層使用
各位大蝦,我想在用戶(hù)層使用內(nèi)核中的task_struct結(jié)構(gòu)體變量current , 我在編譯時(shí)提示error: dereferencing pointer to incomplete type , 我已經(jīng)把頭文件加進(jìn)去了,以下是源碼,望各位幫幫忙。

#include <linux/sched.h>
#include <stdio.h>

extern struct task_struct * current;

int main(int argc , char *argvs[])
{
        printf("Prog Name is [%s]" , current->comm);
        return 0;
}
作者: zyr-linux    時(shí)間: 2014-07-28 20:45
用戶(hù)態(tài)直接調(diào)內(nèi)核態(tài)東東?
作者: txbdir    時(shí)間: 2014-07-28 21:23
大概是這樣吧
作者: 鎮(zhèn)水鐵牛    時(shí)間: 2014-07-28 21:26
current是內(nèi)核指向當(dāng)前進(jìn)程的struct task_struct結(jié)構(gòu),用戶(hù)態(tài)應(yīng)該無(wú)法感知該結(jié)構(gòu);
應(yīng)用層可以通過(guò)getpid獲得當(dāng)前進(jìn)程的pid,即current->pid,getpid()也是通過(guò)系統(tǒng)調(diào)用實(shí)現(xiàn)的。
作者: txbdir    時(shí)間: 2014-07-28 21:31
getpid()我知道,但我最的目的是想使用current這個(gè)結(jié)構(gòu)體的值!
作者: 鎮(zhèn)水鐵牛    時(shí)間: 2014-07-28 21:50
回復(fù) 5# txbdir
current是內(nèi)核空間指針,其值估計(jì)是0xffffff******,對(duì)于用戶(hù)空間的你來(lái)講,這個(gè)值沒(méi)有意義啊。

   
作者: Godbach    時(shí)間: 2014-07-29 09:33
回復(fù) 1# txbdir

想獲取內(nèi)核態(tài)的信息,有多種方法,但是在用戶(hù)態(tài)用 current 不行。

你可以說(shuō)說(shuō)你的需求。至少?gòu)哪阆敕ㄉ蟻?lái)看,感覺(jué)很 geek

   
作者: xupt_liangning    時(shí)間: 2014-07-30 18:18
毛線,,,要是current能直接用了,,還要那么多權(quán)限檢查干嗎呀?   進(jìn)入內(nèi)核態(tài)唯一兩個(gè)途徑:1 系統(tǒng)調(diào)用   2中斷   只能通過(guò)gitpid()等等這類(lèi)系統(tǒng)調(diào)用來(lái)獲取進(jìn)程的信息,其他就別想了,還直接current,碉堡了
作者: txbdir    時(shí)間: 2014-07-30 20:26
也許是我異想天開(kāi)了吧!當(dāng)時(shí)我記得很清楚,我們的培訓(xùn)老師在用戶(hù)層使用了current這個(gè)全局變量打印了進(jìn)程名,當(dāng)時(shí)覺(jué)得很神奇,結(jié)果忘了代碼,所以想在網(wǎng)上找找!
作者: zyr-linux    時(shí)間: 2014-07-31 09:53
或許或許你老師自己命名了個(gè)再getpid呢?

或許你老師的內(nèi)核是改過(guò)的呢?

總之標(biāo)準(zhǔn)內(nèi)核下是不可能直接用的。
作者: txbdir    時(shí)間: 2014-08-01 20:53
也許吧!只能通過(guò)其它方式了!謝謝大家了!




歡迎光臨 Chinaunix (http://www.72891.cn/) Powered by Discuz! X3.2