Aktuální vydání

celé číslo

10

2019

Automatizace v chemii a petrochemii

Hladinoměry

celé číslo

Představení firmy Sysgo

Představení firmy Sysgo

Firmu Sysgo založili v roce 1991 v Německu tři vývojáři a hned od počátku její činnost zaměřili na poskytování služeb v oblasti softwaru do vestavných (embedded) zařízení. Firma se rychle rozvíjela a v současnosti zaměstnává stovku lidí, většinou vývojářů. Pro rychlý rozvoj firmy bylo rozhodující, že se brzy po svém vzniku stala výhradním distributorem operačního systému LynxOS pro Německo.

ELinOS a PikeOS

Vzhledem k rostoucí poptávce po řešeních založených na volně dostupném kódu (open source) začala firma realizovat projekty s operačním systémem Linux. Aby však mohla zajistit kvalitu a reprodukovatelnost výsledků a kontinuitu, bylo na konci 90. let dvacátého století rozhodnuto o vytvoření vlastní, profesionální distribuce operačního systému Linux. Proto byl v roce 2000 vytvořen operační systém ELinOS, který dovoluje vyvíjet aplikace pro vestavná zařízení pod OS Linux. Od 90. let se firma zabývá certifikací softwaru podle nejpřísnějších standardů, jako jsou DO-178B nebo SPICE.

Obr. 1.

Obr. 1. Koncepce PikeOS: současný provoz různých vzájemně oddělených operačních systémů

Dalším milníkem ve vývoji firmy se stal rok 2005, kdy byl uveden na trh zatím její nejnovější produkt – operační systém reálného času PikeOS, vyvinutý právě s ohledem na budoucí certifikovaná řešení. Ten je pozoruhodný svou virtualizační koncepcí, která dovoluje, aby na něm běžely různé operační systémy, vzájemně oddělené v jakýchsi virtuálních „přihrádkách“ (partitions), jak ukazuje obr. 1. Toto řešení umožňuje na jednom hardwarovém zařízení provoz různých aplikací běžících na odlišných operačních systémech, popř. splňujících bezpečnostní kritéria různých úrovní (safety critical). Své služby uplatňuje Sysgo AG v průmyslové automatizaci, dopravní, zbrojní a zdravotnické technice.

Sysgo v České republice

Kancelář firmy Sysgo v Praze je mezi pobočkami této firmy výjimečná tím, že od svého založení v roce 2004 má na starosti samostatný vývoj produktu, a to systému ELinOS. Uvedený systém se mimo jiné umístil na druhém místě v soutěži o výrobek roku, jejíž výsledky na veletrhu Embedded World 2007 zveřejnil server elektroniknet.de, a získal si i mnoho příznivců ze strany českých zákazníků. V pražské pobočce firmy Sysgo působí také tým zabývající se certifikací softwaru. Jeho úkolem je pracovat na certifikaci softwarového avionického protokolu AFDX (Avionic Full Duplex Switched Ethernet) pro ethernetové sítě v dopravních prostředcích. Tento deterministický protokol byl původně zčásti řešen softwarově a zčásti hardwarově. Tým firmy Sysgo vyvinul čistě softwarové řešení, které je v současnosti implementováno na skupinu procesorů Power PC, ale v zásadě je přenositelné na jakýkoliv jiný procesor. Tím se významně spoří náklady, což ocení zákazníci, jako je Airbus nebo Boeing, s nimiž Sysgo spolupracuje.

Obr. 2.

Obr. 2. Zleva: Technický ředitel Pavel Bartůšek a obchodní ředitel Jan Rollo v pražské kanceláři firmy Sysgo

Pražská kancelář firmy Sysgo se dynamicky vyvíjí, nyní zaměstnává deset lidí, ale dalších deset pracovníků se chystá přijmout co nejdříve.

Zkušenosti z praxe

O zkušenostech s vývojem operačních systémů a certifikací softwaru jsme přímo v sídle české pobočky firmy Sysgo hovořili s panem Janem Rollem, obchodním ředitelem firmy Sysgo pro východní Evropu, a technickým ředitelem panem Pavlem Bartůškem (obr. 2).

Operační systém ELinOS je označován za profesionální distribuci systému Linux. Co to v praxi znamená?

Rollo:
To znamená, že je distribuce vyvíjena s ohledem na její použití při vývoji vestavných neboli embedded zařízení, jsou zohledňovány potřeby jednotlivých segmentů trhu a v neposlední řadě je také zajištěn další vývoj této distribuce a podpora zákazníka při vývoji aplikací po celou dobu životního cyklu výrobku. Ručíme také za to, že výsledky budou reprodukovatelné. Výhodou Linuxu je, že pro něj existuje spousta programů. Ty vznikly díky společnému úsilí tisíců programátorů, kteří píší kód a dávají ho k dispozici. My implementujeme do našich balíčků ty spolehlivé a ty, u nichž je záruka dalšího vývoje.

Obr. 3.

Obr. 3. Firma Sysgo řeší softwarovou vrstvu mezi vestavným zařízením a uživatelským programem (aplikací)

Pro zákazníka je velmi snadné získat tzv. jednorázovou distribuci Linuxu nebo si příslušný program stáhnout z internetu. Pak se však nemá kam obrátit, když vše nefunguje, jak má, nebo potřebuje informace. Právě dostupnost partnera je nejdůležitější u velkých firem, které nyní přecházejí od experimentů s Linuxem na profesionální řešení. Z českých firem využívá náš ELinOS například společnost Teco.

Operační systém je softwarová vrstva (obr. 3) mezi vestavným hardwarem a uživatelským programem. Mohou se vývojáři uživatelských programů pro vestavná zařízení obejít bez operačního systému?

Rollo:
Je možné psát si tyto programy přímo pro daný hardware a nepoužívat operační systém. Taková aplikace snáze splní požadavky na práci v reálném čase a znamená i menší množství kódu, což má mnoho dalších výhod. Jenže takový program samozřejmě nelze dlouhodobě vylepšovat.

Bartůšek:
Jestliže zákazník požaduje další a další funkce, exponenciálně roste úsilí na vývoj a certifikaci programu, který nepoužívá operační systém. Operační systém také umožňuje stále optimalizovat funkce.

Rollo:
Ve vestavných zařízeních lze nyní pozorovat trend k používání operačních systémů, které v sobě skrývají mnohaletý vývoj, což v praxi vede k úspoře vlastních zdrojů. K používání operačního systému mohou vést i jiné důvody. Tak například v moderním špičkovém automobilu může být nyní až 60 řídicích jednotek. Naše řešení postavené na PikeOS je může teoreticky všechny nahradit jediným procesorem, na kterém bezpečně a odděleně poběží funkce všech řídicích jednotek, což kromě úspory nákladů znamená i dnes již důležitou úsporu místa ve vozidle.

Jak postupuje zákazník, který se rozhodne postavit svůj vestavný systém např. na operačním systému ELinOS?

Rollo:
Zakoupením systému ELinOS zákazník získá v podstatě veškeré nástroje na vývoj a optimalizaci softwaru do svého vestavného zařízení. Při konfiguraci operačního systému si nejprve podle typu svého zařízení vybere ty moduly operačního systému, které potřebuje. Pomocí grafického rozhraní zvolí vhodné jádro, balíček, který zajišťuje podporu jeho desky (board support package), dále si vybere, jaké periferie a funkce mají být podporovány, např. zda potřebuje displej, zda požaduje práci v reálném čase atd. Cílem mimo jiné je, aby výsledný systém byl co možná nejmenší. Po snadném a rychlém vytvoření tohoto „podhoubí“, softwarové vrstvy operačního systému, která mu poskytne služby a knihovny, se již zákazník soustředí na psaní uživatelských programů (aplikací) a optimalizaci celého systému za pomocí dalších nástrojů balíčku ELinOS.

Jak vypadá typická spolupráce mezi výrobci hardwaru vestavných zařízení a vývojářů softwaru?

Rollo:
Vezměme si příklad výrobce panelů do automobilů. Z panelu lze ovládat mnoho funkcí: přehrávání CD-ROM, navigaci, stahování okének, dnes mnohdy také kameru při couvání apod. Řízení všech těchto funkcí může být integrováno do jediné řídicí jednotky. Nejprve si výrobce automobilu stanoví své požadavky – jaké funkce mají být integrovány a na kterých sběrnicích se má komunikovat. Výrobce panelu řeší hardware a uživatelský program a firma Sysgo řeší vrstvu mezi hardwarem a uživatelskými programy. Pokud je hardware (procesor či celá jednotka) vyvíjen pro konkrétní použití, zákazníci ocení rychlou integraci hardwaru do našich produktů. Ta je možná díky našim hlubokým znalostem procesorů a periferií a úzké spolupráci s většinou renomovaných dodavatelů hardwaru, například: AMD, AMCC, ATMEL, Freescale, Advantech, Kontron, Digital-Logic, MEN, Motorola, Thales, TQ a mnoho dalších.

Druhou významnou aktivitou Sysgo v ČR je certifikace softwaru. Můžete přiblížit, jak konkrétně přitom postupujete?

Bartůšek:
U nás se bude certifikovat kód softwarového avionického protokolu AFDX a ten jsme již vyvíjeli tak, aby byl certifikovatelný. Nyní provádíme certifikaci pro firmu Boeing. Ta nám poskytla seznam požadavků příslušné certifikační agentury. Podle nich nejprve rozložíme kód a zpracujeme jeho dokumentaci. Tu potom certifikační agentura zkontroluje a vydá certifikát.

Rollo:
Certifikační agenturu si vždy vybírá sám zákazník. Když např. vyvíjí lokomotivu pro Rusko, vybere si certifikační agenturu, kterou uznává ruský zákazník.

Certifikace a validace softwaru je složitá věc. Naším cílem je, aby byl kód určený k certifikaci co nejkratší. Je samozřejmě vhodnější certifikovat vlastní kód než kódy třetích stran. U nás se bude certifikovat jen jádro operačního systému, které je velice malé – má jen sedm tisíc řádek kódu.

Bartůšek:
Certifikace není tak náročná na návrh řešení, ale spíše na zdroje. Podle našich zkušeností je certifikační kód mnohem delší než kód, který se certifikuje. K tomu přibývá dokumentace testů. Součástí je i popis toho, co a jak testovat.

Jaké jsou plány na další rozšiřování aktivit firmy Sysgo?

Rollo:
Pražská kancelář bude nyní řídit rozšiřující se obchodní aktivity ve východní Evropě. Tam je nyní třeba vybudovat a spravovat síť distributorů. Výzkumné a vývojové aktivity zatím zůstanou doménou české pobočky.

(ev)

Sysgo s. r. o.
Zelený pruh 1560/99
14000 Praha 4
tel.: 222 138 111
fax: 296 374 890
e-mail: prague@sysgo.com
http://www.sysgo.com