План на курса

Схема на курса

Въведение

  • история на Unix/Linux, лицензи, стандарти, работа със свободен софтуер, намиране на помощ, спекулация, философията на Unix

Вградени специфики

  • Linux на работния плот в сравнение с Linux във вградена система, кръстосани/родни вериги с инструменти, предварително изградени вериги с инструменти, системи за изграждане, C библиотеки,...

Табло за оценка

  • Как се зарежда?, Вижте как се зарежда

Yocto Въведение

  • Какво е Yocto? Защо да използвате YP? Какво е YP?, Poky, BitBake, OE-Core, метаданни

YP Autobuilder

  • Какво представлява YP Autobuilder?, Docker контейнер (дърпане, изстрелване контейнер)

Работният процес на YP

  • въведение
  • Работен процес, OE архитектура
  • Конфигурация (потребител, метаданни, машина, правила за разпространение)
  • Източници
  • Изграждане (извличане на източник, корекция, конфигуриране/компилиране/инсталиране, псевдо, примери за рецепти, изходен анализ/опаковане, генериране на изображения, генериране на SDK)
  • Персонализиране на изображения (Intro, local.conf, IMAGE_FEATURES, персонализирани .bb файлове, персонализирани пакетни групи)

BitBake

  • История
  • Синтаксис
  • Отстраняване на грешки (ниво на отстраняване на грешки, намиране на рецепти/изображения/групи пакети, BitBake среда/задачи/регистриране, принудително изграждане/специфична задача, cleansstate, невалиден печат, devshell, изследовател на зависимости, убиване на всички екземпляри на BitBake, графична обвивка на BitBake)

Слоеве

  • Въведение, инструмент за bitbake-слоеве, инструмент за yocto-слоеве

БСП

  • Въведение, Работен процес за разработка на системата, Ръководство за разработчици на BSP (bsp-инструмент)

Ядро

  • Въведение, работен процес за разработка на системата, ръководство за разработка на ядрото (defconfig, defconfig + конфигурационен фрагмент, kmod в дърво, kmod извън дърво, fdt,…)

Инструментариум за разработка на приложения

  • Intro, Cross-Development Toolchain, Sysroot, ADT-Eclipse Yocto Plug-in, QEMU Emulator, User Space Tools
  • Инсталиране на ADT & Toolchains
    • Използване на tarball за Cross-Toolchain (Въведение, изграждане/инсталиране на tarball за Cross-Toolchain, Cross-Toolchain + Makefile/Autotools/Autotools lib + Приложение, рецепти)
    • Използване на ADT инсталатора (Въведение, Web Server, компилиране на изображение + ADT инсталатор, конфигуриране + стартиране на ADT инсталатор, добавяне на ADT инсталатор към уеб сървър, ADT инсталатор на хост)

Затъмнение

  • Въведение, работен процес за разработка на приложения
  • Работа с Eclipse (функции на rootfs, ядро + fdt, rootfs, инсталиране на JDK, инсталиране на Eclipse, конфигуриране на Eclipse, инсталиране на приставката Yocto, конфигуриране на приставката Yocto, създаване на Autotooled проект, конфигуриране на кръстосаните вериги от инструменти, изграждане на проекта)

Отстраняване на грешки

  • Въведение, gdb, gdb отдалечено отстраняване на грешки, (отдалечено gdb) Отстраняване на грешки с Eclipse, (отдалечено) Изпълнение от Eclipse

Профилиране/Проследяване

  • Intro, perf, gprof, gcov, strace, ftrace, systemtap, oprofile, LTTng + Eclipse (визуализация на данни)

Пакет Management

  • Работа с пакети, IPK, създаване на пакетна емисия, инсталиране на пакет с opkg на целта

Лицензиране

  • Въведение, Добавяне на персонализиран лиценз, Съответствие с лиценза с отворен код

Devtool

  • Въведение, инструмент за разработка, демонстрация на мета-cfengine в реалния свят

Освен когато е посочено друго, съдържанието и този план на курса са лицензирани съгласно Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).

Изисквания

Предпоставки

  • Основни познания за използването на система GNU/Linux (напр. Ubuntu) като краен потребител в потребителското пространство
  • Основно запознаване с обвивката на командния ред
  • Основни познания за програмиране на потребителско пространство/ядро с GNU/Linux
  • Средни познания по програмиране на C
  • Трябва да сте присъствали на Embedded GNU/Linux Systems Architecture (5 дни) (силно препоръчително!), освен ако вече не сте запознати с материала, представен в тези обучения.
  • Всъщност трябва да имате опит с Embedded GNU/Linux (ядро, потребителско пространство, основна файлова система, инструменти), за да следвате обучението на Yocto.
  • Може да е полезно, ако сте присъствали на Embedded GNU/Linux Device Drivers and Kernel Internals (5 дни) , но това всъщност не е задължително условие. Достатъчно е да знаете как да изградите ядрото GNU/Linux, драйверите на ядрото в/извън дървото и fdt от страната на ядрото, за да следвате обучението на Yocto.
 28 Часа

Брой участници


Цена за участник

Oтзиви от потребители (1)

Предстоящи Курсове

Свързани Kатегории