操作系统 | 操作系统结构

目录

操作系统服务和接口

操作系统服务

操作系统程序接口 - 系统调用

操作系统用户界面

系统程序

操作系统结构

简单结构

层次结构

微内核结构

模块化结构

混合结构

虚拟机 

虚拟机定义

JAVA虚拟机

工作站虚拟机

服务器虚拟机


操作系统服务和接口

操作系统服务

操作系统以服务的形式向程序用户提供环境用于执行程序。

基本服务

  • 用户界面
  • 程序执行
  • I/O操作
  • 文件系统操作
  • 通信
  • 错误检测

增值服务

  • 资源分配
  • 统计
  • 保护和安全

服务形式

  • 系统调用(System call)
  • 用户接口(User interface)
  • 系统程序(System program)
  • 操作系统 | 操作系统结构_第1张图片

操作系统程序接口 - 系统调用

操作系统服务的编程接口,通常由高级语言编写 -- 面向程序。

程序通过API访问。

三种常用的APIs

  • Windows的Win32 API
  • POSIX系统(所有版本的UNIX, Linux, Mac OS X)的POSIX API
  • Java虚拟机(JVM)的Java API

API和系统调用

操作系统 | 操作系统结构_第2张图片

  •  可以看到会进行用户模式向内核模式之间的转换。

操作系统用户界面

CLI(Command-Line Interface)

  • 字符模式,用户直接输入命令。
  • 内核或系统程序实现,多种实现方式 - 外壳(shells)

主要作用:获取并执行用户指定的命令(内置和外置命令)

系统程序

用于管理、维护操作系统。

为用户使用操作系统服务。

功能:

  • 文件管理(例如win中的相关文件的管理)
  • 状态信息(电脑的相关信息,配置信息等)
  • 文件处理(文件的修改,命令等)
  • 程序语言支持
  • 程序装入和执行
  • 通信(比如远程桌面)

操作系统结构

简单结构

简单结构也可以成为无结构,主要用于早期操作系统(功能有限,规模小、简单)。

问题:

  • 混乱,不亦伟乎和更新,不适合大规模系统开发。

例子:早期的unix系统

操作系统 | 操作系统结构_第3张图片

层次结构

操作系统 | 操作系统结构_第4张图片

 操作系统划分为若干层

  • 在底层上构建高层。
  • 底层(0层)为硬件。
  • 最高层(N层)为用户层。
  • 每层智能使用低层次的功能和服务。

优缺点

  • 优点:简化了系统设计和实现,便于调试和升级维护。
  • 缺点:每层内容的定义困难,效率较差。

微内核结构

针对内核越来越大,越来越难以管理的问题,出现了内核微型化,也就是微内核结构。核内移除尽可能多的功能到用户空间。(简言之就是讲内核的一部分功能移动到用户空间中,使得内核更加的安全和稳定,便于管理)

优点:

  • 便于扩充微内核。
  • 便于移植操作系统到新的架构系统上。
  • 更加安全,更加稳定(更少的代码运行在核心态)。

缺点:

  • 用户空间和内核空空间通信的系统开销增加。
  • 解决方法:提出消息传递机制。

模块化结构

目前,大部分的现代化操作系统采用的是模块化结构。

  • 使用面向对象的方法。
  • 每个核心部件分开。
  • 每个与其他模块的会话被称为接口。
  • 每个模块在需要时被加载到内核。

模块化结构类似于分层方法,但是更加灵活

操作系统 | 操作系统结构_第5张图片

混合结构

许多现代操作系统不是采用单一的结构,通过采用多种结构获得性能、安全、使用等方面的应用需求。

操作系统 | 操作系统结构_第6张图片

虚拟机 

虚拟机定义

虚拟机是一种通过软件模拟的实现,具有完整硬件系统的功能,并可以运行在一个完全隔离环境中的完整的计算机系统。

通过将物理计算机资源共享以创建虚拟机。

每个虚拟机同其他虚拟机之间进行隔离。

需要对物理及进行精确的复制,因而虚拟机实现较为困难。

JAVA虚拟机

是高级语言虚拟机的一种,主要用于模拟代码执行,目的是为了跨平台使用。

操作系统 | 操作系统结构_第7张图片

 

工作站虚拟机

目的是为了让多个操作系统可以同时在一个计算机上使用。

工作站虚拟机:操作系统上的虚拟机

  • 宿主操作系统(Host OS):安装在硬件上的OS。
  • 客户操作系统(Guest OS):安装在操作系统上的操作系统。
  • 工作站虚拟机安装在宿主操作系统上,在工作站虚拟机中可以安装客户操作系统。

优点:

  • 同时在一个计算机上使用多个操作系统。
  • 一个宿主操作系统,若干个客户操作系统。

虚拟工作站软件:

VMWare Station, Virtual Box, Virtual PC

操作系统 | 操作系统结构_第8张图片

服务器虚拟机

是一个多用户、多操作系统并存的虚拟机。目的是把一个物理计算机虚拟化为多个虚拟机。

服务器虚拟化:将服务器物理资源抽象成逻辑资源,让一台服务器变成几台甚至上百台相互隔离的虚拟服务器。

常用模式:

  • 一虚多:一台服务器虚拟成多台服务器虚拟机。(常用的虚拟形式)
  • 多虚一:多个独立的物理服务器虚拟成为一个虚拟服务机。

优点;

  • 安全性好
  • 资源共享
  • 可扩张性好
  • 便于隔离
  • 性价比高

服务器虚拟机架构:

操作系统 | 操作系统结构_第9张图片

你可能感兴趣的:(操作系统原理,系统架构)