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 w systemie GNU/Linux 
  • Podstawowa wiedza na temat procesorów wbudowanych i płyt deweloperskich 
  • Podstawowa znajomość programowania w języku C 
  • …i/lub chęć nauczenia się powyższego… 

Overview:

Cele kursu

Zapewnienie zrozumienia podstaw systemu GNU/Linux dla urządzeń wbudowanych, jak poszczególne elementy współpracują ze sobą. Jakie komponenty są potrzebne do zbudowania systemu GNU/Linux dla urządzeń wbudowanych, skąd je pobrać i jak je skonfigurować/zbudować/zainstalować? Gdzie szukać pomocy? Co z licencjami oprogramowania? Ćwiczenia praktyczne zapewnią Ci niezbędne doświadczenie, aby po pomyślnym ukończeniu szkolenia samodzielnie rozwijać własne systemy GNU/Linux dla urządzeń wbudowanych.

Opis

Ten pięciodniowy kurs łączy ćwiczenia praktyczne z wykładami, aby zilustrować koncepcje systemu GNU/Linux dla urządzeń wbudowanych. Jest zaprojektowany tak, aby szybko wprowadzić Cię w tematykę. Filozofia, koncepcje i polecenia niezbędne do efektywnego wykorzystania GNU/Linux są opisane poprzez połączenie teorii i szkolenia w praktyce.

Nie wymyślaj koła na nowo, ale ucz się od doświadczonego trenera i zdobądź praktyczną wiedzę na temat GNU/Linux oraz umiejętność efektywnego wykorzystania go w swoim projekcie rozwoju systemów wbudowanych.

Dla kogo jest ten kurs?

Menedż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 GNU/Linux dla urządzeń wbudowanych. Musisz używać GNU/Linux lub masz możliwość decydowania, czy ma sens jego wykorzystanie. Może już próbowałeś użyć GNU/Linux dla urządzeń wbudowanych, ale nie jesteś pewien, czy wszystko zrobiłeś poprawnie. Obecnie używasz innego systemu operacyjnego i chcesz sprawdzić, czy GNU/Linux byłby lepszy i/lub tańszy.

Opcje realizacji

Wszystkie materiały szkoleniowe są w języku angielskim, ale prezentacja może być prowadzona 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

ŚRODOWISKO HOSTA

  • Zabawa z GNU/Linux
    • architektura
    • powłoka
    • uprawnienia
    • FHS (standard hierarchii plików)
    • linki twarde/miękkie
    • rzeczywiste/efektywne uid/gid
    • planista
    • proces/zadanie/wątek
    • IPC proste/zaawansowane
      • rury
      • sygnały
      • kolejki komunikatów
      • semafor
      • pamięć współdzielona
      • gniazda
      • select/poll
    • techniki IPC, których należy unikać
  • Konfiguracja hosta Linux
    • Yocto/ELDK (narzędzia, biblioteki, pakiety dla systemu docelowego)
    • Emulacja terminala
    • Serwery (DHCP, tftp, NFS)

ŚRODOWISKO DOCELOWE

  • pliki potrzebne do uruchomienia czegoś na płycie
    • Konfiguracja JTAG/BDI
    • u-boot (pobranie, konfiguracja, budowanie)
    • kernel (pobranie, konfiguracja, budowanie)
    • rootfs
    • płaski drzewiec urządzeń
  • zbudowanie/uruchomienie odpowiednich elementów z powyższych na płycie docelowej
  • różne rootfs
    • CRAMFS
    • ramdisk
    • MTD
    • JFFS2
    • roEXT2
    • ubi
  • zbudowanie/uruchomienie odpowiednich elementów z powyższych na płycie docelowej
  • porównanie systemów plików root
  • debugowanie
    • proste narzędzia
    • lokalne/zdalne
    • użytkownik/kernel
    • gdb
    • gdbserver
    • JTAG/BDI (opcjonalnie)
  • profilowanie
    • gprof
    • gcov
    • oprofile

SYSTEMY CZASU RZECZYWISTEGO

  • wymagania wstępne
    • przerwania
    • kod wielokrotnego użycia
  • Linux czasu rzeczywistego
    • jawne/niejawne punkty wywłaszczenia
    • łatka wywłaszczenia czasu rzeczywistego
    • w pełni wywłaszczalne jądro
    • rozszerzenia czasu rzeczywistego
  • Adeos/Xenomai
    • łatka adeos
    • xenomai
    • łatka/konfiguracja/budowanie jądra
    • uruchomienie na płycie

WYDANIE OPROGRAMOWANIA

  • administracja
  • rozwój
  • jak odtworzyć wydanie oprogramowania?

RÓŻNE

  • getopt
  • endianess
  • ściągawki

Z wyjątkiem miejsc, w których zaznaczono inaczej, treść tego programu kursu jest objęta licencją Uznanie autorstwa-Użycie niekomercyjne-Na tych samych warunkach 4.0 Międzynarodowe (CC BY-NC-SA 4.0).

Sites Published:

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 Linux Embarcados

Canada - Embedded Linux Systems Architecture

中国 - 嵌入式Linux系统架构

香港 - Embedded Linux Systems Architecture

澳門 - Embedded Linux Systems Architecture

台灣 - 嵌入式Linux系統架構

USA - Embedded Linux Systems Architecture

Österreich - Architektur eingebetteter Linux-Systeme

Schweiz - Architektur eingebetteter Linux-Systeme

Deutschland - Architektur eingebetteter Linux-Systeme

Czech Republic - Architektura vložených systémů Linuxu

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 los Sistemas Linux Integrados

Italia - Architettura dei Sistemi Embedded Linux

Lithuania - Embedded Linux Systems Architecture

Nederland - Architectuur van ingebette Linux-systemen

Norway - Arkitektur for innebygde Linux-systemer

Portugal - Arquitetura de Sistemas Linux Embarcados

România - Arhitectura Sistemelor Embedded Linux

Sverige - Arkitektur för inbäddade Linux-system

Türkiye - Gömülü Linux Sistem Mimarisi

Malta - Embedded Linux Systems Architecture

Belgique - Architecture des systèmes Linux embarqués

France - Architecture des systèmes Linux embarqués

日本 - 組み込み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 los Sistemas Linux Integrados

Chile - Arquitectura de los Sistemas Linux Integrados

Costa Rica - Arquitectura de los Sistemas Linux Integrados

Ecuador - Arquitectura de los Sistemas Linux Integrados

Guatemala - Arquitectura de los Sistemas Linux Integrados

Colombia - Arquitectura de los Sistemas Linux Integrados

México - Arquitectura de los Sistemas Linux Integrados

Panama - Arquitectura de los Sistemas Linux Integrados

Peru - Arquitectura de los Sistemas Linux Integrados

Uruguay - Arquitectura de los Sistemas Linux Integrados

Venezuela - Arquitectura de los Sistemas Linux Integrados

Polska - Architektura Systemów Embedded Linux

United Kingdom - Embedded Linux Systems Architecture

South Korea - 임베디드 리눅스 시스템 아키텍처

Pakistan - Embedded Linux Systems Architecture

Sri Lanka - Embedded Linux Systems Architecture

Bulgaria - Embedded Linux Systems Architecture

Bolivia - Arquitectura de los Sistemas Linux Integrados

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

Uzbekistan - Embedded Linux Systems Architecture

US Government - Embedded Linux Systems Architecture