操作系统复习篇(2)——操作系统结构

第二章 操作系统结构

基本内容分为:操作系统为用户、进程和其他系统提供的服务;组织操作系统的不同方法

操作系统服务

(以下服务为提高系统高效运行)

  • 用户界面(UI):命令行界面(CLI)和图形用户界面(GUI)
  • 程序执行(Program execution):系统能将程序装入到内存并运行,程序能够结束执行,包括正常结束跟非正常结束
  • I/O操作(I/O operation):用户无法直接控制I/O设备,只能由操作系统提供相关方法
  • 文件系统操作(File-system manipulation):见后面章节
  • 通信(Communications):同一计算机的不同进程、不同计算机的进程之间的通信。共享内存或者消息交换技术来实现
  • 错误检测(Error detection):需要知道错误发生的位置,以及根据位置决定采取何种适当的动作

(以下服务为提高效率)

  • 资源分配(Resource allocation):为每一个作业分配资源
  • 统计(Accounting):记录用户所用资源
  • 保护和安全(Protection and security):通过一定的信息,获取资源或者其他进程的权限

操作系统的用户界面

命令解释程序

  • 有多种Shell
  • 作用:获取并执行用户指定的下一条指令
  • 大多采用识别指令并装入内存,调用相关的系统调用即可

图形化界面

  • 基于鼠标的窗口和菜单系统作为接口

系统调用(system call)

  • 调用一般用C或C++来实现的
  • 一般直接通过更上一层的API来编辑程序,而不是底层的系统调用

系统调用类型

  • 系统调用可分为五大类:进程控制、文件管理、设备管理、信息维护和通信
  • 进程管理:需要能够正常或者非正常中断其执行
  • 文件管理:创建、删除、打开、关闭、读写、重定位
  • 设备管理
  • 信息维护
  • 通信:两种方式是消息传递模型和共享内存模型
    1. 消息传递模型:先通过主机名或进程名进行连接,在进行消息的传递
    2. 共享内存模型:通过读写公共区域来交换信息

系统程序

  • 文件管理:创建、删除、复制、重命名、打印、转储、列出和操作文件和目录
  • 状态信息:从系统得到有关计算机的一些相关详细信息
  • 文件修改
  • 多种程序语言支持
  • 程序装入和执行
  • 通信
  • 系统工具的相关定义

操作系统设计和实现

  • 区分用户目标和系统目标
  • 策略和机制:机制决定如何做,策略决定做什么;策略随时间跟位置会变换,相应的机制也会发生改变

操作系统的结构

  • 简单结构:没有划分板块
  • 分层方法:底层为硬件,最高层为用户程序接口,每一层通过利用较低一层来实现;优点是构造和调试的简单化;缺点是多层划分带来参数调用的额外开销
  • 微内核:只包括最小的进程和内存管理以及通信功能,优点是提供更好的安全性和可靠新,缺点是系统总开销大
  • 模块划分

虚拟机

  • 硬件实现共享(CPU、内存、磁盘、网卡等)
  • 实现:虚拟软件运行在内核模式;虚拟机运行在用户模式上

系统生成

系统启动

  • 启动操作系统
  • 引导系统:将操作系统装入内核以启动程序
  • 或者引导程序或者引导装载程序

猜你喜欢

转载自blog.csdn.net/qq_36312878/article/details/80949609