没有合适的资源?快使用搜索试试~ 我知道了~
燕山大学操作系统课程设计说明书样本.doc
29 浏览量
2022-12-06
19:51:03
上传
评论
收藏 183KB DOC 举报
燕山大学操作系统课程设计说明书样本.doc
资源推荐
资源详情
资源评论
















燕山大学课程设计阐明书
课程设计名称:操作系统
题目:多道程序缓冲区协调操作
(模仿生产者消费者问题)
课题负责人:
学院: 信息科学与工程学院
班级:
姓名:
学号:
课题开发日期:1 月 13 日
自评成绩: A

目录
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)通过消费者 1GET 操作不断从容器 2(buffer2)中取出数据
(5)通过消费者 2GET 操作不断地从容器 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 使用开发工具、开发语言
开发工具:VS
开发语言:C++
C++是面向对象一种编程语言,窗口程序设计中 MFC 已经将 windows 最底
层 API 函数以类形式封装好,使用以便。
其特点有:1.面向对象;
2.平台无关性;
3.安全性;

4.健壮性;
1.4 本软件解决重要问题
对 Buffer 操作多线程同步问题,运用操作系统 P、V 原语操作和 C++语言
Thread 线程对 put、move、get 等多线程进行协调解决,实现了多线程并发执行
原理。用程序演示了操作系统中典型生产者和消费者问题。
2 设计基本理念、概念和原理
2.1 设计基本理念
使用 VS 创立了一种基本对话框类,并在对话框中添加了基本需要所有控件:
(1) buffer1,buffer2,buffer3 三个 LISTBOX 控件,用于显示各个
buffer 中当前内容。
(2) 添加了 3 个编辑框控件,分别用于对 3 个容器(buffer)容量
控制。
(3) 添加 1 个编辑框控件用于输入数值拟定线程执行速度。
(4) 添加 5 个编辑框控件,用于对生产者,移动物流,消费者数量
控制。
五个线程用于对 buffer 容器控制(PUTTER,MOVER1,MOVER2,GETTER1,
GETTER2):
(1) PUTTER 线程产生随机字符,并放入 buffer1 中,实现生产者生
产过程。
(2) MOVER1,MOVER2 线程分别将 buffer1 中数据移动至 buffer2
和 buffer3 中。
(3) GETTER1,GETTER2 线程分别将 buffer2 和 buffer3 中数据字符
移出,实现消费者消费过程。
剩余23页未读,继续阅读
资源评论

黑色的迷迭香
- 粉丝: 3
- 资源: 4万+

上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助

会员权益专享
安全验证
文档复制为VIP权益,开通VIP直接复制
