Red Hat - Linux Application Programming |
|
|
| Course Length - 4 Days Hands-On | | | | | | Course Description The Linux Application Programming hands-on course teaches you how to use the Linux system calls and library functions for writing system and application programs in C. | | | | | Course Objectives: - Learn to write portable, open programs that range in complexity from simple file I/O to network applications.
- Gain experience in responding to errors and exceptions, manipulating file attributes and handling signals and other inter-process communication methods.
| | | | | | Course Prerequisites Attendees to this course should have a good foundation in the essentials of the C programming language, including pointers, structures, unions, and typedefs. Students should also have previous practical command line experience with Linux or a Linux-like commercial operating system. |
| | | | Course Outline: | | Chapter 1 - Introduction to the Linux Environment | | - How Linux is organized and why.
- The GNU programming environment
| | | Chapter 2 - Arguments , the environment, and popular system functions | | - Arguments to a program.
- Retrieving information from the environment.
- How to use getopt() effectively.
- Discovering the date and time
- Getting system information.
| | | Chapter 3 - File I/O | | - Library functions and system calls for I/O
- Getting file status information with stat()
- Processing directories and directory entries.
| | | Chapter 4 - Processes and Signals | | - How to start new processes and "change their image"
- fork() and exec()
- Sending event-type messages to processes
- signal(), kill(),
- Other signal handling functions
| | | Chapter 5 - Pipes | | - The pipe() and popen() calls
- Named pipes
| | | Chapter 6 - System V IPC | | - Linux and IPC.
- Shared memory
- Message queues
- Semaphores
| | | Chapter 7 - Sockets | | - The Berkeley socket interface
- Introduction to TCP/IP
- Sockets in TCP and UDP
- Unix domain sockets
- Raw IP sockets
- Resolving host and service names
| | | Chapter 8 - Threaded Programming | | - Introduction (Why use threads?)
- POSIX threads
- How Linux implements threads
| | | | |
|