Xvisor is a type-1 hypervisor that aims to provide a monolithic, light-weight, portable, and flexible virtualization solution for ARMv5, ARMv6, ARMv7a, ARMv7a-ve, ARMv8a, x86_64, and other CPU architectures. It primarily supports full virtualization, and hence supports a wide range of unmodified guest operating systems. Paravirtualization is optional and is supported in an architecture independent manner (such as VirtIO PCI/MMIO devices) to ensure that no changes are required in the guest OS.
Embedded Profiler is low-overhead C++ profiler based on automatic instrumentation of functions done by the compiler (GCC, MinGW, or MSVC). Profiling can be done either automatically or manually. Automatic profiling generates a complete call tree and needs no modification of code. Manual profiling requires using the EProfiler API to specify the parts of code to be profiled. The resulting log can be opened in Performance Analyzer, a GUI application with several views designed for comfortable log analysis.
PolarSSL is a light-weight cryptographic and SSL/TLS library written in C. PolarSSL makes it easy for developers to include cryptographic and SSL/TLS capabilities in their (embedded) applications with as little hassle as possible. Loose coupling of the components inside the library means that it is easy to separate the parts that are needed, without needing to include the total library. PolarSSL is written with embedded systems in mind and has been ported on a number of architectures, including ARM, PowerPC, MIPS, and Motorola 68000. The source is written to have very loose coupling, enabling easy integration of parts in other software projects. Very loosely coupled cryptographic algorithms for MD2, MD4, MD5, SHA1, SHA-256, SHA-512, AES, Camellia, DES, Triple DES, ARC3, and RSA are included.
NanoHttpd is a lightweight HTTP server designed for embedding in other applications. It's only one Java file, in two "flavors", one strictly Java 1.1 compatible, and one at "current" standards. It supports GET, POST, PUT, HEAD and DELETE requests, and supports file uploading with very small memory overhead. Temp file usage and the threading model are easily customized.
RT-Thread RTOS is a real-time operating system for 16-bit to 32-bit microcontrollers, with components which include a hard real-time kernel, a command line shell, a device virtual file system, and a graphic user interface. RT-Thread/GUI is a graphic user interface integrated with RT-Thread. It provides a multi-window, multi-thread graphic user interface. Rich widgets are implemented in RT-Thread/GUI, such as label, button, checkbox, textbox, etc. The typical RAM usage of RT-Thread/GUI is less than 20kB RAM.
EJDB is an embedded JSON database engine. It aims to be a fast MongoDB-like NoSQL library that can be embedded into C/C++/Nodejs/Python3/Lua applications. It features collection-level write locking, collection level transactions, string token matching queries, and a Node.js binding.
ntdisp, short for NtD In System Programming, is a system for programming LPC and STM32 (and possibly other) embedded devices. It provides three different frontends, a GObject-based library (for developers), a commandline utility (for computer geeks), and a GTK+3 frontend (for less geeky users).
MW is a low footprint embedded UI framework core intended for use on very limited systems. It embeds the JPEG, Freetype, and Cairo libraries, so it only depends on X. It should be fairly portable, as the only thing you need is to create a window on every platform and manage the events.