Linux中有关自旋锁的思维导图,包括自旋锁面临的问题、自旋锁类型、自旋锁概念、认识
树图思维导图提供 自旋锁思维导图 在线思维导图免费制作,点击“编辑”按钮,可对 自旋锁思维导图 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:ab86037672f56723353c36aa5e43400f
自旋锁思维导图思维导图模板大纲
不同类型的上下文(用户进程对中断)如何访问共享的数据
如何访问来自多个 CPU 同一上下文的不同实例
当一个进程发现锁被另一个进程锁着时,它就不停地“旋转”,不断执行一个指令的循环直到锁打开
自旋锁只对 SMP 有用,对单 CPU 没有意义
基本自旋锁
读写自旋锁
适用于“多个读者少数写者”的场合
有多个读者仅有一个写者,或者没有读者只有一个写者
大读者自旋锁
读写自旋锁的一种
更照顾读者
主要用在 Sparc64 和网络系统中
是由正文段(Text)、用户数据段(User Segment)以及系统数据段(SystemSegment)共同组成的一个执行环境
Linux 中用 task_struct 结构来描述进程
有关进程的所有信息都存储在这个数据结构中
Linux 中的进程与 task_struct 结构是同意词
状态概述
TASK_RUNNING:也就是通常所说的就绪(Ready)状态
TASK_INTERRUPTIBLE:等待一个信号或一个资源(睡眠状态)
TASK_UNINTERRUPTIBLE:等待一个资源(睡眠状态), 处于某个等待队列中
TASK_ZOMBIE:没有父进程的子进程
TASK_STOPPED:正在被调试的任务