linux内核代码杂乱记录
文章平均质量分 82
linux内核代码杂乱记录
sudashui2012
这个作者很懒,什么都没留下…
展开
-
linux的信号量semaphore 的实现
linux的信号量semaphore 的实现原创 2024-04-25 14:52:21 · 35 阅读 · 1 评论 -
分析Linux Mutex机制
Linux Mutex机制原创 2024-04-24 15:09:29 · 116 阅读 · 0 评论 -
Linux aarch64 中对内存屏障的定义
Linux aarch64 中对内存屏障的定义原创 2024-04-22 17:46:07 · 46 阅读 · 0 评论 -
local_irq_enable,local_irq_disable(),local_irq_save和local_irq_restore函数
local_irq_enable()和local_irq_disable()函数原创 2024-04-19 16:39:02 · 308 阅读 · 0 评论 -
preempt_enable和preempt_disable
在执行系统调用陷入内核之后,这些内核代码所使用的栈并不是原先进程用户空间中的栈,而是一个单独内核空间的栈,这个称作进程内核栈。这个宏的定义通常会使用一些特殊的内存屏障或者优化指令,以确保在多线程或者多核环境下读取变量的值是正确的,避免出现意外的优化问题。当进程在内核态运行的时候,栈顶指针总是指向这块申请的内核栈中的某一个区域,内核栈的大小最大也就8K,所以将当前栈顶指针的低12位置零就可以得到内核栈的基址。这是因为,内核栈在申请的时候,总是 8K 对齐的,也就是说地址的低12位肯定为0。原创 2024-04-19 14:46:43 · 110 阅读 · 0 评论