Không biết cái _init
và _exit
đó là gì, ai biết chỉ mình với ạ . Thanks.
Nhờ giải thích giúp code C
Nó ở đây, nhưng bạn có đủ sức đọc hay không? link: http://blog.techveda.org/kernel__initcalls/
Hiểu một cách đơn giản, các __init
và __exit
là macros (kiểu là GCC attributes), nó thông báo cho compiler đặt code của các hàm sau khi compile vào trong section tương ứng: .init.text
và .exit.text
// Source code cho người lười click.
#define __init __section(.init.text) __cold
#define __section(S) __attribute__((__section__(#S)))
#define __cold __attribute__((cold))
// __exit cũng tương tự.
Keywords để dễ hiểu:
- gcc x86 function attributes
- gcc macro concatenation
- gcc macro stringify
P/s: search trên Gu gồ, ráng chịu khó đọc tiếng Anh, bạn sẽ hiểu được một ít code trong hình Chúc bạn thành công.
1 Like
thanks sir
20 character