操作系统有哪些结构?

Posted 跋扈洋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了操作系统有哪些结构?相关的知识,希望对你有一定的参考价值。

操作系统的结构

操作系统的服务

操作系统以服务的形式向用户和程序提供环境执行程序。操作系统的基本服务有:
操作系统有一组服务用于提供用户功能:

  • 用户界面:几乎所有的操作系统都有用户界面,这种界面可有多种形式,一种是命令行界面,另一种是批处理界面。
  • 程序执行:系统应能加载程序到内存,并加以运行。
  • I/O操作:为了保证效率和保护,用户通常不应直接控制I/O设备,因此操作系统必须提供手段以便执行I/O
  • 文件系统操作
  • 通信
  • 错误检测

另外操作系统还有一组服务,不是为了帮助用户而是为了确保系统本身运行高效,多用户系统通过共享计算机资源可以提升效率。

  • 资源分配
  • 记账:我们需要记录用户使用资源的类型和数量,这种记录可以用于记账,或统计使用量。
  • 保护和安全

操作系统的服务形式主要分为三种:

  1. 系统调用:操作系统服务的编程接口-面向程序、高级语言编写(C/C++)、程序通过应用程序接口(API)访问
  2. 用户接口:分为命令行接口(CLI)和图形化接口(GUI),许多系统同时包含CLI和GUI界面。第一个图形界面是Xerox Alto。
  3. 系统程序:用于管理、维护操作系统,为用户使用操作系统服务。

操作系统结构

现代操作系统庞大而复杂,常用方法是将这种系统分成子系统或模块。

  1. 简单结构:早期操作系统采用无结构的简单结构,规模小、简单且功能有限,会造成混乱、不易维护更新和不适合大规模系统开发的问题。MS-DOS、早期UNIX就是这样一个操作系统。
  2. 层次结构:操作系统划分为若干层,在低层上构建高层,底层(0层)为硬件,最高层(N层为用户层),每层只使用低层次的功能和服务。分层的主要优点是在于简化了沟造和调试,所选的层次要求每层只能调用更低层的功能和服务。缺点是每层内容的定义困难且效率差。例子是THE系统(简单批处理系统)。
  3. 微内核:随着内核越来越大,越来越难管理,开始出现了微内核技术对内核进行模式化。微内核的主要功能是,为客户端程序和运行在用户空间的各种服务提供通信。通信是通过消息传递来提供的。微内核的优点之一是便于扩展操作系统。微内核也提供了更好的安全性和可靠性。微内核的缺点是用户空间和内核空间通信的系统开销增加。微内核的例子有:CMU的Mach(第一个微内核系统)、Tru64 Unix、Windows NT,2000以及后续版本。
  4. 模块结构:大部分现代操作系统采用模块结构,采用可加载的内核模块是目前操作系统设计的最佳方法。内核有一组核心组件,无论在启动还是运行时,内核都可通过模块链入额外服务。这种设计的思想是:内核提供核心服务,而其他服务可在内核运行时动态实现。动态链接服务优于直接添加新功能到内核,这是因为对于每次更改,后者都要重新编译内核。模块结构比层次结构更加灵活,并且比微内核更加高效(因为模块无需调用消息传递来进行通信)。例子有:现代UNIX和Windows。
  5. 混合系统:许多现代操作系统不是采用单一结构,通过采用多种结构获取性能、安全和使用等方面需求。

后续

如果想了解更多物联网、智能家居项目知识,可以关注我的项目实战专栏和软硬结合专栏。
欢迎关注公众号了解更多。

编写不易,感谢支持。

以上是关于操作系统有哪些结构?的主要内容,如果未能解决你的问题,请参考以下文章

ExtJs 4:如何在一个请求中发送所有修改、新和删除的记录?

外观模式

键盘用的手感不一样 跟新和旧有啥关系?

SSL协议的具体都有哪些内容

FreeRTOS功能和特点都有哪些

点读系列《管理学 斯蒂芬 P. 罗宾斯》