Bacaan yang disarankan untuk lebih memahami internal Unix / Linux [ditutup]

54

Saya telah bekerja di lingkungan * nix selama empat tahun terakhir sebagai pengembang aplikasi (kebanyakan di C).

Harap sarankan beberapa buku / blog, dll. Untuk meningkatkan pengetahuan internal * nix saya.

Hemant
sumber
1
dengan pengalaman Anda hanya membaca sumber kernel akan membantu.)
Eimantas
3
RTFS selalu yang terbaik, tetapi terkadang sedikit membaca lite membuat sumbernya sedikit lebih mudah dimengerti.
Stephen Jazdzewski
Seseorang yang memiliki hak mengedit benar-benar harus mengedit judul itu.
jjclarkson
1
Saat ini saya mengikuti saran Matt Might dalam artikelnya, Apa Yang Harus Diketahui Setiap Ilmu Komputer . Dia merekomendasikan Lingkungan Pemrograman Unix oleh Kernighan dan Pike, Linux Server Hacks, UNIX dan Linux System Administration Handbook oleh Nemeth, Synder, Hein dan Whaley, Pengembangan Kernel Linux oleh Love, dan Pemrograman Jaringan Unix oleh Stevens, Fenner dan Rudoff.
Anthony
1
@Anthony, itu adalah sumber yang bagus, tetapi lebih berorientasi ke userland / baris perintah. Juga, khususnya Linux berubah sangat cepat sekarang, Anda harus tetap up to date. Sumber daya yang bagus adalah LWN dan kernelnewbies .
vonbrand

Jawaban:

36

Berikut adalah beberapa saran tentang bagaimana memahami "semangat" Unix, di samping rekomendasi bagus yang telah dilakukan di posting sebelumnya:

  • "Lingkungan Pemrograman Unix" oleh Kernighan dan Pike: sebuah buku tua, tetapi ia menunjukkan esensi dari lingkungan Unix. Ini juga akan membantu Anda menjadi pengguna shell yang efektif.

  • "Unix for the Imperatient" adalah sumber yang berguna untuk belajar menavigasi lingkungan Unix. Salah satu favoritku.

Jika Anda ingin menjadi pengguna yang kuat, tidak ada yang lebih baik dari O'Reilly "Unix Power Tools" yang terdiri dari tips dan trik kolektif dari para profesional Unix.

Buku lain yang belum saya lihat menyebutkan bahwa itu adalah cahaya yang menyenangkan dan bacaan pendidikan adalah "Sistem Operasi, Desain dan Implementasi", buku dari Andy Tanenbaum yang memasukkan kode sumber untuk sistem operasi Unix lengkap dalam 12k baris kode.

miguel.de.icaza
sumber
9
mengapa sebuah buku dengan 864 halaman disebut sesuatu "untuk yang tidak sabar"?
amfibi
12
@amphibient Saya kira Anda belum melihat edisi "untuk pasien".
Christopher Poile
3
Ini bukan "internal" ....
user997112
8

Buku / situs / manual yang sering saya gunakan:

  • Kernel Linux : Buku ini diterbitkan online sebagai bagian dari TLDP (The Linux Documentation Project). Ini bukan yang terbaru dan bukan manual internal, tetapi memberikan informasi yang berguna dan bahan pengantar tentang prinsip dan mekanisme kernel.

  • Memahami Kernel Linux: IMHO, ini adalah buku terbaik untuk pemula yang memiliki latar belakang tentang desain dan konsep sistem operasi. Ini diterima sebagai yang terbaru, mencakup versi 2.6 dari kernel. Ada versi HTML buku di web, tapi saya pikir itu kemungkinan besar adalah warez.

  • Beberapa buku tentang manajemen memori virtual

Saat mempelajari Linux kernel internal, Anda biasanya perlu mempelajari cara kerja perangkat keras dan perangkat keras apa yang disediakan secara abstrak. Intel memiliki manual yang bagus untuk ini.

Jika Anda perlu belajar tentang desain dan konsep sistem operasi, saya sarankan buku berikut: Konsep Sistem Operasi .

kotor
sumber
1
Ada buku lain tentang manajer memori virtual linux. Ini termasuk penjelasan kode sumber. URL: ptgmedia.pearsoncmg.com/images/0131453483/downloads/… (Legal untuk mengunduh)
dirtybit
+1. buku tentang "manajer memori virtual" ?? sepertinya sangat menarik. terima kasih :-).
Hemant
6

Kernel Linux O'REILLY secara singkat
dan Driver Perangkat O'REILLY Linux

Stephen Jazdzewski
sumber
1
Singkatnya kernel Linux adalah tentang bagaimana membangun dan menginstal kernel, tidak benar-benar tentang internal Linux / Unix. Bukan untuk mengatakan itu bukan buku yang bagus, tapi saya agak bias. Oh, kedua buku ini gratis online jika Anda ingin melihatnya di sana.
Greg KH
2

Saya setuju dengan yang lain dan saya harus mengatakan bahwa APUE Stevens (saya punya edisi kedua) adalah klasik. Saya juga ingin menambahkan bahwa Programming of the UNIX Programming karya Eric Raymond ada di sana bersama Stevens di daftar saya.

λ Jonas Gorauskas
sumber
2

Linux Device Drivers adalah sumber yang bagus. Itu akan memberi Anda cara lain untuk masuk ke pekerjaan batin. Dari kata pengantar:

Di permukaan, ini adalah buku tentang menulis driver perangkat untuk sistem Linux. Itu adalah tujuan yang layak, tentu saja; aliran produk perangkat keras baru kemungkinan tidak akan melambat dalam waktu dekat, dan seseorang harus membuat semua gadget baru itu bekerja dengan Linux. Tetapi buku ini juga tentang bagaimana kernel Linux bekerja dan bagaimana menyesuaikan kerjanya dengan kebutuhan atau minat Anda. Linux adalah sistem terbuka; dengan buku ini, kami berharap, buku ini lebih terbuka dan dapat diakses oleh komunitas pengembang yang lebih besar.

Larry Smithmier
sumber
1

Untuk mengetahui mengapa dan apa yang dimaksud kernel untuk didukung, lihatlah The Art of Unix Programming oleh Eric Raymond. Dibutuhkan hal-hal pada tingkat filosofis yang cukup tinggi, tetapi akan cocok dengan detail seluk beluk dari buku-buku lain.

Phil Miller
sumber
1

Bolehkah saya menyarankan dua buku berikut juga (selain yang lain):

Saya telah merujuk yang pertama secara ekstensif (Jika saya memiliki ingatan yang lebih baik, dan memiliki lebih banyak waktu, saya akan tahu lebih banyak daripada yang saya lakukan sekarang, tetapi itu adalah cerita lain). Saya sedang membaca yang kedua.

Amit
sumber