资源简介
司机和售票员进程同步的完整课程设计实验报告

代码片段和文件信息
#include
using namespace std;
int spy=1 sj=0; //信号量的定义,spy是售票员的私有信号量,sj是司机的私有信号量。
#define SIZE 3 //定义车上最多能坐的人数。
int n = SIZE;
char ck; //乘客上下车的操作变量。
int p1(); //司机的操作流程。
int p2(); //售票员的操作流程。
int main()
{
cout << “键入a表示乘客上车键入d表示乘客下车.“ << endl;
cout << “键入s表示注销进程.“ << endl;
cout << “键入f表示乘客上下车过程结束.“ << endl << endl << endl;
p1();
return 0;
}
int p1() //司机的执行过程
{
sj--;//相当于p操作。
if (sj == 0)
{
cout << “汽车启动准备离站......“ << endl;
cout << “汽车运行中......“ << endl;
cout << “汽车到站!“ << endl;
cout << “汽车停!“ << endl;
spy++;//相当于v操作。
}
else sj++;
p2();
return 0;
}
int p2() //售票员的执行过程
{
spy--;//相当于p操作。
if (spy==0)
{
cout << “售票员打开车门......“ << endl;
cout << “请进行乘客上下车操作!“ << endl;
while (1)
{
cin >> ck;
if ((ck == ‘a‘) && (n > 0)) {n--;cout << “上一个乘客.“ << endl;continue;};
if ((ck == ‘d‘) && (n < SIZE)) {n++;cout << “下一个乘客.“ << endl;continue;};
if (ck == ‘f‘) {break;};
if (ck == ‘s‘) {return 0;};
if (n <= 0) {cout << “车上座位已满不能再上乘客了!“ << endl;continue;};
if (n >= SIZE) {cout << “车上乘客已经都下完了!“ << endl;continue;};
}
cout << “现在关闭车门!“ << endl;
}
sj++; //相当于v操作
p1();
return 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 86774 2009-01-11 17:43 司机和售票员\Debug\sjspy.obj
文件 74752 2009-01-11 17:43 司机和售票员\Debug\vc60.idb
文件 102400 2009-01-11 17:43 司机和售票员\Debug\vc60.pdb
文件 524343 2009-01-11 17:43 司机和售票员\Debug\司机和售票员.exe
文件 762824 2009-01-11 17:43 司机和售票员\Debug\司机和售票员.ilk
文件 2001156 2009-01-11 17:42 司机和售票员\Debug\司机和售票员.pch
文件 1074176 2009-01-11 17:43 司机和售票员\Debug\司机和售票员.pdb
文件 1470 2009-01-11 17:42 司机和售票员\sjspy.cpp
文件 4349 2009-01-11 17:46 司机和售票员\司机和售票员.dsp
文件 532 2009-01-11 17:42 司机和售票员\司机和售票员.dsw
文件 33792 2009-01-11 17:46 司机和售票员\司机和售票员.ncb
文件 48640 2009-01-11 17:46 司机和售票员\司机和售票员.opt
文件 911 2009-01-11 17:43 司机和售票员\司机和售票员.plg
文件 133120 2009-06-14 20:06 进程同步模拟设计——司机和售票员问题.doc
目录 0 2009-01-11 17:43 司机和售票员\Debug
目录 0 2009-01-11 17:46 司机和售票员
----------- --------- ---------- ----- ----
4849239 16
- 上一篇:大数据百度云网盘资源.txt
- 下一篇:单目标优化含约束
相关资源
- 升腾Win终端系统升级方法新版.doc
- Uninstall_Cortana_WINCLIENT.CN.rar
- STM32基于rt_thread操作系统的SDHC卡文件
- msp430F149操作红外接收模块源码
- 操作系统 LRU算法 实验报告 及 程序代
- [免费]车载CE6.0操作系统
- 分页系统模拟实验 操作系统 课程设
- 二叉树基本操作源代码
- 模拟段页式虚拟存储管理中地址转换
- 操作系统实验——虚存管理实验
- 广工操作系统实验
- php 操作INI文件,读取,设置,ini文件
- 广东工业大学操作系统实验四文件系
- Bochs入门教程[操作系统第一步]
- 软件工程文档模板1可行性研究报告
- 三维地形的仿真显示实现了对地图的
- 用矩阵类算法程序和最小二乘法
- 操作系统课程设计完整版
- 一个基于MFC的GridCtrl,提供类似Excel的
- 磁盘调度算法的模拟实现及对比
- 模拟一个文件管理系统
- JS操作本地网页串口源码
- 二级文件系统(操作系统)
- uCOS编译环境建立 BC45 TASM
- usb调试程序 对USB设备进行数据的读写
- Linux 操作系统实验(全)
- 操作系统实验综合设计【附代码】
- 操作系统共享内存实验
- 操作系统循环首次适应算法
- 操作系统课程设计实现可变分区存储
评论
共有 条评论