Học lập trình hệ thống Linux bằng cách thực hiện các dự án [đã đóng]


7

Tôi chỉ có một ý tưởng rất cơ bản về lập trình hệ thống linux. Tôi chưa thực hiện bất kỳ dự án thực tế nào bằng lập trình hệ thống linux. Trong công ty hiện tại của tôi, tôi làm công việc quản trị hệ thống, nhưng tôi thích Lập trình hệ thống Linux hơn. Tôi muốn tự mình thực hiện một số dự án, để tôi có thể đưa những dự án đó vào sơ yếu lý lịch của mình khi tôi xin việc ở một công ty khác. Vui lòng cho tôi biết liệu có bất kỳ dự án nào mà tôi có thể học thêm lập trình hệ thống linux bằng cách thực hiện một số công cụ lập trình thực sự.

Xin lưu ý rằng tôi chỉ có kinh nghiệm về lập trình C và không có lập trình hệ thống Linux. Nhưng tôi biết những điều rất cơ bản về lập trình hệ thống linux.

Cảm ơn.


1
không phải là một câu trả lời, nhưng tôi khuyên bạn nên APUE2e để bắt đầu tìm hiểu API Unix
xenoterracide

Câu trả lời:


8

C là tốt cho lập trình hệ thống. Là một điểm khởi đầu, bạn có thể xem những cuốn sách từ câu hỏi này . Vì lập trình hệ thống là một lĩnh vực rộng lớn, có lẽ họ cho bạn một gợi ý nơi bạn có thể bắt đầu.

Dự án cuối cùng chắc chắn sẽ là kernel linux, nhưng nó khó như dự án đầu tiên của bạn.

Một lối vào trường trơn tru hơn sẽ là, để viết lại một số công cụ dòng lệnh. Lấy lshoặc cathoặc một số công cụ dòng lệnh khác, và cố gắng viết lại nó. Bắt đầu với chức năng cơ bản nhất của lệnh và sau đó bạn có thể cố gắng thêm nhiều chức năng hơn theo thời gian. Trong quá trình này, bạn có thể lấy ý tưởng để cải thiện các công cụ hiện có hoặc tự mình thực hiện một công cụ mới.


3
+1 để thực hiện lại các công cụ hiện có. Viết shell là tuyệt vời cho việc học - làm việc với các tập tin, rèn, v.v.
André Paramés

4

Trong hệ thống quản trị loại công việc của bạn, hiện một số công việc bạn làm một trong hai câu đố bạn (như thế nào làm việc?) Hoặc kích thích bạn (nên không công việc tốt hơn / nhanh hơn?)?

Tìm một vài trong số các nhiệm vụ đó, xác định tính năng rất cơ bản mà bạn không hiểu hoặc gây khó chịu hoặc đánh đố bạn. Cố gắng thực hiện tính năng khó hiểu, khó chịu hoặc chậm trong C.

Bạn sẽ có được một nền giáo dục kỹ lưỡng hơn nếu bạn có một cái gì đó thiết thực thúc đẩy bạn, và bạn sẽ có một điểm dừng. Khi bạn đã triển khai tính năng rất cơ bản của mình trong C, bạn có thể dừng lại, đánh giá những gì bạn đã làm, sau đó chọn một nhiệm vụ khác vẫn đánh đố bạn hoặc làm bạn khó chịu. Theo những gì bạn đã học, một số nhiệm vụ sẽ có vẻ khác so với trước đây.


1
... Và như một tác dụng phụ một khi bạn làm việc với một vài điều và bạn học được một số điều bạn có thể làm lại những điều bạn đã thực hiện học hỏi thêm trong quá trình. Điều này dạy cho bạn nhiều hơn bởi chính nó.
Pryftan
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.