Vyberte svůj jazyk
Kurz vestavěného Linuxu
Více než 2 miliony studentů po celém světě

Kurz vestavěného Linuxu

4,3

Zvládněte každou vrstvu vestavěného Linuxu, od zavaděče a jádra přes kořenový souborový systém až po ovladače zařízení. Tento kurz vám poskytne praktické dovednosti pro sestavení, konfiguraci a nasazení produkčních vestavěných linuxových systémů na reálném hardwaru. Ať už pronikáte do vestavěného inženýrství, nebo rozšiřujete své odborné znalosti, jedná se o nejucelenější dostupnou technickou cestu.

Dedika pro firmy

Co se naučíte:

Naučíte se, jak nastavit nástrojové řetězce pro křížovou kompilaci, konfigurovat a sestavit linuxové jádro a vytvářet minimální kořenové souborové systémy pomocí BusyBoxu. Budete pracovat s U-Bootem pro správu celé zaváděcí sekvence vestavěného systému a psát linuxové ovladače zařízení pro GPIO, I2C, SPI a periferie řízené přerušeními. Kurz zahrnuje Yocto Project a Buildroot pro automatizované generování obrazů a také techniky optimalizace systému včetně zkrácení doby zavádění, minimalizace paměťové stopy a bezpečnostního vytvrzování. Mezi pokročilá témata patří real-time Linux s PREEMPT_RT, vzdálené ladění pomocí GDB a strategie aktualizací vzduchem pro produkční nasazení.

Jak studujete v praxi Kurz vestavěného Linuxu

Jak procvičujete Kurz vestavěného Linuxu

Pro vás, kteří jste firma a chcete školit svůj tým

V Dedika pro firmy je kurz doplněn o cvičení a příklady přímo z vašeho podnikání a přizpůsoben tak, jak vaše firma potřebuje.

Klikněte zde

Obsah kurzu

8 Kapitoly • 38 LekceDélka mezi 4 a 360 hodinami (rozhodujete vy)

Kapitola 1Zobrazit detaily

Základy Linuxu a vestavěných systémů

  • Lekce 1 • Základy příkazového řádku Linuxu

    Pokrývá navigaci v shellu, správu souborů a příkazy pro řízení procesů. Tyto dovednosti jsou předpokladem pro všechny praktické laboratorní práce v kurzu.

  • Lekce 2 • Linuxové jádro a architektura OS

    Vysvětluje roli linuxového jádra, jeho monolitický návrh a oddělení uživatelského prostoru od prostoru jádra. Poskytuje kontext pro pozdější práci s konfigurací jádra.

  • Lekce 3 • Základní koncepty vestavěných systémů

    Definuje vestavěné systémy, jejich omezení a to, jak se liší od univerzálních počítačů. Zavádí slovní zásobu používanou v celém kurzu.

  • Lekce 4 • Přehled vestavěného hardwaru

    Mapuje běžné vestavěné procesory, typy pamětí a periferní sběrnice. Uzemňuje softwarová rozhodnutí v hardwarových realitách, se kterými se setkáte v pozdějších kapitolách.

Kapitola 2Zobrazit detaily

Křížová kompilace a nastavení toolchainu

  • Lekce 1 • Validace a ladění toolchainu

    Ověřuje správnost toolchainu pomocí testovacích binárních souborů a inspekce pomocí nástroje readelf. Předchází běžným chybám v konfiguraci před sestavením jádra a kořenového souborového systému.

  • Lekce 2 • Architektura a komponenty toolchainu

    Určuje binutils, kompilátor, knihovnu C a debugger jako komponenty toolchainu. Vysvětluje vztahy hostitel-cíl, klíčové pro křížovou kompilaci.

  • Lekce 3 • Křížová kompilace aplikací

    Ukazuje kompilaci programů v C a C++ pro cíl pomocí křížového toolchainu. Seznamuje se vzory pro křížovou kompilaci v Makefile a CMake.

  • Lekce 4 • Vytváření toolchainu pomocí Crosstool-NG

    Provází konfigurací a sestavením vlastního toolchainu pomocí nástroje Crosstool-NG. Výsledkem je reprodukovatelný artefakt toolchainu používaný v následujících laboratorních cvičeních.

Kapitola 3Zobrazit detaily

Koncepty bootloaderu a U-Boot

  • Lekce 1 • Postupy pro nahrávání firmwaru a obnovu

    Pokrývá zápis obrazů bootloaderu na úložiště NAND, NOR a eMMC. Zahrnuje strategie obnovy, když se desku nepodaří zavést.

  • Lekce 2 • Konfigurace a sestavení U-Bootu

    Provede výběrem výchozí konfigurace (defconfig), přizpůsobením nastavení a křížovou kompilací U-Bootu. Výsledkem je binární soubor bootloaderu připravený k nahrání do cílového zařízení.

  • Lekce 3 • Shell U-Bootu a zaváděcí skripty

    Používá interaktivní shell U-Bootu k načítání obrazů a nastavení zaváděcích argumentů. Automatizuje zavádění pomocí skriptů uložených v prostředí nebo na úložném médiu.

  • Lekce 4 • Zaváděcí sekvence vestavěných systémů

    Sleduje sekvenci po zapnutí od kódu v ROM přes bootloader až k jádru. Stanovuje vrstvený model zavádění, na který se odkazuje ve všech následujících činnostech souvisejících se zaváděním.

  • Lekce 5 • Architektura a zdrojový kód U-Bootu

    Zkoumá adresářovou strukturu U-Bootu, balíčky podpory desek a systém Kconfig. Připravuje studenty na sebevědomou navigaci a úpravy zdrojového kódu U-Bootu.

Kapitola 4Zobrazit detaily

Konfigurace a sestavení linuxového jádra

  • Lekce 1 • Správa zdrojového kódu jádra a verzí

    Seznamuje s vydáními kernel.org, stabilními větvemi a dodavatelskými jádry. Provádí klonováním a efektivní navigací ve zdrojovém stromu jádra.

  • Lekce 2 • Sestavovací systém jádra a výstupy

    Vysvětluje systém Kbuild, příznaky pro křížovou kompilaci a výstupní artefakty. Studenti sestaví obrazy zImage, Image a binární soubory stromu zařízení pro svůj cíl.

  • Lekce 3 • Konfigurace jádra pomocí Kconfig

    Používá nástroje menuconfig a soubory defconfig k povolení potřebných ovladačů a subsystémů. Učí systematickému snižování velikosti jádra pro vestavěné cíle.

  • Lekce 4 • Moduly jádra a dynamické zavádění

    Pokrývá sestavování modulů mimo strom a ve stromu, insmod, modprobe a depmod. Umožňuje zavádění ovladačů za běhu bez nutnosti přebudování celého jádra.

  • Lekce 5 • Nasazení a testování jádra

    Přenese obraz jádra na cíl přes TFTP nebo SD kartu a zavede jej. Ověřuje úspěšné zavedení analýzou výstupu na sériové konzoli.

Kapitola 5Zobrazit detaily

Sestavení kořenového souborového systému

  • Lekce 1 • Sestavení minimálního rootfs pomocí BusyBoxu

    Konfiguruje a křížově kompiluje BusyBox, aby poskytoval základní utility v jediném binárním souboru. Vytváří soběstačnou kostru rootfs pro cílovou desku.

  • Lekce 2 • Správa knihoven a závislostí

    Určuje závislosti na sdílených knihovnách a kopíruje je do odkládacího adresáře rootfs. Předchází běhovým chybám na cíli způsobeným chybějícími knihovnami.

  • Lekce 3 • Init systémy a spouštění systému

    Porovnává BusyBox init, SysVinit a systemd pro případy použití ve vestavěných systémech. Konfiguruje soubory inittab a rcS skripty pro spouštění služeb při bootu.

  • Lekce 4 • Struktura kořenového souborového systému a standardy

    Vysvětluje standard hierarchie souborového systému a povinné adresáře pro zavedení Linuxu. Poskytuje strukturální plán pro všechna cvičení sestavování rootfs.

  • Lekce 5 • Balení a nasazení rootfs

    Vytváří obrazy cpio initramfs, ext4 a squashfs z odkládacího adresáře. Nasazuje a připojuje rootfs na cílové desce.

Kapitola 6Zobrazit detaily

Sestavovací systémy: Yocto Project a Buildroot

  • Lekce 1 • Architektura a pracovní postup Buildrootu

    Seznamuje s pracovním postupem Buildrootu řízeným pomocí menuconfig pro generování toolchainu, jádra a rootfs. Ukazuje rychlé prototypování pro projekty s omezenými zdroji.

  • Lekce 2 • Základní koncepty Yocto Projectu

    Vysvětluje vrstvy, recepty, BitBake a architekturu sestavovacího systému OpenEmbedded. Vytváří mentální model potřebný pro veškerou práci s přizpůsobením Yocta.

  • Lekce 3 • Vytváření a přizpůsobení Yocto vrstev

    Vytváří vlastní vrstvu, píše recept a přidává jej do Yocto obrazu. Ukazuje vzor rozšiřitelnosti používaný v produkčních Yocto projektech.

  • Lekce 4 • Přizpůsobení balíčků Buildrootu

    Vytváří vlastní recepty balíčků a překryvy pro přidání proprietárního softwaru do obrazu. Rozšiřuje Buildroot nad rámec jeho výchozí sady balíčků.

  • Lekce 5 • Generování obrazu a tvorba SDK

    Sestaví kompletní zaveditelný obraz a SDK pro vývoj aplikací pomocí Yocta. Umožňuje vývojářům aplikací cílit na platformu bez nutnosti přebudování obrazu.

Kapitola 7Zobrazit detaily

Ovladače zařízení a hardwarová rozhraní

  • Lekce 1 • Strom zařízení a popis hardwaru

    Vytváří zdrojové soubory stromu zařízení pro popis topologie hardwaru jádru. Spojuje ovladače s hardwarovými uzly pomocí kompatibilních řetězců a vlastností.

  • Lekce 2 • Přerušení a DMA v ovladačích

    Registruje obsluhy přerušení a konfiguruje přenosy DMA v ovladači. Řeší požadavky na latenci a propustnost běžné u vestavěných periferií.

  • Lekce 3 • Vývoj ovladače znakového zařízení

    Implementuje znakový ovladač s operacemi open, read, write a ioctl. Ukazuje kompletní vzor registrace ovladače a operací se souborem.

  • Lekce 4 • Základy modelu linuxových ovladačů

    Vysvětluje model ovladač-zařízení-sběrnice, kobjekty a reprezentaci v sysfs. Poskytuje koncepční rámec pro veškerý vývoj ovladačů v této kapitole.

  • Lekce 5 • Rozhraní ovladačů GPIO, I2C a SPI

    Používá API subsystémů jádra GPIO, I2C a SPI ke komunikaci s periferiemi. Pokrývá jak metody přístupu v rámci ovladače v jádře, tak z uživatelského prostoru přes sysfs/znakové zařízení.

Kapitola 8Zobrazit detaily

Optimalizace systému a produkční hardening

  • Lekce 1 • Strategie bezdrátových (over-the-air) aktualizací

    Implementuje mechanismy duálních bank a delta aktualizací pro bezpečné polní aktualizace firmwaru. Zajišťuje schopnost vrácení změn a integritu aktualizací v produkčním nasazení.

  • Lekce 2 • Bezpečnostní hardening pro vestavěný Linux

    Aplikuje rootfs pouze pro čtení, secure boot a řízení přístupu pro posílení systému. Snižuje útočnou plochu pro připojené vestavěné produkty.

  • Lekce 3 • Optimalizace paměťové stopy

    Systematickou analýzou snižuje velikost jádra, rootfs a využití paměti za běhu. Aplikuje techniky odstraňování symbolů, komprese a ořezávání konfigurace.

  • Lekce 4 • Měření a zkracování doby bootování

    Profiluje zaváděcí sekvenci pomocí bootchart a časových značek jádra pro nalezení úzkých míst. Aplikuje cílené optimalizace k dosažení cílů bootování pod jednu sekundu nebo rychlého bootu.

  • Lekce 5 • Techniky správy napájení

    Konfiguruje škálování frekvence CPU, režimy spánku a vypínání hodin periferií. Prodlužuje životnost baterie a snižuje tepelný výkon v návrzích citlivých na spotřebu.

Certifikace

Váš platný certifikát o dokončení

Tento kurz je pro vás:

  • Firmwarový inženýr: jste připraveni přejít od MCU bez operačního systému k SoC s Linuxem.

  • Absolvent informatiky: hledáte praktické znalosti vestavěných systémů nad rámec univerzitního studia.

  • IoT vývojář: potřebujete plnou kontrolu nad zařízeními, na kterých běží váš software.

  • Elektronický nadšenec: chcete pochopit, co běží uvnitř vašich jednodeskových počítačů.

  • DevOps inženýr: rozšiřujete se do oblasti vestavěných cílů a hardwarově integrovaných CI pipeline.

  • Měníte kariéru: přecházíte od desktopového nebo webového softwaru k vývoji vestavěných produktů.

Co říkají naši studenti

Vaše lekce jsou perfektní. Koupil jsem si roční balíček a konečně mám možnost sledovat různá témata, která mě zajímají, aniž bych musel měnit platformu... děkuji za vše, co děláte, už jsem vás doporučil dalším lidem...
Giulio Carlo
Giulio CarloStudent digitálního marketingu
Líbí se mi, jak jsou lekce přímočaré a jak mohu přepínat mezi kapitolami a přeskakovat obsah, který nepotřebuji.
Mariana Ferres
Mariana FerresStudentka fotografie
Líbí se mi obsah a způsob prezentace a přepisu videí, což celý proces zrychluje!
Luciana Alvarenga
Luciana AlvarengaStudentka nail designu
Platforma je rychlá a jednoduchá na používání. Rozmanitost obsahu a doplňková videa velmi pomáhají při učení.
André Felipe
André FelipeStudent prompt engineeringu

Hlavní školení

Často kladené otázky

Kdo je Dedika?

Je certifikát platný v Česko?

Jsou kurzy zdarma?

Jaká je pracovní zátěž kurzu?

Jak kurzy vypadají?

Jak kurzy fungují?

Jaká je délka kurzů?

Jaká je cena nebo poplatek za kurzy?

Co je EAD nebo online kurz a jak funguje?

PDF kurz