Course Code: eglisa
Duration: 35 hours
Prerequisites:
- Podstawowa znajomość korzystania z systemu GNU/Linux (np. Ubuntu) jako użytkownik końcowy w przestrzeni użytkownika
- Podstawowa znajomość pracy z powłoką wiersza poleceń
- Podstawowa wiedza na temat rozwoju aplikacji w przestrzeni użytkownika z wykorzystaniem GNU/Linux
- Podstawowa wiedza na temat procesorów embedded i płyt deweloperskich
- Podstawowa znajomość programowania w C
- …i/lub chęć nauki powyższych…
Overview:
Cele kursu
Zapewnienie zrozumienia podstaw systemu GNU/Linux w zastosowaniach embedded, jak poszczególne elementy współdziałają. Jakie komponenty są potrzebne do zbudowania systemu GNU/Linux embedded, skąd je pobrać i jak je skonfigurować/zbudować/zainstalować? Gdzie szukać pomocy? A co z licencjami oprogramowania? Ćwiczenia praktyczne zapewniają niezbędne doświadczenie, aby po pomyślnym ukończeniu szkolenia móc samodzielnie rozwijać własne systemy GNU/Linux embedded.
Opis
Ten pięciodniowy kurs łączy ćwiczenia praktyczne z wykładami, aby zilustrować koncepcje systemu GNU/Linux w zastosowaniach embedded. Został zaprojektowany, aby szybko wprowadzić uczestników w tematykę. Filozofia, koncepcje i polecenia niezbędne do efektywnego wykorzystania GNU/Linux są przedstawione poprzez połączenie teorii i szkolenia praktycznego.
Nie wynajduj koła na nowo, lecz ucz się od doświadczonego trenera i zdobądź praktyczną wiedzę na temat GNU/Linux oraz umiejętność efektywnego wykorzystania go w swoim projekcie embedded.
Dla kogo jest ten kurs?
Menadżerowie, kierownicy projektów, inżynierowie oprogramowania, sprzętu, rozwoju, systemów, testerzy, administratorzy, technicy oraz inne osoby zainteresowane technologią, które chcą jak najszybciej zrozumieć, jak działa system GNU/Linux w zastosowaniach embedded. Musisz używać GNU/Linux lub masz możliwość decydowania, czy ma sens jego użycie. Może już próbowałeś używać GNU/Linux embedded, ale nie jesteś pewien, czy wszystko zrobiłeś poprawnie. Obecnie używasz innego systemu operacyjnego i chcesz sprawdzić, czy GNU/Linux nie byłby lepszy i/lub tańszy.
Opcje realizacji
Wszystkie materiały szkoleniowe są w języku angielskim, ale prezentacja może odbywać się w języku angielskim lub niemieckim, według życzenia, na całym świecie.
- na miejscu - prowadzone przez instruktora
- online - prowadzone przez instruktora
- połączenie na miejscu/online - prowadzone przez instruktora
Course Outline:
Wprowadzenie
- Historia Unix/Linux
- Wolne Oprogramowanie
- Filozofia Unix
HOST PLAYGROUND
- Zabawa z GNU/Linux
- architektura
- powłoka
- uprawnienia
- FHS (standard hierarchii plików)
- linki twarde/miękkie
- rzeczywiste/efektywne uid/gid
- harmonogram
- proces/zadanie/wątek
- IPC proste/zaawansowane
- potoki
- sygnały
- kolejki komunikatów
- semafor
- pamięć współdzielona
- gniazda
- select/poll
- Techniki IPC do unikania
- Konfiguracja hosta Linux
- Yocto/ELDK (narzędzia cross/target, biblioteki, pakiety)
- Emulacja terminala
- Serwery (DHCP, tftp, NFS)
TARGET PLAYGROUND
- pliki potrzebne do uruchomienia czegoś na płytce
- Konfiguracja JTAG/BDI
- u-boot (checkout, config, build)
- kernel (checkout, config, build)
- rootfs
- płaska tablica urządzeń
- zbuduj/uruchom to, co dotyczy powyższego na płytce docelowej
- różne rootfs
- CRAMFS
- ramdisk
- MTD
- JFFS2
- roEXT2
- ubi
- zbuduj/uruchom to, co dotyczy powyższego na płytce docelowej
- porównanie systemów plików root
- debugowanie
- proste narzędzia
- lokalne/zdalne
- użytkownik/jądro
- gdb
- gdbserver
- JTAG/BDI (opcjonalnie)
- profilowanie
- gprof
- gcov
- oprofile
SYSTEMY CZASU RZECZYWISTEGO
- wymagania wstępne
- przerwania
- kod wielokrotnego użycia
- system czasu rzeczywistego Linux
- jawne/niejawne punkty wywłaszczenia
- łatka preempt-RT
- w pełni wywłaszczalne jądro
- rozszerzenia czasu rzeczywistego
- Adeos/Xenomai
- łatka Adeos
- Xenomai
- łatka/konfiguracja/budowa jądra
- uruchomienie na płytce
WYDANIE OPROGRAMOWANIA
- administracja
- rozwój
- jak odtworzyć wydanie oprogramowania?
RÓŻNE
- getopt
- endianess
- ściągawki
O ile nie zaznaczono inaczej, treść tego planu kursu jest dostępna na licencji Uznanie autorstwa-Użycie niekomercyjne-Na tych samych warunkach 4.0 Międzynarodowe (CC BY-NC-SA 4.0).
United Arab Emirates - Embedded Linux Systems Architecture
Qatar - Embedded Linux Systems Architecture
Egypt - Embedded Linux Systems Architecture
Saudi Arabia - Embedded Linux Systems Architecture
South Africa - Embedded Linux Systems Architecture
Brasil - Arquitetura de Sistemas Embutidos Linux
Canada - Embedded Linux Systems Architecture
香港 - Embedded Linux Systems Architecture
澳門 - Embedded Linux Systems Architecture
USA - Embedded Linux Systems Architecture
Österreich - Eingebettete Linux-Systemarchitektur
Schweiz - Eingebettete Linux-Systemarchitektur
Deutschland - Eingebettete Linux-Systemarchitektur
Czech Republic - Architektura vnořených systémů Linux
Denmark - Embedded Linux Systems Architecture
Estonia - Embedded Linux Systems Architecture
Finland - Embedded Linux Systems Architecture
Greece - Αρχιτεκτονική Ενσωματωμένων Συστημάτων Linux
Magyarország - Beágyazott Linux Rendszerarchitektúra
Ireland - Embedded Linux Systems Architecture
Luxembourg - Embedded Linux Systems Architecture
Latvia - Embedded Linux Systems Architecture
España - Arquitectura de Sistemas Embebidos Linux
Italia - Architettura di Sistemi Embedded Linux
Lithuania - Embedded Linux Systems Architecture
Nederland - Embedded Linux Systems Architectuur
Norway - Embedded Linux Systems Architecture
Portugal - Arquitetura de Sistemas Embutidos Linux
România - Arhitectura Sistemelor Embedded Linux
Sverige - Embeddedd Linux Systemarkitektur
Türkiye - Yerleşik Linux Sistemleri Mimari
Malta - Embedded Linux Systems Architecture
Belgique - Architecture des Systèmes Embedded Linux
France - Architecture des Systèmes Embedded Linux
Australia - Embedded Linux Systems Architecture
Malaysia - Embedded Linux Systems Architecture
New Zealand - Embedded Linux Systems Architecture
Philippines - Embedded Linux Systems Architecture
Singapore - Embedded Linux Systems Architecture
Thailand - Embedded Linux Systems Architecture
Vietnam - Kiến Trúc Hệ Thống Linux Nhúng
India - Embedded Linux Systems Architecture
Argentina - Arquitectura de Sistemas Embebidos Linux
Chile - Arquitectura de Sistemas Embebidos Linux
Costa Rica - Arquitectura de Sistemas Embebidos Linux
Ecuador - Arquitectura de Sistemas Embebidos Linux
Guatemala - Arquitectura de Sistemas Embebidos Linux
Colombia - Arquitectura de Sistemas Embebidos Linux
México - Arquitectura de Sistemas Embebidos Linux
Panama - Arquitectura de Sistemas Embebidos Linux
Peru - Arquitectura de Sistemas Embebidos Linux
Uruguay - Arquitectura de Sistemas Embebidos Linux
Venezuela - Arquitectura de Sistemas Embebidos Linux
Polska - Architektura Systemów Embedded Linux
United Kingdom - Embedded Linux Systems Architecture
South Korea - Embedded Linux Systems Architecture
Pakistan - Embedded Linux Systems Architecture
Sri Lanka - Embedded Linux Systems Architecture
Bulgaria - Embedded Linux Systems Architecture
Bolivia - Arquitectura de Sistemas Embebidos Linux
Indonesia - Embedded Linux Systems Architecture
Kazakhstan - Embedded Linux Systems Architecture
Moldova - Arhitectura Sistemelor Embedded Linux
Morocco - Embedded Linux Systems Architecture
Tunisia - Embedded Linux Systems Architecture
Kuwait - Embedded Linux Systems Architecture
Oman - Embedded Linux Systems Architecture
Slovakia - Embedded Linux Systems Architecture
Kenya - Embedded Linux Systems Architecture
Nigeria - Embedded Linux Systems Architecture
Botswana - Embedded Linux Systems Architecture
Slovenia - Embedded Linux Systems Architecture
Croatia - Embedded Linux Systems Architecture
Serbia - Embedded Linux Systems Architecture
Bhutan - Embedded Linux Systems Architecture
Nepal - Embedded Linux Systems Architecture