Comment Just run it in the browser (Score 1) 191
Someone ported Linux to javascript, right?
You just need to set up some kind of persistent storage (over nfs perhaps) on the server side so students have a place to save their files.
I know the performance ain't great; maybe this shows a need for middle abstraction level between low-level syscall emulation and high-level shell. An eXtensible VM Specification, that could then be implemented in a language/shardware independent manner.