Linux System Programming 2020 Free Tutorial Download
In this course you will be learning the below Linux system programming. And more emphasis is given on the Programming part.
1. Introduction to Linux systems.
a. Linux architecture.
b. Writing ‘Hello World’ program, compiling using GCC and its execution.
2. What is system call and standard library function calls
3. Kernel and User mode in Linux
4. File operations
open(), close(), read(), write(), lseek()
Blocking and Non-Blocking calls.
Atomic operations, Race condition.
5. Memory Management and Virtual Memory
stack segment, code segment, heap segment, data segment,
Virtual memory management.
functions related to Memory allocation – Malloc(), calloc(), Realloc(), Auto variables, static variables.
6. Process Management
Process creation, Process termination, wait(), Process ID, fork() system call, Exec() family of system call, Parent-Child Process management,
Command line arguments of Process.
signal(), signal handlers, sending signals to process, ignoring and default signal actions.
8. Posix Threads
Thread creation, thread termination, thread ID, joinable and detachable threads.
9. Thread synchronisation
Mutex, Condition variables, Thread safe.
10. Posix – Inter Process communication.
Pipes, FIFO, Posix message Queue, Posix Semaphores, Posix Shared Memory.
NOTE – Ubuntu Distribution (Linux) is used for all Demo in this course.
Who this course is for:
- Students, and professionals (beginners) who want to explore Linux systems programming and learn product development using Linux OS