LFD401 Developing Applications For 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.

Voraussetzungen

This course is for experienced developers. Students should be proficient in C programming, and be familiar with basic Linux utilities and text editors.

Inhalt

  1. Introduction
  2. Preliminaries
  3. Compilers
  4. Libraries
  5. Make
  6. Source Control
  7. Debugging and Core Dumps
  8. Debugging Tools
  9. System Calls
  10. Memory Management and Allocation
  11. Files and Filesystems in Linux
  12. File I/O
  13. Advanced File Operations
  14. Processes - I
  15. Processes - II
  16. Pipes and Fifos
  17. Asynchronous I/O**
  18. Signals - I
  19. Signals - II
  20. POSIX Threads - I
  21. POSIX Threads - II
  22. Networking and Sockets
  23. Sockets - Addresses and Hosts
  24. Sockets - Ports and Protocols
  25. Sockets - Clients
  26. Sockets - Servers
  27. Sockets - Input/Output Operations
  28. Sockets - Options
  29. Netlink Sockets
  30. Sockets - Multiplexing and Concurrent Servers
  31. Inter Process Communication
  32. Shared Memory
  33. Semaphores
  34. Message Queues