a fairly basic question, but i just want to be clear on terminology.
in robert love's book "linux kernel development" 2ed. (henceforth just
LKD2), love is discussing the available file operations in ch 12, pp.
228-9.
he describes what are pretty clearly userspace calls such as
llseek(), read(), aio_read() and so on as "system calls". that's not
what i understand by the phrase "system calls."
i've always used that description to refer to what love talks about
in ch 5, "system calls." from my perspective, an actual system call
from userspace would look like what love has on p. 73:
#define __NR_foo 283
__syscall0(long, foo)
...
and so on; that is, it *explicitly* uses the _syscalln() macros.
IMHO, a simple call to something like read() and write() is simply a
userspace call which *eventually* invokes the corresponding system
call.