操作系统课程设计——超市购物模拟算法

该博客介绍了使用Visual C++ 6.0进行操作系统课程设计,实现超市购物模拟,涉及线程同步与互斥。设计中模拟了超市购物的各个阶段,包括顾客线程的并发控制、信号量和互斥体的使用,以及程序的逻辑结构、存储结构和算法设计。程序具备正确性、可读性和高效性,并包含支付方式选择、折扣优惠等功能。

 

                                    操作系统课程设计

 

 

                                                  超市购物模拟

 

 

 

 

 

 

 

 

 

 组别:          

组员:      编程      

     设计报告  

   汇报 , PPT 

 

 

 

                                                                   南通大学·计算机科学与技术学院

2018年06月

 

 

摘   要

 

     本设计采用了visual c++ 6.0开发工具,解决了模拟超市购物中控制并发线程同步与互斥的问题,实现了线上模拟超市购物的功能:包括开放超市,顾客排队进入超市,选用购物车,顾客随机选购商品,排队购买熟食,排队付款,付款方式选择,折扣优惠,结账等。模拟超市购物中主要运用Windows线程同步与控制,信号量和互斥体,派生类等方法实现其相应功能。经分析表明,程序逻辑正确。程序具有正确性,可读性,高效性,健壮性等特点。

 

关键词:Windows 线程创建、控制、同步与互斥、超市购物模拟、互斥体、信号量。

 

 

 

 

目 录

实验名称:超市购物模拟. 3

实验工具说明. 3

1. 问题描述. 4

1.1超市购物模拟中待解决的问题. 4

1.2模拟超市购物的大致流程如图1-1所示:. 4

2.分析及功能设计. 5

2.1vsm.h文件夹中对应的函数和变量功能分析. 5

(1)超市管理员线程功能分析:. 6

(2)顾客线程功能分析. 6

2.2vsm.cpp文件夹中对应的函数和变量功能分析. 7

2.3增加功能分析. 7

3. 测试用例及其求解. 7

4. 程序设计. 9

4.1 逻辑结构设计. 9

4.2 存储结构设计. 9

4.3 算法设计. 9

4.4 界面设计. 10

5. 程序运行情况. 10

6.小结. 12

7.附录:参考文献. 12

 

                           

 

 

                             课设名称:超市购物模拟

编程环境:visualC++ 6.0

编程语言:visualC++

设计报告:OFFICE2013 之 word

汇报方档:OFFICE2013 之 Power Point

1.问题描述

1.1超市购物模拟中待解决的问题

编写一个程序,用线程控制和线程同步(使用互斥体和信号量)机制来模拟超市购物的运转情况,

模拟超市购物的运转过程中有以下角色:超市管理员,购物车,顾客,结账柜台,熟食柜台店员,商品,熟食。模拟超市购物需要实现的功能有:选择购物车(新增),管理员开放超市,管理员线程创建顾客线程,顾客线程排队进入超市,顾客自由选购商品(包括是否选择熟食),选购完毕之后进入队列,等待付款,多种付款方式选择(新增),折扣优惠活动(新增),完成付款后离开超市。本次模拟购物完成。其中超市管理员和顾客用线程机制建立,管理员的线程创建顾客线程,顾客线程并发执行需使用同步机制,(如信号量等,互斥体关于互斥体:互斥体是一个可命名的安全内核对象,其目的是控制线程护持地访问临界资源,作为内核对象,互斥体必须被创建,打开后才能使用)。模拟购物过程中要建立三个队列,队列1是等待进入超市队列,队列2是购买熟食队列,还队列3是等待付款的队列。                                                                                                          

          

                        

                                               &n

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值