inflearn logo

Linux System Programming

This course will guide you through the complexities of the Linux operating system, from a strong understanding of the Linux kernel to invoking system calls, process management, and file operations. You will also learn threading and interprocess communication techniques.

(5.0) 20 reviews

191 learners

Level Basic

Course period Unlimited

Linux
Linux
linux-kernel
linux-kernel
system-programming
system-programming
Operating System
Operating System
pthread
pthread
Linux
Linux
linux-kernel
linux-kernel
system-programming
system-programming
Operating System
Operating System
pthread
pthread

Reviews from Early Learners

Reviews from Early Learners

5.0

5.0

진민우

81% enrolled

Your skills naturally improve as you follow along with the code and practice. I think it's manageable up to IPC pipes, but the difficulty level rises sharply after that..! Thank you.

5.0

dlwoguddd

88% enrolled

I can feel the instructor's incredible expertise even through the monitor lol The calm and well-organized explanations really work well for me, so I'm understanding everything clearly as I listen.

5.0

ddh

49% enrolled

You can just think of it as an amazing lecture.

What you will gain after the course

  • Learn about Linux and its tools for compiling, debugging, building, and source analysis.

  • Learn the characteristics and application implementation of the Linux file system.

  • Learn about process concepts and process handling (creation, execution, termination, destruction).

  • Learn about Pthreads, the Linux thread library.

  • Learn about System V IPC (semaphores, message queues, shared memory), which is an inter-process communication method.

Covers all aspects of Linux systems.

You can learn all the elements necessary for development in Linux, including development tools, files, processes, threads, and IPC.

Learning Content

Section (1) Development Tools

Learn how to set up and use a Linux development environment, including Gcc, Gdb, Vim, and Make.

Section (2) File System

Learn the overall Linux file system, which consists of Super Block, Inode Block, and Data Block.

Section (3) Process

We will learn about the memory structure of a process and the control process of process creation/execution/termination/destruction.

Section (4) Thread

Learn the internal structure of Pthreads, the Linux thread library, and how to implement various applications.

Section (5) IPC

Learn about basic interprocess communication methods through signals and pipes, and System V IPC methods such as message queues, semaphores, and shared memory.

Things to note before taking the course

Practice environment

  • Operating System and Version (OS): Ubuntu 16.04, 18.04

  • Editing tools: Ubuntu VIM, Gcc, Gdb, Make, Ctags

  • Compiler: Gcc

Learning Materials

  • Learning material formats provided (PDF, source code)

  • During class, we use PPT to write on the board and share it as class material.

Player Knowledge and Precautions

  • Prerequisite knowledge for this course: C language basics, Linux basics

  • This lecture video specifications: FPS-60, resolution-1280*720, audio sample rate-44,100

  • Please feel free to ask questions, and the lectures may be revised when the open source version is upgraded.

  • The learning materials distributed during lectures are for class use only and unauthorized distribution is prohibited.

Recommended for
these people

Who is this course right for?

  • Anyone who needs to program on Linux

  • Those who want to understand the Linux system structure and do optimized programming

  • Linux Kernel and Device Driver Developer

Need to know before starting?

  • Introduction to C language and Linux

Hello
This is jikim1770

958

Learners

120

Reviews

12

Answers

4.9

Rating

9

Courses

Instructor Jung-in Kim emphasizes the importance of open source, saying that

He is an open-source enthusiast who analyzes the implementation source code of the Linux kernel and deep learning every day as a hobby.

Since he believes in understanding through code and tries to grasp every principle by recklessly analyzing the source,

Be careful of the source code overload when taking the course.

Lecture Inquiries : jikim@imguru.co.kr

More

Curriculum

All

59 lectures ∙ (17hr 44min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

20 reviews

5.0

20 reviews

  • dondonh님의 프로필 이미지
    dondonh

    Reviews 6

    Average Rating 5.0

    5

    49% enrolled

    You can just think of it as an amazing lecture.

    • dlwoguddd님의 프로필 이미지
      dlwoguddd

      Reviews 13

      Average Rating 5.0

      5

      88% enrolled

      I can feel the instructor's incredible expertise even through the monitor lol The calm and well-organized explanations really work well for me, so I'm understanding everything clearly as I listen.

      • crk10047619님의 프로필 이미지
        crk10047619

        Reviews 4

        Average Rating 4.5

        5

        61% enrolled

        • minuminu님의 프로필 이미지
          minuminu

          Reviews 2

          Average Rating 4.5

          5

          81% enrolled

          Your skills naturally improve as you follow along with the code and practice. I think it's manageable up to IPC pipes, but the difficulty level rises sharply after that..! Thank you.

          • dohyung42426062님의 프로필 이미지
            dohyung42426062

            Reviews 3

            Average Rating 5.0

            5

            61% enrolled

            jikim1770's other courses

            Check out other courses by the instructor!

            Similar courses

            Explore other courses in the same field!

            $68.20