This course is designed to bring C developers up to speed
with a variety of tools and capabilities of Linux. This includes
development and debugging tools as well as system and library
The intent is to
provide background that will be of general interest to all
Linux based developers.
Students should be prepared for some lengthy programming exercises.
This course provides substantial practice with key tools and
capabilities available to developers of Linux based applications
and system software. The course shows attendees how to use
development and debugging tools and how to make use of many
Linux system calls and library routines.
spend approximately 50 percent of the class time actually
gaining hands-on experience with these topics.
Effectively use a variety of tools for Linux application development.
To give you practical experience in using Linux system calls
and library routines.
Compile programs with variety of options.
Use GDB to debug applications.
Use electric fence, gprof, gcov, and other tools for debugging and performance analysis.
Write a simple shell.
Create socket base applications.
Attendees will learn:
How to use GNU tools for compiling and debugging.
How to use an integrated development environment.
How to write POSIX Threaded applications
How to use system calls for such things as inter-process communication, interacting with the file system, signals, time, creating a daemon and scheduling.
Who Should Attend:
The course is for programmers who are new to Unix and Linux.
Attendees should have experience with C and be able to perform
basic Unix commands.
days. (9AM - 5PM)
The workshop materials include a comprehensive student workbook
. The workbook contains all of the slides used in the
course as well as hands-on lab exercises.
The workshop makes use of standard PC's with a desktop Linux
distribution for development.
Overview Of Linux Programming
System calls and library routines
Using and creating libraries
debugging with gdb
Environments: KDevelop & Eclipse
Electric Fence & Valgrind
System Limits and Portability
Linux Standards Base
Process signaling and status
Process and user ID's
Linux File System
I/O System Calls
Higher performance I/O
Reliable signal handling
Current Date and Time
Threads and Signals
All attendees will get a Linux laptop to be used during the
class. You have the option of purchasing this laptop with
an additional course fee.
If you would like to arrange an on-site Linux software development
class, please contact us at firstname.lastname@example.org
$2599 per student (includes all class materials)
class schedule: Please see dates on our calendar page.