2013-07-31 14 views
20

Chcę poznać podstawy wbudowanego linuxa. Aby to zrobić, zakładam, że muszę iść i kupić jakiś rodzaj płyty sprzętowej i mieć kod jądra Linuksa.Wskazówki dotyczące nauki wbudowanego linuxa

Nie mam pojęcia, od czego zacząć, a wszelkie wskazówki/wskazówki będą mile widziane. Idealnie chciałbym, aby ludzie zwrócili uwagę na pełny system (np. Ten "zestaw płyt z linuxem" z tymi "podręcznikami" jest bardzo dobry).

również koszt jest czynnikiem, jak robię to osobiście nie jako firma:)

Dzięki bardzo, Kod

+2

Jeśli możesz sobie pozwolić, kup Beaglebone Black lub Raspberry Pi lub dowolne inne płyty dostępne na rynku.Naucz się podstawowych pojęć, takich jak dostęp do pinów GPIO, czytanie ADC, I2C, SPI, UART z przestrzeni użytkownika. Gdy znajdziesz wygodne spojrzenie na sterowniki, np. GPIO, USB itd., Które zawsze Cię interesują :). –

+0

Dlaczego nie używać QEMU [www.qemu.org] - darmowy projekt emulatora open source, który jest mocno wykorzystywany (np. Android SDK). Możesz znaleźć samouczki do emulowania maszyny ARM/Linux przy użyciu QEMU. Np. http://balau82.wordpress.com/2010/03/22/compiling-linux-kernel-for-qemu-arm-emulator/ – kaiwan

+0

Dziękuję za uwagi:), czytając posty poniżej i rozglądając się po kilku inne źródła, wydaje się, że beagle black jest popularnym wyborem i wygląda raczej tanio !, ale QEMU wydaje się również wart uwagi, jeśli jest to, co myślę, że sugerujesz to: o (tj. emulator komputera, gdzie możesz zhakować kod) –

Odpowiedz

19

Potrzebne będą:

1 - Boards: Zacząłem z BeagleBoard. Nowe urządzenie beaglebone black jest już dostępne. Dla psów rasy beagle jest duża społeczność wsparcia; wiele stron howto here i here, i gotowe do zainstalowania images. Możesz również samodzielnie zbudować obraz (krok 3). Te płyty mają większość urządzeń peryferyjnych, z którymi być może będziesz musiał grać, a także mogą być używane jako dodatkowy komputer!

2 - Książki: Jak zauważył Mali, Linux jest szybko poruszającym się obiektem, ale we wczesnej fazie nauki będziesz potrzebował solidnego odniesienia. Proponuję "Embedded Linux Primer: A Practical Real-World Approach", ponieważ ma wiele przykładów i prowadzi cię krok po kroku. Jest też "Building Embedded Linux Systems".

3 - Oprogramowanie układowe: a) toolchain, b) system plików root i c) obraz jądra. "Buildroot" jest najłatwiejszy na początek. Openembedded i Yocto mają bardzo stromą krzywą uczenia się. "Embedded Linux Primer: A Practical Real-World Approach" ma kilka przykładów użycia buildroota.

+0

Dzięki bardzo wiele za odpowiedź! Wszystkie te opcje są naprawdę doceniane, dobrze słyszeć, że wiele osób rozważa podobne opcje :) ... wygląda na to, że beagle jest na najlepszej drodze do rozpoczęcia:) –

+0

Wszystkie odpowiedzi, gdzie naprawdę dobrze, dziękuję !, ale ten wydaje się najbardziej ściśle pasuje do tego, co chciałem (i rzeczywiście dostałem). Mam BBB i dwie książki, które polecane ... nie mają aż tak toolchain i takich .... jest dużo do przeczytania! –

10

Masz jakieś fajne płyty (nie drogie) w Olimex Również Armadeus to fajny projekt na początek.

To naprawdę zależy od tego, co chcesz robić i co lubisz, np. Przyczynianie się do Replicant również powinno być bardzo zabawne. Można również znaleźć tani router obsługiwany przez openWrt. Innymi słowy, znajdź mały projekt, w którym możesz się włamać i wybrać sprzęt po.

W książkach, myślę, że "Building embedded Linux Systems" jest koniecznością, ale Linux jest szybko poruszającym się celem, więc książki mogą być nieaktualne.

Aby poznać podstawy, proponuję, aby Buildroot zbudować swój pierwszy system, jest to proste w porównaniu z Open Embedded lub systemami podobnymi do Yocto.

szczęśliwy Hacking,

+0

Thnakyou bardzo :) ... jeszcze jeden dla Buildroot, to wydaje się uzupełniać moją listę beagle + buildroot jako krok początkowy dla mnie. –

+0

To wydaje się być dobrym wyborem, z buildrootem nauczysz się wielu podstawowych rzeczy: jak wygenerować kompilację krzyżową toolchain, zbudować jądro dla łuku ramienia, skompilować krzyż i wygenerować rootfs z busybox, a syn na .. – Mali

6

Właśnie zacząłem na wbudowanym systemie Linux. Właśnie dostałem pracę, w której pracuję w oprogramowaniu układowym dla serii produktów.
Czytam tę książkę "Embedded Linux Primer: A Practical Real-World Approach".
Wszystko, co zaimplementowano w produktach, jest obecne w tej książce.
Gorąco polecam tę książkę. To jest wspaniałe.
Dla mnie pierwszą rzeczą, którą powinieneś zrobić przed nurkowaniem, jest przeczytanie tej książki. Książka jest kopalnią złota.

+0

Dzięki, w rzeczywistości, na podstawie tych zaleceń jest to książka, którą czytam w wolnym czasie z moimi pantoflami i filiżanką herbaty :) Mam też "Budowanie wbudowanych systemów linuksowych" i czarną beagle do kręcenia:) –

+0

Nice .. Może powinienem też przeczytać "Budowanie wbudowanych systemów Linux" .. –

+0

Nie zacząłem jeszcze, ale wydaje się naturalny postęp :) –

Powiązane problemy