内核学习
文章平均质量分 97
jackchan-x
这个作者很懒,什么都没留下…
展开
-
qemu + gdb + busybox 内核调试流程
qemu + gdb 调试内核1. 安装 qemu方式一:源码编译安装方式二:直接安装2. 安装 gdb方式一:源码编译安装方式二:直接安装3. 制作 initrd4. 获取内核 vmlinuz 和 vmlinux方式一:内核源码编译方式二:直接从 ubuntu 或 centos 发布件中获取5. 调试内核启动 qemu启动 gdb1. 安装 qemu我在 ubuntu 20.10 上使用了编译安装方式,在 centos 8.2.2004 上使用了直接安装方式,具体如下:方式一:源码编译安装(1)获原创 2021-01-02 11:56:29 · 1963 阅读 · 1 评论 -
ucore lab1 实验报告 01 -- function.mk
ucore lab1 实验报告1. 理解通过 make 生成执行文件的过程1.1 ucore.img 生成过程1. 理解通过 make 生成执行文件的过程1.1 ucore.img 生成过程原创 2020-08-07 20:08:13 · 367 阅读 · 0 评论 -
Linux 启动流程 -- BIOS/UEFI & bootloader & kernel & initramfs & systemd
Linux 启动流程1. BIOS 启动阶段1.1 启动方式1.2 主要功能2. OS 引导阶段2.1 分区类型2.2 引导方式3. 内核启动阶段4. systemd 启动阶段1. BIOS 启动阶段1.1 启动方式Legacy BIOSUEFI BIOS1.2 主要功能POST加载 bootloader,并把控制权转交给 bootloader2. OS 引导阶段2.1 分区类型MS-DOShttps://www.cnblogs.com/kelamoyujuzhen/p/9原创 2020-07-04 11:47:22 · 12791 阅读 · 0 评论 -
内核辅助函数系列 002 --- _find_next_bit:unsigned long 整数数组中第一个 0 或 1 位
基于4.19.55 内核源码参数addr1 带搜寻 0/1 位的整数数组addr2 扩展数组nbits 最大搜索位start 搜索开始位invert 反转掩码返回值invert 等于 0 时,返回第一个非 0 位,等于 ~0UL 时,返回整数数组中第一个 0 位代码在 find_bit.c 中,实现如下:/* * This is a common helper functi...原创 2020-04-04 22:33:41 · 439 阅读 · 0 评论 -
内核辅助函数系列 001 --- __ffs(unsigned long word):第一个非 0 位
4.19.55 内核源码 __ffs.h参数word 带搜寻非 0 位的整数返回值返回第一个非 0 位,全 0 的情况下返回 BITS_PER_LONG - 1/** * __ffs - find first bit in word. * @word: The word to search * * Undefined if no bit exists, so code shoul...原创 2020-04-04 20:31:19 · 858 阅读 · 0 评论