当前位置:文档之家› 《操作系统》教学大纲

《操作系统》教学大纲

《操作系统》教学大纲
《操作系统》教学大纲

《操作系统》教学大纲

●学时:54(理论18学时,实验36学时)

●适用对象:计算机应用专业二年级学生

●先修课程:数据结构、C语言程序设计

●推荐教材:张俊兰,韩宏等.计算机操作系统教程.西安:西安交通大学出版社,2003.9 ●主要参考资料:

汤子瀛等.计算机操作系统.陕西:西安电子科技大学出版社,1996.5

一、课程性质、目的

课程性质:《计算机操作系统》是计算机应用专业的专业课程;是为培养学生理解计算机操作系统基本理论、知识和应用能力而设置的一门专业课程。

设置目的:通过介绍操作系统的基本概念、基本理论和基本技术。让学生能够对操作系统的内部管理机制有一个比较深入的理解,对操作系统对于设备、内存、处理机、文件和进程的管理机制有一个较为全面的认识。提高学生明确问题、理解问题、解决问题能力。

二、教学内容

第一章操作系统概述

本章教学要求

通过本章学习,从宏观上了解操作系统的组成和用途,明确本门课程的学习目的;理解操作系统的概念,了解操作系统的发展历史;明确操作系统的分类与特征;明确操作系统的功能;对操作系统的硬件部分和软件部分有一个比较深入的解;明确操作系统的发展方向,以及学习操作系统的重要性和必要性。

第一节什么是操作系统

理解计算机操作系统的概念;裸机与虚拟机的概念

第二节操作系统的发展

包括:手工操作阶段、早期批处理阶段、多道程序系统、分时操作系统、实时操作系统、通用操作系统等(了解);

第三节操作系统的功能与分类

一、操作系统的功能(理解)

二、操作系统的分类(理解)

三、研究操作系统的几种观点(理解)

第二章作业管理

本章教学要求

通过本章的学习,了解作业的定义、作业的基本组成元素,理解作业的基本输入方式并会比较各自的优、缺点,掌握作业的状态及调度算法。

第一节作业的基本概念

一、作业的定义(了解)

二、作业的建立(理解)

第二节作业的调度

一、作业的四种状态及其转化(理解)

二、作业的调度算法

掌握先来先服务(FCFS)、最短作业优先算法,最高响应比优先等。

第三节操作系统与用户接口(了解)

第三章进程管理

本章教学要求

本章介绍进程和线程管理的有关概念和技术,详细介绍进程的概念、描述、状态及状态转换、进程控制、进程同步与互斥、进程通信、死锁及死锁的解除和线程的概念。从操作系统的观点上了解和掌握关于进程和线程的基本概念和实现技术,在了解这些技术的基础上学会用P、V原语对进程通信、同步和互斥进行具体程序上的实现,在Linux下模拟多进程之间的基本操作,做到理论知识与实际操作相结合。

第一节进程概念

一、进程的引入(了解)

二、进程的特征

理解进程的动态性、并发性、独立性、异步性、结构性。

三、程与程序的区别(理解)

第二节进程控制

一、进程的状态

二、进程的描述

理解进程的组成、进程控制块PCB的主要信息、进程调度信息、进程控制信息、CPU 现场保护;PCB常用的组织方式。

三、进程控制原语

理解创建、撤消、挂起、激活、阻塞和唤醒6种操作原语。

第三节进程调度

一、进程调度的基本概念(理解)

二、进程调度算法

掌握先进先出(FIFO)算法、最短进程优先法(SPF)、优先级算法(HPF)、轮转(RR)法。

第四节进程通信

一、同步与互斥

理解同步和互斥概念,以及进程调度原则。

二、信号量、P、V操作(理解)

三、进程通信(掌握)

第五节死锁

一、死锁产生的原因和必要条件(理解)

二、死锁的预防(了解)

三、死锁的避免(了解)

四、死锁的解除(了解)

第四章存储管理

本章教学要求

本章介绍存储管理的功能,了解介绍存储管理的重要性和必要性,在建立起对存储管理的认识之后,重点介绍分区存储管理、覆盖交换技术、页式、段式和段页式管理等现代操作系统中经常使用的存储管理技术,在学习存储管理的基本概念和技术的同时了解这些技术的适用范围。

第一节存储管理的功能

一、主存空间的分配与管理(理解)

二、存储容量扩展(理解)

三、地址变换(掌握)

第二节单一连续区分配与分区管理

一、单一连续区分配(了解)

二、分区管理(理解)

第三节页式管理

一、页式存储管理的基本概念(理解)

二、分页管理(掌握)

三、请求页式管理(理解)

第四节段式、段页式管理

一、段式管理(理解)

二、段页式存储管理(掌握)

第五节虚拟存储器

一、虚拟存储器基本思想(理解)

二、虚拟存储器的容量(了解)

三、Linux内存管理(了解)

第五章文件管理

本章教学要求

通过本章的学习,了解现代操作系统对文件系统的组织方式及实现技术。主要介绍文件系统的概念、逻辑结构与存取方法、物理结构与存储设备、存储空间管理、目录管理、存取控制、使用和层次模型等内容,在知道文件系统外部组织方式的前提下了解文件系统内部的组织方式,在看到现象的同时看到隐藏在现象之下的本质。

第一节文件系统的概念

一、文件概念的引入(了解)

二、文件和文件系统(理解)

三、文件的分类(了解)

第二节文件的组织结构和存取方法

一、文件的组织结构(了解)

二、文件的存取法(掌握)

第三节文件的目录结构

一、单级目录结构(了解)

二、二级目录结构(了解)

三、便于共享的文件目录(了解)

第四节文件存储空间管理

一、文件的存储介质(了解)

二、常见的文件存储空间管理方法(理解)

第五节文件的存取控制

常见的文件存取控制方法(理解)

LinuxEXT2文件系统(了解)

第六章设备管理

本章教学要求

首先对设备管理进行简单介绍,对设备管理有一个感性的了解,在此基础上介绍数据传送控制方式、中断技术、缓冲技术、设备分配、I/O进程控制以及设备驱动程序的内容。在感性认识的基础上深入学习操作系统的设备是如何与计算机主机进行连接和互相访问的。

第一节设备管理概述

一、设备分类(了解)

二、设备管理功能(理解)

三、设备控制器(了解)

第二节输入/输出控制方式

一、程序直接控制方式(了解)

二、中断控制方式(理解)

三、DMA控制方式(理解)

四、通道控制方式(理解)

第三节设备管理常用技术

一、中断处理技术(了解)

二、缓冲技术(理解)

第四节设备管理程序

一、设备驱动程序(理解)

二、设备分配程序(了解)

三、实践环节

学习操作系统原理需要经过大量的实践,才能更深层地理解其内部实现方法,在每一章节要配备有相应的实验。

撰稿人:张海丰审定人:钱国梁系主任:侯冬梅

《Visual Basic程序设计》教学大纲

●学时:72

●适用对象:计算机应用专业一年级学生

●先修课程:无

●推荐教材:刘瑞新,汪远征.Visual Basic程序设计教程.北京:机械工业出版社,2000.10 ●主要参考资料:

谭浩强,薛淑斌.Visual Basic语言简明教程.北京:电子工业出版社,1998.4

一、课程性质、目的

Visual Basic是一种可视化的编程工具,在桌面平台应用系统的开发中使用非常广泛。本课程是计算机专业的一门专业基础课。

通过《Visual Basic程序设计》的学习,学生将初步掌握Visual Basic的特点、利用Visual Basic进行程序设计的基本方法和技巧;初步建立面向对象的程序设计概念,并能按照面向对象的方法,使用Visual Basic进行简单的程序设计。

二、教学内容

第一章关于Visual Basic

本章教学要求

通过本章的学习了解Visual Basic特点,以及学习Visual Basic的原因。

第一节什么是Visual Basic

Visual Basic是可视化的准面向对象的编程语言,为用户提供易用的界面设计环境,采用事件驱动的实时编译的代码设计环境。

第二节 Visual Basic的优点

Visual Basic易学易用,不用用户掌握大量的基础知识,非常适合初学者使用。

第三节为什么学习Visual Basic

Visual Basic是可视化的准面向对象的编程语言,代码设计采用Windows中面向事件的程序思想,对于提高程序设计思想有很大的帮助。

第二章设计一个Visual Basic应用程序

本章教学要求

通过本章的学习熟悉Visual Basic的启动,掌握Visual Basic编程基本步骤,能够建立简单的应用程序。

第一节启动Visual Basic

一、启动方法(掌握)

二、创建一个简单的应用程序(掌握)

Visual Basic能够创建的应用程序有多种,最常用的是标准EXE。

第二节开发VisualBasic应用程序的基本步骤

概括的说,开发VisualBasic应用程序分为两大步骤,即界面设计及代码设计。

第三节程序的运行与保存

一、程序的运行(掌握)

二、程序的保存(掌握)

第三章窗体和命令按钮

本章教学要求

通过本章的学习理解窗体对象与命令按钮的属性设置及事件顺序,能够建立简单的实例,掌握事件驱动程序设计思想。

第一节建立一个窗体(Form)对象

一、建立窗体(掌握)

二、窗体类型(理解)

第二节窗体(Form)的基本属性与事件

一、窗体的主要属性

窗体的主要属性有Name、Caption、BackColor、ControlBox、Heigth、Width、Top、Left

二、窗体的事件

窗体的主要事件有Load、Active、Unload、Queryunload、Click等。

第三节在窗体中常用的几种方法与Form设计举例

一、窗体的主要方法

窗体的主要方法有:CLS、MOV、PRINT、SHOW等

二、窗体设计举例

综合运用窗体的事件与方法,建立简单应用程序。

第四节命令按钮的使用

一、按钮的主要属性

按钮的主要属性有Name、Caption、FontName、FontSize、Defaul、Cancel等。

二、按钮的事件

按钮只有一个主要事件--那就是CLICK事件。

第五节为对象设计简单程序代码

一、设计方法

依照自己的需求,先确定对象,再确定事件,在相应的事件中写入完成需求的代码。

二、程序代码的执行

按事件顺序执行,先找对象在找属性、事件、方法。

第四章文本框和标签

本章教学要求

通过本章的学习掌握文本框对象与标签对象的属性设置方法及其主要事件,能够建立简单的实例,掌握文本框和标签的用途。

第一节在窗体中加入一个文本框对象

文本框对象的功能为通过输入设备输入文本。基本属性有Name、Text、FontName、FontSize、ForeColor、Enabled、Multiline、Backcolor、Scrollbars、Alignment、Visible 等。文本框的默认事件为Change事件。

第二节在窗体中加入一个标签对象

标签对象的功能为显示不可改变的文本。标签的基本属性有Name、Caption、FontName、FontSize、Default、Cancel等。

第五章复选框、单选按钮和框架

本章教学要求

通过本章的学习掌握复选框、单选按钮和框架属性设置及主要事件,能够建立简单的实例,掌握选择结构程序设计。

第一节在窗体中加入复选框

复选框的功能为多重选择,它有两种风格即标准和图形。复选框的基本属性有Name、Caption、Enabled、Backcolor、Font、Fontcolor、Value属性等等。

第二节在窗体中加入单选按钮

单选钮的功能为在多个选项中进选择一项。单选按钮的基本属性有Name、Caption、Backcolor、Font、Value。

第三节框架的使用

框架的功能为将实现同一功能的控件分为一组统一控制,框架的基本属性有Name、Caption、Enable、Backcolor、Font、Value

第六章列表框和组合框

本章教学要求

通过本章的学习掌握列表框和组合框属性设置及主要事件,能够建立简单的实例,掌握循环结构程序设计。

第一节列表框

列表框的功能为显示一组可供选择的数据;基本属性为Name、Enabled、FontBold、MultiSelect,基本方法有Additem、RemoveItem、Clear。

第二节组合框

组合框具有文本框和列表框的特点,基本属性有Style、Text等,基本方法有Additem、Removeitem、Clear等。

第三节滚动条

滚动条的基本属性为Max、Min、Largechange、Smallchange、Value

第七章对话框

本章教学要求

通过本章的学习熟悉消息对话框和通用对话框使用,能够建立简单的实例。

第一节 Msgbox函数与Msgbox语句

Msgbox函数和Msgbox语句可以调用Windows中的信息对话框,两者是有区别的,最大的区别就是函数有返回值而语句没有返回值。

第二节 InputBox函数

当需要输入简单数据的时候,调用InputBox函数是方便快捷节省资源的。

第三节通用对话框

一、引用通用对话框

需要单击“工程”菜单选择“引用”来引用通用对话框,在“控件工具箱”上添加通用对话框才可调出通用“对话框”控件。

二、通用对话框的简介

通用对话框的两大最基本的用途为“打开文件”对话框和“颜色”对话框,以及“打印”对话框。

第八章图片框、图像框和记时器

本章教学要求

通过本章的学习掌握图片框、图像框和记时器控件的属性设置及主要事件,Loadpicture 函数的使用方法,能够建立简单的实例。

第一节图片框与图像框

图片框和图像框的主要属性有Picture、Autosize、currentx、currenty、Visuable、Stretch属性,装入图片要采用loadPicture函数。

第二节记时器

记时器控件的功能为隔一定时间来激发一个事件,记时器的主要属性为Interval、

Enabled属性。

第三节简单动画程序的设计

通过记时器可以让计算机自动的完成事情,比如运动文本的制作。

第九章菜单设计

本章教学要求

通过本章的学习,掌握菜单设计器的基本使用方法,掌握菜单项的代码设计思想,能够建立简单菜单。

第一节菜单设计器的使用

一、建立菜单的方法

采用菜单设计器可以建立菜单,在Visual Basic中将每一菜单项均作为对象看待。

二、设计菜单和子菜

在菜单设计器中选择菜单的出现位置可以完成子菜单的建立。

第二节简单的菜单应用程序

菜单在程序的界面设计中具有重要的地位,为已经建立好的应用程序可以方便的添加菜单。

第十章文件系统控件

本章教学要求

通过本章的学习掌握驱动器列表框、目录列表框、文件列表框的基本使用方法,掌握文件类型与控制。

第一节驱动器列表框、目录列表框与文件列表框

一、驱动器列表框

驱动器列表框用于显示驱动器信息。

二、目录列表框

目录列表框用于显示指定路径的目录信息,显示形式为列表框。

三、文件列表框

文件列表框用于显示指定路径的文件信息,显示形式为列表框。

第二节文件系统控件应用举例

综合运用上一小节中的各种控件,可以方便的实现文件的保存、打开、管理。

第十一章作图

本章教学要求

通过本章的学习,了解VisualBasic中绘图的基本方法。

第一节 VisualBasic绘图基础

一、VisualBasic的坐标系统

在VisualBasic中用X,Y二维坐标来描述鼠标位置。

二、画直线

在VisualBasic对象视图中可以采用Line控件在窗体中绘制直线。

三、画集合图形

在VisualBasic对象视图中可以采用Shape控件在窗体中绘制表面图形元素,并且可以通过属性的修改来设置各种各样的形式。

第二节 VisualBasic绘图方法

一、Pset方法

Pset方法可以在对象的指定位置按确定的像素颜色画点。

二、line方法

line方法可以在对象的两点之间画直线或矩形。

三、circle方法

circle方法可以在对象上画圆、椭圆和圆弧。

第十二章VisualBasic的基本语法

本章教学要求

通过本章的学习,掌握程序设计中的基本概念,以及VisualBasic的基本语法。本章可以贯穿于其他章节中开展。

第一节数据类型

VisualBasic的主要数据类型有:integer、long、single、double、string、Boolean、date、variant。

第二节常量和变量

常量是自始至终值不可改变的量,变量为值可改变的运算量。

第三节运算符和表达式

各种类型的常量与变量通过运算符进行连接的式子称为表达式

第四节基本语句

结构化程序设计分为三种逻辑:顺序、选择、循环。

第五节数组

数组是采用数组名称加上下标的形式的一组变量。

第六节子程序

子程序是整个程序中功能独立的一组语句。

第七节函数

函数由函数名加括号的形式构成,必须有一个返回值。

第十三章多文档界面(MDI)

本章教学要求

通过本章的学习,掌握多文档界面的建立方法,理解稍为复杂的Visual Basic程序设计思路。

第一节多文档界面的建立

多文档界面设计方法是应用较广的界面设计方法是,一个工程只能有一个MDI窗体,并且它可以拥有多个子窗体。

第二节多文档窗体与子窗体的操作

在工具栏上选择“添加MDI窗体”,可以添加一个MDI窗体,将工程中的其他窗体的Mdichild属性设置为TRUE,将使其成为多文档窗体的子窗体。

说明:

1.第十二章中的Visual Basic语法可以在各个章中穿插讲解

2.要求详细和形象地介绍各种控件对象的建立过程和各基本属性的选择。

3.对所属应用程序要求逐行解释代码的执行过程。

三、实践环节

本课程的实践性很强,要求学生在掌握基本概念的基础上,通过大量的实践,掌握用

说明:实验可以相互穿插,提高学生的综合应用能力四、学时分配

撰稿人:张海丰审定人:钱国梁系主任:侯冬梅

操作系统复习题概念

1、操作系统是管理系统资源、控制程序执行,改善人机界面,提供各种服务,合理组织计算机工作流程和为用户使用计算机提供良好运行环境的一种系统软件。配置操作系统的主要目标:方便用户使用;扩大机器功能;管理系统资源;提高系统效率;构筑开放环境。 2、系统调用是一种中介角色,把用户和硬件隔离开来,应用程序只有通过系统调用才能请求系统服务并使用系统资源。系统调用是应用程序获得操作系统服务的唯一途径。系统调用可分为:进程管理、文件操作、设备管理、贮存管理、进程通信、信息维护六类。 3、系统调用的实现原理:⑴编写系统调用处理程序⑵设计一张系统调用入口地址表,每个入口地址都指向一个系统调用的处理程序,有的系统还包含系统调用自带参数的个数⑶陷入处理机制,需开辟现场保护,以保存发生系统调用时的处理器现场。 4、系统调用与过程调用的主要区别:⑴调用形式不同⑵被调用代码的位置不同⑶提供方式不同⑷调用的实现不同 5、系统调用的作用:(1)内盒可以基于权限和规则对资源访问进行裁决,保证系统的安全性(2)系统调用对资源进行抽象,提供一致性接口,避免用户使用资源时发生错误且提高编程效率 5、用户态转向核心态:程序请求操作系统服务,执行系统调用;在程序运行时产生中断或异常事件

6、中断的概念:指在程序执行过程中,遇到急需处理的事件时,暂时中止现行程序在CPU上的运行,转而执行相应的事件处理程序,待处理完成后再返回断点或调度其他程序执行。 进程线程区别联系: 进程:是一个可并发执行的具有独立功能的程序关于某个数据集合的一次执行过程,也是操作系统进行资源分配和保护的基本单位。 线程:是操作系统进程中能够独立执行的实体,也是处理器调度和分派的基本单位。是进程的组成部分,每个进程内允许包含多个并发执行的实体引入进程的原因:一是刻画系统的动态性,发挥系统的并发性,提高资源利用率。 二是解决共享性,正确描述程序的执行状态。 8、进程最基本的状态有三种:运行态:进程占有处理器正在运行。就绪态:进程具备运行条件,等待系统分配处理器以便运行。等待态:又称为阻zǔ塞sè态或睡眠态,指进程不具备运行条件,正在等待某个事件的完成。进程状态转换的具体原因:运行态→等待态等待使用资源或某事件发生,如等待外设传输、等待人工干预。等待态→就绪态资源得到满足或某事件已经发生,如外设传输结束;人工干预完成。运行态→就绪态运行时间片到,或出现有更高优先权进程。就绪态→运行态 CPU空闲时被调度选中一个就绪进程执行。 9、进程控制块(PCB)的概念和组成:每个进程有且仅有一个进程控制块(PCB),或称进程描述符,它是进程存在的唯一标识,是操作系统用来记录和刻画进程状态及有关信息的数据结构,是进程动态特征的一种汇

操作系统课程设计

课程设计报告 2015~2016学年第一学期 操作系统综合实践课程设计 实习类别课程设计 学生姓名李旋 专业软件工程 学号130521105 指导教师崔广才、祝勇 学院计算机科学技术学院 二〇一六年一月

- 1 -

- 2 -

一、概述 一个目录文件是由目录项组成的。每个目录项包含16B,一个辅存磁盘块(512B)包含32个目录项。在目录项中,第1、2字节为相应文件的外存i节点号,是该文件的内部标识;后14B为文件名,是该文件的外部标识。所以,文件目录项记录了文件内、外部标识的对照关系。根据文件名可以找到辅存i节点号,由此便得到该文件的所有者、存取权、文件数据的地址健在等信息。UNIX 的存储介质以512B为单位划分为块,从0开始直到最大容量并顺序加以编号就成了一个文件卷,也叫文件系统。UNIX中的文件系统磁盘存储区分配图如下: 本次课程设计是要实现一个简单的模拟Linux文件系统。我们在内存中开辟一个虚拟磁盘空间(20MB)作为文件存储器,并将该虚拟文件系统保存到磁盘上(以一个文件的形式),以便下次可以再将它恢复到内存的虚拟磁盘空间中。文件存储空间的管理可采用位示图方法。 二、设计的基本概念和原理 2.1 设计任务 多用户、多级目录结构文件系统的设计与实现。可以实现下列几条命令login 用户登录 logout 退出当前用户 dir 列文件目录 creat 创建文件 delete 删除文件 open 打开文件 close 关闭文件 - 3 -

read 读文件 write 写文件 mkdir 创建目录 ch 改变文件目录 rd 删除目录树 format 格式化文件系统 Exit 退出文件系统 2.2设计要求 1) 多用户:usr1,usr2,usr3,……,usr8 (1-8个用户) 2) 多级目录:可有多级子目录; 3) 具有login (用户登录)4) 系统初始化(建文件卷、提供登录模块) 5) 文件的创建:create (用命令行来实现)6) 文件的打开:open 7) 文件的读:read8) 文件的写:write 9) 文件关闭:close10) 删除文件:delete 11) 创建目录(建立子目录):mkdir12) 改变当前目录:cd 13) 列出文件目录:dir14) 退出:logout 新增加的功能: 15) 删除目录树:rd 16) 格式化文件系统:format 2.3算法的总体思想 - 4 -

操作系统复习题及答案

1操作系统概述自测题 1 选择题 1.以下_____操作系统中的技术是用“时间”来换取“空间”的。 A.虚拟存储器 B.缓冲技术 C.SPOOLing技术 D.快表 2.设计实时操作系统必须首先考虑系统的______。 A.效率 B.可移植性 C.可靠性 D.使用的方便性 3.一个作业第一次执行时用了5min,而第二次执行时用了6min,这说明了操作系统的______特点。 A.并发性 B.共享性 C.虚拟性 D.不确定性 4.下述操作系统类型中,哪个操作系统一定是由多台计算机组成的系统? A.实时 B.批处理 C.分时 D.分布式 5.操作系统中,以下______采用了以“空间”换“时间”的技术。 A.终端技术 B.缓冲技术 C.通道技术 D.虚拟存储技术 6.按照所起的作用和需要的运行环境,操作系统属于_______。 A.支撑软件 B.用户软件 C.应用软件 D.系统软件 7.操作系统的主要功能是存储器管理、设备管理、文件管理、用户接口和______。 A.进程管理 B.用户管理 C.信息管理 D.操作系统管理 8.操作系统的最基本的两个特征是资源共享和_______。 A.多道程序设计 B.程序的并发执行 C.中断 D.程序顺序执行

9.采用多道程序设计技术可以提高CPU和外部设备的______。 A.稳定性 B.可靠性 C.利用率 D.兼容性 10.在计算机系统中,操作系统是_______。 A.处于裸机之上的第一层软件 B.处于硬件之下的底层软件 C.处于应用软件之上的系统软件 D.处于系统软件之上的用户软件 11.操作系统是对_____进行管理的软件。 A.软件 B.硬件 C.计算机资源 D.程序 12.从用户的观点,操作系统是______。 A.用户与计算机之间的接口 B.控制和管理计算机资源的软件 C.合理地组织计算机工作流程的软件 D.是扩充裸机功能的软件,是比裸机功能更强、使用方便的虚拟机 13.操作系统的基本类型是_____。 A.批处理系统、分时系统和多任务系统 B.实时系统、分时系统和批处理系统 C.单用户系统、多用户系统和批处理系统 D.实时系统、分时系统和多用户系统 14.为了使系统中的所有用户都得到及时的响应,操作系统应该是___. A.实时系统 B.批处理系统 C.分时系统 D.网络系统 15.如果分时系统的时间片一定,那么____会使响应时间越长。 A.用户数越少 B.用户数越多 C.内存越少 D.内存越多

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

一、实验目的 通过对进程调度算法的设计,深入理解进程调度的原理。 进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。 进程调度分配处理机,是控制协调进程对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)调度算法,时间片轮转。流程图如下:

操作系统实验报告一

重庆大学 学生实验报告 实验课程名称操作系统原理 开课实验室DS1501 学院软件学院年级2013专业班软件工程2 班学生姓名胡其友学号20131802 开课时间2015至2016学年第一学期 总成绩 教师签名洪明坚 软件学院制

《操作系统原理》实验报告 开课实验室:年月日学院软件学院年级、专业、班2013级软件工 程2班 姓名胡其友成绩 课程名称操作系统原理 实验项目 名称 指导教师洪明坚 教师 评语教师签名:洪明坚年月日 1.实验目的: ?进入实验环境 –双击expenv/setvars.bat ?检出(checkout)EPOS的源代码 –svn checkout https://www.doczj.com/doc/b37989759.html,/svn/epos ?编译及运行 –cd epos/app –make run ?清除所有的临时文件 –make clean ?调试 –make debug ?在“Bochs Enhanced Debugger”中,输入“quit”退出调试 –调试指令,请看附录A 2.实验内容: ?编写系统调用“time_t time(time_t *loc)” –功能描述 ?返回从格林尼治时间1970年1月1日午夜起所经过的秒数。如果指针loc 非NULL,则返回值也被填到loc所指向的内存位置 –数据类型time_t其实就是long ?typedef long time_t; 3.实验步骤: ?Kernel space –K1、在machdep.c中,编写系统调用的实现函数“time_t sys_time()”,计算用户秒数。需要用到 ?变量g_startup_time,它记录了EPOS启动时,距离格林尼治时间1970年1午夜的秒数 ?变量g_timer_ticks

操作系统复习提纲

3.什么是操作系统?操作系统在计算机中的主要作用是什么? 操作系统:管理系统资源、控制程序执行、改善人机界面、提供各种服务,并合理组织计算机工作流程和为用户方便有效地使用计算机提供良好运行环境的一种系统软件。 a>服务用户观点——操作系统作为用户接口和公共服务程序 b>进程交互观点——操作系统作为进程执行的控制者和协调者 c>系统实现观点——操作系统作为扩展机和虚拟机 d>资源管理观点——操作系统作为资源的管理者和控制者 10.试述系统调用与函数(过程)调用之间的主要区别。 a>调用形式和实现方式不同。函数调用所转向的地址是固定不变的,但系统调用中不包括内核服务例程入口地址,仅提供功能号,按功能号调用;函数调用是在用户态执行,只能访问用户栈;系统调用要通过陷阱设置,从用户态转换到内核态,服务例程在内核态执行并访问核心栈。 b>被调用代码的位置不同。函数调用是静态调用,调用程序和被调用代码处于同一程序内,经链接后可作为目标代码的一部分,这是用户级程序当函数升级或者修改时,必须重新编译和链接;系统调用是动态调用,系统调用的服务例程位于操作系统中,这是系统级程序,这样当系统调用的服务例程升级或修改时与调用程序无关,而且调用程序的长度大为缩减,能减少其所占用的内存空间。 c>提供方式不同。函数调用通常有编程需要提供,不同语言所提供的函数功能、类型和数量可以不同;系统调用由操作系统提供,一旦操作系统设计好,系统调用的功能、类型和数量便固定不变。 15.什么是多道程序设计?多道程序设计技术有什么特点? 多道程序设计是指允许多个作业(程序)同时进入计算机系统的内存并启动交替计算的方法。 特点:多道性、宏观并行、微观串行。 19.在分时系统中,什么是响应时间?它与哪些因素有关? 响应时间:从交互式进程提交一个请求(命令)直到获得响应之间的时间间隔。 影响因素:cpu的处理速度、联机终端的数目、所用时间片的长短、系统调度开销和对换信息量的多少等。23.操作系统具有哪些基本功能?请简单叙述之。 a>处理器管理。处理器是计算机系统中最为稀有和宝贵的资源,应该最大限度地提高其利用率。常常采用多道程序设计技术组织多个作业同时执行,解决处理器调度、分配和回收问题。 b>存储管理。存储管理的主要任务是管理内存资源,为多道程序设计提供有力支持,提高存储空间利用率,具体来说有内存分配和回收、地址转换与存储保护、内存共享与存储扩充等。 c>设备管理。设备管理的主要任务是管理各种外部设备,完成用户提出的I/O请求;加快数据传输速度,发挥设备的并行性,提高设备的利用率;提供设备驱动程序和中断处理程序,为用户隐蔽硬件操作细节,提供简单的设备使用方法。 d>文件管理。主要任务是对用户和系统文件进行有效管理,实现按名存取;实现文件共享、保护和保密;保证文件的安全性;向用户提供一整套能够方便地使用文件的操作和命令。 e>联网和通信管理。1网络资源管理;2数据通信管理;3应用服务;4网络管理 27.什么是操作系统内核? 内核是一组程序模块,作为可信软件来提供支持进程并发的基本功能和基本操作,通常驻留在内核空间,运行于内核态,具有直接访问硬件设备和所有内存空间的权限,是仅有的能够执行特权指令的程序。35.简述操作系统资源管理的主要技术:资源复用、资源虚拟和资源抽象。 资源复用:系统中相应地有多个进程竞争使用物理资源,由于计算机系统的物理资源是宝贵和稀有的,操作系统让众多进程共享物理资源,这种共享称为资源复用。 资源虚拟:虚拟的本质是对资源进行转换、模拟和整合,把一个物理资源转变成多个逻辑上的对应物,也可以把多个物理资源变成单个逻辑上的对应物。即创建无须共享的多个独占资源的假象,或创建易用且多个实际物理资源数量的虚拟资源假象,以达到多用户共享一套计算机物理资源的目的。

操作系统课程设计报告

上海电力学院 计算机操作系统原理 课程设计报告 题目名称:编写程序模拟虚拟存储器管理 姓名:杜志豪.学号: 班级: 2012053班 . 同组姓名:孙嘉轶 课程设计时间:—— 评语: 成绩: 目录 一、设计内容及要求 (4) 1. 1 设计题目 (4) 1.2 使用算法分析: (4)

1. FIFO算法(先进先出淘汰算法) (4) 1. LRU算法(最久未使用淘汰算法) (5) 1. OPT算法(最佳淘汰算法) (5) 分工情况 (5) 二、详细设计 (6) 原理概述 (6) 主要数据结构(主要代码) (6) 算法流程图 (9) 主流程图 (9) Optimal算法流程图 (10) FIFO算法流程图 (10) LRU算法流程图 (11) .1源程序文件名 (11) . 2执行文件名 (11) 三、实验结果与分析 (11) Optimal页面置换算法结果与分析 (11) FIFO页面置换算法结果与分析 (16) LRU页面置换算法结果与分析 (20) 四、设计创新点 (24) 五、设计与总结 (27)

六、代码附录 (27) 课程设计题目 一、设计内容及要求 编写程序模拟虚拟存储器管理。假设以M页的进程分配了N

块内存(N

操作系统实验报告

《操作系统原理》实验报告 实验项目名称:模拟使用银行家算法判断系统的状态 一、实验目的 银行家算法是操作系统中避免死锁的算法,本实验通过对银行家算法的模拟,加强对操作系统中死锁的认识,以及如何寻找到一个安全序列解除死锁。 二、实验环境 1、硬件:笔记本。 2、软件:Windows 7 , Eclipse。 三、实验内容 1.把输入资源初始化,形成资源分配表; 2.设计银行家算法,输入一个进程的资源请求,按银行家算法步骤进行检查; 3.设计安全性算法,检查某时刻系统是否安全; 4.设计显示函数,显示资源分配表,安全分配序列。 四、数据处理与实验结果 1.资源分配表由进程数组,Max,Allocation,Need,Available 5个数组组成; 实验采用数据为下表: 2.系统总体结构,即菜单选项,如下图

实验的流程图。如下图 3.实验过程及结果如下图所示

1.首先输入进程数和资源类型及各进程的最大需求量 2.输入各进程的占有量及目前系统的可用资源数量 3.初始化后,系统资源的需求和分配表 4.判断线程是否安全

5.对线程进行死锁判断 五、实验过程分析 在实验过程中,遇到了不少问题,比如算法无法回滚操作,程序一旦执行,必须直接运行到单个任务结束为止,即使产生了错误,也必须等到该项任务结束才可以去选择别的操作。但总之,实验还是完满的完成了。 六、实验总结 通过实验使我对以前所学过的基础知识加以巩固,也对操作系统中抽象理论知识加以理解,例如使用Java语言来实现银行家算法,在这个过程中更进一步了解了银行家算法,通过清晰字符界面能进行操作。不过不足之处就是界面略显简洁,对于一个没有操作过计算机的人来说,用起来可能还是有些难懂。所以,以后会对界面以及功能进行完善,做到人人都可以看懂的算法。

操作系统实验报告_实验五

实验五:管道通信 实验内容: 1.阅读以下程序: #include #include #include main() { int filedes[2]; char buffer[80]; if(pipe(filedes)<0) //建立管道,filedes[0]为管道里的读取端,filedes[1]则为管道的写入端 //成功则返回零,否则返回-1,错误原因存于errno中 err_quit(“pipe error”); if(fork()>0){ char s[ ] = “hello!\n”; close(filedes[0]); //关闭filedes[0]文件 write(filedes[1],s,sizeof(s)); //s所指的内存写入到filedes[1]文件内 close(filedes[1]); //关闭filedes[0]文件 }else{ close(filedes[1]); read(filedes[0],buffer,80); //把filedes[0]文件传送80个字节到buffer缓冲区内 printf(“%s”,buffer); close(filedes[0]); } } 编译并运行程序,分析程序执行过程和结果,注释程序主要语句。

2.阅读以下程序: #include #include #include main() { char buffer[80]; int fd; unlink(FIFO); //删除FIFO文件 mkfifo(FIFO,0666); //FIFO是管道名,0666是权限 if(fork()>0){ char s[ ] = “hello!\n”;

操作系统复习大纲考点

第一章SP《操作系统概述》 1.什么是操作系统?操作系统的目标和作用是什么? 操作系统是为改善计算机系统的性能、提高计算机的利用率、方便用户使用计算机而配备的一种最基本的底层系统软件,是计算机系统的核心。 目标:目标:1. 方便性 2. 有效性 3. 可扩充性 4. 开放性 作用:(1)作为用户与计算机硬件之间的接口;(2)作为计算机系统资源的管理者; (3)用作扩充机器。 2.操作系统给用户提供哪几种接口来操纵和使用计算机?体会这些接口的含义。OS给用户提供两类接口:联机用户接口和脱机用户接口; 联机用户接口又可分为命令接口、程序接口(又叫系统调用)和图形接口三类。俗称命令口、程序口和图形口; 脱机用户接口主要是为批处理系统中的脱机用户准备的。用户在提交作业时,不仅要提交源程序和初始数据,还要将反映控制意图的说明书(作业控制说明书)一并交给计算机系统。 3.OS作为计算机系统资源的管理者,主要管理哪几方面的资源? (1)处理机管理(CPU):用于分配和控制处理机; (2)存储器管理:这里主要指负责内存的分配与回收; (3)I/O设备管理:负责I/O设备的分配与操纵; (4)文件管理:负责文件的存取、共享和保护等。 4.操作系统的基本特征是什么?在操作系统中什么叫并发?什么叫并行?并发是真正的并行处理吗?至少有几个CPU的情况下才可能实现真正意义上的并行?什么叫共享,什么叫虚拟?什么叫异步? 基本特征:并发、共享、虚拟、异步 并发性是指两个或多个事件在同一时间间隔内发生; 并行性是指两个或多个事件在同一时刻发生; 并发不是真正的并行处理;至少有两个CPU才能实现真正意义上的并行; 共享是指系统中的资源可供内存中多个并发执行的进程(线程)共同使用。(两种资源共享方式:互斥共享方式和同时访问方式) 虚拟是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。 异步是指进程是以人们不可预知的速度向前推进的。 5.基本的操作系统有哪几种?它们各有什么特点? 基本的操作系统:多道批处理系统、分时系统、实时系统 多道批处理系统:(优)a.提高CPU的利用率 b.可提高内存和I/O设备的利用率c. 增加系统的吞吐量。 (缺)a.资源利用率高 b.系统吞吐量大 c.平均周转时间长d.无交互能力 分时系统:(优)a.多路性 b.独立性c.及时性d.交互性。 实时系统:(优)a.多路性 b.独立性 c.及时性 d.交互性 e. 可靠性。

操作系统原理实验四

实验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); ﹜

操作系统实验报告

《计算机操作系统》实验报告 教师: 学号: 姓名: 2012年3月6日 计算机学院

实验题目:请求页式存储管理(三) ----------------------------------------------------------------------------- 实验环境:VC6.0++ 实验目的:学生应独立地用高级语言编写几个常用的存储分配算法,并设计一个存储管理的模拟程序,对各种算法进行分析比较,评测其性能优劣,从而加深对这些算法的了解。实验内容: (1)编制和调试示例给出的请求页式存储管理程序,并使其投入运行。 (2)增加1~2种已学过的淘汰算法,计算它们的页面访问命中率。试用各种算法的命中率加以比较分析。(增加了FIFO) 操作过程: (1)产生随机数 (2)输入PageSize(页面大小1 /2/4/8 K) (pageno[i]=int(a[i]/1024)+1) (3)菜单选择

(4)OPT/ LRU/FIFO演示(pagesize=1K)

(5) 过程说明(PAGESIZE = 4K ) OPT :最佳置换算法(淘汰的页面是以后永不使用,或许是在最长时间内不再被访问的页面) //在Table 表中如果未找到,记录每个元素需要找的长度 //全部table 中元素找完长度,然后进行比较,找出最大的,进行淘汰 int max=0; int out; for(k=0;kmax){ max = table_time[k]; out = k; } }//找出最长时间,进行替换 table[out]=pageno[i]; page_out++;

操作系统复习大纲设计

操作系统复习大纲 1.设置操作系统的目的 答:1.向用户提供方便、简单的实用计算机的环境; 2.使计算机系统能搞笑地工作,提高系统资源的利用率 2.操作系统的定义、功能、类型、特征 答:定义:计算机操作系统是方便用户实用,管理和控制计算机软硬件资源的系统软件功能:处理机管理(进程控制、进程调度、进程同步、进程通信)、存储器管理(存分配、存储保护、存储扩充)、设备管理(设备分配、设备传输控制、设备无关性)、文件管理(文件存储空间管理、目录管理、文件保护、文件操作管理)和作业管理(用户接口、程序接口)操作系统的特征:并发、共享、虚拟、异步(不确定性) 类型: 批处理系统:(特征:成批处理、多道程序运行,用户脱机使用计算机) 单道批处理:FMS(FORTRAN监控系统)、IBYSY(IBM/7094) 多道批处理:IBM 360/370 分时系统:(特征:多路性、独占性、及时性、交互性) Unix、VAX/VMX、CTSS、MUTICS等 实时系统(即时响应、高可靠性、专业性) 单用户系统 单用户单任务:CP/M,MS-DOS 单用户多任务:windows 多用户多任务:UNIX OS,Linux OS 网络系统:(特征:网络通信、资源共享、互操作、协作处理) Windows NT Server、NetWare,2000 分布式系统(特征:统一性、坚强性) 3.多道程序设计与并发性 4.进程的定义、特征以及组成(PCB) 5.线程与进程 6.进程的基本状态及其转换 7.临界资源、临界区 8.互斥,同步 9.用信号量和p、v操作实现进程的互斥和同步 10.处理机的分级调度,作业调度和进程调度的主要任务 11.常用的调度算法

操作系统(一个小型操作系统的设计与实现)课程设计

南通大学计算机科学与技术学院操作系统课程设计报告 专业: 学生姓名: 学号: 时间:

操作系统模拟算法课程设计报告 设计要求 将本学期三次的实验集成实现: A.处理机管理; B.存储器管理; C.虚拟存储器的缺页调度。 设计流程图 主流程图 开始的图形界面 处理机管理存储器管理缺页调度 先来先服务时 间 片 轮 转 首 次 适 应 法 最 佳 适 应 法 先 进 先 出 L R U 算 法

A.处理机调度 1)先来先服务FCFS N Y 先来先服务算法流程 开始 初始化进程控制块,让进程控制块按进程到达先后顺序让进程排队 调度数组中首个进程,并让数组中的下一位移到首位 计算并打印进程的完成时刻、周转时间、带权周转时间 其中:周转时间 = 完成时间 - 到达时间 带权周转时间=周转时间/服务时间 更改计时器的当前时间,即下一刻进程的开始时间 当前时间=前一进程的完成时间+其服务时间 数组为空 结束

2)时间片轮转法 开始 输入进程总数 指针所指的进程是 否结束 输入各进程信息 输出为就绪状态的进程的信息 更改正在运行的进程的已运行时间 跳过已结束的程序 结束 N 指向下一个进程 Y 如果存在下一个进程的话 Y N 输出此时为就绪状态的进程的信息 时间片轮转算法流程图

B.存储器管理(可变式分区管理) 1)首次适应法 分配流程图 申请xkb内存 由链头找到第一个空闲区 分区大小≥xkb? 大于 分区大小=分区大小-xkb,修改下一个空闲区的后向指针内容为(后向指针)+xkb;修改上一个空闲区的前向指针为(前向指针)+xkb 将该空闲区从链中摘除:修改下一个空闲区的后向地址=该空闲区后向地址,修改上一个空闲区的前向指针为该空闲区的前向指针 等于 小于延链查找下 一个空闲区 到链尾 了? 作业等待 返回是 否 登记已分配表 返回分配给进程的内存首地址 开始

操作系统实验报告

操作系统实验报告 Document number:NOCG-YUNOO-BUYTT-UU986-1986UT

许昌学院 《操作系统》实验报告书学号: 姓名:闫金科 班级:14物联网工程 成绩: 2016年02月

实验一Linux的安装与配置 一、实验目的 1.熟悉Linux系统的基本概念,比如Linux发行版、宏内核、微内核等。 2.掌握Linux系统的安装和配置过程,初步掌握Linux系统的启动和退出方 法。 3.熟悉Linux系统的文件系统结构,了解Linux常用文件夹的作用。 二、实验内容 1.从网络上下载VMware软件和两个不同Linux发行版镜像文件。 2.安装VMware虚拟机软件。 3.在VMware中利用第一个镜像文件完成第一个Linux的安装,期间完成网络 信息、用户信息、文件系统和硬盘分区等配置。 4.在VMware中利用第二个镜像文件完成第二个Linux的安装,并通过LILO或 者GRUB解决两个操作系统选择启动的问题。 5.启动Linux系统,打开文件浏览器查看Linux系统的文件结构,并列举出 Linux常用目录的作用。 三、实验过程及结果 1、启动VMware,点击新建Linux虚拟机,如图所示: 2、点击下一步,选择经典型,点击下一步在选择客户机页面选择 Linux,版本选择RedHatEnterpriseLinux5,如图所示: 3、点击下一步创建虚拟机名称以及所要安装的位置,如图所示: 4、点击下一步,磁盘容量填一个合适大小,此处选择默认值大小 10GB,如图所示: 5、点击完成,点击编辑虚拟机设置,选择硬件选项中的CD-ROM (IDE...)选项,在右侧连接中选择“使用ISO镜像(I)”选项,点 击“浏览”,找到Linux的镜像文件,如图所示:

ucos-ii操作系统复习大纲

ucos-ii操作系统复习大纲 一.填空题 1.uC/OS-II是一个简洁、易用的基于优先级的嵌入式【抢占式】多任务实时内核。 2.任务是一个无返回的无穷循环。uc/os-ii总是运行进入就绪状态的【最高优先级】的任务。 3.因为uc/os-ii总是运行进入就绪状态的最高优先级的任务。所以,确定哪 个任务优先级最高,下面该哪个任务运行,这个工作就是由【调度器(scheduler)】来完成的。 4.【任务级】的调度是由函数OSSched()完成的,而【中断级】的调度 是由函数OSIntExt() 完成。对于OSSched(),它内部调用的是【OS_TASK_SW()】完成实际的调度;OSIntExt()内部调用的是【 OSCtxSw() 】实现调度。 5.任务切换其实很简单,由如下2步完成: (1)将被挂起任务的处理器寄存器推入自己的【任务堆栈】。 (2)然后将进入就绪状态的最高优先级的任务的寄存器值从堆栈中恢复到【寄存器】中。 6.任务的5种状态。 【睡眠态(task dormat) 】:任务驻留于程序空间(rom或ram)中,暂时没交给ucos-ii处理。 【就绪态(task ready)】:任务一旦建立,这个任务就进入了就绪态。 【运行态(task running)】:调用OSStart()可以启动多任务。OSStart()函数只能调用一次,一旦调用,系统将运行进入就绪态并且优先级最高的任务。 【等待状态(task waiting)】:正在运行的任务,通过延迟函数或pend(挂起)相关函数后,将进入等待状态。

【中断状态(ISR running)】:正在运行的任务是可以被中断的,除非该任务将中断关闭或者ucos-ii将中断关闭。 7.【不可剥夺型】内核要求每个任务自我放弃CPU的所有权。不可剥夺型调度法也称作合作型多任务,各个任务彼此合作共享一个CPU。 8.当系统响应时间很重要时,要使用【可剥夺型】内核。最高优先级的任务一旦就绪,总能得到CPU的控制权。 9.使用可剥夺型内核时,应用程序不应直接使用不可重入型函数。调用不可重入型函数时,要满足互斥条件,这一点可以用【互斥型信号量】来实现。 10.【可重入型】函数可以被一个以上的任务调用,而不必担心数据的破坏。 11.可重入型函数任何时候都可以被中断,一段时间以后又可以运行,而相应数据不会丢失。可重入型函数或者只使用【局部变量】,即变量保存在CPU寄存器中或堆栈中。如果使用全局变量,则要对全局变量予以【保护】。 12.每个任务都有其优先级。任务越重要,赋予的优先级应【越高】。 13.μC/OS-Ⅱ初始化是通过调用系统函数【OSIint()】实现的,完成μC/OS-Ⅱ所有的变量和数据结构的初始化。 14.多任务的启动是用户通过调用【OSStart()】实现的。然而,启动μC/OS-Ⅱ之前,用户至少要建立一个应用【任务】。 15. μC/OS-Ⅱ的参数配置文件名为【】。 16.删除任务,是说任务将返回并处于【休眠状态】,并不是说任务的代码被删除了,只是任务的代码不再被μC/OS-Ⅱ调用。 17.μC/OS-Ⅱ要求用户提供【定时中断】来实现延时与超时控制等功能。 18.定时中断也叫做【时钟节拍】,它应该每秒发生10至100次。 19. 时钟节拍的实际频率是由用户的应用程序决定的。时钟节拍的频率越高,系统的负荷就【越重】。 20.μC/OS-II中的信号量由两部分组成:一个是信号量的【计数值】,它是一个16位的无符号整数(0 到65,535之间);另一个是由等待该信号量的任务组成的【等待任务表】。用户要在中将OS_SEM_EN开关量常数置成【1 】,这样μC/OS-II 才能支持信号量。 21. μC/OS-II中表示当前已经创建的任务数全局变量名为:【 OSTaskCtr 】。

操作系统原理实验五

实验五线程的同步 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所示。

操作系统实验报告.

学生学号0121210680225 实验课成绩 武汉理工大学 学生实验报告书 实验课程名称操作系统 开课学院计算机科学与技术学院 指导老师姓名刘军 学生姓名李安福 学生专业班级软件sy1201 2014 — 2015 学年第一学期

《操作系统》实验教学大纲 课程编号: 课程名称:操作系统/Operating System 实验总学时数:12学时 适应专业:计算机科学与技术、软件工程 承担实验室:计算机科学与技术学院实验中心 一、实验教学的目的和任务 通过实验掌握Linux系统下常用键盘命令、系统调用、SHELL编程、后台批处理和C程序开发调试手段等基本用法。 二、实验项目及学时分配 序号实验项目名称实验学时实验类型开出要求 01 Linux键盘命令和vi 2 设计必开 02 Linux下C编程 2 设计必开 03 SHELL编程和后台批处理 2 设计必开 04 Linux系统调用(time) 2 设计必开 05 Linux进程控制(fork) 4 设计必开 三、每项实验的内容和要求: 1、Linux键盘命令和vi 要求:掌握Linux系统键盘命令的使用方法。 内容:见教材p4, p9, p40, p49-53, p89, p100 2、Linux下的C编程 要求:掌握vi编辑器的使用方法;掌握Linux下C程序的源程序编辑方法;编译、连接和运行方法。 内容:设计、编辑、编译、连接以及运行一个C程序,其中包含键盘输入和屏幕输出语句。 3、SHELL编程和后台批处理 要求:掌握Linux系统的SHELL编程方法和后台批处理方法。 内容:(1) 将编译、连接以及运行上述C程序各步骤用SHELL程序批处理完成,前台运行。 (2) 将上面SHELLL程序后台运行。观察原C程序运行时输入输出情况。 (3) 修改调试上面SHELL程序和C程序,使得在后台批处理方式下,原键 盘输入内容可以键盘命令行位置参数方式交互式输入替代原键盘输入内容, 然后输出到屏幕。 4、Linux系统调用使用方法。

计算机操作系统复习提纲

计算机操作系统(第四版) 编著:汤小丹,梁红兵,哲凤屏,汤子瀛 1、考试题型 一.选择题(15题,每题2分) 二.判断题(10题,每题2分) 三.简答题(2题,每题10分) 四.计算题(2题,每题10分) 五.应用题(2题,每题10分) 2、考试内容分布 第一章操作系统概论 1.1.1操作系统目标* 1.1.2操作系统的作用* 1.1.3推动操作系统发展的主要动力 1.2.1未配置操作系统的计算机系统 1.2.2单道批处理系统* 1.2.3多道批处理系统多道批处理系统的优缺点* 1.2.4分时系统特征 1.2.5实时系统概念 1.3操作系统基本特征并行,并发,共享,虚拟 1.4.1处理机管理功能 1.4.2存储管理系统 1.4.3设备管理功能 1.4.4文件管理功能 1.4.5操作系统与用户之间的接口 习题:1.2.11 第二章进程的描述和控制 2.1.1前趋图 2.1.2程序顺序执行 2.2进程的描述* 进程的基本状态及转化* 2.3进程控制进程的创建* 2.4进程同步临界资源同步机制应遵循的规则* 2.4.3信号量机制* 2.4.4信号量的应用 2.5经典进程同步问题

2.6进程通信 2.7线程的基本概念 2.8.3线程的创建和终止* 习题:7.9.11.16.22 第三章处理机调度与死锁 3.1.1处理机调度的层次* 3.1.2处理机调度算法的目标 3.2作业和作业调度 3.2.3先来先服务和短作业优先调度 算法 3.2.4优先级调度算法和高响应比 优先调度算法 3.3进程调度 3.3.2轮转调度算法* 3.3.4优先级调度算法 3.5死锁概述 3.5.3死锁的定义、必要条件和处理方法 3.6预防死锁 3.7避免死锁 3.8死锁的检测与解除 习题:12.13.27.31 第四章存储器管理 4.1.1多层结构的存储器系统* 4.1.3高速缓存和磁盘缓存* 4.2.1程序的装入* 4.3连续分配存储管理方式* 分区分配操作* 4.3.4基于顺序搜索的动态分区分配算 4.3.6动态可重定位位分区分配 4.4对换 4.5分页存储管理方式 4.6分段存储管理方式 习题:7.13.18.19.24 第五章虚拟存储器 5.1虚拟存储器概述 5.2请求分页存储管理方式 5.3页面置换算法最佳置换算法*和先进先出置换算法*

相关主题
文本预览
相关文档 最新文档