操作系统特征、内核态与用户态

1. 操作系统的特征

  • 并发:宏观上计算机系统在一段时间内能同时存在多个运行的程序,需要OS管理和调度。
  • 共享:共享是指系统中的资源可以被多个并发进程共同使用。有两种共享方式:互斥共享和同时共享。
  • 虚拟:虚拟技术把一个物理实体转换为多个逻辑实体。主要有两种虚拟技术:时分复用技术和空分复用技术。多个进程能在同一个处理器上并发执行使用了时分复用技术,让每个进程轮流占有处理器,每次只执行一小个时间片并快速切换。虚拟内存使用了空分复用技术,它将物理内存抽象为地址空间,每个进程都有各自的地址空间。地址空间的页被映射到物理内存,地址空间的页并不需要全部在物理内存中,当使用到一个没有在物理内存的页时,执行页面置换算法,将该页置换到内存中。
  • 异步:程序不是一次性执行完毕,而是走走停停,以不可知的速度向前推进。

2. 内核态与用户态

硬件上对于指令具有级别控制,处于内核态的代码具有最高优先级,可以访问硬件资源,包括内存、网卡等等,处于用户态的代码具有最低优先级,往往不能直接访问硬件资源。所以当用户进程需要访问IO时候,就涉及到了用户态向内核态的切换,一般有三种方式:系统调用、异常和中断。

3. 中断、异常和系统调用

  • 系统调用:应用程序主动向操作系统发出的请求。用户态进程通过系统调用,临时进入内核态,执行内核态特权。
  • 异常:非法指令或其它原因导致当前指令执行失败(如内存出错)后的处理请求。
  • 中断:来自外围设备的中断处理请求。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章