Symatem / RuntimeEnvironment

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build Status

Symatem Runtime Environment

Currently written in C++17. It will be replaced by its own programming model.

Targets

API (Virtual Machine) based on WebAssembly

You will need to clone and compile Wasm Binaryen for this target.

BINARYEN_BIN=binaryen/bin/ make build/Symatem.wasm

API (POSIX Process) based on MessagePack over TCP

make runMP

Tests (POSIX Process)

make runTests

Unikernel

Combined with UnikernelExperiments this will be an intermediate platform to test the entire RTE functionality in the future. Later on we might switch to RISC-V as an ISA for running on the hardware directly without any additional layers.

Coding Restrictions

  • No goto, dynamic_cast and virtual methods
  • No new/delete, malloc/free => custom memory allocator
  • No recursion/alloca => fixed stack bounds
  • No StdLibC++ => core is zero dependency
  • No exceptions

About


Languages

Language:C++ 99.1%Language:Makefile 0.6%Language:Shell 0.3%