r   e   k   l   a   m   a
r   e   k   l   a   m   a

ARM prezentuje jeden system, który połączy w inteligentną całość wszystkie proste urządzenia

Strona główna AktualnościOPROGRAMOWANIE

Nie ma praktycznie firmy w przemyśle IT, która nie chciałaby dla siebie uszczknąć coś z obiecującego rynku Internetu Rzeczy. Najwięksi przygotowują Wunderwaffe, które zapewnią im jeśli nawet nie dominację, to przynajmniej znaczącą rolę. Microsoft pochwalił się niedawno swoim Windows for Internet of Things, Intel promuje komputerek Edison, mający być mózgiem tych wszystkich zintegrowanych urządzeń, zaś ARM... do tej pory nie musiało specjalnie się starać, bo i tak procesory na jego licencjach odgrywają kluczową rolę wszędzie tam, gdzie liczy się niskie zużycie energii. Teraz jednak brytyjskie konsorcjum wychodzi z czymś zupełnie nowym, i to w dziedzinie oprogramowania, czymś co sprawi, że ani Microsoft, ani Intel nie będą miały łatwo z Internetem Rzeczy.

Podczas tegorocznego ARM TechCon, odbywającego się w miejscowości Santa Clara, pokazano nowy system operacyjny, który może okazać się przełomem dla konstruktorów małych, „inteligentnych” urządzeń – szczególnie jeśli sami są mali, dopiero zaczynają na rynku. Brytyjczycy znaleźli sposób na to, by zatrzeć (przynajmniej z perspektywy programisty) różnice pomiędzy różnorodnymi układami SoC, tak by autorzy oprogramowania nie musieli zastanawiać się, czy mają do czynienia z czipami Quallcoma, Marvella, Freescale, NXP czy Atmela.

Omawiane rozwiązanie składa się z dwóch warstw. Pierwsza to system operacyjny mbed OS. Zajmuje się on tym, czym system operacyjny zajmować się powinien – zarządzaniem sterownikami, procesami i pamięcią. Odpowiada za komunikację urządzenia ze światem zewnętrznym i reakcje na otrzymywane sygnały. Dzięki zestawowi dobrze udokumentowanych interfejsów programowania, deweloperzy mogą pisać kod uruchamiany bezpośrednio na jądrze mbed OS-a, kontrolując w ten sposób działanie urządzeń.

r   e   k   l   a   m   a

Druga warstwa to mbed Device Server, uruchamiana na normalnych serwerach, czy to korzystających z procesorów x86 czy ARM. Warstwa ta pozwala na połączenie wysokopoziomowych aplikacji, np. serwera WWW z chmarą pojedynczych urządzeń o niewielkiej mocy i pamięci. Wystarczy podłączona do sieci bramka, w ostateczności może nią być zwykły smartfon z Bluetoothem czy Wi-Fi, by urządzenia te mogły łączyć się z mbed Device Serverem. Oczywiście bardziej rozbudowane elementy Internetu Rzeczy (np. inteligentne samochody) nie potrzebowałyby pośrednika.

Na razie mbed OS adresowany jest do 32-bitowych procesorów z rodziny Cortex-M, od maleńkich M0 do imponującego M7, nadającego się nawet do sterowania robotami kroczącymi czy bezzałogowymi statkami powietrznymi. Wiadomo, że nie ma nic wspólnego ani z istniejącymi już na rynku mikrokernelami, ani z wszechobecnym Linuksem. Nie powinno to nikogo dziwić – nam się tylko wydaje, że Linux jest mały. ARM musi jednak przygotować system, który będzie działał w urządzeniu z 16 KB RAM, 8 KB pamięci masowej, taktowanego zegarem 48 MHz. Nie jest to też typowy system czasu rzeczywistego, nie ma tu wywłaszczania procesów na poziomie jądra, timerów czy przełączania kontekstów. mbed OS przez większość czasu pozostaje całkowicie pasywny. Gdy otrzyma przerwanie z urządzenia peryferyjnego budzi się, obsługuje zdarzenie, decydując czy powiadomić oprogramowanie wyższego rzędu, a następnie zasypia. Wszystko po to, by nie zużywać niepotrzebnie cennej energii.

Choć sam system będzie własnościowy, darmowy dla programistów i na przystępnej licencji dla producentów sprzętu, to korzysta z samych otwartych standardów. Komunikacja między urządzeniami odbywać się będzie po CoAP, HTTP i MQTT, z wykorzystaniem szyfrowania TLS. Wspierane są standardy bezprzewodowe Bluetooth Smart i połączenia 2G, 3G i 4G, a także wszystkie Wi-Fi i 6LoWPAN.

Z ujawnionych informacji wynika, że mbed Device Server i mbedOS powstały na bazie kodu tworzonego przez 70 tys. członków społeczności mbed przynajmniej od 2009 roku. To oni zbudowali zestawy narzędzi i zasoby pozwalające na relatywnie łatwe budowanie firmware dla mikrokontrolerów w językach już nie w assemblerze, ale w C czy C++. Programiści konsorcjum zdołałali to powiązać ze sobą, popakować tak, by każdy, kto umie pisać oprogramowanie, był w stanie tworzyć szybko prototypy działające na tych wszystkich maleństwach z wbudowanymi czipami w architekturze ARM.

Patrząc na listę partnerów, których ARM zdołał pozyskać do projektu, można wierzyć w jego rynkowe powodzenie. Z jednej strony mamy tu największych producentów czipów, takich jak NXP, Marvell, FreeScale czy Atmel. Z drugiej mamy IBM, telekomunikacyjnych potentatów takich jak Telenor, Telefonica, Ericsson czy Alcatel-Lucent, a nawet dostawców oprogramowania w chmurach, tj. Salesforce.com. Partnerzy otrzymają gotowe oprogramowanie mbed OS do końca roku, zaś mbed Device Server jest już gotowy. Analitycy oceniają, że pierwsze urządzenia korzystające z tego systemu pojawią się na rynku w 2015 roku.

Na koniec ciekawostka. Brytyjskie konsorcjum już się zresztą pochwaliło, że IBM wykorzysta mbed OS-a w swoim projekcie inteligentniejszych miast (Smarter Cities) – koncepcji radykalnej przemiany przestrzeni miejskiej na miarę XXI wieku. W grę wchodzi więc rynek wart nie tyle miliardy, co biliony dolarów.

Więcej na temat przedsięwzięcia ARM znajdziecie na stronie mbed.org.

© dobreprogramy
r   e   k   l   a   m   a
r   e   k   l   a   m   a

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.