There are many books on Linux and C, but for the purposes of a 2nd-year University-level course, most of them are either too superficial or too long and detailed. These course notes are a middle ground: short enough for students to read in their entirety as part of a 1-semester course, and long enough to explain the basic concepts thoroughly.
The only C currently covered in the most recent version of the notes is characterisic errors in C programming, and programming for Linux / UNIX / POSIX processes (fork, exec, signals, and pipes). For all else, consult one of the many books on C, particularly the standard:
The C Programming Language 2nd edition, by Brian Kernighan and Dennis Ritchie.
Change history:
"CISC 220 Course Notes: Linux and C" by David Alex Lamb is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.