05 2022 档案

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

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

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

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

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 阅读(1349) 评论(0) 推荐(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 阅读(376) 评论(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 阅读(1354) 评论(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 阅读(52) 评论(0) 推荐(0) 编辑

导航