开发者社区> 问答> 正文

Linux内核与内核空间是什么关系呢?

Linux内核与内核空间是什么关系呢?

展开
收起
游客4ztx2pti3xtdw 2022-03-31 15:21:01 479 0
1 条回答
写回答
取消 提交回答
  • 内核的认识:从2个不同的角度来理解,一个是静态的角度,如“芦中人”所比喻,内核可以看做是一个lib库,内核对外提供的API打包在内核的库中;一个角度是动态的,内核启动了许多内核线程经常来提供系统服务,在ps命令下可以很多这样的进程。 用户进程平时执行应用代码时,CPU访问的虚拟内存空间是在0-3GB空间内,此时用户进程是用户态。 用户进程执行系统调用时,通过软中断的方式,将会陷入到内核代码中,此时用户进程是内核态,CPU访问的是高位的1GB的虚拟地址空间。 普通的用户进程访问内核空间的方式:系统调用。 内核线程一定运行在内核态,它所能访问的虚拟地址空间就是那1GB的空间。 内核空间是所有进程所共享的,但是只有运行在内核态的进程才能访问。

    2022-03-31 15:21:35
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Alibaba Cloud Linux 3 发布 立即下载
ECS系统指南之Linux系统诊断 立即下载
ECS运维指南 之 Linux系统诊断 立即下载