7 ms·
I'm not sure what you were meaning by "it". The main domain the original team behind Go were aiming at was clearly network software, especially servers. But t
by unscaled 3y ago
I'm not sure what you were meaning by "it".
The main domain the original team behind Go were aiming at was clearly network software, especially servers.
But there was no consensus whether kernel could be a goal one day. Rob Pike originally thought Go could be a good language for writing kernels, if they made just a few tweaks to the runtime[1], but Ian Lance Taylor didn't see real kernels ever being written in Go[2]. In the pre-release versions of Go, Russ Cox wrote an example minimalistic kernel[3] that can directly run Go (the kernel itself is written in C and x86 Assembly) - it never really went beyond running a few toy programs and eventually became broken and unmaintained so it was removed.
[1]: https://groups.google.com/g/golang-nuts/c/6vvOzYyDkWQ/m/3T1DD47AHKcJ https://groups.google.com/g/golang-nuts/c/6vvOzYyDkWQ/m/3T1D...
[2]: https://groups.google.com/g/golang-nuts/c/UgbTmOXZ_yw/m/NH0jskB_xF0J https://groups.google.com/g/golang-nuts/c/UgbTmOXZ_yw/m/NH0j...
[3]: https://github.com/golang/go/tree/weekly.2011-01-12/src/pkg/runtime/tiny https://github.com/golang/go/tree/weekly.2011-01-12/src/pkg/...
- deleted 3y ago[deleted]
- yencabulator 3y agoYou might like Biscuit: https://github.com/mit-pdos/biscuit https://github.com/mit-pdos/biscuit It was specifically written to measure the performance overhead of a high-level language in kernel, so it explicitly makes the same design choices as Linux: monolithic, POSIX-compatible. Results look pretty good.