Learn how to develop applications for the Linux environment. In this course, you’ll get hands-on experience with the necessary tools and methods for Linux application development and learn about the features and techniques that are unique to Linux.
This course is designed to help experienced developers get up to speed quickly on how to develop applications for a Linux environment.
In this course you’ll learn:
- The tools and methods for developing C programs and doing systems programming under Linux.
- Debugging techniques and process management.
- Linux specific paid and system calls.
- And more.
The information in this course will work with any major Linux distribution.
- Source Control
- Debugging and Core Dumps
- Debugging Tools
- System Calls
- Memory Management and Allocation
- Files and Filesystems in Linux
- File I/O
- Advanced File Operations
- Processes – I
- Processes – II
- Pipes and Fifos
- Asynchronous I/O**
- Signals – I
- Signals – II
- POSIX Threads – I
- POSIX Threads – II
- Networking and Sockets
- Sockets – Addresses and Hosts
- Sockets – Ports and Protocols
- Sockets – Clients
- Sockets – Servers
- Sockets – Input/Output Operations
- Sockets – Options
- Netlink Sockets
- Sockets – Multiplexing and Concurrent Servers
- Inter Process Communication
- Shared Memory
- Message Queues
** These sections may be considered in part or in whole as optional. They contain either background reference material, specialized topics, or advanced subjects. The instructor may choose to cover or not cover them depending on classroom experience and time constraints.
This course is for experienced developers. Students should be proficient in C programming, and be familiar with basic Linux utilities and text editors.
At a Glance
Live Online (Virtual)
- 4 days of Instructor-led class time
- Hands-on Labs & Assignments
- Resources & Course Manual
- Certificate of Completion
- Free Chromebook