filmov
tv
Linux System Programming | A Complete Beginner's Guide

Показать описание
About this course:
This course aims to skim the book and produce highly efficient tutorials that make learning system programming in Linux a piece of cake. It focuses on removing unnecessary information that is not required for system programming while maintaining accurate and fluff-free learning material.
Things Covered in this course:
This course covers the following fundamental Linux concepts with a lot of detail and code implementation:
Linux Introduction
Linux Basics
File System
Input / Output to File System
File Descriptors of Linux
Processes in Linux
Process Creation
Process Termination
Process Monitoring
Threads
Threads Creation
Threads Monitoring
Thread Scheduling
POSIX standards
Inter-Process Communication and much more
Prerequisites for this Course:
You need to have a good understanding of the C Programming language to follow this course. Although we have explained how to run C Programs in the Linux Operating System, this course doesn’t go over the basics of C Programming Language.
Who is this course for?
This course is designed for beginners to intermediate professionals who want to learn Linux and Utilize the Open Source platform to help build their careers related to the field of Linux systems Design and Development.
What will be the outcome of this course?
After completing this course, you will have a Substantial understanding of Linux System Programming. This course is undoubtedly an excellent guide to crack interviews for newbies to Linux. It will be an excellent tool for already working professionals to further sharpen their skills on Linux.
Which Linux Distro has been used for this course?
Ubuntu 20.04 LTS was used to compile this course. You can see any Linux distro as all the fundamentals are the same for every Linux distro.
Complete Contents of this Course:
1. Introduction to Linux systems.
Linux architecture + fundamentals of Linux
Writing a basic program, compiling using GCC and its execution.
2. What is a system call and standard library function calls
3. Kernel and User mode in Linux
4. File operations
open(), close(), read(), write(), lseek()
Atomic operations, Race condition.
5. Memory Management and Virtual Memory
Stack segment, Code segment, Heap segment, Data segment,
Functions related to Memory allocation - Malloc(), calloc()
6. Process Management
Process creation, Process termination, wait(), Process ID, fork() system call, Exec() 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 synchronization
Mutex, Condition variables.
10. Posix - Inter-Process communication.
Pipes, FIFO, Posix Message Queue, Posix Semaphores, Posix Shared Memory.
11. Misc.
Time Functions
Accessing Users & Groups
This course aims to skim the book and produce highly efficient tutorials that make learning system programming in Linux a piece of cake. It focuses on removing unnecessary information that is not required for system programming while maintaining accurate and fluff-free learning material.
Things Covered in this course:
This course covers the following fundamental Linux concepts with a lot of detail and code implementation:
Linux Introduction
Linux Basics
File System
Input / Output to File System
File Descriptors of Linux
Processes in Linux
Process Creation
Process Termination
Process Monitoring
Threads
Threads Creation
Threads Monitoring
Thread Scheduling
POSIX standards
Inter-Process Communication and much more
Prerequisites for this Course:
You need to have a good understanding of the C Programming language to follow this course. Although we have explained how to run C Programs in the Linux Operating System, this course doesn’t go over the basics of C Programming Language.
Who is this course for?
This course is designed for beginners to intermediate professionals who want to learn Linux and Utilize the Open Source platform to help build their careers related to the field of Linux systems Design and Development.
What will be the outcome of this course?
After completing this course, you will have a Substantial understanding of Linux System Programming. This course is undoubtedly an excellent guide to crack interviews for newbies to Linux. It will be an excellent tool for already working professionals to further sharpen their skills on Linux.
Which Linux Distro has been used for this course?
Ubuntu 20.04 LTS was used to compile this course. You can see any Linux distro as all the fundamentals are the same for every Linux distro.
Complete Contents of this Course:
1. Introduction to Linux systems.
Linux architecture + fundamentals of Linux
Writing a basic program, compiling using GCC and its execution.
2. What is a system call and standard library function calls
3. Kernel and User mode in Linux
4. File operations
open(), close(), read(), write(), lseek()
Atomic operations, Race condition.
5. Memory Management and Virtual Memory
Stack segment, Code segment, Heap segment, Data segment,
Functions related to Memory allocation - Malloc(), calloc()
6. Process Management
Process creation, Process termination, wait(), Process ID, fork() system call, Exec() 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 synchronization
Mutex, Condition variables.
10. Posix - Inter-Process communication.
Pipes, FIFO, Posix Message Queue, Posix Semaphores, Posix Shared Memory.
11. Misc.
Time Functions
Accessing Users & Groups
Комментарии