linux源代码调用,linux – 哪里可以找到系统调用源代码?
生活随笔
收集整理的這篇文章主要介紹了
linux源代码调用,linux – 哪里可以找到系统调用源代码?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
您將需要Linux內核源,以便查看系統調用的實際來源。手動頁面(如果安裝在本地系統上)只包含調用的文檔,而不是其源代碼本身。
不幸的是,系統調用不會存儲在整個內核樹的一個特定位置。這是因為各種系統調用可以引用系統的不同部分(進程管理,文件系統管理等),因此將它們與與系統的該特定部分相關的部分樹進行存儲是不可行的。
你可以做的最好的事情是尋找SYSCALL_DEFINE [0-6]宏。使用(顯然)將給定的代碼塊定義為系統調用。例如,fs / ioctl.c具有以下代碼:
SYSCALL_DEFINE3(ioctl, unsigned int, fd, unsigned int, cmd, unsigned long, arg)
{
/* do freaky ioctl stuff */
}
這樣的定義意味著ioctl系統調用被聲明并且有三個參數。 SYSCALL_DEFINE旁邊的數字表示參數的數量。例如,在kernel / timer.c中聲明的getpid(void)的情況下,我們有以下代碼:
SYSCALL_DEFINE0(getpid)
{
return task_tgid_vnr(current);
}
希望能夠清理一些東西。
總結
以上是生活随笔為你收集整理的linux源代码调用,linux – 哪里可以找到系统调用源代码?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux长期版本维护内容,[图]Lin
- 下一篇: 安卓电视版linux,MythTV 30