《Linux内核情景分析》经典解说--进程
来源:互联网 发布:新手怎么样开淘宝店 编辑:程序博客网 时间:2024/06/06 02:04
get_current 使用宏的原因
==================== include/asmi386/
current.h 6 13 ====================
6 static inline struct task_struct * get_current(void)
7 {
8 struct task_struct *current;
9 __asm__("andl %%esp,%0; ":"=r" (current) : "0" (~8191UL));
10 return current;
11 }
12
13 #define current get_current()
一条AND指令的执行只需4个CPU时钟周期,而一条从寄存器到寄存器的MOV指令也才2个CPU时钟周期,所有,像这样在需要时才临时把它计算出来反而效率比直接使用current全局变量要高。
==================== include/asmi386/
current.h 6 13 ====================
6 static inline struct task_struct * get_current(void)
7 {
8 struct task_struct *current;
9 __asm__("andl %%esp,%0; ":"=r" (current) : "0" (~8191UL));
10 return current;
11 }
12
13 #define current get_current()
一条AND指令的执行只需4个CPU时钟周期,而一条从寄存器到寄存器的MOV指令也才2个CPU时钟周期,所有,像这样在需要时才临时把它计算出来反而效率比直接使用current全局变量要高。
阅读全文
0 0
- 《Linux内核情景分析》经典解说--进程
- linux内核情景分析{信号 进程}
- Linux内核源代码情景分析-进程间通信-管道
- Linux内核源代码情景分析-进程间通信-命名管道
- linux内核源代码情景分析
- windows内核情景分析---进程线程
- windows内核情景分析---进程线程
- (转载)Linux内核源代码情景分析---第四章 进程与进程调度
- 《Linux内核代码情景分析》观感
- linux内核情景分析{2,存储管理}
- 《Linux内核情景分析》阅读笔记
- Linux内核源代码情景分析-内存管理
- Linux内核源代码情景分析-中断上半部
- Linux内核源代码情景分析-异常
- Linux内核源代码情景分析-系统调用
- Linux内核源代码情景分析-fork()
- Linux内核源代码情景分析-wait()、schedule()
- Linux内核源代码情景分析-execve()
- 第一条博客啊哈哈
- 轻松理解 struct pid
- 关于DPL,CPL与RPL的一个很精妙的解释
- Linux进程:Linux切换机制主流程
- 关于表格的jquery插件
- 《Linux内核情景分析》经典解说--进程
- 深度学习之数学基础(线性代数篇)
- 运行级切换和门
- CPL, 门DPL, 描述符DPL 的关系
- 中断,异常,系统调用,进程切换时的堆栈变化和寄存器保存
- 1040. 有几个PAT(25)
- React Native 学习尝试
- 内核的几种内存分配与线性映射方式
- 【内存】高端内存映射