[英]Redundant Linux Kernel System Calls
我正在開發一個項目,它掛鈎到各種系統調用並將內容寫入日志,具體取決於調用的是哪一個。 因此,例如,當我更改文件的權限時,我會在跟蹤舊權限和新權限的日志文件中寫一個小條目。 但是,我在確定我應該注意的位置時遇到了一些麻煩。 對於上面的例子,strace告訴我“chmod”命令使用系統調用sys_fchmodat()。 但是,還有一個sys_chmod()和一個sys_fchmod()。
我確信內核開發人員知道他們正在做什么,但我想知道:所有這些(看似)冗余系統調用的重點是什么,是否有關於哪些用於什么的規則? (即“at”系統調用或以“f”為前綴的那些意味着做某些特定的事情?)
歷史:-)
一旦創建了系統調用,就無法對其進行更改,因此當需要新功能時,將創建新的系統調用。 (當然這意味着在創建新的系統調用之前有一個很高的標准)。
是的,有一些命名規則。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.