| ▲ | drnick1 4 days ago | |||||||||||||||||||||||||||||||
It's a bit unnatural to use Go when C is the "native language" of Linux and pretty much every operating system. | ||||||||||||||||||||||||||||||||
| ▲ | ktpsns 4 days ago | parent | next [-] | |||||||||||||||||||||||||||||||
Talos Linux [1], "the Kubernetes Operating System", is written in Go. That means it exactly works as the little demo here, where the Kernel hands over to a statically compiled Go code as init script. Talos is really an interesting linux distribution because it has no classical user space, i.e. there is no such thing as a $PATH including /bin, /usr/bin, etc. The shell is instead a network API, following the kubernetes configuration-as-code paradigm. The linux host (node) is supposed to run containerized applications. If you really want to, you can use a special container to get access to the actual user space from the node. [1] https://www.talos.dev/ [2] https://github.com/siderolabs/talos/releases/tag/v1.11.5 | ||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||
| ▲ | zsoltkacsandi 4 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||
The goal was to strip away most of the complexities (including C), to make the topic more approachable for a broader audience. Go seemed a perfect fit, it is easy to pick up the syntax and see what is going on, but you can still be close to the OS. | ||||||||||||||||||||||||||||||||
| ▲ | themafia 4 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||
Go can speak C. It's fine. | ||||||||||||||||||||||||||||||||
| ▲ | cpach 4 days ago | parent | prev [-] | |||||||||||||||||||||||||||||||
I mean what you run is still machine code anyway, right? | ||||||||||||||||||||||||||||||||