Linux Kernel Analysis Summary

Source: Internet
Author: User

Pan Junyang Original works reproduced please specify the source "Linux kernel Analysis" MOOC course http://mooc.study.163.com/course/USTC-1000029000

An operating system is a low-level support software that deals with hardware and provides a limited set of services for user programs. A computer system is a kind of hardware and software symbiosis, they depend on each other, inseparable. A computer's hardware that contains peripherals, processors, memory, hard disks, and other electronic devices that compose a computer's engine. But there is no software to operate and control it, itself is not working. The software that completes this control is called the operating system, which is called the "kernel" in the terminology of Linux, and can also be called "core". The main modules (or components) of the Linux kernel are divided into the following sections: storage management, CPU and process management, file systems, device management and drivers, network communication, and system initialization (booting), system invocation, and so on.

Week One: See how a computer works from a compilation of a piece of code

Second week: A simple time slice rotation multi-channel program kernel

Third week: Analyzing the operating system boot process from Linux kernel code

Week Four: A code parsing system call principle

Week Five: Analyzing the System_call interrupt processing process

Week Six: A brief analysis of the Linux process startup process

Seventh Week: A brief analysis of Linux loading executable program

Eighth week: Linux process switch Code analysis

The first week the teacher introduced the computer's infrastructure: The von Neumann architecture, the CPU reads the in-memory code and data into its own registers, and then carries out further operations according to a command call register, while the teacher explains the basic assembly language syntax. The second week is the extension of the first week, in class, the teacher explained a program based on C and assembly language, the realization of the time-slice rotation multi-channel program function, I also personally experienced the context of the save, switch, code jump specific implementation.

The third week, the teacher took us to analyze the Linux boot process, we witnessed the first process of the creation and the idle process cycle, the operating system to start the process of a more in-depth understanding.

And the fifth week, deep into the system call this Linux kernel in an important module, we understand the system call "three layer Skin" (API, interrupt vector, Interrupt service program), through the Assembly to implement a system call, recognize the INT 0X80 's role (this should be the most impressive assembly code I've ever had, O (∩_∩) o~); We have a more in-depth understanding of the specific implementation of the system invocation by deeply tracing the kernel code of the Sys_call system call. (Thanks to the simplified assembly code provided by the teacher, greatly facilitated my analysis of the work Orz)

第六、七、八 Week is the analysis of the Linux kernel of the three specific functional modules: process creation, executable loading, process context switch, pay particular attention to fork this special system call, it has "one call, two return" feature, which is not the same as the general process of Linux in the same place.

At the end of the eighth week, the teacher summed up the architecture and execution of the Linux system, in a nutshell, the user-state process is located in the memory of the 0~3g space, the kernel code is located in the memory of more than 3G, the process from the user state into the kernel State or switch between processes before the context of the Save, In order to return to the previous environment.

Linux Kernel Analysis Summary

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.