燕山大学操作系统课程设计说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1概述--------------------------------------------------------------------------------------3
1.1 目的--------------------------------------------------------3 1.2 主要完成的任务----------------------------------------------3 1.3 使用的开发工具、开发语言------------------------------------3 1.4 本软件解决的主要问题 ---------------------------------------4
2 设计的基本理念、概念和原理------------------------------------------------4
2.1 设计的基本理念----------------------------------------------4 2.2 基本概念----------------------------------------------------4 2.3 基本原理----------------------------------------------------5
3 总体设计----------------------------------------------------5
3.1基本的技术路线:面向对象--------------------------------------------------------5 3.2模块关系及总体流程-------------------------------------------5
4 详细设计----------------------------------------------------7
4.1 变量设计----------------------------------------------------7 4.2 线程的设计--------------------------------------------------7 4.3 button按钮的设计-------------------------------------------8
5编码设计----------------------------------------------------9
5.1开发环境----------------------------------------------------9 5.2注意事项----------------------------------------------------9 5.3主要代码设计------------------------------------------------9
PUTTER线程的设计---------------------------------------------------9 MOVER1线程的设计---------------------------------------------------10 GETTER1线程的设计--------------------------------------------------11 “开始”按钮的设计--------------------------------------------------12 “结束”按钮的设计--------------------------------------------------14 5.4解决的主要难题----------------------------------------------16 6测试出现的问题及其解决方案-------------------------------16
7工程总结----------------------------------------------------16 8参考文献----------------------------------------------------16
多道程序缓冲区协调操作演示程序设计说明书
1概述
1.1目的
计算机操作系统是计算机系统中最不可缺少的,最常用的软件,也是核心的,最接近于计算机硬件的软件。其特点是内容繁多,概念抽象,因此造成理解困难,掌握不易。本软件的主要目的是通过直观的演示,使学生能够感性的明白掌握多道程序及其进程同步和互斥的程序设计的基本方法。
1.2主要完成的任务
(1)可随机产生字符数据,由生产者的put操作不断将生产的字符数据放入容器1(Buffer1)中。
(2)通过搬运者的Move1操作要不断地将容器1(Buffer1)的数据取到容器2(Buffer2)中。
(3)通过搬运者的Move2操作要不断地将容器1(Buffer1)的数据取到容器3(Buffer3)中。
(4)通过消费者1的GET操作不断的从容器2(buffer2)中取出数据
(5)通过消费者2的GET操作不断地从容器3(Buffer3)中取出数据。
(6)生产者,搬运者,消费者的数目,buffer容量可自己设定,但数目不宜过多;默认为生产者5,消费者1为5,消费者2为5,Move1为2,Move2为2,buffer1容量为10,buffer2容量为10,buffer3容量为10。
(7) PUT、 Move1、Move2、 GET1,GET2每次操作一个数据,在操作的过程中数据不丢失,每个Buffer每次只能接受一个PUT或一个Move或一个Get,多个操作不能同时操作同一BUFFER。
(8)能够实时显示Buffer的操作过程,以及每个Buffer的当前放入的数据,每个buffer中的数据的个数。
(9)能够对生产者,搬运者,消费者的速度进行自由控制。
(10)当程序运行开始后,计时器就开始计时,直到运行结束,显示运行的总时间。
(11)运行结束后,能够汇总总运行时时间、已生产产品数、消费者1已消费产品数、消费者2已消费的产品数、总消费的产品数。
1.3使用的开发工具、开发语言