温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
章:操作系统基础知识
操作系统
基础知识
您现在的位置:希赛网 云阅读 软件设计师考试考点分析与真题详解(第4版)操作系统的功能、类型和层次结构第 3 章:操作系统基础知识作者:希赛教育软考学院 来源:希赛网 2014年01月26日操作系统的功能、类型和层次结构第3章 操作系统基础知识根据考试大纲,本章要求考生掌握以下知识点:操作系统的内核(中断控制)、进程、线程概念;处理机管理(状态转换、共享与互斥、分时轮转、抢占、死锁);存储管理(主存保护、动态连接分配、分段、分页、虚存);设备管理(I/O控制、假脱机);文件管理(文件目录、文件组织、存取方法、存取控制、恢复处理);作业管理(作业调度、作业控制语言、多道程序设计);汉字处理,多媒体处理,人机界面;网络操作系统和嵌入式操作系统基础知识;操作系统的配置。3.1 操作系统的功能、类型和层次结构操作系统的定义、功能、类型和层次结构虽然在历年试题中没有涉及,但这是理解操作系统的工作机制的基础,需要深入理解和掌握。重点理解操作系统的定义和功能。1.操作系统定义任何一个计算机系统都是由两个部分组成的:计算机硬件系统和计算机软件系统。操作系统(Operating System,OS)是计算机系统中的核心系统软件,负责管理和控制计算机系统中硬件和软件资源,合理地组织计算机工作流程和有效利用资源,在计算机与用户之间起接口的作用,如图3-1所示。图3-1 操作系统与硬件/软件的关系在计算机系统中引入操作系统的目的可以从4个方面来理解。1)用户观点操作系统是用户与计算机之间的接口。一方面,用户可以透明地使用计算机软/硬件资源;另一方面,操作系统提供了一些功能强大的系统调用,用户软件可以使用这些系统调用请求操作系统服务。2)资源管理观点操作系统是计算机资源的管理者,它管理和分配计算机系统硬件和软件资源,合理地组织计算机的工作流程,使资源能为多个用户共享,当用户程序和其他程序争用这些资源时,提供有序的和可控的分配。3)进程观点上一节本书简介下一节操作系统由一个系统核心和若干并发运行的程序组成。这些运行的程序称为进程,进程可以分为用户进程和系统进程两大类。每个进程完成特定的任务,系统核心则控制和协调这些进程的运行。4)分层观点操作系统通常采用分层结构实现,各层次的程序按照一定的结构组织并协调工作。2.操作系统分类操作系统的基本类型有:批处理操作系统(Batch Processing Operating System)分时操作系统(Time Share Operating System)实时操作系统(Rea Time Operating System)网络操作系统(Network Operating System)分布式操作系统(Distributed Operating System)3.操作系统的功能从资源管理的观点看,操作系统的功能分成五大部分,即:处理机管理、存储管理、文件管理、设备管理和作业管理。这五大部分相互配合,协调工作,实现对计算机系统的资源管理和控制程序的执行,为用户提供方便的使用接口和良好的运行环境。4.操作系统的结构设计模式1)模块化结构操作系统由许多标准的、可兼容的基本单位构成(称为模块),各模块相对独立,模块之间通过规定的接口相互调用。模块化设计方法的优点是缩短了系统的开发周期,缺点是模块之间调用关系复杂、相互依赖,从而使分析、移植和维护系统较易出错。2)层次化结构层次化结构是指操作系统由若干模块按照某种逻辑关系进行分层组合而成,各层之间只能单向依赖。优点是大大地简化了接口的设计,整个系统的正确性由各层次的正确性来保证,易于保证可靠性,也便于维护和移植。3)客户/服务器结构操作系统中只包括一个最小的核心,操作系统的其他功能(如文件服务、进程服务等)由用户进程来实现。优点是服务器以用户进程的形式运行而不是运行于核心态,它们不直接访问硬件,单个服务器的崩溃不会导致整个系统的崩溃,它适用于分布式系统。4)对象模式面向对象的操作系统是按照面向对象思想设计的,具有数据隐藏及消息激活对象等特征。其中对象是对操作系统管理的信息和资源的抽象,可以被视为受保护的信息或资源的总称。优点是适用于网络操作系统和分布式操作系统中,Windows NT就被称为对象操作系统。5)对称多处理模式如果一个操作系统在系统中的所有处理机运行且共享同一内存,这样的系统就是一个对称多处理系统。优点是适合共享存储器结构的多处理机系统,即紧耦合的多处理机系统。版权方授权希赛网发布,侵权必究第 3 章:操作系统基础知识作者:希赛教育软考学院 来源:希赛网 2014年01月26日处理机管理(进程管理)3.2 处理机管理(进程管理)进程管理是操作系统部分的核心内容,也是历年的考试重点,从1991年到2003年,共有10题涉及进程管理的知识点,占操作系统总题量的50%.从历年的考查情况看,主要偏重于进程的同步与互斥、信号量和PV操作、进程的基本概念、管程,以及线程等方面。考生对进程部分的知识点应全面掌握。1.进程的概念进程是可以与其他程序并发执行的段程序的一次执行过程,是系统进行资源分配和调度的基本单位。进程是一个程序关于某个数据集的一次运行。也就是说,进程是运行中的程序,是程序的一次运行活动。相对于程序,进程是一个动态的概念,而程序是静态的概念,是指令的集合。因此,进程具有动态性和并发性。从静态的角度看,进程实体由程序块、进程控制块(简称PCB)和数据块三部分组成。程序块描述该进程所要完成的任务;数据块包括程序在执行时所需要的数据和工作区。进程控制块包括进程的描述信息、控制信息、资源管理信息和CPU现场保护信息等,反映了进程的动态特性,如图3-2所示。图3-2 进程控制块PCBPCB是进程存在的唯一标志,PCB描述了进程的基本情况。系统根据PCB感知进程的存在和通过PCB中所包含的各项变量的变化,掌握进程所处的状态以达到控制进程活动的目的。在创建一个进程时,首先创建其PCB,然后才能根据PCB中的信息对进程实施有效的管理和控制。当一个进程完成其功能后,系统则释放PCB,进程也随之消亡。一般情况下,进程的PCB结构都是全部或部分常驻内存的。2.进程的状态转换与控制1)进程的状态及其转化就绪状态。指进程分配到除处理机以外的必需的资源(已经具备了执行的条件)的状态。进程被创建后处于就绪状态,处于就绪状态的进程可以有多个。执行状态。指进程占有处理机正在CPU上执行的状态。在单CPU系统中,每一时刻只有一个进程处于执行状态。阻塞状态。指进程因等待某个事件的发生而放弃处理机进入等待状态。系统中处于这种状态的进程可以有多个。现代操作系统还有挂起状态,进程的状态及转换如图3-3所示。进程的状态随着自身的推进和外界的变化而变化。比如,就绪状态的进程被进程调度程序选中进入执行状态;执行状态的进程因等待某一事件的发生转入等待状态;等待状态的进程在等待事件来到后便进入就绪状态。进程的状态可以动态地相互转换,但阻塞状态的进程不能直接进入执行状态,就绪状态的进程不能直接进入阻塞状态。在任何时刻,任何进程都处于且只能处于某一状态。2)进程控制进程控制是通过进程控制原语实现的。用于进程控制的原语主要包括,创建原语、阻塞原语、撤销原语、唤醒原语、优先级原语、调度原语。在操作系统中,原语是一个不可分割的基本单位。它们可以被系统本身调用,有的也以软中断形式供用户进程调用。创建原语创建一个进程,包括系统创建和父进程创建都必须调用创建原语。新建立的进程开始处于就绪状态。调度原语是按照确定的算法,从就绪队列中选择一个就绪进程,将处理器分配给它;修改这个进程的PCB内容。唤醒原语负责叫醒阻塞队列具备运行条件的某进程,使其回到就绪队列。撤销原语将执行完毕的进程登记、回收资源并撤销这个进程及其子进程。通常操作系统中设置三种队列:执行队列、就绪队列和阻塞队列。在单处理器系统中执行队列只有一个成员。一般阻塞队列的个数取决于等待事件(原因)的个数。新创建的进程处于就绪队列。3.进程互斥与同步及P,V操作1)进程互斥与同步的定义进程互斥定义为,一组并发进程中一个或多个程序段,因共享某一公有资源而导致它们必须以一个不允许交叉执行的单位执行。也就是说,互斥是要保证临界资源在某一时刻只被一个进程访问。进程同步定义为,异步环境下的一组并发进程因直接制约而互相发送消息,进行互相合作、互相等待,使得各进程按一定的速度执行的过程称为进程同步。也就是说,进程之间是异步执行的,同步即是使各进程按一定的制约顺序和速度执行。2)信号量(Semaphore)与PV操作信号量可以有效地实现进程的同步和互斥。在操作系统中,信号量是一个整数。当信号量大于等于零时,代表可供并发进程使用的资源实体数,当信号量小于零时则表示正在等待使用临界区的进程数。建立一个信号量必须说明所建信号量所代表的意义和设置初值,以及建立相应的数据结构,以便指向那些等待使用该临界区的进程。对信号量只能施加特殊的操作:P操作和V操作,P操作和V操作都是不可分割的原子操作,也称为原语,因此,PV原语执行期间不允许中断发生。P(sem)操作的作用是将信号量sem值减,若sem的值成负数,则调用P操作的进程暂停执行,直到另一个进程对同一信号量做V操作。V(sem)操作的作用是将信号量sem值加1,若sem的值小于等于0,从相应队列(与sem有关的队列)中选择一个进程,唤醒它。一般P操作与V操作的定义如下所述。P操作:P(sem)sem=sem1;if(semOutfie,则将s的输出重定向到当前目录下的文件Outfie上(若不存在,则创建此文件)。是标准输出重定向符号。标准输入重定向的符号为.另外,表示标准输出重定向且拼接。管道是UNIX系统的一个重要特色,它允许在生产者进程与消费者进程之间传递数据流。管道机制建立了一个临时的哑文件(管道文件),把生产者进程的标准输出重定向到管道文件上,并启动消费者进程,将它的标准输入重定向到管道文件上(即从管道文件读),从而把两个进程的输出、输入连接起来。管道的记号为|.使用管道机制可以简化命令行的写法,例如三个连续的命令行:s fiesort fie2pr fie2可以表示为:1s|sort|pr此外,UNIX系统还提供后台命令,例如:cc prog.c&表示用户不必等到对prog.c编译结束就可键入新的命令,She可以响应并处理新的命令,从而向用户提供了多个任务的并行。2.Windows NT系统Windows NT基于客户/服务器模式,采用微内核技术,支持对称多处理结构,支持多线程并行,支持多种硬件平台和多种网络协议。它采用16位标准字符集的单一代码方式(Unicode代码),支持国际字符集,提供性能良好的文件系统。1)系统结构Windows NT是一种对象式操作系统,所有的系统资源都被表示为对象。Windows NT采用层次式与客户/服务器模式相结合的系统结构。Windows NT共分三层,即用户模式、核心和硬件抽象层。2)进程与线程在Windows NT执行体中,进程是由对象管理器创建和删除的对象。每个进程创建时只有一个线程。根据需要,进程可以创建更多的线程。大多数进程是用户态进程,用户态进程通过系统调用访问操作系统。当核心态完成服务,在将控制权交还用户程序前将线程切换回用户态。应用程序在用户态下运行,Windows NT保护子系统也是如此。后者是提供重要的操作系统功能的用户态服务进程。多线程进程实现的并行避免了进程之间并行的缺点:创建线程的开销比创建进程的开销要小,同一进程的线程共享进程的地址空间,所以线程的切换(处理器调度)比进程的切换快。Windows NT内核采用优先级的方案选定线程执行的次序。高优先级线程先于低优先级线程执行。内核周期性地改变线程的优先级,以确保所有线程均能执行。上一节本书简介下一节第 3 章:操作系统基础知识作者:希赛教育软考学院 来源:希赛网 2014年01月26日嵌入式操作系统上一节本书简介下一节第 3 章:操作系统基础知识作者:希赛教育软考学院 来源:希赛网 2014年01月26日嵌入式操作系统概述线程是进程的活动成分,它可以共享进程的资源与地址空间,通过线程的活动,进程可以同时提供多种服务(对服务器进程而言)或实行子任务并行(对用户进程而言)。每个Windows NT进程创建时只有一个线程,根据需要在运行过程中创建更多的线程(前者亦可称主线程)。显然,只有主线程的进程就是传统意义下的进程。内核负责线程的调度。线程的优先级可以动态地改变。采用线程机制的最大优点是节省开销。版权方授权希赛网发布,侵权必究3.8 嵌入式操作系统本节将介绍嵌入式操作系统。版权方授权希赛网发布,侵权必究3.8.1 嵌入式操作系统概述嵌入式系统通常是指内部包含智能控制器的设备,它具有集成度高、体积小、反应速度快、智能化、稳定及可靠性强等特点。嵌入式实时控制系统必须要非常仔细地研究实时性的保证实施。嵌入式系统应具有的特点是高可靠性;在恶劣的环境或突然断电的情况下,系统仍然能够正常工作;许多嵌入式应用要求实时性,这就要求嵌入式操作系统具有实时处理能力;嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步进行的;嵌入式系统中的软件代码要求高质量、高可靠性,一般都固化在只读存储器或闪存中,也就是说软件要求固态化存储,而不是存储在磁盘等载体中。嵌入式软件(Embedded Software),从广义上讲是计算机软件的一种,它也是由程序及其文档组成的。嵌入式软件是嵌入在设备内部并控制设备行为的一种专用软件,其最基本的特点是软件固态化存储在存储芯片或单片机中,而不是存储于磁盘等载体中。嵌入式软件一般在设备启动时自动运行,无须人工干预。通常要求具有实时响应能力,一般不要求复杂的用户界面,也不需用户进行二次开发。嵌入式软件可分成系统软件、支撑软件(中间件)、应用软件三类,最低层即系统软件,包括操作系统及数据库管理系统。下面定义的嵌入式操作系统、嵌入式数据库、嵌入式中间件、嵌入式应用软件,必须同时符合上述嵌入式软件的定义。嵌入式操作系统EOS(Embedded Operating System)是以应用为中心,以计算机技术为基上一节本书简介下一节第 3 章:操作系统基础知识作者:希赛教育软考学院 来源:希赛网 2014年01月26日常用的嵌入式操作系统础,软硬件可裁减,对功能、可靠性、成本、体积、功耗有严格要求的专用性计算机系统。嵌入式操作系统是设备信息系统的核心,管理、监控和维护设备硬件和软件资源,支持和调度各种应用软件的运行,实现处理机管理、内存管理、I/O设备管理、文件管理及作业管理。目前,已推出一些应用比较成功的EOS产品系列。随着Internet技术的发展、信息家电的普及应用及EOS的微型化和专业化,EOS开始从单一的弱功能向高专业化的强功能方向发展。嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固化及应用的专用性等方面具有较为突出的特点。EOS是相对于一般操作系统而言的,它除了具备一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件处理等,还有以下特点。可装卸性。开放性、可伸缩性的体系结构。强实时性。EOS实时性一般较强,可用于各种设备控制当中。统一的接口。提供各种设备驱动接口。操作方便、简单,提供友好的图形界面,追求易学易用。提供强大的网络功能,支持TCP/IP协议及其他协议,提供TCP/UDP/IP/PPP协议支持及统一的MAC访问层接口,为各种移动计算设备预留接口。强稳定性,弱交互性。嵌入式系统一旦开始运行就不需要用户过多地干预,这就要求负责系统管理的EOS具有较强的稳定性。嵌入式操作系统的用户接口一般不提供操作命令,它通过系统的调用命令向用户程序提供服务。固化代码。在嵌入式系统中,嵌入式操作系统和应用软件被固化在嵌入式系统计算机的ROM中。辅助存储器在嵌入式系统中很少使用,因此,嵌入式操作系统的文件管理功能应该能够很容易地拆卸,而用各种内存文件系统。更好的硬件适应性,也就是良好的移植性。国际上用于信息电器的嵌入式操作系统有40种左右。现在,市场上非常流行的EOS产品,包括3Com公司下属子公司的Pam OS,Microsoft公司的Windows CE和开放源代码的inux。版权方授权希赛网发布,侵权必究3.8.2 常用的嵌入式操作系统1.Pam OSPam OS是一种32位的嵌入式操作系统。Pam提供了串行通信接口和红外线传输接口,利用它可以方便地与其他外部设备通信、传输数据;拥有开放的OS应用程序接口,开发商可根据需要自行开发所需的应用程序。Pam OS是一套具有强开放性的系统,现在有大约数千种专门用Pam OS编写的应用程序,从程序内容上看,小到个人管理、游戏,大到行业解决方案。Pam OS是一套专门为掌上电脑开发的OS.在编写程序时,Pam OS充分考虑了掌上电脑内存相对较小的情况,因此它只占有非常小的内存。由于基于Pam OS编写的应用程序占用的空间也非常小,所以,基于Pam OS的掌上电脑(虽然只有几兆字节的RAM)可以运行众多应用程序。由于Pam产品的最大特点是使用简便、机体轻巧,因此决定了Pam OS应具有以下特点。操作系统的节能功能。由于掌上电脑要求使用的电源尽可能小,因此在Pam OS的应用程序中,如果没有事件运行,则系统设备进入半休眠的状态;如果应用程序停止活动一段时间,则系统自动进入休眠状态。合理的内存管理。Pam的存储器全部是可读写的快速RAM,动态RAM类似于PC机上的RAM,它为全局变量和其他不需永久保存的数据提供临时的存储空间;存储RAM类似于PC机上的硬盘,可以永久保存应用程序和数据。Pam OS的数据是以数据库的格式来存储的,为保证程序处理速度和存储器空间,在处理数据的时候,Pam OS不是把数据从存储堆拷贝到动态堆后再进行处理,而是在存储堆中直接处理。Pam OS与同步软件结合可以使掌上电脑与PC机上的信息实现同步,把台式机的功能扩展到了掌上电脑上。2.Windows CEWindows CE也是一个开放的、可升级的32位嵌入式操作系统,是基于掌上电脑类的电子设备操作。Windows CE的图形用户界面相当出色。其中,CE中的C代表袖珍(Compact)、消费(Consumer)、通信能力(Connectivity)和伴侣(Companion);E代表电子产品(Eectronics)。与Windows 95/98、Windows NT不同的是,Windows CE是所有源代码全部由微软自行开发的嵌入式新型操作系统,其操作界面虽来源于Windows 95/98,但Windows CE是基于Win32 API重新开发的、新型的信息设备平台。Windows CE具有模块化、结构化和基于Win32应用程序接口及与处理器无关等特点。Windows CE不仅继承了传统的Windows图形界面,并且在Windows CE平台上可以使用Windows 95/98上的编程工具(如Visua Basic、Visua C+等),使用同样的函数,使用同样的界面网格,使绝大多数的应用软件只需简单修改和移植就可以在Windows CE平台上继续使用。Windows CE的设计目标是:模块化及可伸缩性、实时性能好,通信能力强大,支持多种CPU.它的设计可以满足多种设备的需要,这些设备包括了工业控制器、通信集线器及销售终端之类的企业设备,还有像照相机、电话和家用娱乐器材之类的消费产品。一个典型的基于Windows CE的嵌入系统通常为某个特定用途而设计,并在不联机的情况下工作。它要求所使用的操作系统体积较小,内有对中断的响应功能。Windows CE有如下特点。具有灵活的电源管理功能,包括睡眠/唤醒模式。使用了对象存储技术,包括文件系统、注册表及数据库。它还具有很多高性能、高效率的操作系统特性,包括按需换页、共享存储、交叉处理同步、支持大容量堆等。拥有良好的通信能力。广泛支持各种通信硬件,亦支持直接的局域连接及拨号连接,并提供与PC、内部网及因特网的连接,还提供与Windows 9x/NT的最佳集成和通信。支持嵌套中断。允许更高优先级别的中断首先得到响应,而不是等待低级别的ISR完成。这使得该操作系统具有嵌入式操作系统所要求的实时性。更好的线程响应能力。对高级别IST(中断服务线程)的响应时间上限的要求更加严格,在线程响应能力方面的改进,帮助开发人员掌握线程转换的具体时间,并通过增强的监控能力和对硬件的控制能力帮助他们创建新的嵌入式应用程序。256个优先级别。可以使开发人员在控制嵌入式系统的时序安排方面有更大的灵活性。Windows CE的API是Win32 API的一个子集,支持近1 500个Win32 API.有了这些API,足可以编写任何复杂的应用程序。当然,在Windows CE系统中,所提供的API也可以随具体应用的需求而定。3.inuxinux是一个类似于UNIX的操作系统,inux系统不仅能够运行于PC平台,还在嵌入式系统方面大放光芒,在各种嵌入式inux OS迅速发展的状况下,inux OS逐渐形成了可与Windows CE等EOS进行抗衡的局面。嵌入式inux OS的特点如下。精简的内核,性能高、稳定,多任务。适用于不同的CPU,支持多种体系结构,如X86、ARM、MIPS、APHA、SPARC等。能够提供完善的嵌入式GUI及嵌入式X-Windows.提供嵌入式浏览器、邮件程序、MP3播放器、MPEG播放器、记事本等应用程序。提供完整的开发工具和SDK,同时提供PC上的开发版本。用户可定制,可提供图形化的定制和配置工具。常用嵌入式芯片的驱动集,支持大量的周边硬件设备,驱动丰富。针对嵌入式的存储方案,提供实时版本和完善的嵌入式解决方案。完善的中文支持,强大的技术支持,完整的文档。开放源码,丰富的软件资源,广泛的软件开发者的支持,价格低廉,结构灵活,适用面广。4.3种嵌入式操作系统的比较嵌入式inux OS与Windows CE相比的优点如下。inux是开放源代码的,不存在黑箱技术,遍布全球的众多inux爱好者都是inux开发者的强大技术支持者;而Windows CE是非开放性OS,使第三方很难实现产品定制。inux的源代码随处可得,注释丰富,文档齐全,易于解决各种问题。inux的内核小、效率高;而Windows CE在这方面是笨拙的,占用过多的RAM,应用程序庞大。inux是开放源代码的OS,在价格上极具竞争力,适合中国国情。Windows CE的版权费用是厂家不得不考虑的因素。inux不仅支持x86芯片,还是一个跨平台的系统。到目前为止,它可以支持2030种CPU,很多CPU(包括家电业的芯片)厂商都开始做inux的平台移植工作,而且移植的速度远远超过Java的开发环境。如果今天采用inux环境开发产品,那么将来更换CPU时就不会遇到更换平台的困扰。inux内核的结构在网络方面是非常完整的,它提供了对包括十兆位、百兆位及千兆位的以太网络,还有无线网络、Token ring(令牌环)和光纤甚至卫星的支持。inux在内核结构的设计中考虑适应系统的可裁减性的要求,Windows CE在内核结构的设计中并未考虑适应系统的高度可裁减性的要求。嵌入式inux OS与Windows CE相比的弱点如下。开发难度较高,需要很高的技术实力。核心调试工具不全,调试不太方便,尚没有很好的用户图形界面。与某些商业OS一样,嵌入式inux占用较大的内存,当然,人们可以去掉部分无用的功能来减小使用的内存,但是如果不仔细,将引起新的问题。有些inux的应用程序需要虚拟内存,而嵌入式系统中并没有或不需要虚拟内存,所以并非所有的inux应用程序都可以在嵌入式系统中运行。上一节本书简介下一节第 3 章:操作系统基础知识作者:希赛教育软考学院 来源:希赛网 2014年01月26日例题分析3Com公司的Pam OS是掌上电脑市场中较为优秀的嵌入式操作系统,是针对这一市场专门设计的系统。它有开放的操作系统应用程序接口(API),支持开发商根据需要自行开发所需的应用程序,具有十分丰富的应用程序。在掌上电脑市场上独占其霸主地位已久。从技术层面上讲,Pam OS是一套专门为掌上电脑开发的操作系统,具有许多Windows CE无法比拟的优势;Windows CE过于臃肿,不适合应用在廉价的掌上电脑中。Pam OS是一套具有极强开放性的系统。开发者向用户免费提供Pam OS的开发工具,允许用户利用该工具在Pam OS基础上方便地编写、修改相关软件。与之相比,Windows CE的开发工具就显得复杂多了,这使得一般用户很难掌握。这也是Pam OS与Windows CE的另一个主要区别。Pam OS、Windows CE、inux这三种嵌入式操作系统各有不同的特点,不同的用途;但inux比Pam OS和Windows CE更小、更稳定,而且inux是开放的OS,在价格上极具竞争力。版权方授权希赛网发布,侵权必究3.9 例题分析例题1(2011年5月试题2324)某文件管理系统在磁盘上建立了位示图(bitmap),记录磁盘的使用情况。若系统的字长为32位,磁盘上的物理块依次编号为:0、1、2、,那么4096号物理块的使用情况在位示图中的第(23)个字中描述;若磁盘的容量为200GB,物理块的大小为1MB,那么位示图的大小为 (24)个字。(23)A.129 B.257 C.513 D.1025(24)A.600 B.1200 C.3200 D.6400例题分析:位示图法是为管理磁盘空闲存储空间而提出的一种方法,该方法是在外存上建立一张位示图来记录文件存储器的使用情况。每一位仅对应文件存储器上的一个物理块,取值0和1分别表示空闲和占用。在本题中,题目告诉我们字长32位,即一个字可以表示32个物理块得使用情况,而物理块依次编号为:0、1、2、,那么第4096号物理块的使用情况应该在位示图中的第129个字中描述,因为(4096+1)/32等于128余1,所以这一位应属于第129个字的第一位,其中4096+1的这个1是因为编号是从0开始计数的,所以才加1.由于磁盘的容量为200GB,每个物理块的大小为1MB,那么总共有200GB/1MB=200 x1024个物理块,需要200 x1024位来表示,因此位示图中字的个数=200 x1024/32=6400个。例题答案:(23)A(24)D例题2(2011年5月试题2526)系统中有R类资源m个,现有n个进程互斥使用。若每个进程对R资源的最大需求为w,那么当m、n、w分别取表3-2中的值时,对于表中的种情况,(25)可能会发生死锁。若将这些情况的m分别加上(26),则系统不会发生死锁。表3-2 资源分配表(25)A.B.C.D.(26)A.1、1和1 B.1、1和2 C.1、1和3 D.1、2和1例题分析:在本题中,第种情况的系统资源数为3,而有2个进程互斥使用这3个资源,每个进程需要的资源最大值为2,那么无论怎么分配资源,都不会发生死锁。第种情况的系统资源数为3,有3个进程互斥使用这3个资源,每个进程需要的资源最大值为2,如果每个进程都分配一个该类资源而又互相等待,这时就有可能产生死锁。第种情况的系统资源数为5,而有2个进程互斥使用这5个资源,每个进程需要的资源最大值为3,那么无论怎么分配资源,都不会发生死锁。第种情况的系统资源数为5,有3个进程互斥使用这3个资源,每个进程需要的资源最大值为3,如果有两个进程分配了两个资源,而剩余的一个该类资源分配给了第3个进程,这时就有可能产生死锁。对于第种情况,如果三个进程都分配了2个资源而互相等待则会产生死锁。经过上面的分析我们可以知道,可能会产生死锁,对于第种情况,由于每个进程都分配一个该类资源,如果系统再多一个该类资源,系统将不会产生死锁。对于第种情况,由于有两个进程分配了两个资源,而第3个进程只分配了1个资源,如果系统只增加一个资源的话,那么将增加的这个资源分配给第3个进程,这个时候系统仍然会发生死锁,只有增加两个资源系统才不会死锁。第中情况与第种情况一样,只需要增加一个资源就不会发生死锁。例题答案:(25)C(26)D例题3(2011年5月试题2728)某系统采用请求页式存储管理方案,假设某进程有6个页面,系统给该进程分配了4个存储块,其页面变换表如表3-3所示,表中的状态位等于1/0分别表示页面在内存/不在内存。当该进程访问的页面2不在内存时,应该淘汰表中页号为 (27)的页面。假定页面大小为4K,逻辑地址为十六进制3C18H,该地址经过变换后的页帧号为(28)。表3-3 页面变换表(27)A.0 B.3 C.4 D.5(28)A.2 B.5 C.8 D.12例题分析:本题主要考查页式存储管理。在分页存储管理时,将内存划分为大小相等的页面,每一页物理内存叫页帧,以页为单位对内存进行编号,该编号可作为页数组的索引,又称为页帧号。在淘汰页面时,应选择页帧号最大的进上一节本书简介下一节第 4 章:软件工程基础知识作者:希赛教育软考学院 来源:希赛网 2014年01月26日软件生命周期与软件开发模型上一节本书简介下一节第 4 章:软件工程基础知识作者:希赛教育软考学院 来源:希赛网 2014年01月26日软件危机与软件工程行淘汰,因此当该进程访问的页面2不在内存时,应该淘汰页号为5的页面。另外,题目高位我们页面大小为4K,即需要12位来表示其存储空间,而逻辑地址3C18H转换为二进制为0011 1100 0001 1000,其低12位为页内地址,而高4位为页号,即0011,转换为十进制后结果为3,查表可知,页号为3的页面对应的页帧号为2.例题答案:(27)D(28)A版权方授权希赛网发布,侵权必究第4章 软件工程基础知识根据考试大纲,要求考生掌握软件生命周期各阶段的任务、结构化分析和设计方法、面向对象的分析与设计、软件开发工具与环境的基础知识、软件质量保证的基础知识、软件过程改进与评估和软件项目管理基础知识等七个方面的知识。4.1 软件生命周期与软件开发模型本节将介绍软件生命周期与软件开发模型。版权方授权希赛网发布,侵权必究4.1.1 软件危机与软件工程软件工程是一门年轻的学科。软件工程这个概念最早是在1968年召开的一个当时被称为软件危机的会议上提出的。自1968年以来,我们在该领域已经取得了长足的进步。软件工程的发展已经极大地完善了我们的软件,使我们对软件开发活动也有了更深的理解。1.软件危机那么什么是软件危机呢?自从强大的第三代计算机硬件问世以后,许多原来难以实现的计算机应用成为现实,同时对软件系统的需求数量和复杂度要求变得更高。而当时的软件开发技术无法满足这一日益增长的需求,引发了软件危机。它主要表现为。软件开发生产率提高的速度,远远跟不上计算机迅速普及的趋势。软件需求的增长得不到满足,软件产品供不应求的现象使人类无法充分利用现代计算机硬件提供的巨大潜力。软件成本在计算机系统总成本中所占的比例逐年上升。不能正确估计软件开发产品的成本和进度,致使实际开发成本高出预算很多,而且超出预期的开发时间要求。