Linux System Programming

Posted By: lucky_aut

Linux System Programming
Duration: 10h 30m | .MP4 1280x720, 30 fps(r) | AAC, 44100 Hz, 2ch | 3.89 GB
Genre: eLearning | Language: English

Learn Advanced Linux System Programming with 'C', Hands on Programming, Source code available to modify and re-execute.

What you'll learn
From basics to advanced Linux systems programming, with lots of hands on 'C' programming demos.
File operation, System calls, Library functions, code compiling using GNU-GCC, Blocking and Non Blocking calls, Atomic operations, Race condition, User mode and Kernel mode,
Process Management - Process creation, termination, Fork() system call, child-parent process, command line argument of process, Memory Layout of Process
Signals - signal handlers, sending signals to process, Default signal handlers.
Posix Threads - Thread creation, thread termination, Thread ID, Joinable and detachable Threads.
Thread Synchronisation - Mutex, Condition Variables
Inter Process Communication (IPC)- Pipes, FIFO, Posix Message Queue, Posix semaphore, Posix shared memory
Memory Management - Process Virtual Memory management, Memory segments(code, data, stack, Heap)

Requirements
Should have basic C language understanding

Description
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.

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.

Who this course is for:
Students, and professionals (beginners) who want to explore Linux systems programming and learn product development using Linux OS

More Info