Embedded Linux Systems Architecture - Plan Szkolenia
Cele kursu
Zapewnienie zrozumienia podstaw wbudowanego GNU/Linux, jak poszczególne elementy pasują do siebie. Jakie komponenty są potrzebne do zbudowania wbudowanego systemu GNU/Linux, skąd je wziąć i jak je skonfigurować/zbudować/zainstalować? Skąd uzyskać pomoc? Co z licencjami na oprogramowanie? Ćwiczenia praktyczne zapewnią ci niezbędne doświadczenie praktyczne, aby po pomyślnym ukończeniu tego szkolenia rozwijać własne wbudowane systemy GNU/Linux.
Opis
Ten pięciodniowy kurs szkoleniowy wykorzystuje praktyczne ćwiczenia połączone z instrukcjami, aby zilustrować koncepcje wbudowanego GNU/Linux. Został on zaprojektowany, aby szybko doprowadzić cię do prędkości. Filozofia, koncepcje i polecenia niezbędne do efektywnego korzystania z GNU/Linux są opisane poprzez połączenie teorii i szkolenia w miejscu pracy.
Nie wymyślaj koła na nowo, ale ucz się od doświadczonego trenera i zabierz do domu praktyczną wiedzę na temat GNU/Linux oraz umiejętność efektywnego wykorzystania go we własnym projekcie rozwoju wbudowanego.
Kto powinien wziąć udział?
Menedżerowie, kierownicy projektów, inżynierowie oprogramowania, sprzętu, rozwoju, systemów, testerzy, administratorzy, technicy i inne osoby zainteresowane technologią, które chcą jak najszybciej zrozumieć, jak działa Embedded GNU/Linux. Musisz korzystać z GNU/Linux lub musisz pozwolić sobie na luksus, aby zdecydować, czy ma to sens, czy nie. Być może próbowałeś już używać Embedded GNU/Linux, ale nie jesteś pewien, czy wszystko zrobiłeś we właściwy sposób. Obecnie używasz innego systemu operacyjnego i chcesz dowiedzieć się, czy GNU/Linux może być lepszy i/lub tańszy.
Opcje dostawy
Wszystkie materiały szkoleniowe są w języku angielskim, ale ich prezentacja może odbywać się w języku angielskim lub niemieckim, zgodnie z życzeniem, na całym świecie.
- na miejscu - prowadzony przez instruktora
- on-line - prowadzony przez instruktora
- połączenie na miejscu/on-line - prowadzone przez instruktora
Plan Szkolenia
Wprowadzenie
- Historia systemu Unix/Linux
- Wolne oprogramowanie
- Filozofia systemu Unix
PLAC ZABAW DLA HOSTÓW
- Zabawa z GNU/Linux
- architektura
- powłoka
- uprawnienia
- FHS (standard hierarchii plików)
- twarde/miękkie linki
- rzeczywisty/efektywny uid/gid
- harmonogram
- proces/zadanie/wątek
- IPC prosty/zaawansowany
- potoki
- sygnały
- kolejki komunikatów
- semafory
- pamięć współdzielona
- gniazda
- select/poll
- Techniki IPC, których należy unikać
- Konfiguracja hosta Linux
- Yocto/ELDK (narzędzia cross/target, biblioteki, pakiety)
- Emulacja terminala
- Serwery (DHCP, tftp, NFS)
DOCELOWY PLAC ZABAW
- pliki potrzebne do uruchomienia czegoś na pokładzie
- Konfiguracja JTAG/BDI
- u-boot (checkout, config, build)
- kernel (checkout, config, build)
- rootfs
- płaskie drzewo urządzeń
- budowanie/wykonywanie tego, co ma zastosowanie z góry na płycie docelowej
- różne rootfs
- CRAMFS
- ramdisk
- MTD
- JFFS2
- roEXT2
- ubi
- buduje/wykonuje to, co ma zastosowanie od góry na płycie docelowej
- porównanie głównych systemów plików
- debugowanie
- proste narzędzia
- lokalny/zdalny
- użytkownik/jądro
- gdb
- gdbserver
- JTAG/BDI (opcjonalnie)
- profilowanie
- gprof
- gcov
- oprofile
CZAS RZECZYWISTY
- warunki wstępne
- przerwania
- kod rekurencyjny
- czas rzeczywisty Linux
- jawne/niejawne punkty wstrzymania
- poprawka do wywłaszczania w czasie rzeczywistym
- w pełni wywłaszczające jądro
- twarde rozszerzenia czasu rzeczywistego
- Adeos/Xenomai
- łatka adeos
- xenomai
- patch/config/build kernel
- uruchom na pokładzie
SW RELEASE
- administracja
- rozwój
- Jak odtworzyć wydanie SW?
MISC
- getopt
- endianess
- cheat-sheets
O ile nie zaznaczono inaczej, zawartość tego konspektu kursu jest objęta licencją Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).
Wymagania
- Podstawowa znajomość korzystania z systemu GNU/Linux (np. Ubuntu) jako użytkownik końcowy w przestrzeni użytkownika
- Podstawowa znajomość powłoki wiersza poleceń
- Podstawowa znajomość przestrzeni użytkownika/rozwoju aplikacji z GNU/Linux
- Podstawowa wiedza na temat procesorów wbudowanych i płyt rozwojowych
- Podstawowa znajomość programowania w języku C
- …i/lub lub obawa przed nauką powyższych…
Szkolenia otwarte są realizowane w przypadku uzbierania się grupy szkoleniowej liczącej co najmniej 5 osób na dany termin.
Embedded Linux Systems Architecture - Plan Szkolenia - Booking
Embedded Linux Systems Architecture - Plan Szkolenia - Enquiry
Embedded Linux Systems Architecture - Zapytanie o Konsultacje
Zapytanie o Konsultacje
Opinie uczestników (3)
Prezentacja trenera i sposób komunikacji.
Gianpiero Arico - Urmet Spa
Szkolenie - Embedded Linux Systems Architecture
Przetłumaczone przez sztuczną inteligencję
Podobały mi się całodniowe kursy
Gianluca - Urmet Spa
Szkolenie - Embedded Linux Systems Architecture
Przetłumaczone przez sztuczną inteligencję
Może więcej ćwiczeń byłoby lepsze dla nauki, ale czas był zbyt mały.
Gianpiero Arico' - Urmet Spa
Szkolenie - Embedded Linux Systems Architecture
Przetłumaczone przez sztuczną inteligencję
Propozycje terminów
Szkolenia Powiązane
Course Outline Buildroot: a Firmware Generator for Embedded Systems
7 godzinBuildroot to projekt typu open-source, który zawiera skrypty tworzące zestaw narzędzi do kompilacji krzyżowej, konfigurowalny obraz głównego systemu plików i Linux jądro dla urządzeń wbudowanych. Podczas tego praktycznego kursu uczestnicy dowiedzą się, jak z niego korzystać:
- Jak wybrać oprogramowanie, które trafi do głównego systemu plików.
- Jak dodawać nowe pakiety i modyfikować istniejące.
- Jak dodać wsparcie dla nowych płyt wbudowanych.
Podczas kursu zostaną utworzone bootowalne obrazy systemu plików. Kursy zdalne są dostarczane przy użyciu emulatora QEMU, podczas gdy w klasie można korzystać z QEMU lub prawdziwych płyt wbudowanych wybranych przez trenera.
Inne projekty o podobnych celach obejmują projekt Yocto i OpenWRT. Skorzystaj z tych prezentacji, aby określić, który z nich jest właściwym wyborem dla Twoich potrzeb.
Wprowadzenie do Domain Driven Design
14 godzinDomain Driven Design (DDD) to podejście do obsługi złożonych zachowań podczas tworzenia oprogramowania.
Introduction to Enterprise Architect
7 godzinKurs szkoleniowy Wprowadzenie do Enterprise Architect jest przeznaczony dla wszystkich osób, które chcą korzystać z narzędzia do modelowania UML firmy Sparx Systems, Enterprise Architect, w swoich działaniach związanych z modelowaniem, ale nie znają funkcji, cech i sposobu użycia Enterprise Architect.
Enterprise Architecture in the UAF
40 godzinWykorzystując połączenie wykładów, demonstracji i interaktywnych laboratoriów, kurs ten przedstawia podstawy budowania i utrzymywania Enterprise Architecture (EA) z wykorzystaniem Unified Architecture Framework (UAF) w wersji 1.2.
Build Native iOS and Android Apps with Flutter
14 godzinW tym prowadzonym przez instruktora szkoleniu na żywo w Polsce (na miejscu lub zdalnie) uczestnicy dowiedzą się, jak używać Flutter do szybkiego tworzenia aplikacji mobilnej działającej zarówno na iOS, jak i Android urządzeniach.
Pod koniec tego szkolenia uczestnicy będą mogli
- Szybko zainstalować framework, IDE i inne narzędzia, aby rozpocząć rozwój.
- Zrozumieć i używać języka Dart firmy Google do szybkiego prototypowania aplikacji mobilnej.
- Testować i wdrażać aplikacje mobilne działające zarówno na iOS, jak i Android przy użyciu jednej bazy kodu.
- Dostosowywanie aplikacji przy użyciu bogatego zestawu widżetów, układów i animacji.
Flutter Development Bootcamp with Dart
35 godzinTo prowadzone przez instruktora szkolenie na żywo w Polsce (na miejscu lub zdalnie) jest przeznaczone dla programistów, którzy chcą używać Flutter do tworzenia i budowania wysokiej jakości aplikacji mobilnych dla Android, iOS i innych platform ze wspólnej bazy kodu.
Pod koniec tego szkolenia uczestnicy będą mogli
- Skonfigurować niezbędne środowisko programistyczne, aby rozpocząć tworzenie aplikacji Flutter.
- Używać języka programowania Dart do opracowywania kodu do tworzenia aplikacji.
- Używać Flutter widżetów do projektowania i tworzenia estetycznego i łatwego w użyciu interfejsu użytkownika.
- Wdrażać i testować aplikacje na różnych platformach (mobilnych, stacjonarnych, internetowych itp.).
LEDE: Set Up a Linux Wireless Router
7 godzinProjekt LEDE (Linux Embedded Development Environment) to system operacyjny Linux oparty na OpenWrt. Jest to kompletny zamiennik dla dostarczanego przez dostawców oprogramowania sprzętowego szerokiej gamy routerów bezprzewodowych i urządzeń niesieciowych.
W tym instruktażowym szkoleniu na żywo uczestnicy dowiedzą się, jak skonfigurować router bezprzewodowy oparty na LEDE.
Uczestnicy
- Administratorzy i technicy sieci
Format kursu
- Część wykładu, część dyskusji, ćwiczenia i ciężka praktyka praktyczna
OCSMP Model Builder - Fundamentals prep
21 godzinEgzamin OCSMP Model Builder – Fundamental sprawdza wiedzę i umiejętności wymagane do skonstruowania podstawowego SysML modelu systemu. Egzamin obejmuje koncepcje i organizację modelu, podstawowe przechwytywanie i zarządzanie wymaganiami, modele struktury i zachowania, modele parametryczne, relacje alokacji i wykorzystanie stereotypów. Korzystając z wiedzy i umiejętności objętych tym poziomem oraz znajomości odpowiedniego narzędzia do modelowania SysML, posiadacz certyfikatu OCSMP Model Builder – Fundamental Certification powinien być produktywnym uczestnikiem zadań modelowania wykonywanych przez zespół inżynierii systemów stosujący podejście inżynierii systemów oparte na modelach przy użyciu SysML. Certyfikat OCSMP Model Builder – Fundamental Certification jest warunkiem wstępnym dla dwóch wyższych poziomów programu i wymaga certyfikatu OCSMP Model User Certification jako warunku wstępnego;
Ten egzamin (podobnie jak inne z serii OCSMP) sprawdza umiejętność zastosowania wiedzy i umiejętności wymienionych tutaj w kontekście modelu systemu. Podczas nauki należy wyjść poza każdy diagram, aby zrozumieć, w jaki sposób aspekty, które modeluje, mogą wpływać na aspekty systemu reprezentowane na innych typach diagramów;
Modelowanie systemów z wykorzystaniem SysML i Enterprise Architect (EA)
21 godzinW tym prowadzonym przez instruktora szkoleniu na żywo w Polsce (na miejscu lub zdalnie) uczestnicy dowiedzą się, jak używać SysML zaimplementowanego w Enterprise Architect (EA) do przeprowadzania analizy i modelowania wymagań systemowych.
Pod koniec tego szkolenia uczestnicy będą mogli
- Zrozumieć i zastosować SysML do projektów Inżynierii Systemów, wykorzystując podejście Inżynierii Systemów opartej na modelach (MBSE).
- Identyfikować wymagania systemowe w oparciu o modele przypadków użycia.
- Projektować i analizować architekturę systemu.
SysML by example
21 godzinTo praktyczne szkolenie pokaże Ci, jak efektywnie korzystać z języka modelowania SysML. Poznasz w szczególności schematy blokowe do modelowania strukturalnego złożonych systemów. Pogłębisz diagram sekwencji, diagram stanu i diagram aktywności do modelowania dynamicznego. Nauczysz się również korzystać z określonych diagramów SysML, takich jak diagram wymagań i diagram parametryczny, a także z ważnej koncepcji alokacji. Skupimy się również na potrzebie zdefiniowania podejścia do modelowania, dostosowanego do kontekstu firmy i rodzaju badanego systemu. Na koniec zobaczymy, jaki jest stan wiedzy na temat narzędzi do modelowania SysML.
Publiczność:
Kierownicy projektów, architekci, inżynierowie systemowi, którzy muszą modelować złożone systemy obejmujące zarówno oprogramowanie, jak i sprzęt.
Metoda nauczania:
- Prezentacja teoretyczna z przykładami
- Studium przypadku na papierze (demonstracja narzędzia SysML przez trenera)
Język UML w Enterprise Architect - warsztaty
21 godzinKurs przeznaczony jest dla analityków, projektantów, programistów, testerów i kierowników projektów.
Warsztat przedstawia analizę problemu, projektowanie i dokumentowanie systemów z wykorzystaniem UML oraz Enterprise Architect firmy Sparx Systems. Podczas szkolenia zostaną zaprezentowane zaawansowane możliwości programu (takie jak MDA, profile, XMI) oraz najlepsze praktyki, które mogą znacznie uprościć i przyspieszyć modelowanie.
Ponieważ szkolenie koncentruje się na narzędziu Enterprise Architect, uczestnicy muszą już wiedzieć, jak modelować w UML. Dla tych, którzy chcieliby nauczyć się modelowania, mamy dedykowane szkolenie dla UML.
Metoda treningowa
Wykład 10%, warsztaty 90%
Use Case Modeling
14 godzinTen kurs jest przeznaczony dla analityków biznesowych, menedżerów, kierowników zespołów i właścicieli procesów, aby zapewnić im wymagane kompetencje do tworzenia diagramów przypadków użycia i scenariuszy przypadków użycia, które służą jako narzędzie do pozyskiwania, analizowania, dokumentowania i komunikowania wymagań funkcjonalnych. Uczestnicy przećwiczą tworzenie przypadków użycia w Unified Modeling Language (UML), aby graficznie przedstawić interakcje między przypadkami użycia i aktorami.
Yocto Project
28 godzinW tym prowadzonym przez instruktora szkoleniu na żywo w Polsce uczestnicy dowiedzą się, jak utworzyć system kompilacji dla wbudowanego Linux opartego na Yocto Project.
Pod koniec tego szkolenia uczestnicy będą w stanie
- Zrozumieć podstawowe pojęcia stojące za systemem kompilacji Yocto Project, w tym przepisy, metadane i warstwy.
- Zbudować obraz Linux i uruchomić go pod emulacją.
- Oszczędzać czas i energię budując systemy wbudowane Linux.
The Yocto Project - An Overview - hands-on
28 godzinOpis
To czterodniowe szkolenie łączy teorię z praktycznymi ćwiczeniami w celu wprowadzenia Yocto Project.
Odpowiada na często zadawane pytania, takie jak:
- Czy naprawdę konieczne jest używanie innej wersji toolchaina/bibliotek/pakietów dla każdego projektu GNU/Linux, a na dodatek stosowanie innego przepływu pracy?
- Czy można zapewnić, że środowisko programistyczne jest identyczne dla wszystkich deweloperów/dostawców i że za ponad 10 lat nadal będzie można tworzyć identyczne kompilacje jak dziś?
- Czy YP może pomóc dowiedzieć się, na jakich licencjach oprogramowania są licencjonowane używane pakiety?
Sesje praktyczne są przeprowadzane na docelowym sprzęcie (np. Beagle Bone Black Rev. C - http://beagleboard.org/BLACK). Po zakończeniu szkolenia będziesz mógł pobrać obraz docker z Ubuntu 14.x i wszystkimi preinstalowanymi zależnościami oraz przykładami, aby pracować z materiałem kursu we własnych laboratoriach. Należy pamiętać, że nie jest to kurs wprowadzający do Embedded GNU/Linux. Powinieneś już wiedzieć, jak działa Embedded GNU/Linux i jak skonfigurować / zbudować jądro GNU/Linux i sterowniki jądra.
Kto powinien wziąć udział?
Używasz już GNU/Linux w swoich projektach i prawdopodobnie słyszałeś o Yocto Project, ale nie odważyłeś się przyjrzeć mu bliżej lub miałeś trudności z jego użyciem. Nie wiesz, czy i jak twój codzienny przepływ pracy może być dostosowany do YP i ogólnie uważasz, że YP jest raczej skomplikowany. Po co nam to wszystko, skoro wcześniej wszystko było (podobno) o wiele łatwiejsze? Po szkoleniu powinieneś być w stanie zdecydować, czy potrzebujesz YP, czy nie. Warsztaty skierowane są do programistów, programistów, inżynierów systemowych, testerów, administratorów, inżynierów i innych osób zainteresowanych YP, z solidną znajomością Embedded GNU/Linux.