Rozmowa z Andrzejem Zasuchą z firmy CSI Computer Systems for Industry
| Wywiady"Popularność RTOS w poszczególnych krajach jest w dużym stopniu wynikową popularności platform sprzętowych i kosztów licencjonowania systemów. Rozwiązania te stosowane są w bardzo różnych aplikacjach – oprócz wojska trafi ają także do kolejnictwa, energetyki, przemysłu oraz motoryzacji. Każde z tych zastosowań wiąże się z innymi wymogami nakładanymi na system, przy czym ich wspólnym mianownikiem jest bezpieczeństwo i pewność działania urządzeń "
- Specjalizowane systemy operacyjne, do których zaliczyć można również te przeznaczone do pracy w czasie rzeczywistym, dostarczane są do klientów z kilku obszarów rynku – energetyki, przemysłu, kolejnictwa czy choćby sektora wojskowego. Zanim porozmawiamy o tym, jak z Państwa perspektywy – czyli dostawcy komputerów przemysłowych – wygląda omawiana branża, zacznijmy od przyjrzenia się zmianom w technologiach RTOS i najpopularniejszym ich wersjom, które dostarczane są polskim klientom. W przypadku CSI pojawienie się tej grupy produktów w ofercie wiązało się głównie z obsługą odbiorców z sektora wojskowego. Jakie były tego powody?
Kilkanaście lat temu, gdy zaczęliśmy dystrybuować komputery modułowe – w szczególności wersje bazujące na magistrali VME, okazało się, że branżą o największym popycie na nie jest sektor militarny. Popularność tych urządzeń w wojsku wynikała z ich właściwości mechanicznych oraz elektrycznych – m.in. modułowości i wykorzystania magistrali pozwalającej na łatwe tworzenie systemów wieloprocesorowych.
Aby móc jednak oferować kompletne platformy komputerowe, konieczne było uzupełnienie urządzeń o odpowiednie oprogramowanie. Jak wiadomo, wymogi branży militarnej należą do najwyższych – w przypadku systemu operacyjnego wymagane było dostarczenie niezawodnego i wydajnego rozwiązania typu embedded, które oczywiście działałoby w czasie rzeczywistym. Postawiliśmy wtedy na dopiero rozwijający się QNX, który naszym zdaniem najlepiej wpasowywał się w te potrzeby, a nasza późniejsza działalność przyczyniła się do jego znacznej popularyzacji w kraju, w szczególności w aplikacjach wojskowych.
- Jakie były, oprócz tych wymienionych, powody wyboru QNX? Jakie inne RTOS-y były wtedy popularne na rynku?
W branży systemów operacyjnych czasu rzeczywistego dominowały na rynku światowym w tamtym okresie, tj. pierwszej połowie lat 90. zeszłego wieku, przede wszystkim VxWorks oraz OS9. Do mniej popularnych systemów należały LynxOS i rozwiązania dedykowane do zastosowań w określonych aplikacjach – np. lotniczych. Wspomniane dwa pierwsze produkty przeznaczone były jednak do wykorzystania z procesorami Motoroli rodziny 68000, natomiast na rynku polskim szybko popularyzowały się wtedy komputery z procesorami Intela.
W kolejnych latach import komputerów osobistych bazujących na układach tej firmy spowodował, że standard ten stał się u nas dominujący, w tym także w zastosowaniach profesjonalnych. Widząc tak rozwijający się rynek, postanowiliśmy związać się z QNX, który dedykowany był do wykorzystania z procesorami o architekturze x86. Decyzja ta, patrząc z perspektywy czasu, była dosyć ryzykowna, gdyż system ten był praktycznie nowością na rynku i trudno było przewidzieć jego przyszłą ewolucję. Jednocześnie w owym czasie był on jeszcze stosunkowo zawodny i istniały duże trudności z dostępnością sterowników dla nowo pojawiających się układów.
- Jaki wpływ na rozwój rynku RTOS miały ceny poszczególnych systemów i platform sprzętowych? Układy Intela były przecież przez lata uznawane za stosunkowo drogie…
Biorąc pod uwagę komputery modułowe, sądzę, że rozwiązania bazujące na układach Motoroli były nawet jeszcze droższe. Kosztowny był też sam VxWorks – w praktyce znacznie droższy niż QNX. Poza samą ceną licencji oraz drogiego środowiska uruchomieniowego o kosztach wdrożenia decydowała także znajomość platformy sprzętowej przez inżynierów, przez co rozwiązania dedykowane do układów Intela okazały się być u nas jednak popularniejsze.
Obecna sytuacja jest inna – z polskiego rynku zniknął praktycznie OS9, natomiast VxWorks ma bardzo niewielu użytkowników, głównie związanych z sektorem wojskowym. Nie sądzę, aby w przyszłości ten stan się zmienił – prognozuję natomiast dalszą popularyzację QNX oraz RT-Linux, który rozwija się ostatnio bardzo dynamicznie.
Informacje te dotyczą oczywiście rynku polskiego – w innych krajach popularność omawianych systemów jest różna, co zazwyczaj wynika z popularności platform sprzętowych i kosztów licencji. Przykładowo QNX przez długi czas był bardzo mało znany we Francji czy USA, z kolei szybko upowszechnił się w Szwecji – w tym przypadku głównie ze względu na działalność tamtejszego dystrybutora.
- Jakie wsparcie klientów oferują dostawcy RTOS? Jakie darmowe systemy dostępne są na rynku?
W przypadku produktów darmowych dostępny jest m.in. wspomniany RT-Linux. Zdobywa on szybko zwolenników, jednak w tym przypadku wielu specjalistów z branży jest zdania, że ciężko mu będzie konkurować z innymi produktami w aplikacjach, gdzie konieczne jest zachowanie ścisłych wymogów pracy w czasie rzeczywistym. Uważam jednak, że RT-Linux znajdzie zastosowanie w bardzo wielu zastosowaniach embedded, lecz niepełniących funkcji real-time.
Podobnie ma się rzecz z Windows CE i Embedded – oczywiście systemy nie są darmowe, ale stosowane są w coraz większej liczbie aplikacji wbudowanych, takich gdzie nie jest wymagana praca w czasie rzeczywistym. Jeżeli chodzi o wsparcie dostawców – oceniłbym je jako istotne. Biorąc jako przykład SWD Soft ware, firmę dystrybuującą w Polsce QNX oraz CSI, zatrudnione są w nich osoby świadczące usłui szeroko rozumianego wsparcia technicznego. Obejmuje on zarówno pomoc techniczną, jak i współtworzenie aplikacji klienta – np. pisanie sterowników programowych do urządzeń.
- Czy ze strony rynku istnieje potrzeba korzystania z takich usług? Czy można mówić o popularności ich outsourcingu do dostawców systemów RTOS?
Nie traktowałbym świadczenia usług jako reguły, lecz istnieją sytuacje, gdy z różnych względów zagadnienia takie jak wymienione przekraczać mogą możliwości danej firmy. Odbiorca zazwyczaj chce koncentrować się na rozwoju własnej aplikacji i, poza doborem samej platformy sprzętowo-programowej, nie chce zajmować się zagadnieniami takimi jak choćby tworzenie sterowników urządzeń.
Chociaż potrzeby takie nie są wprawdzie częste, jednak już sama możliwość skorzystania ze wsparcia dostawcy jest dla klientów bardzo ważna, gdyż zwiększa bezpieczeństwo procesu tworzenia aplikacji. Jest to tym istotniejsze, że RTOS nie są produktami tak popularnymi jak choćby systemy ogólnego przeznaczenia, przez co niebezpieczeństwo wejścia w ślepą uliczkę jest większe.
- Porozmawiajmy o cechach technicznych omawianych systemów. Jakie są wymogi korzystających z nich odbiorców?
Najłatwiej jest mi tutaj ponownie nawiązać do wymogów stawianych przez klientów wojskowych. Na pierwszym znajduje się z pewnością niezawodność, natomiast kolejnymi ważnymi cechami są: budowa modułowa, skalowalność, a także odpowiednia architektura i mechanizmy ochrony pamięci. Oczywiście wymogiem bezwzględnym jest praca w czasie rzeczywistym – tzw. hard real-time.
Wprawdzie ten ostatni definiuje się różnie, jednak ogólnie chodzi o pewność odpowiedzi systemu na zdarzenia zewnętrzne w ściśle określonym czasie. Do pomniejszych cech, które mogą być istotne z punktu widzenia inżyniera tworzącego system sprzętowo- programowy, jest zgodność ze standardem POSIX, co pozwala na przenoszenie kodu na różne platformy, a także spełnianie przez RTOS standardów bezpieczeństwa – np. militarnych czy medycznych. Pozostają wreszcie cechy zwiększające funkcjonalność systemu – m.in. zaawansowane możliwości graficzne oraz komunikacyjne w zakresie obsługi sieci lokalnych.
- Czy wymienione wymagania rozszerzyć można również na inne branże?
Zdecydowanie tak. Systemy operacyjne czasu rzeczywistego stosowane są w bardzo różnych aplikacjach i trafiają, oprócz wojska, także m.in. do kolejnictwa, energetyki, przemysłu oraz zastosowań w motoryzacji. W przypadku sektora militarnego najczęstszymi zastosowaniami są rozwiązania do systemów radiolokacji, dowodzenia, walki elektronicznej i ogólnie bezpieczeństwa.
W kolejnictwie RTOS stosuje się głównie do sterowania systemami kontroli górek rozrządowych oraz bezpieczeństwa ruchu na stacjach kolejowych, natomiast w przypadku energetyki – m.in. do sterowania kotłami w elektrowniach. Inne aplikacje RTOS związane są z wdrożeniami w telefonii komórkowej, a także w różnorodnych systemach w samochodach. Każde z tych zastosowań wiąże się z innymi wymogami nakładanymi na stosowane systemy operacyjne, przy czym ich wspólnym mianownikiem jest bezpieczeństwo i pewność działania.
- Kto ofertuje w Polsce rozwiązania RTOS? Wśród dostawców działających na rynku automatyki są też duże firmy, takie jak Siemens czy ABB, które dostarczają szeroką gamę urządzeń i oprogramowania. Czy omawiane systemy znajdziemy również w ofercie tych firm?
W Polsce dostawców omawianych systemów nie ma zbyt wielu. W przypadku QNX działa na rynku oficjalny dystrybutor – SWD Soft ware oraz CSI, który jest resellerem. Jeżeli chodzi o VxWorks – można go obecnie kupić od dystrybutora w Niemczech, natomiast LynxOS, obecnie prawdopodobnie również jest niedostępny w kraju.
Z kolei OS-9 praktycznie nigdy nie był w Polsce dystrybuowany. Jeżeli chodzi o dużych dostawców działających w branży, takich jak choćby ABB, Beckhoff Automation czy Rockwell Automation, jeżeli oferują oni już rozwiązania pozwalające na pracę w czasie rzeczywistym, to jest to zazwyczaj oprogramowanie dedykowane do ich własnych produktów. Nie są to więc, przynajmniej według mojej wiedzy, uniwersalne systemy czasu rzeczywistego, które mogą być implementowane na ogólnodostępnych platformach i przenoszone pomiędzy urządzeniami różnych producentów.
- Dziękujemy za rozmowę.