Хтось знає про будь-які навчальні програми з програмування ядра / драйвера?


12

Мені цікаво використовувати RPi, щоб навчити себе програмування апаратного рівня. Я шукав в Інтернеті деякі підручники для RPi, але все, що я знаходжу, є загальними підручниками "як скласти ядро". Мене більше цікавлять фактичні підручники типу "як писати код ядра / драйвери пристроїв". Чи є конкретні навчальні посібники для RPi, чи вистачить будь-якого підручника * nix для програмування апаратного рівня?



2
@ Jivings: Пропонований дублікат не стосується жодної частини мого запитання. У Elinux і CAS, схоже, немає нічого про програмування ядра RPi, тоді як програмування GPIO ледь дряпає поверхню драйверів для запису. Крім того, у запропонованому дублікаті RPi проти загальних * nix навчальних посібників немає жодної згадки.
Якуб

Відповіді:


5

Я не думаю, що ви знайдете кращий ресурс, ніж цей, якщо ви не знайдете когось особисто.

Насолоджуйтесь

PS Якщо посилання відмирає, книга називається драйверами пристроїв Linux.


Це виглядає дуже добре, я завжди був шанувальником серії O'Reilly.
Якуб

Тож я вважаю, що програмування драйверів у ядрі Linux досить легко перенесеться на Raspbian?
Якуб

Raspbian - це лише менший дистрибутив Debian, зібраний із спеціальними параметрами, характерними для апаратного забезпечення на Raspberry Pi. Так, так, хоча я не є експертом ні з програмування драйверів, ні з Raspberry Pi, тож давайте чекати, коли хтось більш обізнаний
задзвенить

Здається, дуже застаріла (Kernel 2.6 та з 2009 року). Що-небудь більш сучасне?
Лукаш Кнут


2

Окрім книги про LDD, ви також можете переглянути документи навчальних курсів на сайті free-electrons.com . Там усі матеріали курсу відкриті. Цілком підходить для тих, хто трохи почав програмування ядра Linux або хто шукає глибшого та ширшого розуміння конкретних тем / областей.

Для початку ви можете переглянути хоча б перші два курси:

І не забувайте про перехресний посилання на вихідний код lxr на free-electrons.com , де ви можете перевірити вихідний код на різні версії ядра.

Якщо ви віддаєте перевагу IDE, особливо NetBeans або Eclipse, і знаєте, як запускати сценарії Perl та Makefile, ви можете подивитися на інструменти мого проекту Nbk на github.com . Сценарій дозволяє повністю проіндексувати проект ядра за допомогою набору NetBeans C ++. Це значно допомагає покращити досвід розуміння більшості внутрішніх структур та відносин вихідного коду. Зазвичай я роблю мінімальну конфігурацію ядра плюс конкретний пристрій, на який я дивлюся, і будую збірку та роблю індекс в NetBeans лише для аналізу коду ядра. Поки реально розробити інший проект. Цей скрипт тестується безпосередньо в NetBeans, але з програмою Eclipse ідея була б однаковою (потрібно змінити сценарій відповідно до Eclipse).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.