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

Why so many duplicates? For expample int nosys() is listed 185 times, each pointing to bsd/kern/subr_xxx.c


Because when you remove items from that list or otherwise change the order, you break binary compatibility.

The C library specifies the index into this table when making a syscall. You don't want a situation where the C library and the kernel are mismatched and disagree about what the syscalls are.

The safe way to remove a syscall is to change it to return ENOSYS. All the syscalls that come after it in the table therefore retain the same index.


nosys() is a stub which simply [EDIT: raises SIGSYS then] fails with ENOSYS, i.e. "syscall not implemented".




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

Search: