Uygulama geliştiricisi olarak son dört yıldır * nix ortamlarında çalıştım (çoğunlukla C).
* Nix dahili bilgilerimi geliştirmek için lütfen bazı kitaplar / bloglar vs. öner.
Uygulama geliştiricisi olarak son dört yıldır * nix ortamlarında çalıştım (çoğunlukla C).
* Nix dahili bilgilerimi geliştirmek için lütfen bazı kitaplar / bloglar vs. öner.
Yanıtlar:
Önceki yayınlarda yapılan ince önerilere ek olarak, Unix'in "ruhunu" nasıl anlayacağınızla ilgili bazı öneriler:
Kernighan ve Pike tarafından "Unix Programlama Ortamı": eski bir kitap, ancak Unix ortamının özünü gösteriyor. Aynı zamanda etkili bir kabuk kullanıcısı olmanıza yardımcı olacaktır.
"Sabırsızlık için Unix", Unix ortamında gezinmeyi öğrenmek için yararlı bir kaynaktır. Favorilerimden biri.
Yetkili bir kullanıcı olmak istiyorsanız, O'Reilly'nin Unix profesyonellerinin ortak ipuçlarından ve püf noktalarından oluşan "Unix Elektrikli El Aletleri" nden daha iyi bir şey olamaz.
Daha önce hiç görmediğim başka bir kitap, eğlenceli bir ışık ve eğitim okuması, "İşletim Sistemleri, Tasarım ve Uygulama", Andy Tanenbaum'un 12k kod satırındaki Unix işletim sisteminin kaynak kodunu içeren kitabı.
Kesinlikle Unix Ortamında İleri Düzey Programlamayı Stevens tarafından okumak istiyorsunuz . Advanced başlığının sizi korkutmasına izin vermeyin, çok okunabilir.
Sık kullandığım kitaplar / siteler / kılavuzlar:
Linux Çekirdeği : Bu kitap çevrimiçi olarak TLDP'nin (Linux Belgelendirme Projesi) bir parçası olarak yayınlanmaktadır. Güncel değildir ve dahili bir kılavuz değildir, ancak çekirdeğin prensipleri ve mekanizmaları hakkında faydalı bilgiler ve tanıtım materyalleri sağlar.
Linux Çekirdeğini Anlamak: IMHO, işletim sistemlerinin tasarımı ve konsepti hakkında bilgisi olan yeni başlayanlar için en iyi kitap. Güncel olarak kabul edilir, çekirdeğin 2.6 sürümünü kapsar. Kitabın bir HTML sürümü web'de var, ancak bence büyük olasılıkla warez.
Linux çekirdeği içsellerini okurken, genellikle donanımın nasıl çalıştığını ve donanımın soyut biçimde sağladığını öğrenmeniz gerekir. Intel'in bunun için harika kılavuzları var.
Intel 64 ve IA-32 Architectures Yazılım Geliştirici El Kitapları : Güncel, ayrıntılı bilgi.
Intel 80386 Programcı Referans El Kitabı : Bunun biraz eski olduğunu biliyorum ama bu el kitabından çok şey öğrendim.
İşletim sistemlerinin tasarımı ve konsepti hakkında çalışmanız gerekirse, şu kitabı öneririm: İşletim Sistemi Kavramları .
Ceviz Kabuğundaki O'REILLY Linux Çekirdeği
ve O'REILLY Linux Aygıt Sürücüleri
Linux Systems Programming veya Robert Love'dan başka bir kitap (hepsi O'Reilly kitaplarıdır):
Diğerleriyle aynı fikirdeyim ve Stevens'ın APUE'sinin (ikinci basıma sahibim) klasik olduğunu söylemeliyim . Ayrıca, Eric Raymond’ın UNIX Programlama Sanatı’nın da listemde Stevens’la olduğunu belirtmek isterim.
Eh, BSD Unices için, http://www.freebsd.org/doc/tr/books/design-44bsd/ adresinde bazı kısımları ücretsiz olarak görünen 4.4BSD İşletim Sisteminin Tasarımı ve Uygulaması yer almaktadır.
Linux Aygıt Sürücüleri başka iyi bir kaynaktır. İçsel çalışmalara girmeniz için başka bir yol sağlar. Önsözden:
Bu, yüzeyde, Linux sistemi için aygıt sürücüleri yazma hakkında bir kitap. Tabii ki bu değerli bir amaçtır; Yeni donanım ürünlerinin akışının yakında herhangi bir zamanda yavaşlaması beklenmiyor ve birileri bu yeni cihazların Linux ile çalışmasını sağlamak zorunda kalacak. Fakat bu kitap aynı zamanda Linux çekirdeğinin nasıl çalıştığı ve çalışmalarını ihtiyaçlarınıza veya ilgi alanlarınıza göre nasıl uyarlayabileceğinizle de ilgili. Linux açık bir sistemdir; Bu kitapla daha büyük bir geliştirici topluluğunun daha açık ve erişilebilir olmasını umuyoruz.
Çekirdeğin niçin ve neyi desteklemesi gerektiği hakkında bir fikir edinmek için, Eric Raymond tarafından yayınlanan Unix Programlama Sanatı'na bakın . İşleri oldukça yüksek, felsefi düzeyde alır, ancak diğer kitapların nitrit-kumlu detaylarıyla iyi gider.
Aşağıdaki iki kitabı da önerebilir miyim (diğerlerinin yanı sıra):
Birincisini kapsamlı bir şekilde yönlendirdim (Daha iyi hafızam olsaydı ve daha fazla zamanım olsaydı, şimdi bildiğimden çok daha fazlasını bilirdim; ama bu başka bir hikaye). Şu anda ikincisini okuyorum.