Course Code: eglisa
Duration: 35 hours
Prerequisites:
- Cunoștințe de bază în utilizarea unui sistem GNU/Linux (de exemplu, Ubuntu) ca utilizator final în spațiul utilizatorului
- Cunoștințe de bază despre un shell de linie de comandă
- Cunoștințe de bază despre dezvoltarea de aplicații în spațiul utilizatorului cu GNU/Linux
- Cunoștințe de bază despre procesoarele embedded și plăcile de dezvoltare
- Cunoștințe de bază de programare în C
- …și/sau dorința de a învăța cele de mai sus…
Overview:
Obiectivele Cursului
Acest curs are ca scop oferirea unei înțelegeri a elementelor esențiale ale sistemelor embedded GNU/Linux, modul în care piesele se îmbină. Ce componente sunt necesare pentru a construi un sistem embedded GNU/Linux, de unde să le obții și cum să le configurezi/construiești/instalezi? De unde poți obține ajutor? Ce înseamnă licențele software? Exercițiile practice îți oferă experiența necesară pentru a putea dezvolta propriile sisteme embedded GNU/Linux după parcurgerea cu succes a acestui training.
Descriere
Acest curs de cinci zile combină exerciții practice cu instruire pentru a ilustra conceptele sistemelor embedded GNU/Linux. Este conceput să te aducă rapid la un nivel avansat. Filosofia, conceptele și comenzile necesare pentru a utiliza eficient GNU/Linux sunt descrise printr-o combinație de teorie și training practic.
Nu reinventați roata, ci învățați de la un trainer experimentat și luați acasă o cunoaștere funcțională a GNU/Linux și abilitatea de a-l utiliza eficient în propriul proiect de dezvoltare embedded.
Cine ar trebui să participe?
Manageri, manageri de proiect, ingineri software, ingineri hardware, ingineri de dezvoltare, ingineri de sisteme, testeri, administratori, tehnicieni și alte părți interesate de tehnologie, care doresc să înțeleagă cât mai repede cum funcționează Embedded GNU/Linux. Trebuie să utilizezi GNU/Linux sau ai libertatea de a decide dacă are sens să-l folosești. Poate că ai încercat deja să utilizezi Embedded GNU/Linux, dar nu ești sigur că ai făcut totul corect. Folosești în prezent un alt sistem de operare și vrei să afli dacă GNU/Linux ar putea fi mai bun și/sau mai ieftin.
Opțiuni de Livrare
Toate materialele de training sunt în limba engleză, dar prezentarea poate fi în engleză sau în germană, după dorință, la nivel mondial.
- on-site - condus de instructor
- on-line - condus de instructor
- combinație on-site/on-line - condus de instructor
Course Outline:
Introducere
- Istoria Unix/Linux
- Software Liber
- Filozofia Unix
ARENA GAZDEI
- Joacă-te cu GNU/Linux
- arhitectura
- shell
- permisiuni
- FHS (standardul ierarhiei fișierelor)
- legături hard/soft
- uid/gid real/efectiv
- planificator
- proces/sarcină/fir de execuție
- IPC simplu/avansat
- conducte
- semnal
- cozi de mesaje
- semafoare
- memorie partajată
- sockets
- select/poll
- Tehnici IPC de evitat
- Configurarea Linux pe gazdă
- Yocto/ELDK (unelte, biblioteci, pachete pentru țintă/cross)
- Emulare Terminal
- Servere (DHCP, tftp, NFS)
ARENA ȚINTEI
- fișiere necesare pentru a rula ceva pe placa țintă
- Configurare JTAG/BDI
- u-boot (checkout, configurare, build)
- kernel (checkout, configurare, build)
- rootfs
- flat device tree
- construiește/execută ce este aplicabil de mai sus pe placa țintă
- diverse rootfs
- CRAMFS
- ramdisk
- MTD
- JFFS2
- roEXT2
- ubi
- construiește/execută ce este aplicabil de mai sus pe placa țintă
- compararea sistemelor de fișiere root
- depanare
- unelte simple
- local/remote
- user/kernel
- gdb
- gdbserver
- JTAG/BDI (opțional)
- profilare
- gprof
- gcov
- oprofile
TIMP REAL
- cerințe preliminare
- interrupturi
- cod reentrant
- Linux timp real
- puncte de preemțiune explicite/implicite
- patch de preemțiune timp real
- kernel complet preemptiv
- extensii pentru timp real dur
- Adeos/Xenomai
- adeos patch
- xenomai
- patch/config/build kernel
- rulează pe placă
LANȚARE SOFTWARE
- administrare
- dezvoltare
- cum să reproduci o versiune software?
DIVERSE
- getopt
- endianess
- cheat-sheets
Cu excepția cazurilor în care se specifică altfel, conținutul acestui plan de curs este licențiat sub Atribuire-Necomercial-Împărtășire în Condiții Identice 4.0 Internațional (CC BY-NC-SA 4.0).
Overview in Category: