Linux源码 | Thermal框架源码剖析

1. 框架结构thermal core:thermal主要的程序,驱动初始化程序,维系thermal zone、governor、cooling device三者的关系。thermal zone device:创建thermal zone节点和连接thermal sensor,在/sys/class/thermal/目录下的thermal_zone*,通过dtsi文件进行配置生成。thermal

- 阅读全文 -

Linux设备驱动 | 构造和运行内核模块

1. 将模块链接到内核​ 内核具有非常小的栈,可能和一个4096字节大小的页那样小。在内核API中,函数名称中(__)通常表示接口底层组件,谨慎使用。内核代码不能实现浮点数运算,如果打开浮点支持,在某些架构上,需要在进入和退出内核空间时保存和恢复浮点处理器的状态。这种额外的开销没有任何价值,内核代码中也不需要浮点运算。​2. 装载和卸载模块insmod:将模块的代码和数据装入内核,然后使用内

- 阅读全文 -

汇编 | 入门代码篇

assume 寄存器:段名 ;将寄存器和代码段联系一起 段名 segment ;一个段的开始 ... ... 段名 ends ;一个段的结束 mov ax,4c00H ;程序返回 int 21H end

- 阅读全文 -