Tôi có vài năm kinh nghiệm lập trình c. Bây giờ tôi quyết định làm việc hướng tới phát triển mô-đun hạt nhân Linux. Tuy nhiên, tôi thậm chí không thể bắt đầu. Tôi đã biên dịch mã này trong ubuntu.Làm cách nào để mã hóa mô-đun hạt nhân Linux?
#include <linux/module.h>
int init_module(void){ printk("<1> hellp"); return 0;}
void cleanup_module(void){ printk("<1> bye");}
tuy nhiên, thông báo lỗi không hoạt động là "Định dạng mô-đun không hợp lệ". sau khi googling tôi figured nó có thể là một số vấn đề với khả năng tương thích phiên bản. Và không có cách nào tốt để giải quyết nó. Vì vậy, có thể một số nhà phát triển mô-đun hạt nhân thực sự cho tôi một số lời khuyên? Tôi nên chuẩn bị môi trường nào trước khi bắt đầu học?
Cảm ơn!
* "Bạn đang thiếu __init và __exit macro, ..." * - Việc sử dụng của '__init' và '__exit' không yêu cầu; họ chỉ xác định (các) phần văn bản có thể được giải phóng sau khi khởi động xong. Những gì được yêu cầu cho một mô-đun trình điều khiển là khai báo cho hai điểm vào bằng cách sử dụng 'module_init()' và 'module_exit()'. – sawdust