0
点赞
收藏
分享

微信扫一扫

操作系统(二)操作系统功能概览


文章目录

  • ​​1 CPU与I/O的交互​​
  • ​​2 中断角度理解操作系统​​
  • ​​2.1 处理中断​​
  • ​​2.2 中断时间线​​
  • ​​2.3 储存结构​​
  • ​​2.4 内核模式和用户模式​​
  • ​​2.5 操作系统服务​​
  • ​​2.5.1 提供给用户的功能​​
  • ​​2.5.2 系统自身使用的功能​​
  • ​​2.5.3 系统调用​​
  • ​​2.5.4 系统调用追踪​​

1 CPU与I/O的交互

操作系统(二)操作系统功能概览_操作系统

  • I / O设备和CPU可以同时执行
  • 每个设备控制器负责特定的设备类型
  • 每个设备控制器都有一个本地缓冲区
  • CPU将数据从/到主内存移动到本地缓冲区
  • I / O就是从设备到控制器的线路
  • 设备控制器通知CPU已完成其操作导致中断

2 中断角度理解操作系统

操作系统是中断系统驱动的软件,系统先去干自己的事情,当由硬件(I/O设备)和软件(除数为0)产生中断,系统去处理中断的事件。

2.1 处理中断

处理中断

  1. 保存cpu的现场
  2. 通过中断向量,去中断的服务的程序那里

2.2 中断时间线

操作系统(二)操作系统功能概览_服务_02


操作系统(二)操作系统功能概览_系统调用_03

最多可以有一个等待的IO请求,不能同时处理IO。

2.3 储存结构

操作系统(二)操作系统功能概览_中断_04

2.4 内核模式和用户模式

Kernel Mode
在内核模式下,代码具有对硬件的所有控制权限。可以执行所有CPU指令,可以访问任意地址的内存。内核模式是为操作系统最底层,最可信的函数服务的。在内核模式下的任何异常都是灾难性的,将会导致整台机器停机。

User Mode
在用户模式下,代码没有对硬件的直接控制权限,也不能直接访问地址的内存。程序是通过调用系统接口(System APIs)来达到访问硬件和内存。在这种保护模式下,即时程序发生崩溃也是可以恢复的。在你的电脑上大部分程序都是在用户模式下运行的。

2.5 操作系统服务

操作系统(二)操作系统功能概览_io_05


操作系统(二)操作系统功能概览_中断_06

2.5.1 提供给用户的功能

  • User interface - Almost all operating systems have a user interface
    (UI) - varies between Command-Line (CLI), Graphics User Interface (GUI),
    Batch
  • Program execution - 将程序放到内存执行
  • I/O operations - 可能需要和某个IO设备通信,如磁盘上的文件
  • File-system manipulation - 文件创建,搜索,删除
  • Communications – 一台电脑或者不同电脑的通信,比如共享内存
  • Error detection – 检测并处理CPU,内存,io设备的错误

2.5.2 系统自身使用的功能

  • Resource allocation:cpu周期,主存,文件储存
  • Accounting:记录哪个用户使用了哪些资源
  • Protection and security:Protection :所有对系统资源的访问都是受控制的
    Security :系统以外的用户访问需要验证

2.5.3 系统调用

os提供给程序员的编程接口。

操作系统(二)操作系统功能概览_io_07

2.5.4 系统调用追踪

当没有源代码的时候,可以使用Strace直接追踪对系统的调用过程,然后debug。

操作系统(二)操作系统功能概览_系统调用_08


一般来说,每一个系统调用都和一个数字相关联,用户调用接口维护了一个数字到函数的表,接口会调用内核中的这个函数。


举报

相关推荐

0 条评论