While I was reading system calls, I searched syscalls.h
to find the header file in LXR. The search results puzzled me. There are a dozen syscalls.h
files coming from directories under arch/_arch_name_/include/asm
. Everything is in order, these are definitions specific to architecture, or something else is necessary. The question is, why do we have two different syscalls.h
headers under include/linux
and include/asm-generic
?
In addition, I want to know what include/linux
headers are for and what include/asm-generic
headers are for. How do they distinguish each other? What is the logic of having two separate header folders? How do they relate to each other?
thanks
source share