| The number of system calls says close to nothing of the actual API surface present here. It's a poor measure. What actually matters is: what can I run? That said, 42 is not enough to run a lot of applications. It'll be interesting to get to the point where they can run a language's runtime or unit tests. Take it from someone who worked on gVisor: this is gonna take a long time, and eventually you'll end up with a system that's just Linux. You'll end up either being bug-for-bug compatible, which means bringing in loads of compatibility code and architecting your kernel just like Linux, or you'll end up having to change applications (and then you're not all that compatible anymore). Neither are fun or sustainable compatibility stories. You'd probably actually get Linux apps to work on a random OS faster & nicer by porting gVisor. > Moreover, since implementing a system call is typically pretty simple [...] You're in for a fun ride, folks. |
I don't think we need to run everything. I think we'll be happy if we can take some common libraries and compile them and they work. That is currently our goal. Down the road, depending on interest, we can perhaps expand a bit.
>> Moreover, since implementing a system call is typically pretty simple [...]
> You're in for a fun ride, folks.
Thanks for the heads up. It was meant as opposed to implementing the syscall and layers on top of it.