zlacker

[return to "OpenBSD: Removing syscall(2) from libc and kernel"]
1. kstrau+ks[view] [source] 2023-10-27 17:34:50
>>eclipt+(OP)
I don't know a lot about this corner of the OS. Why are syscalls in libc, instead of something like a libsyscall? I could see why a language might want not to depend on what's at least notionally the C runtime. Is the fact that the kernel interface is in libc an accident of Unix being written in C, or is there something more fundamental there?
◧◩
2. monoca+Gs[view] [source] 2023-10-27 17:36:35
>>kstrau+ks
It's that libc is considered the stable interface for userland in general on openbsd.
◧◩◪
3. maskli+kt[view] [source] 2023-10-27 17:39:20
>>monoca+Gs
In pretty much every OS of the unix tradition. libc is the API, with a stable ABI. Although Windows has a something pretty much identical in — I believe — ntdll. The name and API differ, but the intent is the same.
◧◩◪◨
4. vlovic+ev[view] [source] 2023-10-27 17:50:04
>>maskli+kt
Except notably Linux where the kernel ABI is the thing that’s stable.
[go to top]