Bạn có thể sử dụng hướng dẫn Glibc làm tài liệu tham khảo. Nó không dành cho người mới bắt đầu tuyệt đối, nhưng nếu bạn thành thạo C một cách hợp lý, bạn sẽ có thể đọc một phần và viết một chương trình làm việc.
Bạn có thể tìm thấy nguồn của các công cụ GNU trên trang web GNU ; cách dễ nhất để có được nó là lấy các gói nguồn trên bản phân phối Linux của bạn (ví dụ: apt-get source coreutils
nếu bản phân phối của bạn sử dụng các tiện ích đóng gói Debian). Tôi khuyên bạn nên bắt đầu với BusyBox hơn là các công cụ GNU. BusyBox là một bộ tiện ích cho các hệ thống nhúng Linux; nó nhỏ hơn và đơn giản hơn các tiện ích GNU.
Bạn có thể chạy strace ls
để xem những gì hệ thống ls
đang thực hiện. Lưu ý rằng khi bạn viết chương trình, bạn không gọi các cuộc gọi hệ thống trực tiếp, bạn gọi các chức năng trong thư viện C để thực hiện các cuộc gọi hệ thống. Đối với những thứ như thao tác tệp, thư viện C có chức năng như open
và read
khá gần với các cuộc gọi hệ thống.
Đối với việc học, một cuốn sách (trên giấy) thường hữu ích. Lập trình nâng cao trong môi trường UNIX® ( APUE ) là một cổ điển. Nếu bạn nhận được nó, hãy chắc chắn để có được phiên bản thứ hai, vì phiên bản đầu tiên khá cũ. Cuốn sách này là tài liệu tham khảo, nhưng những cuốn sách khác có thể phù hợp hơn cho người mới bắt đầu; cửa hàng xung quanh.