Pavel Píša
Vystudoval obor kybernetika a robotika na ČVUT FEL, kde v současné době učí a pracuje na projektech využívajících Linux a další procesorové technologie. Paralelně se zabývá návrhem firmware a elektroniky laboratorních a medicínských přístrojů a přesného servořízení ve firmě PiKRON.
Sessions
Systém NuttX nabízí alternativu k OS GNU/Linux pro mikrokontroléry s malým množstvím paměti (např. 32kB RAM), přitom dodržuje standardy POSIX a tak je možné psát aplikace přenositelné mezi GNU/Linuxem a NuttXem.
Workshop nabízím jako příležitost k setkání se, vzájemnou výměnu zkušeností jak s OS tak s podporovaným HW. Hlavní přínos může mít pro ty, co vlastní některý z podporovaných procesorovým modulů a chtějí si na něm něco vyzkoušet a případně poradit. Předvedu, jak systém nakonfigurovat a pustit na několika našich deskách s rozhraním ETHERNET, CAN, RS-485. Předvedu, jak kompilovat a nahrávat aplikace přes síť, vytvářet "jaderné" moduly atd. Využitelnost sytému testuji pro jednoho našeho firemního partnera a v duchu otevřeného sdílení SW a znalostí jsem již několik oprav i úprav umožňujících obecnější využití systému do projektu přispěl. Naopak si rád poslechnu zkušenosti druhých.
Pokud bude zájem, tak na shodném hardware předvedu i běh systému RTEMS. Mohu zodpovědět dotazy, jak moc velký je rozdíl ve výbavě, bezpečnosti atd. proti systému GNU/Linux a kde má smysl o těchto alternativách uvažovat a kdy je jim lepší se naopak vyhnout.
S využitím výukového simulátoru QtMips bude vysvětlené a demonstrované zpracování základních instrukcí a omezení daná rychlostí pamětí. Jejich řešení přidáním vyrovnávacích pamětí a proč ani na reálných/velkých systémech špatně navržené programy vyrovnávací paměť nezrychlí. Pokračovat bude vysvětlení a vizualizací zřetězeného zpracování instrukcí, přístup k jednoduché vstupní a výstupní periferii, sériovému portu, výstup s využitím služeb operačního systému, využití přerušení, přechod k programování v jazyce C a výstup textu na grafickém displeji. Diskuze o perspektivách procesorových architektur a jejich výuky.
Materiály pro prezentaci http://cmp.felk.cvut.cz/~pisa/linuxdays-19/
Živý assembler http://cmp.felk.cvut.cz/~pisa/linuxdays-19/live.S
Popis cvičení https://cw.fel.cvut.cz/b182/courses/b35apo/tutorials/02/start
Release https://github.com/cvut/QtMips/releases
Online http://cmp.felk.cvut.cz/~pisa/apo/qtmips/qtmips_gui.html
Bin, Linux, Mac, Win, GCC MIPS ELF http://cmp.felk.cvut.cz/~pisa/apo/qtmips/