Linux (nejen) v Low End routerech



Podobné dokumenty
Monitorování sítě pomocí OpenWrt

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

Software je ve světě IT vše, co není Hardware. Do softwaru patří aplikace, program, proces, algoritmus, ale i data (text, obrázky), operační systém

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

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

Administrace počítačových sítí. WEB a LPT

OpenWrt. Cesta do hlubin otevřeného systému pro domácí routery. Martin Strbačka

ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická

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.

Linux na mobilních telefonech

OPERAČNÍ SYSTÉM ZLÍNSKÝ KRAJ. Obchodní akademie, Vyšší odborná škola a Jazyková škola s právem státní jazykové zkoušky Uherské Hradiště

Stavba operačního systému

IPv6 na OpenWRT. 6. června Ondřej Caletka (CESNET, z.s.p.o.) IPv6 na OpenWRT 6. června / 17

Implementace numerických metod v jazyce C a Python

Nové jazykové brány do Caché. Daniel Kutáč

ZADÁVACÍ DOKUMENTACE K VEŘEJNÉ ZAKÁZCE: DODÁVKA VÝPOČETNÍ TECHNIKY. Stránka 1 z 13

New Automation Technology. Beckhoff I/O. Průmyslová PC. Beckhoff Image 1

Virtualizační platforma ovirt

Operační systémy Linux, Mac OS X a jejich srovnání

Workmonitor. Servisní návod. 24. června 2014 w w w. p a p o u c h. c o m

Technická dokumentace

Řízení toku v přístupových bodech

Příloha A. Služby zajišťované Výpočetním centrem VŠE. (podle aktuálního stavu k )

Instalační návod IP kamer

HARDWARE SOFTWARE PRINCIPY

Arduino a ESP8266. Představení, způsoby jejich propojení a zamyšlení nad smyslem jejich propojování. Petr Stehlík

2N Access Commander. Základy použití Verze

Vestavné počítače PAC

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

Definice OS. Operační systém je základní programové vybavení počítače, nezbytné pro jeho provoz.

Karel Bittner HUMUSOFT s.r.o. HUMUSOFT s.r.o.

Výzva k podání nabídek (pro účely uveřejnění na nebo www stránkách krajů)

O aplikaci Parallels Desktop 7 for Mac

SOFTWARE A POČÍTAČOVÉ SÍTĚ. Alice Nguyenová

Jaroslav Řezník Martin Šenkeřík

Konfigurace pracovní stanice pro ISOP-Centrum verze

Instalace Debianu pomocí debootstrap

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

Alpine Linux: minimalistická distribuce nejen na server

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

Využití systému Dynamips a jeho nástaveb pro experimenty se síťovými technologiemi Petr Grygárek

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Co je to virtualizace?

MONITORING A ANALÝZA KVALITY ELEKTŘINY

Popis licencování, nastavení a ovládání replikací - přenosů dat

INFORMAČNĚ TECHNOLOGICKÝ ZÁKLAD

Operační systémy (OS)

Regionální knihovní systémy. Ing. Jiří Šilha, LANius s.r.o.

Projekt Turris. Proč a jak? Ondřej Filip ondrej.filip@nic.cz Bedřich Košata bedrich.kosata@nic.cz / IT13.2

Zpráva o plnění cílů projektu VISK3. WebArchiv - vytvoření podmínek pro zpřístupnění českých webových zdrojů

Směrovací démon BIRD. CZ.NIC z. s. p. o. Ondřej Filip / IT10

Closed IPTV. Martin Jahoda Dedicated Micros. Copyright AD Group

Řídicí systémy řady 400 str.2 z 16 MICROPEL

Rozdělení operačních systémů

Skupina oborů: Elektrotechnika, telekomunikační a výpočetní technika (kód: 26)

ICT plán školy. pro období školního roku 2012/ / Základní údaje o škole. ZŠ Ostrava, Gen. Píky 13A, příspěvková organizace

LINUX - INSTALACE & KONFIGURACE

SADA VY_32_INOVACE_PP1

Návrhy elektromagnetických zení

BIRD Internet Routing Daemon

Jak se měří Internet

Příloha č.2 - Technická specifikace předmětu veřejné zakázky

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

Počítačová síť ve škole a rizika jejího provozu

Ovládání RC modelu pomocí Wi-Fi. Pavel Valenta

Digitální učební materiál

Automatizace bootování s novabootem

Technická specifikace předmětu zakázky

NMS. Linux na Strahově. Radim Roška & Moris Bangoura InstallFest Silicon Hill

ICT plán školy stav na začátku roku 2005 Stav k Počet žáků: 279 (k )

aniel Dvořák, Martin Mičan Liberec Windows Server 2012/R2 Migrační scénáře

QuarkXPress soubor ReadMe

BIOS (BASIC INPUT-OUTPUT SYSTEM)

Multimediální formáty

Instalace a konfigurace OpenAdmin tool na M$ a Linuxu

Možnosti a využití linuxových přijímačů twin HD PVR se systémem Enigma2

Průmyslové pece Tepelné procesy Sušárny a klimatizační komory Zkušebny Technologické linky Stroje

i4wifi a.s. produktové novinky Leden 2013

Ovládání RC modelu pomocí Wi-fi. Pavel Valenta

Srovnání Linuxu a BSD z pohledu jádra. Jan Dyrczyk

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

JEDNOTKA SNÍMAČŮ 1-WIRE (DALLAS) TUDS-40-MOD

Ruckus Wireless Instalace a plánování. Jiří Zelenka

Linux na mobilních zařízeních

Technická specifikace vymezené části 1 SERVER

Jaroslav Řezník Martin Šenkeřík Jozef Mlích

Delegace naleznou v příloze dokument D038863/05.

Návod k obsluze CC&C WA-6212-V2

1 ZADÁNÍ: BROB Základy robotiky. Pavel Bukovský. Vyuţití funkce MetaRouteru v MikroTik RouterOS

Shrnutí. Funkce. Pro komunikaci s ostatními zařízeními lze využít 1x port Ethernet, 1x sériové rozhraní RS485.

IP 100. verze Manuál. tovární heslo pro IP100 (module pasword) je paradox

S2. Vytvoření Windows balíku pro vývoj na STM32 architektuře

Jak se měří Internet

SECOMEA - Jednoduché a bezpečné připojení ke vzdáleným zařízením přes internet

CZ Manuál Import a distribuce: RECALL s.r.o.

Registrační číslo projektu: CZ.1.07/1.5.00/ Název projektu: Moderní škola 21. století. Zařazení materiálu: Ověření materiálu ve výuce:

Technická specifikace předmětu zakázky

TS-509 Pro Turbo NAS. instalační příručka

Transkript:

Linux (nejen) v Low End routerech Ing. Lukáš Macura <lukas@macura.cz> Slezská univerzita v Opavě Obchodně podnikatelská fakulta v Karviné Člen projektu CESNET 134/2005 Prostředí pro vývoj embedded systémů

Úvod Linux!= jen PC Linux!= jen x86 Linux > M$ Linux = (x86 + sparc + mips + arm + alpha +...) Linux Є { Svět C } Linux Є { Svět dobré implementace síť. protokolů } Linux Є { Svět, který e vyvíjí } ==> Linux je dobrý pro embeded zařízení

Současná situace Na trhu několik výrobců HW, kteří dělají zařízení Linux inside Některé se s tím chlubí, jiné ne, často porušováno GPL Lepší případ výrobce aktivně propaguje, že je vevnitř linux, zveřejní všechny zdrojové kódy, podporuje vývoj Horší případ výrobce využije linux, ale nedá k zařízení podporu (zatím není porušeno GPL) Nejhorší případ výrobce udělá HW, provede změny v linuxových zdrojových kódech a nezveřejní změny. Ne všechny zařízení se umí vypořádat s pokaženým firmware. Některé po upgrade firmware vhodné už jen jako topinkovače. Ne všechny HW zařízení je možné upgradovat bez porušení záruky Ne všechny HW zařízení jsou dostatečně stabilní Ne všechny zařízení unesou větší zátěž

Co je to linux embeded Embeded linux je linux, malou či velkou silou nacpaný do nějakého HW zařízení Existuje spousta HW, který je kompatibilní s linuxem, aniž bychom o tom věděli Podpora zařízení = podpora CPU+BUS v základu (na hidden kernel panic dostačující). Dále potřebujeme síť, display, kbd, serial,... Zařízení mohou být konstruována za různými učely (WiFI AP, satelit, router, DVD player, DVD recorder, Pocket PC,..., pračka, žehlička,...) Originální firmware se specializuje na původní účel Linuxákům to ale nestačí (WiFi AP z DVD playeru, žehlička+pračka z Pocket PC, DVD player+wifi AP+DVD recorder ze satelitu,...) Proč se omezovat původními možnostmi zařízení? Nemáme tolik paměti a CPU, musíme být většinou skromní (např. 2Mb flash, 4MB RAM) Příklady toolchainsů (formát CPU OS Specific): i486 linux gnu, powerpc linux uclibc, armv5b softfloat linux gcc

Současná situace Několik vedle sebe běžících projektů Některé spjaty se svým původním HW, jiné obecný framework Oba směry vedou k cíli. Z hlediska vývoje asi lepší způsob obecného prostředí Specifické projekty jsou ale s vývojem dál Je možno kompilovat i ručně ( /opt/unslung/toolchain/armv5b softfloat linux/gcc 3.3.5 glibc 2.2.5/bin/armv5b softfloat linux gcc DHAVE_CONFIG_H I. I. I../../include I../../include O2 pipe I/opt/unslung/staging/opt/include D arm g O2 MT bag.lo MD MP MF.deps/bag.Tpo c bag.c fpic DPIC o.libs/bag.o) Jedná se o cross compiling, je potřeba vyřešit lokace knihoven, includů, zdrojů kernelu a vše okolo. Mnoho GPL software nepočítá s cross compilingem. Hotové projekty řeší závislosti a odkazy na cross compiling většinou správnou definici parametrů v Makefile

uclibc (http://www.uclibc.org/) Knihovna specializovaná pro embeded zařízení Jedná se o velmi optimalizovanou knihovnu libc (ovšem napsanou z nuly, ne patch) Dá se zvolit, co vše má knihovna umět v době kompilace Může být velmi malá a efektivní Většina slabších zařízení používá

Busybox (http://www.busybox.net/) Lednička+pračka+vysavač+sporák+auto v minimálním provedení Snaží se uživateli simulovat jeho oblíbené prostředí (shell) Za cenu být co nejmenší umí pouze omezenou sadu příkazů a omezenou sadu parametrů Dá se nastavit seznam podporovaných věcí při kompilaci Nejlepší start pro malé systémy

Openwrt (http://www.openwrt.org) Projekt primárně určený pro WRT54G Rozšiřuje se i na jiné platformy (ASUS WL 500Gx,Siemens Gigaset SE505, Motorola WR850G,...) Relativně jednoduchá předpřipravená kompilace Samotný projekt je jen skupina Makefiles Při spuštění potřebuje stáhnout zdrojáky gcc, glibc, binutils,... a vše kompiluje pro platformu, kterou potřebuje Na pomalé lince problém Výsledkem je ale funkční image připravený pro upgrade

Scratchbox (http://www.scratchbox.org) Projekt pro obecný vývoj embeded systémů Systematičtější příprava a podpora Slabší podpora pro jednotlivá koncová zařízení (vytvoření flash image apod) Multiplatformnost Simulace vyvíjeného prostředí (sbrsh či qemu) Mnohem příjemnější a čistší kompilace Výsledkem jednotlivé binárky či deb či ipkg balíky Na jednom serveru více prostředí pro více uživatelů, stačí si vybrat Náročnější na vytvoření zběsilých toolchainsů Po vytvoření toolchainu vše velmi jendoduché./configure && make && make install && less README && run

Výrobci HW Chcete vyvíjet HW? Dělejte pouze HW, software nechte SW vývojářům Dělba práce, každý dělá co umí Skvělý HW s nefunkčním SW = paskvil Vývoj opensource = rapidní konvergence Příklad: vytvořím HW, zdokumentuju vše, použiju pouze takové komponenty, které jsou linuxem podporované Zaplatím linuxovému šílenci, předám dokumentaci, mám první verzi firmware (opensource) Udělám WWW, CVS(SVN), sf.net a v klidu prodávám HW Linuxáci už mou práci ocení. Pokud je zařízení kvalitní, SW se už bude sám vyvíjet. Já jednou za čas prolezu všechny weby, související s vývojem Vezmu to nejlepší a udělám nový oficiální firmware Z původního účelu zařízení se stane nový, případně mnoho dalších

Cíl projektu CESNET Prostředí pro vývoj embedded systémů Podpora pro vývoj embeded aplikací Zajištění pracoviště pro vývoj Zajištění scratchbox prostředí, přístupného pro vývojáře. Spolupráce (nejen) se studenty v oblasti vývoje Výsledky formou workshopů a presentací Vypisování seminárních a diplomových prací s tématikou vývoje embeded aplikací Další vývoj HW aplikací

Dlouhodobý cíl Udělat linux ještě stabilnější na současných platformách Přidávat podporu pro další, vznikající platformy Naportovat všemožný software do všech nemožných HW Apelovat na výrobce HW, aby zveřejňovali vše o svých produktech Apelovat na EU, aby neprošly softwarové patenty Užívat si výhod embeded linuxu Migrace: IP everywhere na Linux everywhere Proč končit linuxem? Máme i další platformy Portace OpenBSD do HW routeru (výhody pf)

Závěr Bijme se za svá základní práva ( C, open, free, doc ) Nekupujme zařízení, u kterých se musíme spoléhat na nový firmware pouze ze stránek výrobce. Bojujme proti SW patentům Podporujme vývoj Don't worry, be linux. Lukáš Macura <lukas@macura.cz>