__attribute__如何使用的記錄


在內核中看到各種個樣的__attribute__的屬性的使用,在這個帖子中,逐漸記錄我看到的每個使用。


 

# define __rcu __attribute__((noderef, address_space(4)))

RCU代表的是 "read, copy, update"。它是一種算法,允許多個讀者訪問數據,並且同時允許修改者,刪除者能夠進行操作。

如果內核使用 CONFIG_SPARSE_RCU_POINTER 的編譯, __rcu 就會被定義為上面的定義。

這是一種標記,可以給Sparse code 分析工具來對於某些東西進行警告。

引用 http://stackoverflow.com/questions/17128210/what-does-rcu-stands-for-in-linux

可以知道: __rcu sparse 檢查:使用__rcu 附上 RCU保護的數據結構,如果你沒有使用rcu_dereference()類中某個函數,Sparse就會警告你這個操作。

 


__attribute__((aligned(4)))

參考網頁:https://gcc.gnu.org/onlinedocs/gcc-4.0.2/gcc/Type-Attributes.html

aligned (alignment): 這個屬性指定對於一個變量,最小的對齊標准。

 


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM