2017-07-05 18:01

 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明,否则将追究法律责任。https://blog.kokojia.com/zhangzhixing521/b-93.html

Linux体系结构要分成用户空间和内核空间的原因:

  1)现代CPU通常都实现了不同的工作模式,

  以ARM为例:ARM实现了7种工作模式,不同模式下CPU可以执行的指令或者访问的寄存器不同:

  (1)用户模式usr

    (2)系统模式sys

    (3)管理模式svc

    (4)快速中断fiq

    (5)外部中断irq

    (6)数据访问终止abt

    (7)未定义指令异常

     以X86为例:X86实现了4个不同级别的权限,Ring0—Ring3;Ring0下可以执行特权指令,可以访问IO设备;Ring3则有很多的限制:

  2)所以,Linux从CPU的角度出发,为了保护内核的安全,把系统分成了2部分;

  3.用户空间和内核空间是程序执行的两种不同状态,我们可以通过“系统调用”和“硬件中断“来完成用户空间到内核空间的转移

  4.Linux的内核结构(注意区分LInux体系结构和Linux内核结构)


 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明,否则将追究法律责任。https://blog.kokojia.com/zhangzhixing521/b-93.html

评论