Herkes herhangi bir çekirdek / sürücü programlama öğreticileri biliyor mu?


12

Donanım düzeyinde programlamayı kendime öğretmek için RPi'yi kullanmakla ilgileniyorum. Ben RPi için bazı öğreticiler için internette aradım ama tüm bulduğum genel "nasıl çekirdek derlemek için" öğreticiler. Ben gerçek "çekirdek kodu / aygıt sürücüleri yazma" tipi öğreticiler ilgileniyorum. RPi için belirli öğreticiler var mı, yoksa donanım düzeyinde programlama için herhangi bir * nix öğreticisi yeterli mi?



2
@Jivings: Önerilen kopya, sorumun herhangi bir bölümünü ele almıyor. Elinux ve CAS, RPi çekirdek programlama hakkında bir şeyleri yokken, GPIO programlama, yazma sürücülerinin yüzeyini zorlukla çiziyor. Ayrıca, RPi ve genel * nix öğreticilerinin önerilen yinelemesinde de bahsedilmemiştir.
Jakub

Yanıtlar:


5

Sana daha iyi bir kaynak bulmak sanmıyorum bu şahsen birini bilmedikçe.

Zevk almak

Not: Bağlantı koparsa, kitaba Linux Aygıt Sürücüleri denir .


Bu çok iyi görünüyor, her zaman O'Reilly serisinin hayranı oldum.
Jakub

Bu yüzden Linux çekirdeğindeki sürücü programlamanın Raspbian'a kolayca aktarılabileceğini mi sanıyorum?
Jakub

Raspbian temel olarak Raspberry Pi'deki donanıma özgü özel parametrelerle derlenmiş daha küçük bir Debian dağılımıdır. Öyleyse evet, ne sürücü programlama ne de Ahududu Pi konusunda uzman
olmamam gerekiyor

Çok eski görünüyor (Çekirdek 2.6 ve 2009). Daha güncel bir şey var mı?
Lukas Knuth


2

LDD kitabına ek olarak, free-electrons.com adresindeki eğitim kursu belgelerine de bakabilirsiniz . Orada tüm ders materyalleri açık kaynaklı. Linux çekirdeği programlamasına biraz başlamış olan veya belirli konuları / alanları daha derin ve daha iyi anlamak isteyen kişiler için oldukça uygundur.

Başlamak için en azından ilk iki kursa bakabilirsiniz:

Ve çeşitli çekirdek sürümleri için kaynak kodunu kontrol edebileceğiniz free-electrons.com adresindeki lxr kaynak kodu çapraz referans sitesini de unutmayın .

Özellikle NetBeans veya Eclipse gibi bir IDE'yi tercih ediyorsanız ve perl betikleri ve Makefile'ı nasıl çalıştıracağınızı biliyorsanız , github.com'daki Nbk projeme bakabilirsiniz . Komut dosyası, NetBeans C ++ kitiyle bir çekirdek projesini tam olarak dizine eklemenizi sağlar. Kaynak kodun iç yapılarını ve ilişkilerini daha iyi anlama deneyimini geliştirmeye büyük ölçüde yardımcı olur. Genelde çekirdek ve baktığım belirli bir aygıtın minimal yapılandırmasını yapıyorum ve NetBeans'te sadece çekirdek kodunu analiz etmek için bir dizin oluşturuyorum. Başka bir projede gerçek gelişimi yaparken. Bu komut dosyası doğrudan NetBeans'te test edilir, ancak Eclipse ile fikir aynı olur (betiği Eclipse'e uyacak şekilde değiştirmeniz gerekir).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.