摘要: 大写的 B 表示 Byte,小写的 b 表示 bit 1 Byte = 8 bit 几个重要的数需要记忆一下 二进制 十进制 十六进制 地址范围 1 KB 1024个Byte \(2^{10}\) 个Byte 0x400个Byte 0x000~0x3FF 2 KB \(2^{11}\) 个Byte 阅读全文
posted @ 2025-07-08 15:11 Tyler77 阅读(35) 评论(0) 推荐(0)
摘要: 基本概念 将内存切分为等大小的页面,例如一个页位4096 B = \(2^{12}\) B,也就是4 KB。这样,内存的最小单位变成了4 KB。 4 GB (\(2^{32}\) B) 的内存地址范围为:0x 0000 0000 ~ 0x FFFF FFFF 4 KB 的内存范围为:0x 0000 阅读全文
posted @ 2025-07-08 15:11 Tyler77 阅读(73) 评论(0) 推荐(0)
摘要: 总述 使用 HOB 的原因是因为,在 UEFI 启动过程中,PEI 阶段向 DXE 阶段安全、结构化地传递初始化信息(比如内存布局、平台配置、资源分布等),因此发明了 HOB 机制。 另外,在 PEI 阶段内存已经完全初始化,到了 DXE 阶段使用的是已完成初始化的内存,DXE 只是“使用”和“管理 阅读全文
posted @ 2025-05-30 16:47 Tyler77 阅读(456) 评论(2) 推荐(4)
摘要: 总述 DXE(Driver Execution Environment)阶段,是执行大部分系统初始化的阶段,也就是说是BIOS发挥作用,初始化整个主板的主战场。在这个阶段我们可以进行大量的驱动工作。 PEI 是 DXE 之前的阶段,负责初始化平台中的永久内存(相对于Cache来说的内存,并非ROM) 阅读全文
posted @ 2025-05-16 12:33 Tyler77 阅读(824) 评论(0) 推荐(3)
摘要: 总述 UEFI开发过程中,BIOS工程师主要关注点和工作都在于PEI(Pre-EFI Initialization,EFI前初始化)和DXE(Driver Execution Environment)阶段。 DXE阶段是我们的主战场,可以进行丰富且大量的功能驱动开发。 实际上,在UEFI Spec中 阅读全文
posted @ 2025-05-09 15:38 Tyler77 阅读(804) 评论(0) 推荐(3)
摘要: 背景 看Sutton的Reinforcement learning: An introduction,里面将策略迭代作为一种基于动态规划的方法。 书中举了个grid world的例子,非常符合书中的数学原理,有状态转移概率,每个时间步就是每个state等..... 动态规划作为一个常见的面试八股,经 阅读全文
posted @ 2024-11-20 02:28 Tyler77 阅读(249) 评论(0) 推荐(0)
摘要: 方法一:可以采用下面的方法,以32位整数为例: unsigned int v; // 32-bit word to reverse bit order // 相邻两位互相交换 v = ((v >> 1) & 0x55555555) | ((v & 0x55555555) << 1); // 相邻的一 阅读全文
posted @ 2024-09-09 22:29 Tyler77 阅读(125) 评论(0) 推荐(0)
摘要: 显示问题 裸机开发时,驱动教程的PDF里给了4.3寸LCD屏幕的设置参数。如下图所示: 但是按照这个设置,编写设备树dts文件,下载到开发板里,却出现了显示异常,具体来说就是帧率不对,图和字都是歪斜的,像果冻一样左右摇晃。 但是,通过实验发现,在dts文件里将屏幕频率超频设置(大于上图的31MHz, 阅读全文
posted @ 2024-09-01 17:18 Tyler77 阅读(510) 评论(1) 推荐(0)
摘要: 问题 在学习到Linux内核input子系统时,产生了一个疑惑。可以看到,我们改造按键中断驱动程序(请见keyinputdriver.c(内核驱动代码)),通过检测按键的上升沿和下降沿,在中断处理函数(上半部内)通过mod_timer(&dev->timer, jiffies + msecs_to_ 阅读全文
posted @ 2024-08-31 20:52 Tyler77 阅读(116) 评论(0) 推荐(0)
摘要: 正点原子Linux开发板IMX6ULL上的呼吸灯如何停止? 学习到驱动开发Linux系统自带的LED驱动控制的时候,才知道,原来该呼吸灯经过设备树配置好之后,直接由Linux内核程序配置为呼吸灯(前提是在内核中配置过,可以使用make menuconfig来去配置内核)。 所以在之前写led灯的驱动 阅读全文
posted @ 2024-08-31 01:05 Tyler77 阅读(460) 评论(0) 推荐(2)