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.
7. Signals
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.
Industry Oriented Hands-on Projects