System programming in my own words can possibly be described as programming mechanisms to interact with various aspects of a system. It could be a shell script, a daemon, user space to kernel space interaction mechanisms, interaction between processes, file system management, memory management etc.
System programming in Linux is in itself a very vast topic and i do not claim to know it all. However, the following sections have good information on various system programming concepts. We begin the system programming section with Netlink sockets – though it might seem an odd choice to begin the same and most system programming books might not incorporate netlink sockets under this section. But Netlink sockets being an important aspect of user to kernel space interaction – it seems a reasonable place to start.
Hope, some of the articles that are collated in this website helps the reader in certain aspect of his/her understanding