Unison Operating System

RoweBots offers OEM developers ultra tiny Linux and POSIX compatible operating systems.  The Unison Embedded Operating System or Unison RTOS is one of those offerings.  Unison supports general purpose MCU, DSP and DSC 16 bit architectures with as little as 1K of RAM and 6K of flash.  

From a technical point of view, the main Unison features are:

  • single process,
  • multiple thread,
  • micro-kernel based
  • ultra tiny memory footprint
  • embedded and real-time POSIX
  • Linux compatibility
  • Supporting MCUs, DSCs, DSPs & FPGAs without an MMU
  • Applications run as a single linked image loaded into Flash

 

 

 

The tool environment is the preferred silicon vendor choice of IDE with additional options on some architectures.  The compiler, assembler, linker and librarian are whatever is provided in the IDE as the default tool chain.  All development is cross development from either a Windows or Linux Host.  The environment offers many optional tools.  From Flash downloaders and the Unison RTOS Object Viewer through to Power On Self Test (IEC 60730 ) and a broad set of connectivity modules,  The Unison Embedded Operating System has a complete component and tool environment.

 

Unison applications are discussed under the Industry section.

 

The Unison RTOS kernel called Nanoexec offers the following kernel features:

  • pthreads
  • semaphores
  • mutexes
  • condition variables
  • message queues
  • join
  • barriers
  • memory managers
  • timers
  • clock
  • rendezvous
  • events
  • interrupt management
  • directory or name server capabilities

and more.

 

The Unison Embedded Operating System is layered on top of the Nanoexec kernel and provides the following additional features.

  • File I/O including file device mounting and formating
  • BSD socket interface including Select and other high level calls
  • A stdio library with buffered I/O mechanisms like fopen

 

The Unison Embedded Operating System servers provide the actual I/O.  They are completely self contained modules and include interrupt handlers, buffer management and translation from I/O requests into actual physical I/O.  See the detailed server man pages for details on the server features including: 

  • Multimedia file system
  • FAT file system
  • Serial I/O and a POSIX shell called posh
  • TCP with advanced features including NAT, DHCP,
  • Advanced networking including  TFTP, Telnet and HTTP.
  • And other connectivity modules.

 

The Unison Embedded Operating System has excellent documentation - refer to it for more details or look at the man pages here.