搜档网
当前位置:搜档网 › 操作系统原理课程教学大纲

操作系统原理课程教学大纲

操作系统原理课程教学大纲
操作系统原理课程教学大纲

附件1:

《操作系统原理》课程教学大纲

制定(修订)人: 李灿平、郭亚莎制定(修订)时间: 2006年 7 月所在单位: 信息工程学院

一、课程基本信息

三、教学内容及基本要求

第一章绪论

本章简要介绍操作系统的基本概念、功能、分类以及发展历史。同时讨论研究操作系统的几种观点。

§1.1 操作系统的概念

本节介绍操作系统的基本概念,什么是操作系统以及操作系统与硬件软件的关系。

本节重点:操作系统与硬件软件的关系。

本节要求学生理解什么是操作系统,掌握操作系统与硬件软件的关系。

§1.2 操作系统的历史

本节按器件工艺介绍操作系统的发展历史。

本节重点:多道程序系统的概念。

本节要求学生了解操作系统的发展历史,理解多道程序系统概念。

§1.3 操作系统的基本类型

本节介绍常见的操作系统的类型、特点及适用的对象。

本节重点:批处理操作系统、分时系统、实时系统。

本节要求学生掌握上述三大操作系统的特点及适用对象。

§1.4 操作系统功能

本节简单介绍操作系统的五个功能。处理机管理,存储管理,设备管理,信息管理(文件系统管理)和用户接口。

本节要求学生了解上述功能。

§1.5 计算机硬件简介

本节简单介绍计算机硬件系统。

本节要求学生自修。

§1.6 算法的描述

本节介绍操作系统管理计算机系统的有关过程所用的描述算法。

本节要求学生掌握本书所采用的描述算法。

§1.7 研究操作系统的几种观点

本节介绍研究操作系统的几种观点。系统管理的观点,用户界面观点和进程管理观点。

本节要求学生了解上述三种观点。

第二章操作系统用户界面

本章主要讨论操作系统的两个用户接口,并以UNIX系统为例,简单介绍用户接口的使用操作方法。

§2.1 作业的基本概念

本节介绍作业的基本概念,什么是作业及作业组织(结构)。

本节重点:作业的基本概念。

本节要求学生掌握作业的基本概念,了解作业的组织。

§2.2 作业的建立

本节介绍作业的几种输入方式和作业的建立过程。

本节重点:联机输入方式和Spooling系统,作业控制块PCB和作业的四个阶段。

本节要求学生了解作业的几种输入方式,理解Spooling系统,掌握作业建立的过程内容。理解作业的四个基本阶段。提交、后备、执行以及完成阶段。

§2.3 命令控制界面接口

本节介绍操作系统为用户提供的命令接口界面。介绍命令接口的两种使用方式。讨论联机方式下操作命令的分类。

本节重点:命令接口的使用方式。

本节要求学生理解命令接口的作用和使用方式。了解联机方式下操作命令的分类。

§2.4 系统调用

本节介绍操作系统提供给编程人员的唯一接口,系统调用。同时讨论系统调用的分类。

本节重点:编程人员通过系统调用使用操作系统内核所提供的各种功能和系统调用的处理过程。

本节要求学生了解系统调用的分类、理解系统调用的功能、掌握系统调用的处理过程。

§2.5 UNIX用户界面

本节简单介绍UNIX系统的发展历史和特点以及UNIX系统结构。同时讨论UNIX操作命令和系统调用的分类功能和使用方法。

本节重点:UNIX系统的特点。

本节要求学生了解UNIX系统的发展史,掌握UNIX系统的特点,理解UNIX系统操作命令和系统

调用的功能。

第三章进程管理

本章详细介绍进程和线程管理的有关概念和技术。

§3.1 进程的概念

本节介绍进程的基本概念。通过程序的并发执行,引出进程具有并发性特征的概念。同时讨论进程的各式各样的定义以及作业和进程的关系。

本节重点:进程的特征。

本节要求学生了解程序的并发执行,掌握进程的特征。

§3.2 进程的描述

本节介绍进程的静态描述以及进程上下文结构。

本节重点,进程的上下文结构。

本节要求学生理解进程的静态描述内容,掌握进程控制块PCB的作用和进程上下文结构。

§3.3 进程状态及其转换

本节介绍进程的三个基本状态,执行状态,等待状态和就绪状态以及进程状态的扩充。同时介绍进程状态的转换过程。

本节重点:进程的三个基本状态。

本节要求学生理解进程的状态及转换过程,掌握进程的三个基本状态及转换过程。

§3.4 进程控制

本节介绍进程的创建与撤消、阻塞与唤配过程。同时介绍原语的概念。

本节要求学生了解什么是原语,理解并掌握上述过程。

§3.5 进程互斥

本节介绍由于进程的并发特性引起的进程对资源的竞争以及由资源竞争引起的对进程执行速度的直接制约和间接制约。间接制约就是进程互斥。

本节同时介绍信号量和P、V原语,讨论互斥的几种实现方法。

本节要求学生理解间接制约的原因,掌握临界资源的概念,掌握P、V信号量的定义,掌握实现互斥的方法。重点掌握用P、V原语操作实现互斥的方法。

§3.6 进程同步

本节介绍同步概念以及利用P、V原语操作实现同步的方法。同时讨论生产者—消费者问题。

本节重点:用P、V原语操作实现同步。

本节要求学生理解直接制约的原因,掌握用P、V原语操作实现同步的方法,理解生产者——消费者问题的描述。

§3.7 进程通信

本节讨论进程通信的几种方式,并以UNIX系统为例,介绍管道通信的实现过程。

本节重点:消息缓冲机制。

本节要求学生了解实现进程通信的方法,掌握消息缓机制和管道通信的控制过程。

§3.8 死锁问题

本节介绍死锁的基本概念,什么是死锁,死锁的原因以及死锁的排除方法。

本节重点:产生死锁的必要条件。

本节要求学生理解死锁的概念,掌握产生死锁的必要条件,了解死锁的排除方法。

§3.9 线程

本节介绍为提高操作系统的执行效率而引入的线程概念。什么是线程、线程的适用范围,线程的分类以及线程的执行特性。

本节重点:线程的基本概念和线程的执行特性。

本节要求学生掌握线程的基本概念和线程的执行特性,理解线程的运用范围和分类。

第四章处理机调度

本章主要介绍处理机管理的功能以及处理机管理的调度策略与算法。

§4.1 分级调度

本节介绍处理机调度的分级。

本节重点:处理机调度的功能及分级。

本节要求学生理解处理机的功能和分级,掌握作业调度和进程调度,线程调度。

§4.2 作业调度

本节讨论作业调度的功能以及作业调度的目标和性能衡量。

本节重点:作业调度的功能。

本节要求学生掌握作业调度的功能和性能衡量指标。了解作业调度的实现过程。

§4.3 进程调度

本节讨论进程调度的功能及实现方法。同时简单介绍进程调度性能的评价方法。

本节重点:进程调度的功能和实现过程。

本节要求学生掌握进程调度的功能和实现过程,理解进程调度的时机,了解进程调度的性能评价。

§4.4 调度算法

本节讨论各种常用的进程调度算法和作业调度算法。同时定性讨论各种算法的性能。

本节重点:多级反馈轮转法和优先级法。

本节要求学生理解各种常用的调度算法。

§4.5 算法评价

本节主要利用解析方法来分析几种常用调度算法的性能。

本节要求学生了解算法评价的解析方法,掌握分析的结论。

§4.6 实时系统调度方法

本节介绍实时系统的特点和常用的调度算法,以时限调度算法为例讨论实时系统调度的实现方法。

本节重点:实时系统的特点和时限调度算法。

本节要求学生掌握实时系统的特点和时限调度算法,了解实时系统的调度算法的分类,理解频率单调调度算法。

第五章存储管理

本章介绍存储管理的常用方法。讨论分区、分页以及分段和段页式管理的特点以及实现原理。同时介绍实现虚拟存储器的重要依据,局部性原理。

§5.1 存储管理的功能

本节介绍存储管理的功能,内存分配与回收、地址变换、内存扩充、数据保护与共享等以及虚拟存储器的概念。

本节重点:虚拟存储器的概念。

本节要求学生掌握虚拟存储器的概念,掌握存储管理的功能。

§5.2 分区存储管理

本节介绍分区管理的基本原理和两种实现方法,固定分区法和动态分区法。

本节重点:动态分区法。

本节要求学生理解分区管理的基本原理,掌握动态分区法。

§5.3 覆盖与交换技术

本节介绍多道程序环境下扩充内存的两种方法,覆盖与交换。

本节要求学生理解覆盖技术和交换技术的实现方法。

§5.4 页式管理

本节介绍页式管理的基本原理,讨论静态页面管理和动态页式管理的实现方法。

本节重点:地址变换和页面置换。

本节要求学生理解页式管理的基本原理,理解并掌握动态页式管理。掌握页式管理中地址变换的实现过程和页面置换的算法。

§5.5 段式与段页式管理

本页分别介绍段式和段页式管理的基本原理与实现方法。

本节重点:地址变换和缺段中断。

本节要求学生理解段式与段页式管理的基本原理,掌握地址变换的实现方法以及与页式管理的区别。

§5.6 局部性原理和抖动问题

本节介绍实现虚拟存储器的依据局部性原理。同时讨论系统抖动问题。

本节重点:局部性原理。

本节要求学生理解局部性原理和抖动问题。

第六章进程与存储管理示例

本章以UNIX System V为例,介绍进程管理和存储管理的实现方法。

§6.1 UNIX进程和存储管理简介

本节简单介绍进程与存储管理的一些高层次特性。

本节重点:UNIX系统结构。

本节要求学生掌握UNIX系统结构,理解用户态和系统态。

§6.2 UNIX进程结构

本节讨论UNIX System V中进程的虚拟地址空间,并介绍进程的上下文和进程的状态及转换。

本节重点:进程的状态和状态转换。

本节要求学生理解进程的虚拟地址结构和进程上下文,掌握进程的状态和状态转换过程。

§6.3 进程控制

本节介绍进程树的概念,同时讨论进程创建与终止的实现过程。

本节重点:进程树的概念。

本节要求学生掌握进程树的概念,理解进程创建和终止的实现过程。

§6.4 进程调度

本节介绍UNIX系统进程调度的基本原理和实现方法。

本节重点:调度标识的设置和调度策略。

本节要求学生了解进程调度所涉及的问题,理解调度标识和调度策略,理解进程调度的实现过程以及交换的实现过程。

§6.5 进程通信

本节介绍UNIX进程通信的三个部分,低级通信、管道通信和进程间通信IPC。同时讨论IPC的三种通信机制。

本节重点:进程间通信IPC。

本节要求学生了解进程通信的三部分内容。理解进程间通信IPC的实现过程。

§6.6 UNIX存储管理

本节介绍UNIX System V进行存储管理所采用的请求调页和交换技术。

本节重点:内存的分配与释放以及地址变换。

本节要求学生理解虚拟空间的划分和管理思想,掌握内存分配与释放以及地址变换的原理,理解请求调页和交换技术的实现过程。

第七章文件系统

本章介绍文件系统的基本概念。主要讨论文件的组织结构、存取结构、保护以及文件系统空间管理等问题。同时讨论文件系统的使用方法和文件系统的层次模型。

§7.1 文件系统的概念

本节介绍文件系统的基本概念,什么是文件和文件系统以及文件系统的分类。

本节重点:文件系统的基本概念。

本节要求学生理解文件系统的基本概念。了解文件的分类。

§7.2 文件的逻辑结构与存取方法

本节介绍几种常用的文件逻辑结构。同时讨论几种常用的文件存取方法。

本节重点:文件的存取方法。

本节要求学生理解常用的几种文件的逻辑结构和常用的几种文件存取方法。

§7.3 文件的逻辑结构与存储设备

本节介绍几种常用的文件物理结构以及文件存储设备的基本特性。

本节要求学生掌握常用的几种文件物理结构。

§7.4 文件存储空间管理

本节讨论文件存储空间的管理方法,空白文件目录、空闲块链、位示图。

本节重点:成组链接法

本节要求学生了解文件存储空间管理的三种常用方法。掌握成组链接法。

§7.5 文件目录管理

本节介绍实现文件按名存取以及提高文件检索速度的方法,即文件目录管理。

本节重点:文件目录管理的功能和实现方法。

本节要求学生掌握文件目录管理的功能,理解实现文件目录管理的方法,掌握多级目录。

§7.6 文件的存取控制

本节介绍文件存取控制的功能。同时讨论限制用户存取文件操作的几种方法。

本节重点:文件存取控制的功能。

本节要求学生掌握文件存取控制的功能,理解验证用户操作文件的合法性所用的四种方式。

§7.7 文件的使用

本节简单介绍文件系统以系统调用方式和命令方式为用户提供的几种文件操作方式。

本节要求学生掌握可以通过系统调用和操作命令来实现对文件的操作。

§7.8 文件系统的层次模型

本节介绍文件系统的层次模型以及各层的主要功能。

本节要求学生理解文件系统的层次和各层所实现的功能。

第八章设备管理

本章介绍设备管理的基本概念。讨论外设和主存或CPU之间数据传送的几各常用控制方式以及设备分配和驱动控制的实现方法等。

§8.1 引言

本节介绍设备的分类和设备管理的功能。

本节重点:设备管理的功能。

本节要求学生了解设备的分类,理解设备管理的功能。

§8.2 数据传送控制方式

本节介绍实现外设和内存或CPU之间数据传送的几种常用控制方式。程序直接控制方式,中断

方式、DMA方式,通道控制方式。

本节重点:DMA方式。

本节要求学生了解数据传送控制的方式及实现原理。

§8.3 中断技术

本节介绍中断的基本概念,什么是中断、中断源、中断请求、中断响应、开中断和关中断以及中断屏蔽。同时介绍中断的类型和中断处理过程。

本节重点:中断的基本概念和中断的处理过程。

本节要求学生掌握本节的全部内容。

§8.4 缓冲技术

本节介绍缓冲技术的基本概念,什么是缓冲以及缓冲的分类。同时讨论缓冲池的管理。

本节重点:什么是缓冲以及缓冲的功能。

本节要求学生掌握什么是缓冲,理解缓冲池的管理。

§8.5 设备分配

本节介绍设备分配所用的数据结构,设备控制表、系统设备表、控制器表、通道控制表。同时介绍设备分配原则及实现过程。

本节重点:设备分配用数据结构。

本节要求学生了解设备分配的方法,掌握设备分配用的数据结构。

§8.6 I/O进程控制

本节介绍I/O控制的功能以及实现I/O控制的几种方式。

本节要求学生理解I/O进程控制的功能。

§8.7 设备驱动程序

本节简单介绍设备驱动程序的基本概念以及设备开关表的作用。

本节要求学生理解什么是设备驱动程序,用户如何使用驱动程序。

第九章文件和设备管理示例

本章介绍UNIX System V的文件和设备管理方法。讨论文件系统、中断和陷阱以及块设备、字符设备的管理。

§9.1 文件系统的特点与文件类别

本节介绍UNIX文件系统的层次结构以及文件的分类。

本节重点:文件系统的层次结构。

本节要求学生了解文件系统的分类,理解文件系统的结构。

§9.2 文件系统的数据结构及其关系

本节介绍文件系统的存储结构以及该结构中所用的几种数据结构。

本节重点:文件系统常用的数据结构。

本节要求学生理解文件系统常用的数据结构,以及之间的关系。

§9.3 资源管理和地址映射

本节介绍UNIX System V的磁盘块分配与回收算法、存放文件说明信息i节点的分配与释放算法。同时介绍用户进程怎样通过用户打开文件表和系统打开文件表与文件系统联接起来。

本节重点:磁盘i节点和内存i结点的使用方法。

本节要求学生掌握磁盘i结点和内存i结点的分配与释放过程,了解系统打开文件表的分配与释放以及地址映射的实现。

§9.4 目录与搜索方法

本节介绍文件操作时所用的搜索方法。

本节要求学生了解目录与搜索的方法。

§9.5 文件系统的系统调用

本节介绍UNIX文件系统与用户的接口系统调用以及系统调用的使用方法和系统调用的执行过程。

本节重点:系统调用的执行过程。

本节要求学生了解系统调用的使用方法,理解系统调用的执行过程。

§9.6 UNIX System V的中断和陷阱总控程序

本节介绍UNIX System V中断和陷阱的处理过程。同时介绍中断与陷阱的区别以及中断的分类和陷阱的分类。

本节重点:中断和陷阱的处理过程。

本节要求学生了解中断和陷阱的分类,理解中断与陷阱的区别,掌握中断和陷阱的处理过程。

§9.7 缓冲区管理

本节主要介绍UNIX系统的块设备缓冲区的实现原理。

本节重点:缓冲池的结构。

本节要求学生理解缓冲池的结构,了解缓冲区的分配与回收以及缓冲区数据的读写方法。

§9.8 块设备驱动

本节主要介绍UNIX系统的块设备驱动原理。

本节重点:设备驱动程序的接口。

本节要求学生了解块设备驱动的基本原理。

§9.9 字符设备驱动

本节介绍有关字符设备管理的数据结构以及字符管理的基本方法。

本节重点:对字符缓冲区的操作。

本节要求学生了解字符设备驱动的基本原理。

第十章面向对象操作系统的设计

本章介绍面向对象技术的基本概念和面向对象操作系统的设计方法以及面象对象操作系统的分类。

本章要求学生自学。

四、课程教学的有关说明

本课程课内外学时比例:3:1 ;平均周学时:6 ;

1.课程的基本要求

本课程要求学生理解并掌握操作系统的基本内容,掌握实现进程管理、处理机管理、文件系统和设备管理以及文件系统管理的各种原理和方法,掌握用户接口的使用方法。熟悉UNIX系统或Linux 系统。

2.本课程与其他课程的联系和分工

要求学习本课程的学生已掌握《微机原理及应用》、《数据结构》、《计算机语言C++》的基本内容。

3.本课程教学环节的说明

通过课堂授课使学生基本理解和掌握本课程的基本内容。通过课后作业使学生进一步加深对基本内容的理解和掌握。对重点内容和难点内容,通过习题课和辅导课,强化学生对这部分内容的理解。

由于操作系统是一门实践性很强的课程,因此安排一定数量的上机实验是必要的。在课程安排的实验学时之外,要求学生课外上机进一步熟悉UNIX系统或Linux系统,掌握实现进程管理、处理机管理、文件系统和设备管理以及文件系统管理的各种原理和方法,掌握用户接口的使用方法。

《操作系统原理》课程设计--银行家算法程序设计

信息与计算科学 操作系统原理 课程设计报告 题目:银行家算法程序设计 班级: 姓名: 专业:

银行家算法程序设计 目录 1.绪论 (2) 2.需求分析 (2) 2.1功能需求 (2) 2.2数据需求 (2) 3. 总体设计 (2) 3.1功能模块设 (2) 3.2系统设计方案 (3) 3.3开发工具 (4) 4. 详细设计 (4) 4.1银行家算法中的数据结构 (4) 4.2银行家算法 (5) 4.3安全性算法 (6) 5. 调试与测试 (8) 6. 结论 (8) 结束语 (8) 参考文献 (9) 附录1-用户手册 (10) 附录2-源程序清单 (11)

1.绪论 20世纪末,随着计算机科学的发展,C语言的应用越来越广泛,很多程序都需要使用C语言来编写。C语言使用方便快捷,它已经成为计算机编程中不可缺少的一部分,而且它也被用于各个方面。例如:政府部门,银行,学校等等。 银行家算法是判断系统是否安全,并且允许其它进程来申请这里的资源,任何一个进程来申请资源时,必须先登记该进程对资源的申请要求然后由系统检查当前资源的状况,并用银行家算法和安全性算法来检查是否允许分配资源给进程。通过课程设计,加深我们对利用银行家算法避免死锁的理解。在设计中主要的难点是用语言编写银行家算法和安全性算法,使系统资源分配能安全进行,避免系统死锁。 2.需求分析 2.1 功能需求 1.添加进程的可用资源,最大资源,已分配资源; 2.判断系统是否安全; 3.申请资源; 4.申请资源后如何分配; 5.进行安全检查。 2.2 数据需求 主要数据包括:可用资源,最大资源,已分配资源,申请资源数。 3. 总体设计 3.1 功能模块设

计算机操作系统原理复习题

课程成绩构成 笔试:70% 平时:30% 试卷构成: 名词解释五小题,共15分; 简答五小题,共35分; 综合题四小题,共50分。 第一章操作系统引论 1、设计现代操作系统的主要目标? 答:(1)有效性(2)方便性(3)可扩充性(4)开放性 2、操作系统的作用? 答:(1)作为用户与计算机硬件系统之间的接口 (2)作为计算机系统资源的管理者 (3)实现了对计算机资源的抽象 3、操作系统发展的主要动力? 答:(1)不断提高计算机资源的利用率 (2)方便用户 (3)器件的不断更新换代 (4)计算机体系结构的不断发展 4、为什么说操作系统实现了对计算机资源的抽象? 答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。 5、单道批理?多道程序设计?多道批处理? 单道批处理系统定义:把一批作业以脱机方式输入到磁带上,并在系统中配上监督程序(Monitor),在它的控制下使这批作业能一个接一个地连续处理,直至磁带(盘)上的所有作业全部完成,系统对作业的处理都是成批地进行的,且在内存中始终只保持一道作业。 多道批处理系统定义:由多道程序设计技术组成的系统。

6、分时系统产生主要动力?关键技术?特征? 答:(1)推动分时系统形成和发展的主要动力是更好地满足用户的需要。主要表现在:CPU 的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。 (2)关键技术:为实现分时系统,其中,最关键的问题是如何使用户能与自己的作业进行交互,即当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,再将结果返回给用户。此后,用户可继续键入下一条命令,此即人—机交互。应强调指出,即使有多个用户同时通过自己的键盘键入命令, (3)特征:多路性;独立性;及时性;交互性。 7、实时任务划分?实时系统与分时系统比较? 实时任务划分:(1)按任务执行时是否呈现周期性来划分 (2)根据对截止时间的要求来划分。 比较:(1)多路性。实时信息处理系统的多路性主要表现在系统周期性的对多路现场信息进行采集,以及对多个对象或多个执行机构进行控制。而分时系统的多路性则与用户情况有关,时多时少。 (2)独立性。实时信息处理系统的每个终端用户在向实时系统提出服务请求时是彼此独立操作,互不干扰。而分时控制系统中,对象的采集和对象的控制也是互不干扰。 (3)及时性。实时信息处理系统的及时性以人所能接受的等待时间来确定。分时系统的及时性是以控制对象所要求的开始截止时间或完成时间来确定的,一般为毫秒级。 (4)交互性。实时信息处理系统仅限于访问系统中某些特定的专用服务程序。分时系统能够向终端用户提供数据处理和资源共享等服务。 (5)可靠性。分时系统也要求可靠性,但实时系统要求更高度的可靠性。 8、操作系统定义?特征? 答:操作系统的定义:操作系统(operating system,简称OS)是计算机系统中的一个系统软件,它是这样一些程序模块的集合——它们管理和控制计算机系统中的软件和硬件资源,合理地组织计算机工作流程,以便有效地利用这些资源为用户提供一个功能强大、使用方便和可扩展的工作环境,从而在计算机与其用户之间起到接口的作用。 特征:(1)并发性(2)共享性(3)虚拟技术(4)异步性 9、是什么原因使操作系统具有异步性特征? 答:操作系统的异步性体现在三个方面:一是进程的异步性,进程以人们不可预知的速度向前推进,二是程序的不可再现性,即程序执行的结果有时是不确定的,三是程序执行时间的不可预知性,即每个程序

操作系统原理-进程调度实验报告

一、实验目的 通过对进程调度算法的设计,深入理解进程调度的原理。 进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。 进程调度分配处理机,是控制协调进程对CPU的竞争,即按一定的调度算法从就绪队列中选中一个进程,把CPU的使用权交给被选中的进程。 进程通过定义一个进程控制块的数据结构(PCB)来表示;每个进程需要赋予进程ID、进程到达时间、进程需要运行的总时间的属性;在RR中,以1为时间片单位;运行时,输入若干个进程序列,按照时间片输出其执行序列。 二、实验环境 VC++6.0 三、实验内容 实现短进程优先调度算法(SPF)和时间片轮转调度算法(RR) [提示]: (1) 先来先服务(FCFS)调度算法 原理:每次调度是从就绪队列中,选择一个最先进入就绪队列的进程,把处理器分配给该进程,使之得到执行。该进程一旦占有了处理器,它就一直运行下去,直到该进程完成或因发生事件而阻塞,才退出处理器。 将用户作业和就绪进程按提交顺序或变为就绪状态的先后排成队列,并按照先来先服务的方式进行调度处理,是一种最普遍和最简单的方法。它优先考虑在系统中等待时间最长的作业,而不管要求运行时间的长短。 按照就绪进程进入就绪队列的先后次序进行调度,简单易实现,利于长进程,CPU繁忙型作业,不利于短进程,排队时间相对过长。 (2) 时间片轮转调度算法RR

原理:时间片轮转法主要用于进程调度。采用此算法的系统,其程序就绪队列往往按进程到达的时间来排序。进程调度按一定时间片(q)轮番运行各个进程. 进程按到达时间在就绪队列中排队,调度程序每次把CPU分配给就绪队列首进程使用一个时间片,运行完一个时间片释放CPU,排到就绪队列末尾参加下一轮调度,CPU分配给就绪队列的首进程。 固定时间片轮转法: 1 所有就绪进程按 FCFS 规则排队。 2 处理机总是分配给就绪队列的队首进程。 3 如果运行的进程用完时间片,则系统就把该进程送回就绪队列的队尾,重新排队。 4 因等待某事件而阻塞的进程送到阻塞队列。 5 系统把被唤醒的进程送到就绪队列的队尾。 可变时间片轮转法: 1 进程状态的转换方法同固定时间片轮转法。 2 响应时间固定,时间片的长短依据进程数量的多少由T = N × ( q + t )给出的关系调整。 3 根据进程优先级的高低进一步调整时间片,优先级越高的进程,分配的时间片越长。 多就绪队列轮转法: (3) 算法类型 (4)模拟程序可由两部分组成,先来先服务(FCFS)调度算法,时间片轮转。流程图如下:

计算机操作系统原理课程设计

上海电力学院 课程设计报告 课程名称:操作系统原理 题目名称:采用可变分区存储管理,模拟主存空间的分配和回收 姓名: xxx 学号: xxx 班级: 2013054 同组姓名: xxx 课程设计时间: 2015.7.6~2015.7.10 评语: 成绩:

课程设计题目 一、设计内容及要求 可变分区存储管理模拟 设计内容:编写程序模拟实现可变分区存储管理。 具体要求: 编写程序模拟实现可变分区存储管理,实现存储管理的基本功能,包括内存的分配、内存的回收、地址变换等。 输入:1、输入新进程名称及使用内存的大小(可创建多个进程); 2、撤销某个指定的进程; 3、某个进程的逻辑地址; 输出:显示每次创建进程或者撤销进程后内存使用的状况,包括每一个进程占据的内存的位置和大小; 计算并输出给定逻辑地址对应的物理地址。 必须分别使用以下分配算法完成模拟: 1、首次适应算法; 2、最佳适应算法; 3、最差适应算法; 小组分工: 程序设计讨论: 程序主体设计: 程序调试及修改: 实验报告设计: 总结: (要求注明小组分工情况) 二、详细设计 1)原理概述 对于可变分区存储管理的内存分配与回收,主要为设计以下几个部分: 1、设计动态输入空闲分区表的程序 2、设计内存分配的程序 3、设计内存回收的程序 首次适应算法: FF算法要求空闲分区表或空闲分区链以地址递增的次序链接。在分配内时,从链首开始查找,直至找到一个大小能满足要求分区为止;然后再按照作业大小,从该分区中划一块内存空间分配给请求者,余下的空闲分区仍留在空闲链中。如从链首直至链尾都不能找到一个能满足要求的分区,则此次分配失败,返回 最佳适应算法: BF算法是指每次为作业分配内存,总是把满足要求、又是最小的空闲分区分配给作业,避免“大材小用”。为了加速寻找,该算法要求所有的空闲分区按其容量以从小到大的顺序形成一空闲分区链。这样,第一次找到能满足要求的空闲区,

南开《操作系统原理》20春期末考核

1.哲学家就餐问题,揭示的是()。 A.共享某种资源的并发进程调度问题 B.存储器分配问题 C.操作系统构 建问题 【参考答案】: A 2.在UNIX系统中提出了逻辑设备的概念,利用逻辑设备描述可以解决 ()的问题。 A.提升设备使用率 B.设备无关性设计 C.I/O访问速度与处理器不匹 配 【参考答案】: B 3.UNIX操作系统属于()类型的操作系统。 A.批处理 B.分时 C.实时 D.分布式 【参考答案】: B 4.SPOOLing技术可以实现设备的虚拟管理,即将独占设备改造成()。 A.共享设备 B.块设备 C.字符设备 【参考答案】: A 5.采用时间片轮转(RR)法调度时,如果时间片过长,该算法将退化为 ( )算法。 A.短进程优先(SPN) B.时间片轮转(RR) C.先来先服务(FCFS) D.优先级法(PS) 【参考答案】: C 6.I/O 中断处理程序,属于()程序。 A.操作系统后台管理 B.用户级设计 C.系统工具软件

【参考答案】: A 7.若系统中有五个并发进程使用了相同的变量名A,则系统中对变量A 管理的临界区是由( )临界区构成的。 A.1个 B.2个 C.4个 D.5个 【参考答案】: D 8.采用可变分区存储管理时,最佳适应分配算法通常要求对空闲区表项 按( )进行排列。 A.存储区空间按照从大到小 B.存储区空间按照从小到大 C.存储区空间随机 【参考答案】: B 9.对文件实施加密管理后,可以防止文件被( )。 A.复制 B.内容扩散 C.删除 【参考答案】: B 10.在段页式存储管理中,每访问一个数据至少需要()次对内存的访 问。 A.一次 B.两次 C.三次 【参考答案】: C 11.存储器按照读写功能分类时可分为()。 A.ROM和RAM B.非永久记忆性存储器和永久记忆性存储器 C.顺序存储器和随机存 【参考答案】: A

操作系统原理实验-系统内存使用统计5

上海电力学院 计算机操作系统原理 实验报告 题目:动态链接库的建立与调用 院系:计算机科学与技术学院 专业年级:信息安全2010级 学生姓名:李鑫学号:20103277 同组姓名:无 2012年11 月28 日上海电力学院

实验报告 课程名称计算机操作系统原理实验项目线程的同步 姓名李鑫学号20103277 班级2010251班专业信息安全 同组人姓名无指导教师姓名徐曼实验日期2012/11/28 实验目的和要求: (l)了解Windows内存管理机制,理解页式存储管理技术。 (2)熟悉Windows内存管理基本数据结构。 (3)掌握Windows内存管理基本API的使用。 实验原理与内容 使用Windows系统提供的函数和数据结构显示系统存储空间的使用情况,当内存和虚拟存储空间变化时,观察系统显示变化情况。 实验平台与要求 能正确使用系统函数GlobalMemoryStatus()和数据结构MEMORYSTATUS了解系统内存和虚拟空间使用情况,会使用VirtualAlloc()函数和VirtualFree()函数分配和释放虚拟存储空间。 操作系统:Windows 2000或Windows XP 实验平台:Visual Studio C++ 6.0 实验步骤与记录 1、启动安装好的Visual C++ 6.0。 2、选择File->New,新建Win32 Console Application程序, 由于内存分配、释放及系统存储 空间使用情况均是Microsoft Windows操作系统的系统调用,因此选择An application that support MFC。单击确定按钮,完成本次创建。 3、创建一个支持MFC的工程,单击完成。

操作系统课程设计

计算机科学技术学院 操作系统原理课程设计报告 题目:进程管理系统 专业: 班级: 姓名: 学号: 指导老师: 年月日

《操作系统原理》课程设计任务书 一、课程设计题目(任选一个题目) 1.模拟进程管理 2.模拟处理机调度 3.模拟存储器管理 4.模拟文件系统 5.模拟磁盘调度 二、设计目的和要求 1.设计目的 《操作系统原理》课程设计是网络工程专业实践性环节之一,是学习完《操作系统原理》课程后进行的一次较全面的综合练习。其目的在于加深对操作系统的理论、方法和基础知识的理解,掌握操作系统结构、实现机理和各种典型算法,系统地了解操作系统的设计和实现思路,培养学生的系统设计能力,并了解操作系统的发展动向和趋势。 2.基本要求: (1)选择课程设计题目中的一个课题,独立完成。 (2)良好的沟通和合作能力 (3)充分运用前序课所学的软件工程、程序设计、数据结构等相关知识 (4)充分运用调试和排错技术 (5)简单测试驱动模块和桩模块的编写 (6)查阅相关资料,自学具体课题中涉及到的新知识。 (7)课题完成后必须按要求提交课程设计报告,格式规范,内容详实。 三、设计内容及步骤 1.根据设计题目的要求,充分地分析和理解问题,明确问题要求做什么。

2.根据实现的功能,划分出合理的模块,明确模块间的关系。 3.编程实现所设计的模块。 4.程序调试与测试。采用自底向上,分模块进行,即先调试低层函数。能够熟练掌握调试工具的各种功能,设计测试数据确定疑点,通过修改程序来证实它或绕过它。调试正确后,认真整理源程序及其注释,形成格式和风格良好的源程序清单和结果; 5.结果分析。程序运行结果包括正确的输入及其输出结果和含有错误的输入及其输出结果。 6.编写课程设计报告; 设计报告要求:A4纸,详细设计部分主要叙述本人的工作内容 设计报告的格式: (1)封面(题目、指导教师、专业、班级、姓名、学号) (2)设计任务书 (3)目录 (4)需求分析 (5)概要设计 (6)详细设计(含主要代码) (7)调试分析、测试结果 (8)用户使用说明 (9)附录或参考资料 四、进度安排 设计在学期的第15、16周进行,时间安排如下:

操作系统原理考题及答案

《操作系统原理》期末考试题 班级学号姓名 一、单项选择题(每题2分,共26分) 1.操作系统是一种()。 A. 系统软件 B. 系统硬件 C. 应用软件 D. 支援软件 2.分布式操作系统与网络操作系统本质上的不同在于()。 A.实现各台计算机这间的通信 B.共享网络中的资源 C.满足较在规模的应用 D.系统中多台计算机协作完成同一任务 3.下面对进程的描述中,错误的是()。 A.进程是动态的概念 B. 进程执行需要处理机 C.进程是指令的集合 D. 进程是有生命期的 4.临界区是指并发进程中访问共享变量的()段。 A.管理信息 B.信息存储 C.数据 D.程序 5.要求进程一次性申请所需的全部资源,是破坏了死锁必要条件中的哪一条()。 A.互斥 B.请求与保持 C.不剥夺 D.循环等待 6.以下哪种存储管理不可用于多道程序系统中()。 A.单一连续区存储管理 B.固定式区存储管理 D. 段式存储管理 C.可变分区存储管理7.在可变式分区存储管理

中,某作业完成后要收回其主存空间,该空间可能与 1 / 8 相邻空闲区合并,修改空闲区表,使空闲区数不变且空闲区起始地址不变的 情况是()。 A.无上邻空闲区也无下邻空闲区 B.有上邻空闲区但无下邻空闲区 C.有下邻空闲区但无上邻空闲区 D.有上邻空闲区也有下邻空闲 区 8.系统“抖动”现象的发生不是由()引起的。 A.置换算法选择不当 B.交换的信息量过大 C.主存容量不足 D.请求页式管理方案 9.在进程获得所需全部资源,唯却CPU时,进程处于()状态。 A.运行 B.阻塞 C.就绪 D.新建 10.要页式存储管理系统中,将主存等分成()。 A.块 B.页 C.段长 D.段 11.系统利用SPOOLING技术实现()。 A.对换手段 B.虚拟设备 C.系统调用 D.虚拟存储 12.设备从磁盘驱动器中读出一块数据的总时间为()。 A.等待时间+ 传输时间 B.传输时间 D.延迟时间+ 查找时间+ 传输时间 C.查找时间+ 传输时间 13.如果允许不同用户的文件可以具有相同的文件名,通常采用()

操作系统原理实验四

实验4 进程控制 1、实验目的 (1)通过对WindowsXP进行编程,来熟悉和了解系统。 (2)通过分析程序,来了解进程的创建、终止。 2、实验工具 (1)一台WindowsXP操作系统的计算机。 (2)计算机装有Microsoft Visual Studio C++6.0专业版或企业版。 3、预备知识 (3)·CreateProcess()调用:创建一个进程。 (4)·ExitProcess()调用:终止一个进程。 4、实验编程 (1)编程一利用CreateProcess()函数创建一个子进程并且装入画图程序(mspaint.exe)。阅读该程序,完成实验任务。源程序如下: # include < stdio.h > # include < windows.h > int main(VOID) ﹛STARTUPINFO si; PROCESS INFORMA TION pi; ZeroMemory(&si,sizeof(si)); Si.cb=sizeof(si); ZeroMemory(&pi,sizeof(pi)); if(!CreateProcess(NULL, “c: \ WINDOWS\system32\ mspaint.exe”, NULL, NULL, FALSE, 0, NULL, NULL, &si,&pi)) ﹛fprintf(stderr,”Creat Process Failed”); return—1; ﹜ WaitForSingleObject(pi.hProcess,INFINITE); Printf(“child Complete”); CloseHandle(pi.hProcess); CloseHandle(pi hThread); ﹜

操作系统原理课程设计实践报告

操作系统原理课程设计 实践报告 题目: 仿真多进程并发环境中死锁的预防、避免、检测与解除 姓名: 学院: 信息科技学院 专业: 计算机科学技术系 班级: 学号: 指导教师: 职称: 20010年4月8日 仿真多进程并发环境中死锁的预防、避免、检测与解除 摘要:在多道程序系统中,多个程序并发执行时可能造成死锁。所谓死锁是指多

个进程在运行过程中因争夺资源而造成的一种僵局。当进程处于这种僵局状态时若无外力作用,它们都将无法再向前推进,造成资源的浪费。该程序将模拟多进程并发时死锁现象的产生、避免、检测与解除。死锁避免用最著名的银行家算法,用银行家安全性算法类似的死锁检测算法来检测进程状况,又用资源剥夺法来实现死锁的解除。该程序实现操作简易,表示清晰并且形象描述多进程并发环境中死锁的预防、避免、检测与解除。 关键字:死锁;避免死锁;安全状态;银行家算法 引言:在操作系统、数据库系统以及网络通信中,由于进程并发和资源共享,当系统中资源分配顺序或者进程推进顺序不当就会造成系统死锁[1]。处于死锁状态的系统中,进程之间互相等待资源而永远不能继续向前推进,严重地影响了系统的可靠性。因而有时需要合理的对资源进行分配必要的时候加以限制保证系统安全、高效、稳定的运行。 1理论分析 1.1 死锁的概念 如果一个进程集合中的每个进程都在等待只能由此集合中的其他进程才能引发的事件,而无限期陷入僵持的局面称为死锁[2]。 1.2 产生死锁的条件: 1、互斥使用(资源独占):一个资源每次只能给一个进程使用。 2、不可强占(不可剥夺):资源申请者不能强行的从资源占有者手中夺取资 源,资源只能由占有者自愿释放。 3、请求和保持(部分分配,占有申请):一个进程在申请新的资源的同时保 持对原有资源的占有(只有这样才是动态申请,动态分配)。 4、循环等待:存在一个进程等待队列{P1,P2,…,Pn},其中P1等待P2占 有的资源,P2等待P3占有的资源,…,Pn等待P1占有的资源,形成一个进程等待环路[3]。 1.3死锁的预防 在系统设计时确定资源分配算法,保证不发生死锁。具体的做法是破坏产生死锁的四个必要条件之一。 ①破坏“不可剥夺”条件 在允许进程动态申请资源前提下规定,一个进程在申请新的资源不能立即得到满足而变为等待状态之前,必须释放已占有的全部资源,若需要再重新申请。 ②破坏“请求和保持”条件 要求每个进程在运行前必须一次性申请它所要求的所有资源,且仅当该进程所要资源均可满足时才给予一次性分配。 ③破坏“循环等待”条件 采用资源有序分配法:把系统中所有资源编号,进程在申请资源时必须严格按资源编号的递增次序进行,否则操作系统不予分配。

操作系统原理期末试卷10套含答案7

操作系统原理期末试卷10套含答案7 一、单项选择题(每题2分,共20分) 1.以下著名的操作系统中,属于多用户、分时系统的是( B ). A.DOS系统B.UNIX系统 C.Windows NT系统D.OS/2系统 2.在操作系统中,进程的最基本的特征是( A ). A.动态性和并发性B.顺序性和可再现性 C.与程序的对应性D.执行过程的封闭性 3.操作系统中利用信号量和P、V操作,( C ). A.只能实现进程的互斥B.只能实现进程的同步 C.可实现进程的互斥和同步D.可完成进程调度 4.作业调度的关键在于( C ). A.选择恰当的进程管理程序B.用户作业准备充分 C.选择恰当的作业调度算法D.有一个较好的操作环境 5.系统抖动是指( D ). A.使用机器时,屏幕闪烁的现象 B.由于主存分配不当,偶然造成主存不够的现象 C.系统盘有问题,致使系统不稳定的现象 D.被调出的页面又立刻被调入所形成的频繁调入调出现象 6.在分页存储管理系统中,从页号到物理块号的地址映射是通过( B )实现的. A.段表B.页表 C. PCB D.JCB 7.在下述文件系统目录结构中,能够用多条路径访问同一文件(或目录)的目录结构是( D ) A.单级目录B.二级目录

C.纯树型目录D.非循环图目录 8.SPOOLing技术可以实现设备的( C )分配. A.独占B.共享 C.虚拟D.物理 9.避免死锁的一个著名的算法是( C ). A.先人先出算法B.优先级算法 C.银行家算法D.资源按序分配法 10.下列关于进程和线程的叙述中,正确的是( C ). A.一个进程只可拥有一个线程 B.一个线程只可拥有一个进程 C.一个进程可拥有若干个线程 D.一个线程可拥有若干个进程 二、判断题(选择你认为正确的叙述划√,认为错误的划×并说明原因.每题2分,共10分) 1.简单地说,进程是程序的执行过程.因而,进程和程序是一一对应的.( ) 2.V操作是对信号量执行加1操作,意味着释放一个单位资源,加l后如果信号量的值小于等于零,则从等待队列中唤醒一个进程,使该进程变为阻塞状态,而现进程继续进行.( ) 3.段页式存储管理汲取了页式管理和段式管理的长处,其实现原理结合了页式和段式管理的基本思想,即用分段方法来分配和管理用户地址空间,用分页方法来管理物理存储空间.( ) 4.在采用树型目录结构的文件系统中,各用户的文件名必须互不相同.( ) 5.用户程序应与实际使用的物理设备无关,这种特性就称作与设备无关性.( ) 答案:1.(×)改正为:进程和程序不是一一对应的. 2.(×)改正为:V操作是对信号量执行加1操作,意味着释放一个单位资源,加1后如果信号量的值小于等于零,则从等待队列中唤醒一个进程,现进程变为就绪状态,否则现进程继续进行. 3.(√) 4.(×)改正为:在采用树型目录结构的文件系统中,不同用户的文件名可以相同. 5.(√) 三、填空题(每空2分,共30分)

操作系统课程设计1要点

操作系统原理 课程设计报告题目:采用二级目录实现文件管理 所在学院: 班级: 学号: 姓名: 指导教师: 2013年1月15日

目录 一、课程设计目的 (1) 二、课题内容 (1) 三、总体路线 (1) 四、概要设计 (2) 1.数据结构 (2) 2.所使用函数及其功能 (3) 五、详细设计 (4) 1.主函数流程图 (4) 2.创建文件函数流程图 (5) 3.删除文件函数流程图 (7) 4.分解命令函数流程图 (10) 六、测试、修改及运行结果 (10) 七、结束语 (13) 八、参考文献 (14)

一、课程设计目的 文件系统是现代OS用来存储和管理信息机构,具有按名存取的功能,不仅能方便用户对信息的使用,也有效提高了信息的安全性。本课题模拟文件系统的目录结构,并在此基础上实现文件的各种操作方法。 通过本课题,深入理解文件文件目录的作用和功能,掌握文件打开结构,熟悉与文件有关的系统调用,从而更好地掌握文件系统概念。 二、课题内容 1.文件目录采用二级目录结构,第一级为主文件目录master_file_directory;第二级为用户文件目录user_file_directory。 图1 master_file_directory 结构 图2 user_file_directory 结构 2.为加速文件存取,为每个用户建立一张用户打开表fileTable,用以记录该 3.为该系统提供6条操作命令:创建、打开、读、写、关闭、删除等。 4.在该模拟系统中,应先建立主文件目录、用户目录和用户打开文件表,然后接受合法用户,给出一个菜单,按用户选择执行相关操作。 三、总体路线 1.在内存中开辟一个虚拟磁盘空间作为文件存储器,在其上实现一个简单的单用户文件系统。在退出这个简单的文件系统时,应将该虚拟文件系统保存到磁盘上,以便下次可以再将它恢复到内存的虚拟磁盘空间中。 2.文件存储空间的分配采用显式链接分配。为了实现创建和删除文件必

操作系统原理实验五

实验五线程的同步 1、实验目的 (1)进一步掌握Windows系统环境下线程的创建与撤销。 (2)熟悉Windows系统提供的线程同步API。 (3)使用Windows系统提供的线程同步API解决实际问题。 2、实验准备知识:相关API函数介绍 ①等待对象 等待对象(wait functions)函数包括等待一个对象(WaitForSingleObject ())和等待多个对象(WaitForMultipleObject())两个API函数。 1)等待一个对象 WaitForSingleObject()用于等待一个对象。它等待的对象可以为以下对象 之一。 ·Change ontification:变化通知。 ·Console input: 控制台输入。 ·Event:事件。 ·Job:作业。 ·Mutex:互斥信号量。 ·Process:进程。 ·Semaphore:计数信号量。 ·Thread:线程。 ·Waitable timer:定时器。 原型: DWORD WaitForSingleObject( HANDLE hHandle, // 对象句柄 DWORD dwMilliseconds // 等待时间 ); 参数说明: (1)hHandle:等待对象的对象句柄。该对象句柄必须为SYNCHRONIZE访问。 (2)dwMilliseconds:等待时间,单位为ms。若该值为0,函数在测试对象的状态后立即返回,若为INFINITE,函数一直等待下去,直到接收到 一个信号将其唤醒,如表2-1所示。 返回值: 如果成功返回,其返回值说明是何种事件导致函数返回。

Static HANDLE hHandlel = NULL; DWORD dRes; dRes = WaitForSingleObject(hHandlel,10); //等待对象的句柄为hHandlel,等待时间为10ms 2)等待对个对象 WaitForMultiple()bject()在指定时间内等待多个对象,它等待的对象与 WaitForSingleObject()相同。 原型: DWORD WaitForMultipleObjects( DWORD nCount, //句柄数组中的句柄数 CONST HANDLE * lpHandles, //指向对象句柄数组的指针 BOOL fWaitAll, //等待类型 DWORD dwMilliseconds //等待时间 ); 参数说明: (1)nCount:由指针 * lpHandles指定的句柄数组中的句柄数,最大数是MAXIMUM WAIT OBJECTS。 (2)* lpHandles:指向对象句柄数组的指针。 (3)fWaitAll:等待类型。若为TRUE,当由lpHandles数组指定的所有对象被唤醒时函数返回;若为FALSE,当由lpHandles数组指定的某一个 对象被唤醒时函数返回,且由返回值说明是由于哪个对象引起的函数 返回。 (4)dwMilliseconds:等待时间,单位为ms。若该值为0,函数测试对象的状态后立即返回;若为INFINITE,函数一直等待下去,直到接收到 一个信号将其唤醒。 返回值:、 如果成功返回,其返回值说明是何种事件导致函数返回。 各参数的描述如表2-2所示。

《操作系统原理实验》试卷A及答案

《中山大学授予学士学位工作细则》第六条 考试作弊不授予学士学位 计算机科学系2012第二学期 《操作系统原理实验》期末考试试题(A) 任课教师:李才伟考试形式:开卷考试时间:2小时年级:11 班别:3 专业:计科姓名:________ 学号:___ _ 成绩___ _ 注意:答案一定要写在答卷中,写在本试题卷中不给分。本试卷要和答卷一起交回。 一.填空题(每小题2分,共30分) 1.在我们的操作系统实验中,C与汇编语言混合编程的操作系统环境为___,其所用的虚拟机为___。2.测试用软盘映像文件的大小为___MB,使用的文件系统格式为___。 3.Intel 80386新增加的两个段寄存器分别为___和___。 4.Intel处理器实模式下的中断向量表包含___个中断向量,每个中断向量有___位。 5.Linux中挂载磁盘映像的命令为___,C语言的编译器为___。 6.将程序的入口安排在指定位置的汇编操作符为___、LD的链接选项为___。 7.ELF的英文原文是___,中文译文为___。 8.在FAT的文件条目中,普通文件和子目录的文件属性值分别为___和___。 9.在IA-32的保护模式下,分段用于___,分页用于___。 10.IA-32处理器的4个系统地址寄存器分别为___。 11.IA-32中的描述符和选择符大小分别为___位和___位。 12.TSS的主要功用为___,TSS描述符只能位于___描述符表中。 13.控制保护模式的寄存器为___,激活保护标志位于其___位。 14.IA-32的三种特权级类型分别为___、___和___。 15.在Make文件中,$@ 和$< 分别表示___和___。 二.问答题(每小题5分,共30分) 1.在实模式下的进程调度中是如何实现堆栈切换的? 2.IA-32的保护模式相比实模式的主要优点有哪些? 3.给出IA-32保护模式下的段寄存器的内容、组成和功用。 4.给出GDT和LDT的英文原文和中文译文,它们有哪些主要功用和区别? 5.启动分页机制的主要步骤有哪些? 6.给出IA-32段页式保护模式下(采用4KB页面大小与两级分页方式的)逻辑地址和线性地址的构成及转 换成物理地址的方法。

操作系统原理期末试卷及答案

操作系统原理试卷1 一、填空题(20分) 1.在操作系统中, _________是资源分配、调度和管理的最小单位。 2.不在主机控制下进行的输入/输出操作称为______________操作。 3.在操作系统中,不可中断执行的操作为_____________。 4.当系统采用资源有序分配方法预防死锁时,它破坏产生死锁的必要条件中的___________。 5.利用SPOOLING技术可以将___________设备改造成可共享的虚拟设备。 6.系统中各进程之间逻辑上的相互制约关系称为__________。 7.访问磁盘的时间由三部分构成,即_________,__________和_________。 8.文件的逻辑结构分为流式文件和_________。 二、简答题(20分) 1.为什么说PCB是进程存在的唯一标志? 2.比较段式管理和页式管理。 3.在请求分页系统中,产生抖动的原因是什么? 4.调度的类型有哪几种? 5. 为什么说程序并发执行失去了封闭性和可再现性? 三、计算题(30分) 1. 若一个作业的运行时间为2小时,等待时间为3小时,计算机其响应比。 2.如下访问序列:0,1,0,3,1,2,4,3,驻留集大小为2,计算OPT算法的缺页中断率。 3.对于具有快表的分页系统,内存访问时间200ns,快表的访问时间20ns,快表的命中率为85%,计算数据的访问时间。 4.当前磁头位于20号磁道,多个磁盘请求:10、22、20、2、40、6、38,计算电梯算法(磁道号增加的方向)的寻道距离。 5.假定磁盘块大小为2KB,对于20G的硬盘,计算其文件分配表FAT占用的空间。 四、有一系统采用请求页式存储管理,有一作业大小是8KB,页大小为2KB,已知1号、2 号页面已调入内存,且对应块号为第7、9块,试问虚地址0AFEH,1ADDH对应页面是否在 内存,若在求其内存地址。(10分) 五、以两个用户A、B共享同一文件File1为例,用图的方式说明基于索引结点

操作系统原理实验2+岳青山+0907052247

《操作系统原理》实验报告 实验序号:2 实验项目名称: Windows 基本进程管理 1、实验目的 通过观察任务管理器,来观察各个进程的动态信息。 2、实验工具 (1)一台WindowsXP操作系统的计算机。 (2)计算机装有Microsoft Visual Studio C++6.0专业版或企业版。 3、预备知识 ·任务管理器,了解用户计算机上正在运行的程序和进程的相关信息。 ·Windows环境中的编程。 相关内容参见本次实验参考资料部分。 4、基本实验 1)观察任务管理器 步骤一:进入WindowsXP。 步骤二:按Ctrl+Alt+Delete(或按Ctrl+Shift+Esc)键都可以调出任务管理器。 步骤三:单击“查看”→“选择列”选项,可以看到一些选项, 这里,可以查看每个进程的PID,CPU使用时间,内存的使用情况,当前的进程是系统的还是用户的,每个句柄的数量,每个进程的优先级,等等。 步骤四:单击“性能”标签,在所示的“性能”选项卡中可以看到CPU的使用情况、内存的使用情况。 2)通过命令观察进程情况、 步骤一:单击“开始”→“运行”选项,输入cmd“命令提示符”下。 步骤二:输入tasklist。 步骤三:继续输入tasklist/?来寻找帮助,里面有更详细的解释。 3)通过命令来关闭一个进程 步骤一:单击“开始”→“运行”选项,输入cmd“命令提示符”下。 步骤二:输入tasklist后回车执行。 步骤三:继续输入taskkill/PID 208/T 5、实验编程 进行一个简单的Windows的图形用户接口(GUI)编程。 步骤一:进入WindowsXP。 步骤二:进入Microsoft Visual Studio C++6.0。 步骤三:在菜单栏中单击“文件”→“新建”→“文件”→C++Source File,选择路径(如D:\1.cpp),并命名为1.cpp。 步骤四:将下面的程序源代码输入。 步骤五:单击Windows系统的“开始”→“运行”选项,输入cmd。

操作系统-课程设计

课程设计说明书(操作系统) 题目:进程调度 院系:计算机科学与工程学院 专业班级:信息安全13-2 学号:20133029xx 学生姓名:xx 指导教师:xx 2015年12月15日

安徽理工大学课程设计(论文)任务书计算机科学与工程学院

安徽理工大学课程设计(论文)成绩评定表

摘要 现代计算机系统中,进程是资源分配和独立运行的基本单位,是操作系统的核心概念。因而,进程就成为理解操作系统如何实现系统管理的最基本,也是最重要的概念。进程调度是进程管理过程的主要组成部分,是必然要发生的事件。 在现代操作系统中,进程的并发机制在绝大多数时候,会产生不断变化的进程就绪队列和阻塞队列。处于执行态的进程无论是正常或非正常终止、或转换为阻塞状态,都会引发从就绪队列中,由进程调度选择一个进程进占CPU。 进程调度的核心是进程调度的算法.在本课程设计中,用良好清晰的界面向用户展示了进程调度中的时间片轮转调度算法。在最终实现的成果中,用户可指定需要模拟的进程数,CPU时间片和进程的最大执行时间,并且选择需要演示的算法,界面将会动态的显示进程调度过程及各个队列的变化。通过此进程调度模拟系统,用户可以对时间片轮转调度算法有进一步以及直观的了解。 关键词:进程,调度,PCB,时间片轮转

目录 1.设计目的 (6) 2.设计思路 (6) 3.设计过程 (8) 3.1流程图 (8) 3.2算法 (8) 3.3数据结构 (10) 3.4源代码 (10) 4.实验结果及分析 (20) 4.1 使用说明 (20) 4.2程序演示 (20) 5.实验总结 (24) 6.参考文献 (24)

操作系统试卷A及答案

2013学年秋季学期2011级计算机科学与技术、网络工程专业 《操作系统原理》期末考试试卷(A卷、闭卷、120分钟) 一、判断题(每题1分,共10分) ( )1.文件系统中分配存储空间的基本单位不是记录。 ()2.具有多道功能的操作系统一定是多用户操作系统。 ( )3.虚拟存储器是由操作系统提供的一个假想的特大存储器,它并不是实际的内存,其大小可比内存空间大得多。 ( )4.批处理系统的(主要优点)是系统的吞吐量大、资源利用率高、系统的开销较小。 ()5.文件系统中源程序是有结构的记录式文件。 ( )6.即使在多道程序环境下,普通用户也能设计用内存物理地址直接访问内存的程序。 ( )7.顺序文件适合建立在顺序存储设备上,而不适合建立在磁盘上。 ( )8.SPOOLing系统实现设备管理的虚拟技术,即:将独占设备改造为共享设备。它由专门负责I/O的常驻内存进程以及输入、输出井组成。 ( )9.系统调用是操作系统与外界程序之间的接口,它属于核心程序。在层次结构设计中,它最靠近硬件。( )10.若系统中存在一个循环等待的进程集合,则必定会死锁。 二、单项选择题(每题2分,共30分) 1. UNIX操作系统是一个( ) A、交互式分时操作系统 B、多道批处理操作系统 C、实时操作系统 D、分布式操作系统 2. 进程调度的对象和任务分别是( )。 A、作业,从就绪队列中按一定的调度策略选择一个进程占用CPU B、进程,从后备作业队列中按调度策略选择一个作业占用CPU C、进程,从就绪队列中按一定的调度策略选择一个进程占用CPU D、作业,从后备作业队列中调度策略选择一个作业占用CPU 3.支持程序浮动的地址转换机制是( ) A、动态重定位 B、段式地址转换 C、页式地址转换 D、静态重定位 4.在可变分区存储管理中,最优适应分配算法要求对空闲区表项按( )进行排列。 A、地址从大到小 B、地址从小到大 C、尺寸从小到大 D、尺寸从大到小 5. 一级目录结构的文件系统的主要特点是( ) A、适用于多道程序设计 B、适用于单用户系统 C、无需把索引表放到磁盘上 D、存取所有文件都无需用到索引表 6.进程有三种基本状态,可能的状态转换是( ) A、就绪态到运行态、等待态到就绪态、运行态到等待态 B、就绪态到运行态、就绪态到等待态、等待态到运行态 C、就绪态到运行态、等待态到就绪态、等待态到运行态 D、运行态到就绪态、就绪态到等待态、等待态到运行态 7.引入缓冲技术的主要目的是( ) A、改善用户编程环境 B、提高CPU的处理速度 C、提高CPU与设备之间的并行程度 D、降低计算机的硬件成本 8.文件系统的主要目的是()。 A、实现对文件的按名存取 B、实现虚拟存贮器 C、提高外围设备的输入输出速度 D、用于存贮系统文档 9.为了允许不同用户的文件具有相同的文件名,通常在文件系统中采用()。

操作系统原理实验十一

实验十一银行家算法模拟实现 1实验类型 设计型(4学时)。 2实验目的 1)理解死锁避免相关内容; 2)掌握银行家算法主要流程; 3)掌握安全性检查流程。 3实验描述 本实验主要对操作系统中的死锁预防部分的理论进行实验。要求实验者设计一个程序,该程序可对每一次资源申请采用银行家算法进行分配。 4实验内容 1)设计多个资源(≥3); 2)设计多个进程(≥3); 3)设计银行家算法相关的数据结构; 4)动态进行资源申请、分配、安全性检测并给出分配结果。 5实验要求 1)编写程序完成实验内容; 2)画出安全性检测函数流程图; 3)小组派1人上台用PPT演讲实现过程; 4)撰写实验报告。

6测试要求 1)进行Request请求,输入参数为进程号、资源号和资源数; 2)进行3次以上的Request请求; 3)至少进行1次资源数目少于可用资源数,但不安全的请求。 7相关知识 7.1银行家算法的数据结构 1)可利用资源向量Available。其中每个元素代表每类资源的数目。 2)最大需求矩阵Max。其中每个元素代表每个进程对于每类资源的最大需求量。 Max[i,j]=K表示i进程对于j类资源的最大需求量为K。 3)分配矩阵Allocation。其中每个元素代表每个进程已得到的每类资源的数目。 4)需求矩阵Need。其中每个元素代表每个进程还需要的每类资源的数目。 7.2银行家算法 Request i [j]=K表示进程Pi需要K个j类资源。 1)如果Request i [j]≤Need[i , j],便转向步骤2,否则认为出错。 2)如果Request i [j]≤Available[j],便转向步骤3,否则表示无足够资源,Pi需等待; 3)系统尝试分配资源给Pi; 4)系统进行安全性检查,检查此次资源分配后,系统是否安全。如果安全,则正式分配资源,否则撤销此次分配。 7.3安全性算法 1)设置两个向量:工作向量Work和Finish。算法开始时Work=Available;Finish 表示系统是否有足够的资源分配给进程,使之运行完成,开始时,令 Finish[i]=False;如果有足够的资源分配给进程,则令Finish[i]=True。 2)从进程集合中找到一个能满足下列条件的进程:Finish[i]=False;Need[i,j] ≤Work[j],若找到,执行步骤3),否则,执行步骤4); 3)Pi获得所需资源后,可顺利执行指导完成,并释放它占有的资源。并执行:Work[j]=Work[j]+Allocation[i , j]; Finish[i] = True; 到第2)步。

相关主题