Fork me on GitHub
侧边栏
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 135 下一页
摘要: 这篇是ARM电源管理系列文章中的一篇。 今天来看SCMI(System Control and Management Interface)。SCMI是用于系统管理的一组独立于操作系统的软件接口,包括以下几个方面: 电源域管理 性能管理 时钟管理 传感器管理 复位管理 电压域管理 这里提一句,电源域管 阅读全文
posted @ 2025-06-18 11:49 yooooooo 阅读(358) 评论(0) 推荐(0)
摘要: kernel/reboot.c void kernel_restart(char *cmd) { kernel_restart_prepare(cmd); migrate_to_reboot_cpu(); syscore_shutdown(); if (!cmd) pr_emerg("Restart 阅读全文
posted @ 2025-06-17 14:15 yooooooo 阅读(74) 评论(0) 推荐(0)
摘要: 一、什么是dex2oat Dex2oat (dalvik excutable file to optimized art file) ,是一个对 dex 文件进行编译优化的程序,在我们的 Android 手机中的位置是 /system/bin/dex2oat,对应的源码路径为 android/art 阅读全文
posted @ 2025-06-16 10:53 yooooooo 阅读(847) 评论(0) 推荐(0)
摘要: DMA(直接内存访问)与IOMMU(输入输出内存管理单元)的结合主要体现在地址转换与内存访问控制上,两者的关系可以概括为以下几点: 解决设备寻址能力限制 某些设备(如旧版硬件)无法直接访问高于4GB的内存地址(即“高位缓冲区”)。此时IOMMU会通过在[0, 4GB)范围内分配一段物理地址(称为“D 阅读全文
posted @ 2025-06-15 09:33 yooooooo 阅读(173) 评论(0) 推荐(0)
摘要: kmalloc 使用 Slab Cache 的核心原因是 提升小内存分配效率 和 减少内存碎片。其设计依赖于 Linux 内核的 Slab 分配器机制,并通过 flags 参数控制分配行为。以下是具体分析: 1. 为什么 kmalloc 使用 Cache? (1) 性能优化:快速分配与释放 Slab 阅读全文
posted @ 2025-06-14 23:41 yooooooo 阅读(66) 评论(0) 推荐(0)
摘要: 特性介绍 MPAM 是 ARM v8.4引入的Cache QoS和 内存带宽QoS功能特性,是目前业界与之最接近的是 intel 的 RDT 特性。引入MPAM功能特性,主要是为了解决CPU访存过程中因为共享资源的竞争带来的关键性业务性能下降或者系统整体性能下降的问题,这对于混部业务的部署来说,尤为 阅读全文
posted @ 2025-06-12 18:12 yooooooo 阅读(277) 评论(0) 推荐(0)
摘要: ioremap_np 和 ioremap 都是用于将物理地址映射到内核虚拟地址空间的函数,但它们有一些关键区别: 作用 ioremap: 用于将设备的物理地址映射到内核虚拟地址空间,使得驱动程序可以通过虚拟地址访问设备寄存器。它通常用于内存映射I/O(MMIO) [1] [2]. ioremap_n 阅读全文
posted @ 2025-06-11 14:14 yooooooo 阅读(88) 评论(0) 推荐(0)
摘要: iATU(Internal Address Translation Unit) 是一种用于 PCIe(Peripheral Component Interconnect Express)设备的硬件模块,主要用于实现 地址转换 功能。 它的作用是将设备访问的 内存地址 从 设备视角 转换为 主机视角 阅读全文
posted @ 2025-06-11 11:47 yooooooo 阅读(292) 评论(0) 推荐(0)
摘要: 在PCIe地址中,0001:01:00.0 表示设备在PCIe总线上的位置。这个地址由四个部分组成: 域(Domain):0001 表示设备所在的PCIe域。域用于区分不同的PCIe根复合体(Root Complex)。 总线(Bus):01 表示设备所在的总线号。 设备(Device):00 表示 阅读全文
posted @ 2025-06-10 17:04 yooooooo 阅读(301) 评论(0) 推荐(0)
摘要: 1. 背景介绍 在偶然的一次实验中(具体是pinctrl实验),我发现有些平台的pincontroller驱动起得很晚,而pinctrl client驱动却起得很早,在设备驱动模型中probe之前又会进行管脚复用的相关设置,按照常理来讲,这就产生了某种依赖性: pincontroller必须尽早启动 阅读全文
posted @ 2025-06-10 14:54 yooooooo 阅读(142) 评论(0) 推荐(0)
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 135 下一页