Linux System Programming – A programmers/Practical Approach

About this course

Requirements

  • Should have basic C language understanding

Description

Note : This course is conducted by IT working Professional, and not by a Professional Instructor.

Q. What is the speciality of this course?

A. This is purely a Course on “Learning Programming using Linux“, This course does not teach ‘C’. Since this course is conducted by industry working professionals, This course tries to cover gap between academics and Industry, Also the last section Bonus – Students Q & A, contains the collective students questions and its solution to them. It is a regularly updating section.

Q. What is the Prior knowledge required for this course?

A. This course teaches from Basics of Linux Programming to Advanced, hence no prior knowledge on Linux is assumed, but should be energetic to learn Linux technology.

Q. Who is this course for?

A. This course is designed in mind from beginners(students) to intermediate professionals who want to learn Linux and Utilise the Open Source  platform to help build their careers related in field of Linux systems Design and Development.

Q. What will be the outcome of this course?

A. The students upon completion will definitely have a SOLID understanding of Linux System Programming,  For freshers this can be a good guide to crack interviews, for already working professionals they can start working as individual contributor in their projects, and definitely will be in par with the experienced colleagues.

Q. What are the contents of course?

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.

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

What NomadPro Courses Offer

All-in-One

Access a wide range of software and digital skills courses in one place.

Personalized

AI-powered recommendations to match your learning goals.

Tracking

Monitor your daily progress and achievements.

Simple

User-friendly design that makes learning easy.

Flexible

Tools that adapt to your workflow or brand needs.

Support

Guidance and help from experts whenever you need it.

FAQ

How do I access the courses?

All courses are available 100% online. Once enrolled, you can log in anytime from your computer, tablet, or smartphone.

Yes! Every course includes an internationally recognized certificate you can add to your CV or LinkedIn profile.

Absolutely. NomadPro provides built-in tools to monitor your daily progress and keep you motivated.

Our AI-powered recommendations suggest the courses that best fit your career goals and learning style.

Yes, once you enroll, you keep lifetime access to your course and receive free updates whenever new materials are added.

You’ll have access to expert instructors and our learning community, where you can ask questions and share experiences.

Of course! All courses are self-paced, so you can study whenever it suits your schedule.

65,00 

Files, Memory and Process management, Fork, Signals, Threads, IPC – Pipes, FIFO, message Queue, Semaphores,Shared Memory

65,00 

Files, Memory and Process management, Fork, Signals, Threads, IPC – Pipes, FIFO, message Queue, Semaphores,Shared Memory