上一页 1 ··· 21 22 23 24 25 26 27 28 29 ··· 70 下一页

2022年6月10日

Linux内核机制—percpu_rwsem

摘要: 一、相关资料 1. kernel-5.10/Documentation/locking/percpu-rw-semaphore.rst percpu rw 信号量是一种新的读写信号量设计,针对读取锁定进行了优化。 传统的读写信号量的问题在于,当多个内核读取锁时,包含信号量的cache-line在内核 阅读全文

posted @ 2022-06-10 15:41 Hello-World3 阅读(1180) 评论(0) 推荐(1)

2022年6月5日

GCC-3——gcc内联汇编

摘要: 一、gcc内嵌汇编 1. gcc内联汇编格式 __asm_- __volatile__(指令部: 输出部: 输入部: 损坏部) gcc内联汇编在处理器变量和寄存器上提供了一个模板和一些约束条件: (1) 在指令部(Assembler Template)中数字前加上%,如%0、%1等,表示需要使用寄存 阅读全文

posted @ 2022-06-05 18:23 Hello-World3 阅读(1396) 评论(0) 推荐(0)

2022年6月3日

mtk task_turbo 阅读笔记

摘要: 基于MTK linux-4.14,后续新版本内核已经废弃task turbo。 1. 代码位置: drivers/misc/mediatek/task_turbo/task_turbo.c drivers/misc/mediatek/include/mt-plat/turbo_common.h 2. 阅读全文

posted @ 2022-06-03 20:55 Hello-World3 阅读(702) 评论(0) 推荐(0)

2022年6月1日

稳定性调试汇总

摘要: 一、工具 1. QCrash E:\tmp\kasan>aarch64-linux-gnu-objdump.exe -d vmlinux > log_objdump.txt E:\tmp\kasan>aarch64-linux-gnu-nm.exe vmlinux > log_nm.txt ... 阅读全文

posted @ 2022-06-01 11:49 Hello-World3 阅读(238) 评论(0) 推荐(0)

2022年5月22日

Linux内核机制—semaphore

摘要: 一、信号量相关结构 1. 信号量描述结构体 struct semaphore { /* 保护信号量的spinlock锁 */ raw_spinlock_t lock; /* * 对于二值信号量,为1表示没有任务在临界区,为0表示只有1个任 * 务在临界区,没有任务等待 在改信号量上,为-n表示有n个 阅读全文

posted @ 2022-05-22 20:10 Hello-World3 阅读(965) 评论(0) 推荐(0)

2022年5月9日

Linux内核机制—mutex

摘要: 一、Mutex锁简介 1. mutex是具有严格语义的简单、直接的互斥锁: (1) 一次只能有一个任务持锁(2) 只有锁的持有者才能释放锁(3) 不允许多次释放锁(4) 不允许递归持锁(5) 必须通过 API 初始化锁(6) 不能通过 memset 或拷贝来初始化锁(7) 任务不应该在持锁的情况下退 阅读全文

posted @ 2022-05-09 23:23 Hello-World3 阅读(3201) 评论(1) 推荐(1)

2022年5月5日

kernel syscore 学习笔记

摘要: 一、syscore简介 1. syscore 作为低功耗休眠唤醒流程的一部分,其涉及的文件主要有 syscore_ops.h 和 syscore.c,这一级别的回调函数是在完全屏蔽中断的场景下进行的。 2. 相关结构 //syscore_ops.h struct syscore_ops { stru 阅读全文

posted @ 2022-05-05 18:18 Hello-World3 阅读(1626) 评论(0) 推荐(1)

2022年5月1日

simpleperf-1

摘要: 1. simpleperf 源码路径: source/vnd/system/extras/simpleperf 2. 使用方法 测试代码: static void busy_loop_delay_ms(unsigned long num) { unsigned long ts, delta_t; t 阅读全文

posted @ 2022-05-01 13:10 Hello-World3 阅读(478) 评论(0) 推荐(0)

调度器35—DEBUG方法汇总-lockdep/hw_breakpoint

摘要: 一、基础理论概述 1. 有三种 preemption model 和适用场景 非强占式内核(服务器) 强占式内核(低延迟桌面) voluntary kernel preemption(桌面) 2. 动态功耗 = C * Freq * Voltage^2 其中Freq 是CPU运行频率,Voltage 阅读全文

posted @ 2022-05-01 13:06 Hello-World3 阅读(1585) 评论(0) 推荐(0)

设计模式总结汇总

摘要: 一、设计原则 1. SOLID原则 S- Single Responsibility Principle 单一责任原则 O- Open-Close Principle 开放封闭原则 L- Liskov Subsititution Principle 里氏替换原则 I- Interface Segre 阅读全文

posted @ 2022-05-01 12:57 Hello-World3 阅读(74) 评论(0) 推荐(0)

上一页 1 ··· 21 22 23 24 25 26 27 28 29 ··· 70 下一页

导航