OpenTag - OpenTag
Vývojář | JP Norair |
---|---|
Napsáno | C |
Rodina OS | Integrovaný operační systém |
Pracovní stav | Aktuální |
Zdrojový model | Otevřený zdroj |
První vydání | 2011 |
Poslední vydání | 0.4.0 / 8. listopadu 2012 |
Marketingový cíl | Bezdrátové senzorové sítě |
K dispozici v | Angličtina |
Platformy | MSP430, STM32 |
Jádro typ | Exokernel |
Licence | Licence OpenTag |
Oficiální webové stránky | OpenTag wiki |
OpenTag je DASH7 zásobník protokolu a minimální Operační systém v reálném čase (RTOS), napsáno v Programovací jazyk C.. Je navržen tak, aby fungoval dál mikrokontroléry nebo rádio Systémy na čipu (SoC). OpenTag byl navržen jako velmi kompaktní softwarový balíček. Při správné konfiguraci však může běžet také v libovolném POSIX životní prostředí. OpenTag může také poskytovat všechny funkce požadované pro jakýkoli typ zařízení DASH7 Mode 2, spíše než jen titulní koncové zařízení typu „tag“.
Filozofie designu
![]() | Tato sekce může být pro většinu čtenářů příliš technická na to, aby tomu rozuměli. Prosím pomozte to vylepšit na aby to bylo srozumitelné pro neodborníky, aniž by byly odstraněny technické podrobnosti. (září 2013) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) |
OpenTag implementuje DASH7 Mode 2, který specifikuje a monolitický systém zahrnující OSI vrstvy jedna až šest, část vrstvy sedm, stejně jako aplikační vrstva. OpenTag je navržen tak, aby byl lehký a kompaktní, protože je zaměřen na provoz na mikroprocesorech omezených prostředky. Jako monolitický systém neimplementuje různé vrstvy modelu OSI způsobem, který jim umožní nasazení na systémy, které se liší od typických a téměř univerzálních, MCU +RF architektura vysílače a přijímače, kterou využívá WSN a M2M uzly.[1] OpenTag RTOS však zaměstnává exokernel architektura (od verze 0.4), takže a monolitické jádro není nutné. Aplikace vyvinuté pro OpenTag mohou bezpečně odkazovat na knihovnu nebo přímo přistupovat k hardwaru, jak se sluší na model designu exokernel.
Funkce
- Má lehký preventivní multitasking exokernel RTOS.
- Většina jader používá úlohy s pevnou prioritou.
- Obsahuje kompletní zásobník protokolu DASH7 Mode 2, včetně
- Používá a Vyrovnání opotřebení, Blikat - lehký souborový systém (Veelite).
- Má interní bázi C. API.
- Má externí API pro zasílání zpráv založené na NDEF pro klient-server interakce.
Implementace
OpenTag implementuje multitaskingové jádro v reálném čase navržené speciálně pro implementaci DASH7. Uživatelské úlohy mohou být spravovány jádrem a mohou jádru zabránit, i když musí být přiděleny v době kompilace. Frekvence plánování nebo rozlišení jádra závisí na implementaci, ale musí být alespoň 1024 Hz a musí to být celočíselný násobek 1024 Hz.[2]
Události jádra se používají zpětná volání vyvolat vlastní kód aplikace, kterému se říká „applety“. Rozsáhlé šablonování se používá k zajištění funkce zpětného volání, která je efektivní pro vložená prostředí. Zpětná volání v OpenTag tedy mohou být dynamická (přiřazená za běhu), nebo mohou být statická, což vyžaduje přiřazení v době kompilace, ale snižuje režii. Protože OpenTag implementuje exokernel, mohou být uživatelské úlohy buď plně spravovány jádrem, mohou být spravovány částečně jádrem a částečně externími událostmi, nebo mohou být spravovány výhradně externími událostmi. Komunikace mezi úkoly a jádrem se uskutečňuje prostřednictvím API systémových volání a rozhraní zprávového kanálu.[3]
Externí API OpenTag používá zjednodušené klient-server Modelka[4] a NDEF pro zalamování dat. Obálka NDEF se používá zejména pro drátovou komunikaci mezi klientem a serverem, kde je klientem obvykle zařízení s lidským rozhraním a serverem je OpenTag SoC. Interní API je vystaveno způsobem 1: 1 s externím API, což umožňuje klientovi chovat se podobně jako externí proces jádra OpenTag.
Podporovaná zařízení
V době psaní tohoto článku je většina hardwaru OpenTag implementována na Texas Instruments CC430 nebo MSP430 zařízení, která jsou schválena pro použití s OpenTag.[5] Současné zdrojové stromy OpenTag podporují mnoho dalších MCU a RF transceiverů, například různé typy STM32, CC11xx a Semtech Komponenty SX12xx.[6]
Reference
- ^ "Přehled funkcí OpenTag". OpenTag Wiki. Indigresso.com. Citováno 9. července 2012.
- ^ Norair, JP. „Vytváření aplikací DASH7 s OpenTag“. Citováno 9. července 2012.
- ^ „OpenTag API“. OpenTag Wiki. Citováno 9. července 2012.
- ^ „Architektura OpenTag klient-server“. OpenTag Wiki.
- ^ „Zcela nová CC430 kombinuje špičkovou mikroprocesorovou technologii MSP430 a nízkoenergetickou RF technologii“. ti.com. Texas Instruments. Citováno 9. července 2012.
- ^ „Repozitář OpenTag Mainline“. Citováno 9. července 2012.