Byla zveřejněna verze modulárního operačního systému Embox 0.7. Je zaměřen na spouštění aplikací na hardwaru, který byl původně vytvořen pro... Linux, ale bez použití LinuxSystém je schopen běžet v režimu operačního systému reálného času (RTOS) na různých třídách zařízení, od standardních systémů x86 až po nízkopříkonové desky a mikrokontroléry. Kód projektu je napsán v jazyce C a distribuován pod licencí BSD.
Jádro Emboxu je rozděleno do série knihoven implementujících různá API (správa paměti, plánovač úloh, síťový zásobník atd.). Modularita Emboxu umožňuje každé aplikaci běžet s minimální sadou systémových komponent a knihoven dostatečných pro spuštění konkrétní aplikace. Každá aplikace je dodávána se samostatným obrazem optimalizovaným pro konkrétní úlohu a schopným běžet na hardwaru bez zbytečných vrstev nebo použití univerzálních jader či systémových prostředí.
Tato konfigurace umožňuje stávajícím aplikacím běžet s minimálními režijními nároky na zařízeních s omezenými zdroji. Embox také poskytuje další vrstvu zabezpečení: aplikace jsou staticky propojeny s knihovnami, což brání spouštění jakýchkoli jiných programů v prostředí kromě původní aplikace.
Mezi příklady použití Emboxu patří vytvoření VoIP telefonu založeného na mikrokontroléru STM32F7 a knihovně PJSIP, spuštění grafického rozhraní založeného na Qt na mikrokontroléru STM32F7, spuštění aplikace pro zpracování vizuálních informací pomocí OpenCV na desce STM32F769i, samostatné spuštění SSH serveru Dropbear, spuštění hry Quake3 a spuštění grafických aplikací pomocí Mesa.

Klíčové vlastnosti Emboxu:
- Podpora architektur procesorů x86, ARM, RISC-V, Microblaze, SPARC, E2K, PowerPC a MIPS.
- Podpora mikrokontrolérů STM32 a možnost spouštět programy pomocí Qt, OpenCV, PJSIP a dalších populárních frameworků.
- Podpora desek jako Raspberry Pi.
- Podpora pro vytváření prostředí pro spouštění aplikací v C++, Javě, Pythonu, Lua, TCL, Lispu, Ruby, JavaScriptu a Scheme.
- Kompatibilita s POSIX.
- Možnost použití souborových systémů FAT a ext2/3/4.
- Zásobník TCP/IP s podporou socketů a typických síťových protokolů (UDP, HTTP, ARP, NTP, ICMP).
- Dostupnost unixových utilit, jako jsou ls, cat a mount.
Mezi změny v nové verzi:
- Byl implementován subsystém pro bezdrátový přístup.
- Byl implementován subsystém pro ovládání pomocí AT příkazů.
- Vylepšená podpora architektury RISC-V. Přidána podpora pro platformy Milandr MDR1206FI, Baikal-Electronics Baikal-U a Syntacore SCR-5.
- Přidána podpora pro procesor MIPS64 KOMDIV-64.
- Montážní systém byl modernizován.
- Přidána podpora pro platformu strojového učení TensorFlow Lite.
- Přidána podpora pro framework Ardupilot s implementací autopilota.
- Přidána podpora pro protokol WebSocket.
- Vylepšené subsystémy SPI, I2C a MMC.
Zdroj: opennet.ru
