Linux/UNIX Programming Courses Taught by Michael Kerrisk


Linux/UNIX system programming

TLPI front cover (small)

The Linux/UNIX system programming course is available in both "standard" and tailored forms, and covers a large subset of the topics in The Linux Programming Interface.

"Standard" courses are normally five days long, and include extensive practical programming sessions. The content may vary a little, according to specific topic requests and time constraints, but in broad terms will cover the following topics:

By default, the course is oriented towards Linux, but the Linux-specific material is clearly delineated. The course is thus also useful to attendees working on other UNIX systems such as FreeBSD, Solaris, HPU-UX, and AIX.

For further details, look here.

Linux/UNIX network programming

The Linux/UNIX network programming course covers network programming using the sockets API on Linux and UNIX systems. The content of the course is based on the network programming chapters of The Linux Programming Interface, but adds a significant amount of supplementary material.

This two-day course covers the following topics:

For further details, look here.

Programming with POSIX threads

This one-day course covers the key features of programming with POSIX threads, including the following topics:

For further details, look here.

About the trainer

The trainer, Michael Kerrisk, has used and programmed UNIX systems since 1987, and began running UNIX system programming courses in 1989. He is the author of The Linux Programming Interface (No Starch Press, 2010), a 1500-page book that is widely acclaimed as the definitive guide to Linux system programming. Since 2004, he has maintained (and is also the largest contributor to) the Linux man-pages project, which provides the Linux and C library API documentation that is used by thousands of system programmers on a daily basis. Michael is actively involved in Linux development, especially in the documentation, testing, review, and design of new Linux APIs.


For inquiries about courses, you can contact us in the following ways: