文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>linux0.11为什么在用户态下必须使用系统调用来执..

linux0.11为什么在用户态下必须使用系统调用来执..

时间:2007-04-10  来源:pywj777

1.         linux0.11为什么在用户态下必须使用系统调用来执行内核代码,并且即使进程0这样的可以直接执行内核代码的进程也要使用系统调用。而不是直接使用相应的内核函数?

(1)    答:因为普通进程在用户态下无地址可以映射到内核代码去执行内核函数,所以需要使用系统调用将状态转为特权状态,并且使用内核的数据段、代码段、页目录、页表项将地址映射到内核代码处执行内核函数。像进程0虽然可以直接执行内核地址空间代码,但是由于有一些指令必须在特权(CPL=0)状态下执行,所以进程0要先通过系统调用将自身转为特权级,然后再执行内核函数。

相关阅读 更多 +
排行榜 更多 +
探聊交友

探聊交友

聊天通讯 下载
天骄通

天骄通

旅游住宿 下载
奥的斯

奥的斯

商务办公 下载