首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Linux 内核源码解析
CoderHeart
创建于2024-05-26
订阅专栏
学习,探索、解析 Linux 内核
等 6 人订阅
共31篇文章
创建于2024-05-26
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
x86-64架构:内存分页机制
分页是一种内存管理机制,该机制把线性地址(虚拟地址)切分成页并映射为物理地址,且只能在保护模式下使用(CR0.PE = 1)。开启分页后,从应用程序视角,看到的是线性地址(虚拟地址)空间,而不是物理地
x86架构--中断及异常处理机制
一、中断和异常概述 中断和异常是指系统中的某些地方出现的需要处理器注意的事件。当中断或异常发生时,典型的结果是迫使处理器将控制从当前正在执行的程序或任务转移到一个特殊的软件例程或任务中去。该例程被称作
Linux Kernel:中断和异常处理程序的早期初始化
说明: 在开机启动之后,Linux 内核程序经历了实模式、32位保护模式,最终稳定工作在长模式。在模式切换过程中,中断和异常处理程序也经历了多次初始化。我们按照 Linux 内核的启动过程,来梳理下不
Linux Kernel: _text(%rip) 的值如何计算?
说明: 在学习 Linux Kernel 源码时,看到如下代码片段: 那么_text(%rip)的值该如何计算呢? 一、指令指针相对寻址 在求值之前,我们先来看下指令格式。这种带有 %rip 的指令,
Linux Kernel 源码学习:PER_CPU 变量、swapgs及栈切换(二)
说明: 在 Linux Kernel 源码学习:PER_CPU 变量、swapgs及栈切换(一) 里,我们学习了per-cpu变量的初始化过程,本篇我们来学习 GS 寄存器的初始化过程。 一、段寄存器
Linux Kernel 源码学习:PER_CPU 变量、swapgs及栈切换(一)
本文采用 Linux 内核 v3.10 版本 x86_64 架构,详细介绍了 PER_CPU 变量的代码实现。
x86_64 架构中的APIC概述
x86_64架构中,有两种 APIC:Local APIC 和 I/O APIC。 I/O APIC 用于接收外部中断,Local APIC 主要用于处理器之间的中断(interprocessor i
Linux Kernel源码阅读: x86-64 系统调用(超详细)
0、前言 一、系统调用简介 系统调用是用户空间程序与内核交互的主要机制。系统调用与普通函数调用不同,因为它调用的是内核里的代码。使用系统调用时,需要特殊指令以使处理器权限转换到内核态。另外,被调用的内
Linux Kernel 源码学习必备知识之:GCC 内联汇编
一、内联汇编简介 1.1 什么是内联汇编 内联汇编称为 inline assembly,GCC 支持在 C 代码中直接嵌入汇编代码,所以称为 GCC inline assembly。 内联汇编按格式分
使用 GNU 汇编语法编写 Hello World 程序
学习了汇编的基本语法之后,使用汇编语言编写一个经典的 hell world 程序,体验一下汇编编程的乐趣
x86汇编语法基础(gnu格式)
本文简单介绍了x86汇编语法基础(gnu格式),同时介绍了一些基础概念,如寄存器、栈等,方便理解大家对汇编语言的理解。