technicalmachine / fractal-docs

A brief introduction to Fractal: Software Defined Hardware
15 stars 2 forks source link

Fractal vs. a kernel #6

Open natevw opened 9 years ago

natevw commented 9 years ago

Is the current situation where the net/dgram modules are tied to the on-board CC3K and so now they and http and cetera can't use e.g. a GSM module for IP communications — more generally, the situation where we don't have an operating system managing network interfaces and name resolution and mounted filesystems and child processes and … —

Does Fractal in any specific way give us more of this missing "kernel" (even if in some sort of Mirage OS "unikernel" sense) or is that really an orthogonal concern?

kevinmehall commented 9 years ago

Node is built for UNIX-y platforms where processes get things like FS and net access as ambient authority, but on microcontrollers, these things don't come for free. Like in a unikernel, if you want network access, you talk to some network interface hardware. One could imagine a standardized network component interface that provides sockets as actions, and sockets providing sub-actions for transmitting and receiving bytes, or even a priority multiplexer, that routes connections over WiFi if available or cellular if not. Or a FS multiplexer, that gives you mount points. Perhaps a JS component that brings Node API compatibility could accept components as arguments to back its fs, net, or even setTimeout implementations.