Đề nghị đọc để hiểu rõ hơn về nội bộ Unix / Linux [đã đóng]


54

Tôi đã làm việc trên các môi trường * nix trong bốn năm qua với tư cách là nhà phát triển ứng dụng (chủ yếu bằng C).

Vui lòng đề xuất một số sách / blog, vv để cải thiện kiến ​​thức nội bộ * nix của tôi.


1
với kinh nghiệm của bạn, chỉ đọc nguồn kernel sẽ giúp ích.)
Eimantas

3
RTFS luôn luôn là tốt nhất, nhưng đôi khi đọc một chút lite làm cho nguồn dễ hiểu hơn một chút.
Stephen Jazdzewski

Một người có đặc quyền chỉnh sửa thực sự phải chỉnh sửa tiêu đề đó.
jjclarkson

1
Tôi hiện đang làm theo lời khuyên của Matt Might trong bài viết của mình, Điều mà mọi chuyên gia khoa học máy tính nên biết . Ông đã đề xuất Môi trường lập trình Unix của Kernighan và Pike, Linux Server Hacks, Sổ tay quản trị hệ thống UNIX và Linux của Nemeth, Synder, Hein và Whaley, Phát triển nhân Linux bởi tình yêu và Lập trình mạng Unix của Stevens, Fenner và Rudoff.
Anthony

1
@Anthony, đó là những tài nguyên tuyệt vời, nhưng hướng nhiều hơn đến dòng người dùng / dòng lệnh. Ngoài ra, đặc biệt là Linux đang thay đổi rất nhanh ngay bây giờ, bạn cần cập nhật. Tài nguyên tốt đẹp là LWNkernelnew sở thích .
vonbrand

Câu trả lời:


36

Dưới đây là một số gợi ý về cách hiểu "tinh thần" của Unix, ngoài các khuyến nghị tốt đã được thực hiện trong các bài viết trước:

  • "Môi trường lập trình Unix" của Kernighan và Pike: một cuốn sách cũ, nhưng nó cho thấy bản chất của môi trường Unix. Nó cũng sẽ giúp bạn trở thành một người dùng shell hiệu quả.

  • "Unix for the Impatient" là một tài nguyên hữu ích để học cách điều hướng môi trường Unix. Một trong những sở thích của tôi.

Nếu bạn muốn trở thành người sử dụng năng lượng, không có gì tốt hơn "Công cụ quyền lực Unix" của O'Reilly bao gồm các mẹo và thủ thuật tập thể từ các chuyên gia Unix.

Một cuốn sách khác mà tôi chưa từng thấy đề cập đến đó là một cuốn sách vui về giáo dục và giáo dục là "Hệ điều hành, thiết kế và triển khai", cuốn sách của Andy Tanenbaum bao gồm mã nguồn cho một hệ điều hành Unix hoàn chỉnh trong 12k dòng mã.


9
Tại sao một cuốn sách với 864 trang được gọi là bất cứ điều gì "dành cho người thiếu kiên nhẫn"?
đổ bộ

12
@amphibient Tôi cho rằng bạn chưa thấy phiên bản "dành cho bệnh nhân".
Christopher Poile

3
Đây không phải là "nội bộ" ....
user997112


14

2
+1 cho sách Lions. MIT xv6 là phiên bản hiện đại của Lions v6 chạy trên các máy x86 và sử dụng ANSI C. Cả mã nguồn và sách giáo khoa liên quan đều có thể được tải xuống.
Daniel Näslund

8

Sách / trang web / hướng dẫn sử dụng mà tôi đang sử dụng thường xuyên:

  • Hạt nhân Linux : Cuốn sách này được xuất bản trực tuyến như một phần của TLDP (Dự án Tài liệu Linux). Nó không cập nhật và không phải là hướng dẫn nội bộ, nhưng cung cấp thông tin hữu ích và tài liệu giới thiệu về các nguyên tắc và cơ chế của hạt nhân.

  • Hiểu về hạt nhân Linux: IMHO, đây là cuốn sách tốt nhất cho người mới bắt đầu có kiến ​​thức về thiết kế và khái niệm của hệ điều hành. Nó được chấp nhận là cập nhật, bao gồm phiên bản 2.6 của kernel. Có một phiên bản HTML của cuốn sách trên web, nhưng tôi nghĩ đó có lẽ là warez.

  • Một số cuốn sách về quản lý bộ nhớ ảo

Trong khi nghiên cứu phần bên trong linux linux, bạn thường cần tìm hiểu cách phần cứng hoạt động và phần cứng cung cấp theo cách trừu tượng. Intel có hướng dẫn tuyệt vời cho việc này.

Nếu bạn cần nghiên cứu về thiết kế và khái niệm của hệ điều hành, tôi đề nghị cuốn sách sau: Khái niệm hệ điều hành .


1
Có một cuốn sách khác về trình quản lý bộ nhớ ảo của linux. Nó bao gồm các giải thích mã nguồn. URL: ptgmedia.pearsoncmg.com/images/0131453483/doads/iêng (Pháp lý để tải xuống)
Dirtbit

+1. cuốn sách về "quản lý bộ nhớ ảo" ?? có vẻ rất thú vị cảm ơn :-).
Hemant





2

Trình điều khiển thiết bị Linux là một tài nguyên tốt khác. Nó sẽ cho bạn một cách khác để đi vào hoạt động bên trong. Từ lời nói đầu:

Trên bề mặt, đây là một cuốn sách viết về trình điều khiển thiết bị cho hệ thống Linux. Đó là một mục tiêu xứng đáng, tất nhiên; dòng chảy của các sản phẩm phần cứng mới dường như sẽ không chậm lại bất cứ lúc nào và ai đó sẽ phải làm cho tất cả các tiện ích mới này hoạt động với Linux. Nhưng cuốn sách này cũng là về cách thức hoạt động của nhân Linux và cách điều chỉnh hoạt động của nó theo nhu cầu hoặc sở thích của bạn. Linux là một hệ thống mở; với cuốn sách này, chúng tôi hy vọng, nó sẽ cởi mở hơn và dễ tiếp cận hơn với cộng đồng các nhà phát triển lớn hơn.


1

Để hiểu được lý do tại sao và ý nghĩa của hạt nhân hỗ trợ, hãy xem Nghệ thuật lập trình Unix của Eric Raymond. Nó đưa mọi thứ ở một mức độ khá cao, mang tính triết học, nhưng nó sẽ phù hợp với các chi tiết khó chịu của các cuốn sách khác.


1

Tôi có thể đề xuất hai cuốn sách sau đây không (ngoài những cuốn khác):

Tôi đã giới thiệu rộng rãi câu chuyện đầu tiên (Nếu tôi có trí nhớ tốt hơn và có nhiều thời gian hơn, tôi sẽ biết nhiều hơn bây giờ; nhưng đó là một câu chuyện khác). Tôi hiện đang đọc cái thứ hai.

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.