Linux na prapodivných deskách. LinuxDays 2017, Lenka Kosková Třísková Technická univerzita v Liberci

Podobné dokumenty
Úvod do OpenWRT. Ondřej Caletka. 1. března Uvedené dílo podléhá licenci Creative Commons Uveďte autora 3.0 Česko.

Linux (nejen) v Low End routerech

konec šedesátých let vyvinut ze systému Multics původní účel systém pro zpracování textů autoři: Ken Thompson a Denis Ritchie systém pojmnoval Brian

Když se Linux nevejde. Jiné operační systémy Lenka Kosková Třísková, LinuxDays2018

Zpracování signálu z obrazového senzoru s využitím OS Linux pro embedded zařízení

Monitorování sítě pomocí OpenWrt

OpenWrt. Otevřený systém pro domácí routery. Martin Strbačka

Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek

Linux na mobilních telefonech

VYUŽITÍ PYTHONU PRO REALTIMOVÉ ŘÍZENÍ PERIFERIÍ

Instalace OS, nastavení systému

Technická specifikace ČÁST 1. Místo plnění: PČR Kriminalistický ústav Praha, Bartolomějská 10, Praha 1

SKŘÍŇ PC. Základní součástí počítačové sestavy je skříň.

MS WINDOWS I. řada operačních systémů firmy Microsoft *1985 -? Historie. Práce ve Windows XP. Architektura. Instalace. Spouštění

pouˇzití USB nebo SPI

FPGA + mikroprocesorové jádro:

Hardware Základní pojmy. Autor: Ing. Jan Nožička SOŠ a SOU Česká Lípa VY_32_INOVACE_1122_Hardware Základní pojmy_pwp

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

Základní deska (mainboard, motherboard)

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Hardware pro IoT. Neúplný a subjektivní přehled malých počítačů. vhodných na hraní, kterému se dnes honosně říká. Internet Věcí (Internet of Things)

BIOS. Autor: Bc. Miroslav Světlík

udev a kamarádi... Středisko UN*Xových technologií

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Forenzní analytická jednotka - technická specifikace (9 ks)

Informační a komunikační technologie

Windows a real-time. Windows Embedded

Hardware. Z čeho se skládá počítač

Vestavné systémy BI-VES Přednáška 10

Základní informace. Operační systém (OS)

Prostředí pro výuku vývoje PCI ovladačů do operačního systému GNU/Linux

Jaroslav Řezník Martin Šenkeřík

TEMPO průmyslový panelový počítač

Herní PC HAL3000 Artemis výkonný lovec pro nekončící zábavu

Stavba operačního systému

PROCESOR. Typy procesorů

LINUX ADRESÁŘOVÁ STRUKTURA. Co to, hrome, je? V této lekci se budeme brouzdat adresáři. SPŠ Teplice - 3.V

Tomáš Borland Valenta

2.1 Obecné parametry Obecné parametry Rack serveru

Embedded Linux a možnosti zrychlení startu zařízení

Digitální učební materiál

Rudolf Marek. Kompilujeme jádro a aplikace (Mplayer) ALL YOUR BASE ARE BELONG TO US!

Vestavné průmyslové počítače. Martin Löw

MPLAB Harmony. Idea Instalace. Více podrobností naleznete na nejen k MPLAB Harmony

Shrnutí Obecné Operační systém Microsoft Windows 7 Ultimate Centrální procesor

2.8 Procesory. Střední průmyslová škola strojnická Vsetín. Ing. Martin Baričák. Název šablony Název DUMu. Předmět Druh učebního materiálu

Základní jednotka procvičování

monolitická vrstvená virtuální počítač / stroj modulární struktura Klient server struktura

SÁM O SOBĚ DOKÁŽE POČÍTAČ DĚLAT JEN O MÁLO VÍC NEŽ TO, ŽE PO ZAPNUTÍ, PODOBNĚ JAKO KOJENEC PO PROBUZENÍ, CHCE JÍST.

Obsah ZÁKLADNÍ DESKA. O autorech 11 Úvod 13

SADA VY_32_INOVACE_PP1

architektura mostů severní / jižní most (angl. north / south bridge) 1. Čipové sady s architekturou severního / jižního mostu

Rozhraní mikrořadiče, SPI, IIC bus,..

Činnost počítače po zapnutí

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Wonderware hardware. Seznam produktů

Bootkity v teorii a praxi. Martin Dráb martin.drab@ .cz

Operační systémy (OS)

Úvod do operačního systému Linux Mgr. Josef Horálek

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Real Time programování v LabView. Ing. Martin Bušek, Ph.D.

NOTEBOOK DELL INSPIRON 13Z 5000 TOUCH NOTEBOOK, I5-7200U, 4GB, 128GB SSD, 13.3" FHD DOTYKOVÝ, W10, ŠEDÝ, 2YNBD ON-SITE

) informace o stavu řízené veličiny (předávaná řídícímu systému) - nahrazování člověka při řízení Příklad řízení CNC obráběcího stroje

Souborové systémy. Architektura disku

Mikrořadiče společnosti Atmel

Automatizace bootování s novabootem

Obsah. O autorovi 11 Předmluva 13 Zpětná vazba od čtenářů 14 Errata 14

LINUX - INSTALACE & KONFIGURACE

HW počítače co se nalézá uvnitř počítačové skříně

Základní pojmy informačních technologií

Vlastnosti produktu. Neutuchající pracovní nasazení s HAL3000 EliteWork

ZÁKLADNÍ DESKA ASUS PRIME X370-PRO ZÁKLADNÍ DESKA, AMD X370, AM4, 4X DIMM DDR4, 1X M.2, ATX

Základní deska (motherboard, mainboard)

Základní typy struktur výpočetních systémů

SYSTÉMY NAČIPU MI-SOC

Dell Inspiron 580: Kompletní technické údaje

Přednáška. Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

WiFi LED informační panel

Vlastnosti produktu. Neutuchající pracovní nasazení s HAL3000 EliteWork

Linuxalt

Zprovoznění kitu Xilinx Spartan-6 FPGA Industrial Video Processing Kit

Dell Latitude E6510. O varováních. Informace o instalaci a funkcích. VAROVÁNÍ: VAROVÁNÍ upozorňuje na možné. Čelní pohled

TGMmini. začínáme. komplexní dodávky a zprovoznění servopohonů dodávky řídicích systémů

Maturitní témata. Informační a komunikační technologie. Gymnázium, Střední odborná škola a Vyšší odborná škola Ledeč nad Sázavou.

2.9 Vnitřní paměti. Střední průmyslová škola strojnická Vsetín. Ing. Martin Baričák. Název šablony Název DUMu. Předmět Druh učebního materiálu

Úvod do operačního systému Linux Mgr. Josef Horálek

1) Napájecí zdroj. 2) Skříň (Case) 3) Pevný disk

ORGANIZACE A REALIZACE OPERAČNÍ PAMĚTI

Výzva k podání nabídek

OPERÁTORSKÉ PANELY A PRŮMYSLOVÁ PC

Profilová část maturitní zkoušky 2015/2016

Vývoj software pro Linuxové distribuce. Installfest Praha,

Střední odborná škola a Střední odborné učiliště, Hořovice

IT ESS II. 1. Operating Systém Fundamentals

Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/

3. Počítačové systémy

BM100. Kompaktní bezventilátorový IPC z rodiny Intel Apollo Lake. REM-Technik je výhradním partnerem společnosti ASEM na českém a slovenském trhu.

1. SYSTÉMOVÉ POŽADAVKY / DOPORUČENÁ KONFIGURACE HW A SW Databázový server Webový server Stanice pro servisní modul...

Data Sheet Fujitsu LIFEBOOK AH531 Notebook

Opakování k maturitní zkoušce z informatických předmětů

Transkript:

Linux na prapodivných deskách LinuxDays 2017, Lenka Kosková Třísková Technická univerzita v Liberci

Prapodivné desky? Se systémem od výrobce (BeagleBoard black) S podporou pro vývoj vlastní distribuce (WandBoard) Zákaznická deska bez podpory, navíc s nestandardním HW

Mám prapodivnou desku! Lze použít hotovou distribuci? Malé nebo na jedno použití? Chci řízený proces Ne Ne Ne Ano Vezmu hotovou distribuci Ano Buildroot Yocto Ano

Prapodivné desky? Single board computer Celý systém je na jedné desce plošných spojů. Typicky celá řada pinů (sběrnice, čítače, analogové vstupy/výstupy) Síť, wifi, USB, nějaké video (od VGA po několikanásobný full HD) Procesor typicky nějaký ARM Úložiště SD karta, někdy konektivita pro disky System on chip - nějaký ARM a něco V jednom čipu typicky dohromady GPU, RAM, řadič USB a další Často zajímavé periferie (AD/DA, CAN ) Typicky nějaké jádro ARM plus výrobcem vyvíjené prvky Samsung, Broadcom, Quallcom, NXP, Nvidia, Reneas...

Nějakej ARM Cortex A = Applications - pro zákaznické systémy s plným OS ( počítače ) Tablety, mobily, servery, robotika... Vysoký výkon, 64/32bit Cortex R = Real time - embedded, signal processing Automotive, kamery, úložiště... Speciální péče věnovaná přerušením, obsluze paměti DSP support - bloky pro filtry, transformace... Cortex M = Microcontroller - pro MCU a SoC Nízké taktovací frekvence, malá spotřeba DSP support - bloky pro filtry, transformace, řízení motorů, statistiku

Embedded Linux Linux je free, nějak si ho přeložím. => Potřebujeme: Překladač pro cílový HW Knihovny a podporu HW specialit Zavaděč operačního systému spustitelný na cílovém HW Další aplikace a funkce

Kdy to má cenu? O Linuxu se vyplatí přemýšlet, když: Mám cca 64 MB RAM a více. Mám procesor asijakopentium tak na 200 MHz. Mám cca 100 MB na souborový systém. Mám dost energie. Alternativy? RTOS, FreeRTOS TinyOS RIOT mbed

EmbeddedLinux = TBKR Při vývoji musíme zajistit/vybrat/mít TBKR : 1. Nástroje pro překlad ze zrojového kódu a zdrojové knihovny - Toolchain 2. Vhodný zavaděč - Bootloader 3. Sestavené přeložené jádro - Kernel 4. Souborový systém s připravenými knihovnami a programy - Root Filesystem

Toolchain Sada nástrojů, jež zajišťují překlad zdrojového kódu do formy spustitelné na cílovém zařízení. (Mastering embedded Linux Programming) Zahrnuje: překladač, linker, běhové knihovny (runtime libraries). Co se bude překládat? zavaděč, jádro, a všechny doplňkové nástroje (shell, utility, )

Standardní a nestandardní toolchain GNU ( normální Linux ): Nativní: Cross: Binutils + gcc + glibc Zvolený toolchain lze spustit přímo v cílovém systému, překládáme na cílové architektuře. Křížový překlad - pracujeme např. na rozumně rychlém PC, s architekturou odvozenou od x86, překládáme pro ARM. Kde ho vzít? U výrobce (SoC? ARM?). Sestavit samostatně (crosstool-ng). Podpůrné systémy pro sestavování distribucí.

Je libo libc? C library - knihovny pro systémová volání a základní funkce OS V normálním Linuxu glibc V embedded mnoho verzí, protože můžeme mít problém s: licence - nechceme vždy GPL (musl-libc), velikost - máme málo paměti (uclibc), architektura - výrobce má něco svého (avr-libc) Volba knihoven je zásadní, svazuje nás s dalšími nástroji, nelze měnit zpětně.

Zavaděč 1. Start kódu z nějaké paměti typu ROM 2. Hledá se kód ke spuštění v nějaké dostupné paměti nebo na síti nebo přes UART - toto určí výrobce HW. 3. Zavádí se OS - cílem je kopírovat do paměti jádro a nastartovat init. U-Boot Barebox GRUB se nepoužívá (není pro ARM, trable s GNU v3 a secure boot). Zavaděč se nahrává na zařízení dle pokynů výrobce (typicky sektor na paměťové kartě, někdy vestavěná karta na desce).

Jádro Nastavit síť v našem Linuxu zvládne každá mamina od plotny, pokud ovšem ví, co je to IP vrstva. (Prezentace nějaké distribuce na SLT 1998) Teoreticky je možné stáhnout si nejnovější zdrojáky z kernel.org a pustit se do práce pokud ovšem víte, co je to IP vrstva. Prakticky: Výrobce desky zveřejňuje aktualizované a testované jádro Výrobce SoC zveřejňuje Výrobce architektury Yocto, Linaro, Buildroot Nejde jen o vlastní jádro, ale o moduly a jejich výběr, sestavení device tree a také o ovladače případného speciálního HW.

Kromě jádra... Init Shell & Utilities Služby a démoni Knihovny Konfigurační soubory /dev, /proc, /sys Moduly jádra

A co ještě? Nastavit init Určit, co se spouští a v jakém pořadí Definice nastavení zařízení Konfigurace připojovaných souborových systémů Nastavení sítě Vytvoření uživatelů, nastavení oprávnění Spousta dílčí práce, musí se dokumentovat, musí se hlídat verze nástrojů, problém s aktualizacemi => Chybí tomu systém! => Build systems!

Build system Automatizace postupu TBKR (toolchain-bootloader-kernel-rootfs) 1. Obstará zdrojové kódy dle zvolené konfigurace a HW, zajistí záplaty a opravy 2. Postup sestavení systému probíhá podle sepsaného scénáře (= dokumentováno!) 3. Automaticky vytváří jednotlivé komponenty 4. Sestaví souborový systém 5. Připraví image a všechny doprovodné soubory (bootloader nebo nějaké skripty)

Jaké to jsou? Yocto Zpřístupňuje nástroje pro grafické rozhraní systému (X11, GTK+, Qt, Clutter, SDL a další). Jádro je kompatibilní s OpenEmbedded Core. Součástí projektu je i podpora různých architektur pro emulátor QEMU (včetně jádra ARM 9). Vyvíjený systém je možné rozšiřovat a doplňovat další funkce. Pro zařízení s omezenou velikostí obrazovky nabízí Yocto Sato reference user interface, grafické uživatelské rozhraní vystavěné nad GTK+. BuildRoot Vytvářeno s cílem mít minimální image, minimální možná konfigurace, minimální závislosti Ve srovnání s výstupem Yocto složité následné úpravy

Yocto Distribuce ve vrstvách, základem jádro a systémové knihovny Výrobci HW či jiní vývojáři přidávají vrstvy Pro novou desku se vytváří Board Support Package Konfigurace překladu - BitBake & Recipes Reálně: Deska WandBoard, podpora od výrobce již existuje - cca 1 hodina pro nastavení, cca 6 hodin pro překlad, image včetně SATO - 372 MB Zdroj obrázku - dokumentace k Yocto