通信模型是指数据传递和交流的一种抽象模型,它描述了在一个计算机系统中,不同的组件或子系统之间如何进行通信和交互。操作系统结构是指操作系统的组织和设计方式,包括了操作系统的组成部分、功能和模块之间的关系等。本章主要从用户角度、程序员角度和操作系统设计人员角度来研究操作系统的三个方面:系统组成、操作系统服务和系统结构。
在系统组成方面,操作系统通常包括以下几个部分:进程管理、内存管理、文件管理、输入/输出系统管理、二级存储管理、联网、保护系统以及命令解释系统。进程管理是指操作系统对运行着的程序的管理,包括创建和删除进程、进程的悬挂和继续、提供进程同步和通信机制以及处理死锁等。内存管理是指操作系统对内存的管理,包括记录内存的使用情况、决定哪些进程可以装入内存以及分配和释放内存空间等。
在操作系统服务方面,操作系统提供了一些系统调用供用户程序或应用程序使用,系统调用是用户程序与操作系统之间的接口,用于访问操作系统提供的服务。系统程序是操作系统自身运行的一组程序,包括了操作系统的内核和一些工具程序,如命令解释程序、文件管理程序等。
在系统结构方面,操作系统可以分为两种结构:虚拟机系统和微内核系统。虚拟机系统将操作系统看作一台虚拟的计算机,每个用户程序运行在一个虚拟的机器上,通过虚拟机监视程序进行管理和调度。微内核系统将操作系统的核心功能模块化,将大部分功能移出内核,只保留一些基本的功能,如进程管理和内存管理,其他功能通过服务进程提供。
系统设计与实现是指将操作系统的设计思想转化为可执行的操作系统代码的过程,包括了操作系统的架构设计、算法实现和优化等。系统生成是指将操作系统代码编译、链接和装载成可执行的操作系统的过程。
总结来说,本章主要介绍了操作系统的组成部分、功能和模块之间的关系。从用户、程序员和设计人员的角度分别探讨了操作系统的三个方面:系统组成、操作系统服务和系统结构。对进程管理、内存管理、文件管理、输入/输出系统管理、二级存储管理、联网、保护系统和命令解释系统等方面进行了详细的讨论,并介绍了系统调用、系统程序、虚拟机和系统的设计与实现过程。