操作系统复习笔记

合集下载

计算机系统结构 复习笔记

计算机系统结构 复习笔记

第一章概论本章重点:计算机系统的层次结构、计算机系统结构的定义、计算机系统的设计思路、系统结构并行性开发的方法和计算机系统的分类。

本章难点:透明性分析。

复习建议:本章在历年考试中,为必考的章节,但一般考察基本概念和基本知识;从题型来讲主要为单项选择题和填空题。

建议学员在复习时注意基本概念的理解和掌握。

第一节计算机系统的多级层次结构一、计算机系统的层次(1)从使用语言的角度,计算机系统可以被看成是按功能划分的多层机器级所组成的层次结构。

层次结构由高到低依次为应用语言机器级、高级语言机器级、汇编语言机器级、操作系统机器级、传统机器语言机器级和微程序机器级,如图所示。

(2)对各级机器级的理解对每一级编程的程序员来说,只要熟悉和遵守该级语言的使用规定,所编写的程序就能在此机器上运行并得到结果,而不用考虑该机器级是如何实现的。

机器:能存储和执行相应语言程序的算法和数据结构的集合体。

(3)各级机器的实现技术各级机器的实现主要采用翻译或解释技术来实现,或者两者结合。

多级机器构成的层次结构推动了计算机系统结构的发展。

第二节计算机系统结构、计算机组成和计算机实现一、计算机系统结构的定义★系统结构是对计算机系统中的各级界面的定义及其上下的功能分配。

在多级的层级结构中,每层每级都有自己的系统结构。

不同机器级的程序员所看到的计算机属性是不同的,这就是计算机系统不同层次的体现。

系统结构就是要研究对于某级,哪些属性应透明,哪些不应透明。

透明,即如果客观存在的事物或属性从某个角度看不到,则称对它是透明的。

★计算机系统结构也称为计算机系统的体系结构(Computer Architecture),它指的是层次结构中传统机器级的系统结构,其界面之上的功能包括操作系统级、汇编语言级、高级语言级和应用语言级中所有软件的功能。

界面之下的功能包括所有硬件和固件的功能。

计算机系统结构是软件和硬件的交界面。

就目前的通用机来说,计算机系统结构的属性应包括:★l 硬件能直接识别和处理的数据类型和格式等的数据表示;l 最小可寻址单位、寻址种类、地址计算等的寻址方式;l 通用/专用寄存器的设置、数量、字长、使用约定等的寄存器组织;l 二进制或汇编级指令的操作类型、格式、排序方式、控制机构等的指令系统;l 主存的最小编址单位、编址方式、容量、最大可编址空间等的存贮系统组织;l 中断的分类与分级、中断处理程序功能及入口地址等的中断机构;l 系统机器级的管态和用户态的定义和切换;l 输入输出设备的连接、使用方式、流量、操作结束、出错指示等的机器级I/O结构;l 系统各部分的信息保护方式和保护机构;【例题】下列对应用程序员不透明的是( )(2012年单选题)A.标志符数据表示中的标志符B.输入输出系统硬件的功能C.虚拟地址到主存实地址的变换D.“执行”指令【答案】B【解析】对应用程序员来说只需要知道输入输出系统硬件的功能,就能进行应用系统的开发,而标志符、虚地址与实地址如何变换、“执行”指令均属于底层机器级所要确定的问题,对其是透明的。

自考02326《操作系统》串讲笔记1

自考02326《操作系统》串讲笔记1

第一部分课程概述一、使用教材《操作系统》,全国高等教育自学考试指导委员会组编,谭耀铭主编,中国人民大学出版社2007年版。

二、课程简介随着计算机技术的迅速发展,计算机的硬、软件资源越来越丰富,用户也要求能更方便、更灵活地使用计算机系统。

为了增强计算机系统的处理能力以及方便用户有效地使用计算机系统,操作系统已成为现代计算机系统中不可缺少的重要组成部分。

因此,操作系统课程也就成为高等学校计算机专业的重要专业基础课程。

本课程从操作系统实现资源管理的观点出发,阐述如何对计算机系统中的硬、软件资源进行管理,使计算机系统协调一致地、有效地为用户服务,充分发挥资源的使用效率,提高计算机系统的可靠性和服务质量。

三、课程学习与考试要求在自学过程中、考生应掌握操作系统对各种资源的管理方法和操作系统各部分之间的联系,这样才能真正掌握操作系统的工作原理以及了解操作系统在整个计算机系统中的作用。

为了能确切地学好本课程,要求考生具备:高级语言程序设计、数据结构、计算机系统结构等课程的知识。

在学任何一门课程时,要能做到真正学有所得,就必须:认真阅读教材,边读边做笔记;及时做习题,巩固所学内容;做好阶段总结,正确理解课程内容。

但每一门课程都有自身的特殊性,对于具体课程来说,应按照课程的特点具体探讨如何进行学习。

要学好操作系统课程,关键在于弄清操作系统要做什么,怎么去做和为什么要这样去做。

所以,如能注意如下几点,将会对操作系统课程的自学起到促进作用。

(1)在开始阅读某一章教材之前,先翻阅大纲中有关这一章的考核知识点、考核要求、自学要求、重点,以便在阅读教材时做到心中有数,有的放矢。

(2)阅读教材时要逐段细读,逐句推敲,集中精力,吃透每一个知识点,对基本概念必须深刻理解,对基本原理必须彻底弄清,对设计技巧要能灵活运用。

(3)根据操作系统在计算机系统中的应用,你在学习操作系统课程时应围绕如下四个中心问题:①操作系统怎样管理计算机系统中的各种资源,以及保证资源的使用效率。

MSE计算机操作系统第四章笔记

MSE计算机操作系统第四章笔记

第四章1.一个作业从提交给计算机系统到执行结束退出系统,一般都要经历提交、收容、执行和完成四个状态。

一个作业在其处于从输入设备进入外部存储设备的过程成为提交状态。

处于提交状态的作业,因其信息尚未全部进入系统,所以不能被调用程序选取。

收容状态也称为后备状态,输入管理系统不断地将作业输入到外存中对应部分(或称输入井,即专门用来存放待处理作业信息的一组外存分区)。

若一个作业的全部信息已全部被输入进输入井,那么,在它还未被调度去执行之前,该作业处于收容状态。

作业调度程序从后备作业中选取若干作业到内存投入运行。

它为被选中作业建立进程并分配必要的资源,这时,这些被选中的作业处于执行状态。

当作业运行完毕,但它所占用的资源尚未全部被系统收回时,该作业处于完成状态。

一般来说,处理机调度可分为4级:作业调度、交换调度、进程调度、线程调度。

作业调度:又称宏观调度或高级调度,其主要任务是按一定的原则对外存输入井上的大量后备作业进行选择,给选出的作业分配内存、输入输出设备等必要的资源,并建立相应的根程序,以使该作业的进程获得竞争处理机的权利,另外,当该作业执行完毕时,还负责回收系统资源。

交换调度:又称中级调度,其主要任务是按照给定的原则和策略,将处于外存交换区中的就绪状态或就绪等待状态的进程调入内存,或把处于内存就绪状态或内存等待状态的进程交换到外存交换区。

交换调度主要涉及内存的管理和扩充,一般将它归在存储管理之中。

进程调度:又称微观调度或低级调度,其主要任务是按照某种策略和方法选取一个处于就绪状态的进程占用处理机。

只有在多道批处理系统中才有作业调度,而在分时和实时系统中一般只有进程调度、交换调度和线程调度。

这是因为在分时和实时系统中,为了缩短响应时间或为了满足用户需求的截止时间,作业不是建立在外存中,而是直接建立在内存中。

2.作业调度作业调度的功能:(1)记录系统中各作业的状况,包括执行阶段的有关情况。

通常,系统为每个作业建立一个作业控制表JCB记录这些有关信息。

自考00018计算机应用基础复习笔记(4)

自考00018计算机应用基础复习笔记(4)

自考00018计算机应用基础复习笔记(4)1.2.2 ASCII码(美国标准信息交换码)●字母、标点符号、特殊符号以及作为符号使用的数字,通称为字符。

这些字符统一采用美国标准信息交换代码表示,简称ASCII码。

●ASCII码查表方法(教材P311页附录一):ASCII码用7位二进制数(或最高位为0的8位二进制数)来表示;表中的列表示第654位,行表示第3210位,共128个编码。

查表按先列后行读数。

●字符的大小是根据其ASCII码大小来比较的。

常用字符的ASCII码(由小到大):空格—数字—大写字母—小写字母例如:查表得A的ASCII码值为(1000001)2=(41)16=65;由A可推算出F的ASCII码十进制值为70[相差5];根据该表可知A的ASCII码值[65]比a的ASCII码值[97]小,即小写字母的ASCII码值比大写的大。

图1-21.2.3汉字编码为了用0、1代码串表示汉字,我国制定了汉字的信息交换码GB2312-80,简称国标码。

●国标码共有字符7445个。

一级汉字3755个,按汉语拼音顺序排列;二级汉字3008个,按部首和笔画排列。

●由于汉字的字符多,国标码的每一个符号都用两个字节(16位二进制)代码来表示。

1.国标码:行、列各94(0-93),用先行后列的双7位二进制数表示,即两个字节的最高位为0(见教材P77)。

2.区位码:用二进制国标码表示不很方便,因此汉字也可用十进制区位码表示。

●区(行)、位(列)各94(1-94),用先区后位的双2位十进制数表示,不足两位前面补0。

●区位码表详见教材P312附录2。

图1-3是部分区位码表,如:福2403;该2435;各2487图1-33.机内码:是计算机内部实际使用的表示汉字的代码,在微机中多用两字节(最高位为1)代码作为机内码。

4.三种编码的相互转换:(见图1-4)●将区位码的区号和位号分别由十进制转换对应的十六进制后+2020H即为国标码(其中H表示16进制数);●将十六进制国标码+8080H即为机内码。

408操作系统IO管理复习笔记

408操作系统IO管理复习笔记

408操作系统I/O管理复习笔记●I/O设备1.I/O接口(设备控制器):按CPU发出的命令区控制设备工作的功能●设备控制器与CPU的接口:包含多个数据寄存器●设备控制器与设备的接口●I/O逻辑:接收和识别命令,用于对设备的控制2.I/O端口:可被CPU直接访问的寄存器(数据、状态、控制寄存器)●CPU与I/O端口通信●独立编址:为每个端口分配一个I/O端口号,只有操作系统才能访问●统一编制(内存映射I/O):每个端口被分配唯一的内存空间●I/O控制方式整个发展过程就是要尽量减少CPU对I/O过程的干预1.程序直接控制方式轮询●读写流程●CPU干预频率:频繁●数据传输单位:字●数据流向●读:I/O设备→CPU→内存●写:内存→CPU→I/O设备●优点:实现简单●缺点:CPU长期忙等2.中断驱动方式中断机制CPU会在每个指令周期末尾检查中断中断处理过程需要保存、回复进程的运行环境。

这个过程是有时间开销的,频率太高降低性能●读写流程●CPU干预频率:每次I/O操作的前、后需要CPU介入(等待I/O完成的过程中CPU可以切换到别的进程)●数据传送单位:字●数据流向:●读:I/O设备→CPU→内存●写:内存→CPU→I/O设备●优点:不需要轮询。

CPU和I/O设备可并行工作,CPU利用率得到明显提升●缺点:频繁的中断会消耗较多CPU时间3.DMA方式(直接存储器存取)●DMA控制器●读写流程●CPU干预频率:仅在一个或多个数据块开始和结束时,才需CPU干预●数据传送单位:块●数据流向:设备\to内存,内存\to设备●优点:数据传输效率提升,I/O设备与CPU并行性提升●缺点:一条I/O指令,只能读写一个或多个连续的数据块4.通道控制方式●通道:一种硬件,可以识别一系列通道指令●读写流程●CPU干预频率:极低,通道会根据CPU指示执行相应的通道程序,只有完成一组数据块的读写后才发出中断信号,请求CPU干预。

计算机三级考试知识点:NetWare操作系统

计算机三级考试知识点:NetWare操作系统

计算机三级考试知识点:NetWare操作系统Netware是NOVELL公司推出的网络操作系统。

Netware最重要的特征是基于基本模块设计思想的开放式系统结构,同时也是计算机三级考试的重要内容,我整理了相关知识点,一起来复习下吧!计算机三级考试知识点:NetWare操作系统Ware操作系统的组成NetWare操作系统以文件服务器为核心,它由3部分组成:文件服务器内核、工作站外壳和低层通信协议。

Ware操作系统的特点(1)NetWare的文件系统在NetWare环境中,访问文件的路径如下:文件服务器卷名:目录名子目录名文件名。

(2)NetWare的用户类型在NetWare网络中,网络用户可分为如下4类:网络管理员、组管理员、网络操作员、普通网络用户。

(3)NetWare的安全机制基于对网络安全性的需要,NetWare操作系统提供了如下4级安全保密机制:①注册安全性。

②用户信任者权限。

③最大信任者权限屏蔽。

④目录与文件属性。

(4)NetWare的优缺点NetWare的优点有:①强大的文件及打印服务能力。

②良好的兼容性及系统容错能力。

③比较完备的安全措施。

NetWare的缺点:工作站资源无法直接共享、安装及管理维护比较复杂。

Ware的系统容错技术NetWare操作系统的主要有以下3种系统容错技术:(1)三级容错机制NetWare第一级系统容错(SFT I)主要针对硬盘表面介质可能出现的故障而设计,采用双重目录文件与文件分配表、磁盘热修复与写后验证等措施。

NetWare第二级系统容错(SFT Ⅱ)主要是针对硬盘或硬盘通道故障而设计,包括硬盘镜像与硬盘双工功能。

NetWare第三级系统容错(SFT Ⅱ)提供了文件服务器镜像的功能。

(2)事物跟踪系统NetWare的事物跟踪系统(TTS)用来防止数据库记录的过程因系统故障而造成数据丢失的情况。

(3)UPS监控为了防止网络供电系统电压波动或中断,影响文件服务器及关键设备的工作,NetWare操作系统提供了UPS监控功能。

计算机一级复习笔记

计算机一级复习笔记

计算机一级复习笔记硬件系统:计算机虽然发展了四代,但硬件组成及组成及原理还是大同小异。

1、存储器相当于仓库,仓库的编号成为地址。

用来存放输入设备送来的代码、数据,以及运算器送来的运算结果。

计算机硬件中的记忆部分。

内存存储器: 半导体存储器外存储器:磁带机,磁盘。

2、运算器(算术逻辑单元)对各种信息进行算术运算的主要部件,由很多逻辑电路组成。

寄存器、加法器、移位器和一些控制电路等。

3、控制器计算机的指挥部,控制整个计算机自动的协调一致的工作,由时序电路和逻辑电路组成。

输出电压和脉冲信号来控制计算机。

运算器、控制器整个中央处理器cpu二、软件系统硬件——物质基础软件——大脑软件:为指挥、管理及维护计算机完成各任务而编织的程序和数据的总和。

程序:按照一定的算法要求组织起来的指令程序。

数据:人接受的图、形、文等存储及处理信息的形式。

系统软件:直接与硬件打交道。

应用软件:通过系统软件才能与硬件打交道。

系统软件:管理、监视和维护计算机资源的软件1、操作系统 Dos、Windows、UNIX、Linux、OS/2对程序的执行进行控制一台电脑至少要安装一种中文系统 UCDOS 、SPDOS 、CCDOC 、 UCDOC 、中文之星2、计算机语言:(程序设计语言)BASIC、COBOL 、FORTRAN 、LISP 、PASCALC 、 CCpc 能够直接执行的命令只能是二进制COBOL、用于商业事务管理LISP 图表处理及人工智能FORTRAN 数值科学计算3、服务程序硬件设备的驱动程序和各种硬件诊断程序。

硬件设备驱动器:显示驱动器、打印驱动器以及声卡驱动器等硬件诊断程序:主机硬件诊断、显示器诊断、键盘诊断及磁盘诊断、二、应用软件用于解决各种实际问题衡量好坏:存储空间多少、运行速度快慢、通用性、可移植性(复制,个人认为)1、通用软件数据库:如DBASE、FoxBASE、FoxPro电子表格:Excel Super Cale计算机辅助设计 AutoCAD动漫制作:3D Studio Animater2、专用软件文字处理实用工具软件防杀计算机病毒软件3、自行开发的软件电子计算机的特点:运算速度快、计算精度高、高度自动化电子计算机的本质工作原理:存储并自动执行程序把计算机分为巨型机、大中型、……按计算机综合性能指标我国具有自主知识产权的cpu 龙芯电子计算机的分代依据:电子元件微型计算机的型号是指中央处理器的型号“Pentium4/2.8G” 主频为2.8GH“32位微型机“ 中的”32“ 是指CPU的字长以数据总线的条数来衡量冯洛依曼型计算机的最主要体现是:可运行预先存储的程序。

计算机应用基础笔记

计算机应用基础笔记

计算机应用基础笔记计算机应用基础笔记
章节1:计算机基础知识
1.1 计算机的定义和发展历史
1.2 计算机的组成与工作原理
1.3 计算机的存储与输入输出设备
章节2:操作系统
2.1 操作系统的概念与作用
2.2 常见操作系统的特点和应用领域
2.3 操作系统的管理功能和实现方法
章节3:程序设计与编程语言
3.1 程序设计的基本概念
3.2 常见的编程语言及其特点
3.3 程序设计的基本步骤和流程
章节4:网络与通信
4.1 网络的基本概念和分类
4.2 常见的网络协议和通信方式
4.3 网络安全与信息保护
章节5:数据库管理系统
5.1 数据库的基本概念和组成结构5.2 常见的数据库管理系统及其特点5.3 数据库的设计与实施
章节6:软件工程
6.1 软件工程的基本原理和方法
6.2 软件生命周期和开发模型
6.3 软件测试与维护
章节7:与机器学习
7.1 的发展历程和基本概念
7.2 机器学习的原理和方法
7.3 在社会中的应用
附件:
附件1:计算机基础知识复习题
附件2:常见操作系统的比较表格
附件3:常用编程语言的语法示例
法律名词及注释:
1、版权:具有版权保护的知识产权,以保护作者和创作人的权益。

2、许可证:一种许可使用某种知识产权的权利。

3、隐私保护:个人信息的保护,不被未经授权的人获取和使用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

操作系统复习chapter 11.1 虚拟机解释:在裸机上加载一层软件,来管理整个计算机系统,形成一个虚拟的计算机应用:虚拟机将复杂的计算机硬件与用户的编程分离开来,为用户提供一个友好的程序设计接口,以降低编程的复杂度。

另一个虚拟机由一台裸机向上层提供若干台虚拟机。

不同的虚拟机上可以运行不同的操作系统。

1.2操作系统system view:——是裸机上的第一层软件,是对硬件功能的首次扩充,是资源的分配者、管理者。

user view:——是程序设计接口的提供者1.3 操作系统设计的基本要求:Portability可移植性 Security安全性 Fairness公正性 Robustness强壮性Efficiency有效性 Interfaces接口统一性 ===> 支持 POSIX 标准 ...1.4 操作系统的特点并发——多个事件在同一时间段内发生。

操作系统中各进程间的并发,系统与应用间的并发。

操作系统要完成这些并发过程的管理。

并行(parallel)是指在同一时刻发生。

共享——多个进程共享有限的计算机系统资源。

操作系统要对系统资源进行合理分配和使用。

资源在一个时间段内交替被多个进程所用。

虚拟——一个物理实体映射为若干个对应的逻辑实体(分时或分空间)。

虚拟是操作系统管理系统资源的重要手段,可提高资源利用率。

异步性——(也称不确定性)指进程的执行顺序和执行时间的不确定性。

操作系统必须保证一个进程在不确定的环境下运行有确定的结果。

1.5微内核结构将操作系统划分成多个模块,只有一个模块运行在内核,其它模块运行在用户态。

==> 以提高系统的可靠性but slowerwindows 是宏内核因为操作系统和设备驱动共享内核保护模式的内存空间1.6 进程的地址空间—— A list of memory locations from some minimum (usually 0) to some maximum, which the process can read and write.1.7 文件——由文件名标识的一组信息的集合文件名——用于文件管理(在文件系统中逻辑定位一个文件)i-node ——管理文件管理的结点(在文件系统中物理定位一个文件)一个文件 <---------> i-node1.8 inode 号码inode 在 inode 区的位置1.9路径名——文件的逻辑定位目录——组织文件系统的一种实施方法(文件的逻辑定位与物理定位的结合点)1.10 文件的硬链接——文件的一种共享方式文件的软链接(符号链接)1.11 A pipe is a sort of pseudo file that can be used to connect two processes1.12shell——命令解释器,是由操作系统提供给用户的命令行接口1.13核心态和用户态——两种处理器的访问模式系统调用——操作系统提供给用户的编程接口1.14操作系统的特权操作输入/输出操作存取内存管理寄存器开、关中断停机1.15 POSIX Portable Operating System Interface为了提高 UNIX 环境下应用程序源代码的可移植性1.16系统调用的种类——进程管理 fork() execve() wait() getpid()——信号管理 signaction() kill()——文件管理 open() read() mknod() creat() pipe()——目录管理 mkdir() rmdir() link() mount()——权限管理 chmod() getuid() setuid()——时间管理 time() times() utime()chapter 22.1单道程序特点顺序性——按程序设定的顺序执行封闭性——资源独占;只有该指令序列才能改变机器的状态;程序运行的结果只取决于该程序以及初值。

可再现性缺点:资源浪费可实现的功能简单:无程序间合作;无程序间交互。

2.2多道程序间断(异步)性:——程序"走走停停",失去原有的时序关系。

制约性:——程序之间的同步或共享资源的互斥使用。

失去封闭性:——资源共享;程序受其他程序的控制逻辑的影响。

失去可再现性:——外界环境在程序的两次执行期间发生变化,失去原有的可重复特征。

2.3进程——程序的一次执行过程进程引入的动机:为了描述程序在并发执行时对系统资源的共享,我们需要一个描述程序执行时动态特征的概念,这就是进程。

——是一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程,是一个独立调度的活动,是一个可以分配给予资源的抽象实体。

2.4进程的基本特征——动态性:是程序的一次执行——并发性:能在并发的环境中运行——独立性:是运行的基本单位,资源分配和调度的单位——不可再现性:向前推进的速度不可再现2.5进程的创建和终止——创建进程的时机系统初始化用户进程调用了 fork 系统调用响应用户的命令行请求(shell command)批处理作业的初始化——进程终止的时机正常退出(进程调用了 exit 系统调用 ...)出错退出(预料中的错误)严重错误(预料之外的错误)被其它进程 kill......2.62.7进程上下文——是进程的映像(或环境),是对进程执行活动的描述。

进程上下文包含以下部分:——寄存器内容——与该进程相关的内核控制用数据结构(PCB)——进程的用户地址空间内容2.8进程管理表: 存放了每个进程的控制信息(PCB)Process Control Block (进程控制相关的核心数据结构)PCB 的主要内容:进程标识符进程名——进程描述信息——————进程状态进程优先级——进程运行控制信息——————计费和调度信息内存分配情况打开文件状态资源占用情况——资源占用信息——————程序计数器...... ——CPU现场保护结构2.9使用线程的主要原因:——线程间的数据共享——线程创建的速度快——进程中的多个执行线索实现更多样的任务模型——在多CPU环境中实现并行算法2.10线程——信息共享同一进程中的线程共享进程中的全局数据,打开文件...——运行独立线程是CPU调度的单位,具有就绪、阻塞和执行等基本状态线程拥有必不可少的私有资源,如:线程执行状态、寄存器上下文、程序计数器和栈2.11线程和进程的关系:——线程是进程中的一个运行线索——进程作为资源分配的基本单位(CPU资源除外)2.12线程模型优越性——数据共享——通信不同进程间的线程通信:靠IPC提供的各个方法同一进程的线程间通信:可以通过直接读写进程数据段来进行通信(如全局变量)——调度线程上下文切换比进程上下文切换要快(同一进程内)2.13——在内核中实现线程由内核实现线程的创建和撤销,(系统调用)线程的控制信息存放在内核——在用户空间中实现线程用户进程利用线程库(run-time system)提供的创建、同步、调度等管理线程的函数来控制线程,(库函数)线程的控制信息也存放在进程用户数据区中2.14 进程间通信(IPC)IPC ——InterProcess CommunicationIPC 主要解决三方面的问题:——进程之间传递数据——进程之间约定次序——进程之间协调对共享数据的互斥访问2.15低级通信机制——传递状态和整数值(控制信息),以实现进程间的同步和互斥。

同步:保持不同的进程所发生的事件的某种顺序性。

(用于实现进程之间的协作)互斥:对共享数据的互斥访问:任一时刻只能有一个进程可以对共享数据进行存取。

(用于保护共享数据)低级通信机制包括:锁变量、信号量、关中、睡眠和唤醒、管程、信号、...优点:速度快缺点:传送信息量小;编程复杂,容易出错2.16高级通信机制高级通信机制包括:——消息机制——管道机制——共享存储单元机制——......优点:能够传送任意数量的数据2.17竞态条件( Race Condition)——两个或多个进程同时读写某些共享数据(公共区域),其最后结果的正确与否取决于各个进程存取这个公共区域的确切时序。

==> 结论:必须避免共享数据出现竞态条件。

2.18临界区(Critical Section)临界区——在一组合作的进程{p1,p2,...pn}中每个进程都含有对同一共享数据进行存取的代码段,这种代码段称作为临界区。

引入临界区的目的:为了避免共享资源上的竞态条件====> 临界区代码段的穿插执行,引起共享数据上的竞态条件。

临界区的设计原则:——任何两个进程不能同时处于临界区——不应对CPU的速度和数目作任何假设——临界区外的进程不得阻碍其他进程进入临界区——不得使进程在临界区外无休止地等待=====> 饥饿2.19 忙等待的互斥busy waiting——是互斥的一种实现方案:持续地检测一个状态变量,直到它具有某一特定值之后,才继续往下执行Possible Solutions for Busy_Waiting:Strict Alternation Peterson's solution Disabling Interrupts Lock V ariables TSL1)严格交替法:两个进程的互斥2)Peterson 方案Peterson 方案的特点:——进程进入C.S.的顺序无须严格交替——如果两个进程几乎同时调用enter_region( ) 函数时,两个进程不会同时进入C.S.,也不会同时处于忙等待——临界区外的进程不会阻塞其他进程进入临界区3)禁止中断法(开中关中)——不适用于一般用户的编程(开中、关中属于特权操作),可用于内核编程——不适用于多CPU的场合——是忙等待的互斥(等待进程处于就绪状态,不是受阻状态)4)锁操作法——使用锁变量实现互斥锁变量:可在进程之间共享的变量,可在线程之间共享的变量5)实现原子操作方法1 ——关中方法2:——TSL指令(Test & Set)TSL register,lock_name2.20睡眠和唤醒(实现非忙等待)为什么需要非忙的等待?——提高资源利用率——避免副作用睡眠(SLEEP)和唤醒(WAKEUP)原语SLEEP 原语——将引起调用进程阻塞(即进入blocked状态),直到另一进程将其唤醒WAKEUP 原语——唤醒进程(它带一个参数,即要被唤醒的进程)原语:作为OS核心代码执行,不受进程调度的打断。

进程可以利用sleep( )和wakeup( ) 实现非忙等待2.21优先级翻转问题(priority inversion problem):一台计算机有两个进程,H优先级较高,L优先级较低。

相关文档
最新文档