-
Notifications
You must be signed in to change notification settings - Fork 6
Architecture
#System Architecture
Given that we are looking forward enjoying a complete operative system and not a certain firmware it is logic to choose Linux as base for building upon: open source, thousands of packages and base for other popular systems as OpenWRT or WebOS. Therefore we will build upon a Debian headless1 distribution because it is lightweight and greatly maintained by a vibrant community. Also it is supported by a huge range of processors and counts with numerous drivers for different hardware. This way Linux would take care of forwarding, radio, process scheduling and security, while the rest of the OS can be exclusively developed for performance and applications. Not only this, but we could count on great tools as iptables to play as firewall on different configurations.
The Chrome V8 runtime is the interpreter of javascript used by node.js. Apps may use C/C++ code wrapped in written in ECMAScript which are compiled by the multiplatform node-gyp compiler. Git will be used from the Dashboard to perform app installation and mainteinance, along with node package manager (npm) for the dependencies.
Node.js applications are auto-contained. That means that they hold all their dependencies in the package where they are distributed. Also they are always git projects, so they update through transactional changes which is the fastest way to do it. Transactional updates are gaining traction right on all other platforms since it is the most efficient way to store data, we can see progress in that direction in projects as Docker or Ubuntu Snappy.
However, since they are auto-contained they are intense in disk space. Which may not be relevant on a desktop environment but that is in embedded platforms or portable devices. For this we have to provide a mechanism so apps reuse dependences whenever there are no conflicts. In this case –as show on the figure– JS libraries are stored within root node.js environment and reached through simbolic links during app installation.
##Contact
- Visit our site https://netbeast.co
- Mail us: staff [at] netbeast.co
- Report a bug or enter discussion at issues
- Other resources: Dashboard, Netbeast API
##References
# warning
: now our docs are being published in our gitbook and available on our website. Visit http://docs.netbeast.co/
- Visit our site https://netbeast.co
- Mail us: staff [at] netbeast.co
- Report a bug or enter discussion at issues
- Other resources: Dashboard, Netbeast API