摘要:
简介 Dhrystone是测量处理器运算能力的最常见基准程序之一,常用于处理器的整型运算性能的测量。程序是用C语言编写的,因此C编译器的编译效率对测试结果也有很大影响。 Dhrystone是由Reinhold P. Weicker在1984年提出来的一个基准测试程序,其主要目的是测试处理器的整数运算 阅读全文
摘要:
一、SMP管理 在继续讲解之前,我们先来说一下多CPU管理(这里的CPU是指逻辑CPU,在很多语境中CPU都是默认指的逻辑CPU,物理CPU要特别强调是物理CPU)。最开始的时候计算机都是单CPU的,叫做UP(Uni-Processor),操作系统也只支持UP。后来计算机慢慢发展成了多CPU(包括多 阅读全文
摘要:
背景 某轮测试发现,我们的设备运行一个第三方的App时,卡顿感非常明显: 界面加载很慢,菊花转半天 滑屏极度不跟手,目测观感帧率低于15 对比机(竞品)也会稍微一点卡,但是好很多,基本不会有很大感觉的卡顿 可以初步判定我们的设备存在性能问题,亟需优化,拉平到竞品水准。 最后发现,这个问题实际上是应用 阅读全文
摘要:
/sys/kernel/debug/binder/目录下主要节点含义 state 显示binder设备的整体状态信息 包括进程数量、线程数量、待处理事务数量等 stats 展示binder操作的统计信息 如事务数量、内存使用情况等 transactions 列出当前正在处理的binder事务 包括发 阅读全文
摘要:
/proc/interrupts 和 /proc/softirqs 两者是相互关联的,但它们各自记录的信息和作用有所不同,反映了硬中断和软中断的两个处理阶段。 两者的关系: 硬中断引发软中断: 硬中断通常由外部设备(如网络卡、键盘等)触发,当 CPU 响应硬中断时,会暂时停止当前正在执行的任务,去处 阅读全文
摘要:
NCM介绍 1 功能 USB NCM,属于USB-IF定义的CDC(Communication Device Class)下的一个子类:Network Control Model,用于Host和Device之间交换以太网帧。这些以太网帧可以传输在通信网络上传输的IPv4或IPv6数据报。NCM主要用 阅读全文
摘要:
/sys/kernel/debug/tracing/options/irq_info 是 ftrace 中的一个选项,用于启用或禁用有关中断的详细信息的跟踪。 options/irq_info 的具体作用: 1. 启用 IRQ 信息跟踪: 当启用 irq_info 时,ftrace 将捕获与中断相关 阅读全文
摘要:
在USB 2.0中,设备成功枚举的标志可以通过观察 D+ (dp)、D- (dm) 和 VBUS 引脚的电压波形来判断。以下是这些信号在USB 2.0枚举过程中常见的状态: VBUS (5V供电): USB设备插入主机时,VBUS引脚应从0V变为5V。这表明主机为设备提供了电源,设备开始上电。 D+ 阅读全文
摘要:
initrd的全名是 init ramdisk,是一个启动时存在于内存的文件系统。 kernal 到 initrd的流程 在GRUB加载kernel时,kernel会先在内存中制造一个rootfs当做临时的空间供系统使用,接下来,kernel便会将initrd当做是一个系统,将其mount到root 阅读全文
摘要:
以Android13 为例:在Android 13中,USB插入拔出事件的通知链从硬件层到应用层,依次经过硬件、内核、HAL、Framework、以及应用广播等多个模块,整个流程涉及的具体文件和逻辑如下: 1. 硬件层(USB PHY / 控制器) 文件: /drivers/usb/phy/phy- 阅读全文