kernel
文章平均质量分 85
kernel
hjjdebug
西方用26个字母表示世界,计算机用0,1两个数字表示世界,大道至简!
人类用6号元素碳来思考, 计算机用14号元素硅来演算,精妙绝伦!
展开
-
ubuntu20 下从linux 5.14.0-1045 源码编译 linux-5.15.56 内核
make[2]***[arch/x86/boot/compressed/Makefile139arch/x86/boot/compressed/vmlinux.bin.zst]错误127。E运行解包的命令“dpkg-source--no-check-xlinux-hwe-5.13_5.13.0-52.59~20.04.1.dsc”出错。选择linux-hwe-5.13作为源代码包而非linux-hwe-5.13-source-5.13.0。...原创 2022-07-22 18:23:03 · 5086 阅读 · 16 评论 -
linux0.11数据结构
函数都是对数据的操作,搞清了数据,才能搞清函数.最后一篇linux0.11博文,已经搞定它了,从此不写了.以此简单记录一下内存分配上的数据结构.甲: 高速缓冲区,1.概念:是一个动态结构数组,数组大小nr_buffers它使用了end(bss 的结尾)到buffer_memory_end 区间内存.它的头部是start_buffer = &end它有一个指针free_lis...原创 2019-08-06 17:07:32 · 403 阅读 · 0 评论 -
如何映射磁盘映像的分区
如何映射磁盘映像的分区linux0.11 调试环境中有一个硬盘影像hdc-0.11-new.img我想看看它的内容. 我的系统是ubuntu14. 当然应该在主系统上看.1. 将该文件映射到一个loop 设备上$ sudo losetup /dev/loop0 hdc-0.11-new.img但当我们mount 到一个安装点时却不能成功$ sudo mount /dev/loop0...原创 2019-07-26 09:50:08 · 1075 阅读 · 1 评论 -
linux0.11 阅读笔记
----------------------------------------linux0.11 阅读笔记writer: hjjdebugdate: 2019年 07月 30日 星期二 10:20:44 CST----------------------------------------代码从以下网址获取:https://github.com/voidccc/linux0.11...原创 2019-07-30 10:33:45 · 365 阅读 · 0 评论 -
linux0.00 编译运行调试环境
linux0.00 编译运行调试环境, 在 ubuntu 14 下用as ,ld 编译连接,用bochs 来运行和调试!可参考如下代码:https://github.com/hjjdebug/linux0.00甲: 编译 1. wget http://oldlinux.org/Linux.old/bochs/linux-0.00-050613.zip 2. 将这个文件解压缩...原创 2018-12-20 15:04:41 · 1208 阅读 · 0 评论 -
内嵌驱动入口简单解释
修改内核lcd驱动为at040tn94修改文件可以参考以下链接:http://maker.zlgmcu.com/forum.php?mod=viewthread&tid=183303先来阅读一下drivers/video/mxs/lcd_43wvf1g.c 文件发现最尾部一句为:subsys_initcall(register_devices);该句是一个宏,展开后原创 2016-12-01 11:22:43 · 457 阅读 · 0 评论 -
80386 的内存地址辨析
****************************************80386 的内存地址辨析author: hjjdebug****************************************内存条的地址是物理地址。也称真实地址。与真实地址相对者为虚拟地址.对x86来说,编译器看到的只是一个偏移量,cpu看到的是段和段偏移构成的线性地址。逻辑地址经段式管理(...原创 2016-08-18 09:34:20 · 1670 阅读 · 0 评论 -
linux 的硬件中断矢量号
rom bios 时钟中断是08号中断,linux 中怎样变成了0x20号中断?8259A 是可编程中断控制器芯片,可管理8个中断源。通过级联可最多管理64个中断源pc/at 使用了2片8259A, 占用地址0x20-0x3f 0xa0-0xbf 范围, 共可产生16个中断源。中断矢量号号是可以编程的, linux 将第一个中断源定时器中断编程为0x20.中断源号,中断矢量号, 描原创 2016-08-24 17:03:52 · 1207 阅读 · 0 评论 -
linux0.00 代码阅读笔记
----------------------------------------汇编语言的编写, 编译, 运行,调试:author: hjjdebugdate:----------------------------------------参考代码地址:https://github.com/hjjdebug/linux0.00ubuntu14 的环境这里用gdb(4.8.4)+b...............原创 2016-08-17 15:55:23 · 2008 阅读 · 4 评论 -
内核杂记
----------------------------------------读懂了linux0.00 代码。----------------------------------------意味着汇编的promotea. 感叹认知的规律. 看书,不懂还是不懂,看也看不下去。 你懂了,也不用看书了。 此时再看书,发现好书可以参考,赖书就是垃圾。原创 2015-12-22 14:16:18 · 530 阅读 · 0 评论 -
u-boot 编译,调试及技巧
u-boot 编译,调试及技巧----------------------------------------Author: hjjdebugDate: 2015年 07月 28日 星期二 17:09:17 CSTemail: hejinjing@tom.com----------------------------------------************原创 2015-07-28 17:19:16 · 19849 阅读 · 0 评论 -
ubutu14 下编译linux0.11内核错误记录及解决方法
下载 linux-0.11-gdb-rh9-050619.tar.gz 代码,以它为蓝本编译。别编了,github上有现成的可编译版本,不要浪费这个时间了!!!1. boot/head.s:45: Error: unsupported instruction `mov'原因: 这是因为本机系统为64位,因此需要给所有Makefile中的as命令加上 --32 选项。需给所有Make...原创 2015-12-14 14:36:20 · 8075 阅读 · 3 评论 -
bootargs--内核启动参数介绍
bootargs--内核启动参数介绍bootargs 是 bootloader 传递给内核的启动字符串。****************************************甲:bootargs,常用的几种组合:****************************************1). 假设文件系统是ramdisk,且直接就在内存中,boota原创 2015-07-31 11:16:39 · 14767 阅读 · 2 评论 -
kernel image 与 kernel u-boot 可识别的image
u-boot 加载kernel, 需要将kernel image 变换为uboot imguimg 只是在原来img 基础上加了一个64byte 头部。如下:0000000: 2705 1956 5e24 0227 55bb 30d2 001e 56b0 '..V^$.'U.0...V.0000010: 0001 0000 0001 0000 44c1 8989 0502 020原创 2015-08-02 18:23:17 · 1660 阅读 · 0 评论