Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I count 506 on the Win list. 17 are no longer in use for recent version. So 489.

And 467 on the Linux list https://filippo.io/linux-syscall-table.

Ballpark the same number.



It's a fairly meaningless number.

Some operating systems have massive fan-in and fan-out on what is internally one single system call crossing the shell/kernel divide. Witness how much is done by sysctl() on the BSDs, for example. Whereas others will be more 1-to-1.

Then there's the fact that the Native API for Windows NT is structurally very different to the Linux API (as they are both different from, say, XNU). It's basically entirely coincidental that the numbers are even close, and there are no general conclusions that one can draw from such statistics.

Except, perhaps, a general but rather facile conclusion that these operating systems aren't running on 8-bit processor architectures. (-:


I recall discussion (can't find now) that performance would be impacted for Linux if a syscall table lookup had to spill to a second page. That gives a limit of 512 64-bit pointers for syscalls we want to be high-performance, which may drive both OS's to start limiting new syscalls as they get close.

I don't know if there's more to this claim than just concern about an extra TLB entry though.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: