HardBirch

Linux内核中GET_CURRENT()函数

时间:10-03-20 栏目:系统技术篇 作者:鲁智森也有文化 评论:0 点击: 2,122 次

进程描述符存放在大小为8k的进程栈的顶部(低地址, intel系统中栈是由高地址向低地址伸展的). 而esp寄存器存放着当前进程的栈基址. 所以将esp中的指针的低13位(8k)清零即可得到当前进程描述符的地址.

把嵌入汇编写成AT&T汇编如下:
movl $0xffffe000 %ecx
andl %esp %ecx
movl %ecx current

声明: 本文由( 鲁智森也有文化 )原创编译,转载请保留链接: Linux内核中GET_CURRENT()函数

Linux内核中GET_CURRENT()函数:等您坐沙发呢!

发表评论


QQ群互动

Linux系统与内核学习群:194051772

WP建站技术学习交流群:194062106

魔豆之路QR

魔豆的Linux内核之路

魔豆的Linux内核之路

优秀工程师当看优秀书籍

优秀程序员,要看优秀书!

赞助商广告

友荐云推荐