计算机操作系统(第4版·微课视频版)

计算机操作系统(第4版·微课视频版)
作者: 编者:郁红英//王磊//王宁宁//武磊//李春强|责编:王冰飞
出版社: 清华大学
原售价: 59.80
折扣价: 47.84
折扣购买: 计算机操作系统(第4版·微课视频版)
ISBN: 9787302577614

作者简介

郁红英,女,北京信息科技大学信息管理学院教授,长期从事计算机类课程教学工作,主讲“计算机操作系统”“C语言程序设计”“信息管理系统”等课程,有丰富的教学经验。本人主编的《计算机操作系统》获北京市精品教材奖,目前已被几百所院校选为了教材,收到师生的好评。

内容简介

第3章进程同步与通信 操作系统中的并发进程有些是独立的,有些需要相 互协作。独立的进程在系统中执行时不影响其他进程, 也不被其他进程影响; 而另一些进程需要与其他进程 共享数据,以完成一项共同的任务,这些进程之间具有 协作关系。如果对协作进程的活动不加约束,就会使系 统混乱。如,当多个进程争用一台打印机时,有可能多 个进程的输出结果交织在一起,难以区分。所以,为了 保证系统的正常活动,使程序的执行具有可再现性,操 作系统必须提供某种机制。 进程之间的协作关系包括互斥、同步和通信。 互斥是指多个进程不能同时使用同一个资源,当某 个进程使用某种资源时,其他进程必须等待。 同步是指多个进程中发生的事件存在着某种时序关 系,某些进程的执行必须先于另一些进程。 进程通信是指多个进程之间要传递一定量的信息。 视频讲解 视频讲解 3.1进程同步与互斥 3.1.1并发原理 1. 并发带来的问题 在单处理机多道程序环境系统中,进程被交替执行 ,表现出一种并发执行的特征,即使不能实现真正的并 行处理,而且进程间来回切换需要一定的开销,但这种 交替执行在处理效率上还是带来了很大的好处。但是, 由于并发执行的进程之间相对执行速度是不可预测的, 它取决于其他进程的活动、操作系统的调度策略等。这 就带来了以下困难。 (1) 全局变量的共享充满了危险。如果两个进程 都使用同一个全局变量,并且都对该变量进行读写操作 ,那么不同的读写执行顺序是非常关键的。 (2) 操作系统很难最佳地管理资源的分配。如果 某个进程请求使用某个特定的I/O设备,并得到了这个 设备,但该进程在使用该设备前被挂起了,操作系统仍 然把这个设备锁定给该进程,而不能分配给其他进程, 因为操作系统不知道被挂起的进程何时又将执行。此外 ,资源分配还会导致死锁的危险。 (3) 定位程序的错误是很困难的。这是因为并发 程序存在不确定性和不可再现性。 因此并发给操作系统的设计和管理带来了很多问题 ,操作系统为此要关注的事情有以下几方面。 (1) 操作系统必须记录每个进程的情况,并通过 进程控制块实现。 (2) 操作系统必须为每个进程分配和释放各种资 源,这些资源包括处理机、存储器、文件和I/O设备。 (3) 操作系统必须保护每个进程的数据和资源, 避免遭到其他进程的干涉和破坏。 (4) 保证进程执行结果的正确性,进程的执行结 果与速度无关。 以上四个问题中,问题(1)已经在第2章中解决, "本书将理论与实践相结合,全面而又系统地介绍了现代操作系统的基本理论和最新技术,并具体分析了Windows和Linux中的实现技术和方法。本教材有以下几个特点。 (1) 内容全面,讲解系统。在内容讲解上注意由浅入深、由表及里,先引出问题,再给出概念、实现技术和相关算法。 (2) 理论配有实例。本书以Windows和Linux为实例,分别介绍了操作系统理论在这两个实际操作系统中的具体应用,以充实的内容在抽象概念与实际应用之间架设起桥梁,便于读者理解。 (3) 理论与实践相结合。操作系统课程的特点之一是实验的难度大。本书配套有《计算机操作系统实验指导》,实验指导中设计了不同类型的实验题,对每个实验题都进行了较为详细的实验指导,并配有经过测试的源程序代码供学生参考。"