I... fail to see the point of running just one process.
It makes sense if you got some legacy piece of hardware that has extremely limited resources, both in terms of RAM and storage. Write your code in Go and you don't even need libc any more.
When you ship containers or to ultra-embedded, that one actually matters. If done right you can ship a container that only contains your application's binary, not a single byte more.
Comments
It makes sense if you got some legacy piece of hardware that has extremely limited resources, both in terms of RAM and storage. Write your code in Go and you don't even need libc any more.
At that point, it would seem that an RTOS would be even more efficient - and if multithreading is not necessary, then just run it on bare metal.
When you ship containers or to ultra-embedded, that one actually matters. If done right you can ship a container that only contains your application's binary, not a single byte more.
Container not even needed, there's projects like Tamago [0] that let you run your golang application without even needing an OS
[0] https://github.com/usbarmory/tamago