These headers get automatically generated nowadays and the tables for that are in e.g.: linux-4.4.5/arch/x86/entry/syscalls/ . Depending on the distribution you might need to install the kernel headers separately, e.g.: with Ubuntu (packet linux-headers-$VERSION. Version must fit the kernel version!). I found them installed at /usr/src/linux-headers-3.13.0-37-generic/arch/x86/include/generated/asm/ (with Linux Mint which is based on Ubuntu) . The headers there get included from the regular unistd.h to be found (again for x86) in /usr/src/linux-headers-3.16.0-37/arch/x86/include/asm/unistd.h. (actual version of kernel may vary).
Last kernel with major version 2 is 2.6.39.4 from August 2011. You can try it but it won't boot on hardware more modern than an old Pentium. If you have such an old machine or have a machine with enough horsepower to run a virtual Pentium machine--go for it. But I would recommend to upgrade you book instead.
If you are wondering why you (and I) have a version 3 instead of the most recent 4.9: if your hardware runs with it, it has no grave security related bugs and you don't need any of the things in the most recent kernel, then use the one your distribution gave you, they know what they are doing (he said boldly).
linux-4.xinstead oflinux-3.xor if they kept the3.xdespite the version change to 4.x. - Jonathan Lefflerlinux-2.xdirectory. Which edition of Silberschatz are you using? The 9th edition is dated 2012, which is long enough ago that it could have been 'almost current' when published but the kernel has moved on since then. - Jonathan Lefflerinclude/asm-i386, though I wasn't looking all that hard. - Jonathan Leffler