操作系统结构

以下讨论操作系统的五种不同的结构:

1.整体结构

最常用的一种组织方式。它的结构实际上就是“无结构”,整个操作系统是一组函数的集合,每个函数可以去调用任何其他的函数。

  操作系统提供的服务(系统调用)的请求过程:

  1. 将参数放入预先确定的位置,如寄存器或栈
  2. 执行一条特殊的陷阱指令(访管程序调用指令或内核调用指令)
  3. CPU从用户态切换到内核态,并将控制权交给操作系统。

  

这种模型中,每个系统调用都由一个服务列程来完成。而工具函数则负责一些辅助性的工作,如从用户程序获取数据。

    

  1. 一个主程序,用来调用被请求的服务例程
  2. 一组服务例程,用来实现相应的系统调用
  3. 一组工具函数,用来帮助服务例程的实现

2.分层结构

  在整体结构模型的基础上进一步推广得到分层结构。

  

  分层方案只是在设计上提供一些方便,系统的各个部分最终仍然被链接成一个完整且单一的目标程序。

3.虚拟机

  VM/370系统

  java虚拟机JVM

4.外核

  在内核下运行的最底层软件是一个称为外核的程序,其任务是为虚拟机分配资源并确保资源的使用不会发生冲突。

  外核方案的优点在于它省去了一个映射层。

5.客户-服务器模型

  将大多数操作系统功能由用户进程来实现,只保留一个最小的内核。

  为了获取某项服务,用户进程(客户进程),将此请求发送给一个服务器进程,服务器进程随后完成此操作并将应答信息送回。

  

此模型还适用于分布式系统:

  

原文地址:https://www.cnblogs.com/x-police/p/10855138.html