摘要:
https://www.kernel.org/doc/html/v6.6/driver-api/driver-model/driver.html 设备驱动程序 请参阅结构体device_driver的kerneldoc。 分配 设备驱动程序是静态分配的结构。尽管系统中可能有多个驱动程序支持的设备,但 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/driver-api/driver-model/devres.html Devres - 管理设备资源 Tejun Heo teheo@suse.de 首稿日期:2007年1月10日 1. 简介 在尝试将libata转换为使用 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/driver-api/driver-model/device.html 设备基本结构 请参阅内核文档以了解 struct device 的结构。 编程接口 发现设备的总线驱动程序使用以下方法将设备注册到核心: int devi 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/driver-api/driver-model/design-patterns.html 设备驱动设计模式 这份文档描述了设备驱动中常见的设计模式。子系统维护者可能会要求驱动开发者遵循这些设计模式。 状态容器 containe 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/driver-api/driver-model/bus.html 总线类型 定义 请参阅结构体bus_type的内核文档。 int bus_register(struct bus_type * bus); 声明 内核中的每个总 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/driver-api/driver-model/binding.html 驱动绑定 驱动绑定是将设备与能够控制它的设备驱动程序关联起来的过程。通常由总线驱动程序处理这一过程,因为总线特定的结构用于表示设备和驱动程序。使用通用设 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/driver-api/driver-model/index.html Driver Model(驱动程序模型) Driver Binding(驱动绑定) Bus Types(总线类型) Device Driver Design 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/locking/hwspinlock.html 硬件自旋锁框架 简介 硬件自旋锁模块为异构处理器和不在单一共享操作系统下运行的处理器之间的同步和互斥提供硬件辅助。 例如,OMAP4具有双核Cortex-A9、双核Cortex- 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/locking/percpu-rw-semaphore.html "Percpu rw semaphores" 是一种新的读写信号量设计,针对读取操作进行了优化。 传统的读写信号量存在一个问题,即当多个核心获取读取锁时,包含信 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/locking/preempt-locking.html 在可抢占内核下的适当锁定:保持内核代码的可抢占安全 作者 Robert Love rml@tech9.net 介绍 可抢占内核会引发新的锁定问题。这些问题与SMP下的问 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/locking/ww-mutex-design.html Wound/Wait死锁安全的互斥锁设计 请先阅读通用互斥锁子系统,因为它也适用于等待/伤害互斥锁。 WW-互斥锁的动机 GPU执行的操作通常涉及许多缓冲区。这些缓冲区 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/locking/spinlocks.html 锁定课程 课程1:自旋锁 用于锁定的最基本原语是自旋锁: static DEFINE_SPINLOCK(xxx_lock); unsigned long flags; spin_l 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/locking/seqlock.html# 序列计数器和顺序锁 介绍 序列计数器是一种具有无锁读取器(只读重试循环)和无写入者饥饿的读者-写者一致性机制。它们用于很少写入数据的情况(例如系统时间),其中读者希望获得一致的信息集 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/locking/rt-mutex.html RT-mutex子系统支持PI RT-mutexes与优先级继承一起使用,以支持PI-futexes,从而使pthread_mutex_t支持优先级继承属性(PTHREAD_PRIO 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/locking/rt-mutex-design.html RT-mutex 实现设计 版权所有 (c) 2006 Steven Rostedt 根据 GNU 自由文档许可证第 1.2 版许可 本文档试图描述 rtmutex.c 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/locking/mutex-design.html 通用互斥子系统 由Ingo Molnar mingo@redhat.com发起 由Davidlohr Bueso davidlohr@hp.com更新 互斥锁是什么? 在Li 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/locking/lockstat.html 锁统计 什么 顾名思义,它提供了有关锁的统计信息。 为什么 因为诸如锁争用之类的问题会严重影响性能。 如何 Lockdep已经在锁函数中设置了钩子,并将锁实例映射到锁类上。我们在此基 阅读全文
摘要:
https://www.kernel.org/doc/html/v6.6/locking/lockdep-design.html 锁类 该验证器操作的基本对象是“锁”的“类”。 “锁”的“类”是一组逻辑上相同的锁,即使这些锁可能有多个(可能有成千上万个)实例化。例如,inode结构中的锁是一个类,而 阅读全文
摘要:
https://www.kernel.org/doc/html/latest/locking/locktypes.html 锁类型及其规则 介绍 内核提供了各种锁原语,可以分为三类: 睡眠锁 CPU 本地锁 自旋锁 本文概念上描述了这些锁类型,并提供了它们的嵌套规则,包括在 PREEMPT_RT 下 阅读全文
摘要:
原文: https://www.kernel.org/doc/html/latest/locking/index.html 锁定 锁类型及其规则 运行时锁正确性验证器 锁统计信息 内核锁折磨测试操作 通用互斥子系统 实时互斥锁实现设计 带有PI支持的实时互斥锁子系统 序列计数器和顺序锁 锁定教训 无 阅读全文