PICOS
PICOS is a development system for embedded systems its features include:
Boot-loader |
with optional scripting, network, flash, and debugging |
RTOS |
A small Cross Platform Linux like POSIX compliant Real Time Micro Operating Systems |
Virtualization/emulation |
Picos can run as a guest under Linux with some emulation of target hardware |
Application Development |
Picos is a development environment for writing user space Linux applications that access hardware on an embedded target |
Standard C Library |
minimal Linux interoperable Standard C library with limited interdependences |
Embedded TCP/IP |
minimal TCP/IP stack optimized for size |
Protocols |
minimal implimentations of Telnet, HTTP, TFTP, … |
VFS |
Virtual File System with support for Pico Flash File System |
Shell |
Light weight Unix like shell |
Open Source |
Picos is released under the Gnu Public License V2/3 |
What this means is that you can use Picos as a standalone program or OS on an embedded target. You can test much of your code as a virtual guest under Linux (eventually Windows). You can even use Picos as a loader to boot Linux on your target and then run Picos as a guest on the target to provide access to your hardware.
Picos started life as a boot-loader for Linux for the Pico E12. It subsequently expanded to include target debugging, a full TCP/IP stack, a Web server, Telnet Server, and a TFTP client and server. It grew to include target emulation and can be run as a guest OS under Linux.
Picos is currently very alpha. The build system is being converted to use Linux Kconfig. The source is being restructured to follow the Linux pattern, and better support targets beyond Pico Cards. The API is being documented - headers, the C library, and system calls are strongly patterned after Linux. This is deliberate to allow using either Linux or Picos headers and library routines when built as a Linux guest. It works well in the environment it grew up under - supporting Pico Computing's Pico cards. The documentation needs significant expansion. Pico Card specific features need migrated to BSP or drivers. Migration of the build system needs completed as the current Makefile based configuration is expanding exponentially in complexity and can not effectively address the myriads of permutations of options.
You can download the current Picos development tress
using GIT as follows:
git clone http://www.dlasys.net/picos/picos.git
DLA Systems provides consulting services for Picos, if you are interested contact Dave Lynch at 717.587.7774.