- 5
- 0
- 约4.18千字
- 约 7页
- 2016-08-15 发布于重庆
- 举报
2012操作系统实验1报告格式与要求(修改版)
《操作系统》课程实验报告
实验名称 进程同步算法的实现模拟 实验序号 1 姓 名 刘凯 系院专业 计算机 班 级 10网络1 学 号 1010322122 实验日期 2012-10 指导教师 阮鸥 成 绩 一、实验目的
进程同步问题是OS的核心内容。本实验要求用高级语言编写和调试一个程序来模拟进程同步算法。通过本实验可以加深理解有关同步技术、进程控制块、进程队列的概念,并体会和了解同步(生产者—消费者问题)算法的具体实施办法。 二、实验内容与要求
(1) 模拟实现生产者—消费者问题。Get、put二进程共用缓冲区s(大小为每次只存放一个记录)。Get负责输入记录到缓冲区s, put负责把t中的记录取出打印。
(2) 设计进程PCB结构和三种进程状态的队列,可以实现PCB队列的插入、删除、排序功能。
(3) 设计各进程使用的信号灯,画出各进程的P、V操作实现流程图;
(4)实现进程同步,完成记录的正常输出,要能够通过程序运行表现出对缓冲区s的进行临界区互斥和进程同步的思想(最好能记录或输出二个进程的实时状态和变化过程、二个进程队列的实时内容、几个缓冲区中实时内容,输出到屏幕上,这个过程同时记录在一个文本文件中);
(5) 编程语言不限制,tc2.0,vc6.0,.net,java都可以。 三、实验设备
地点: 科技楼 网络实验室602
硬件环境: Intel Pentium Processor 1.8G 512M内存?windows 操作系统
软件环境: win7系统 vc++6.0
实验步骤
模拟实现生产者—消费者问题。Get、put二进程共用缓冲区s(大小为每次只存放一个记录)。Get负责输入记录到缓冲区s, put负责把t中的记录取出打印。
实验代码:
// Test1.cpp : Defines the entry point for the console application.
#include stdafx.h
#include windows.h
#include string.h
char temp; //中间缓存
DWORD WINAPI Get(LPVOID lp)
{ //将要打印的字符取出并一个一个的存入缓存
char * sp;
sp=( char *) lp;
while(1) //字符结束标志\0
{ temp=*sp;
if(temp==\0) return 0;
sp++;
Sleep(500);
}
return 0;
}
DWORD WINAPI Put(LPVOID lp)
{ //将字符从缓存里面取出,一次一个
printf(output the string:);
while(temp!=\0)
{
printf(%c ,temp);
Sleep(500);
}
putchar(\n);
return 0;
}
void Mythread(char sp [])
{ //建立两个并行线程
HANDLE handle1,handle2;
handle1 = CreateThread(NULL,NULL,Get,(void*)sp,NULL,NULL);
handle2 = CreateThread(NULL,NULL,Put,NULL,NULL,NULL);
}
int main(int argc, char* argv[])
{
char sp[100]={\0};
printf(input the string to print:);
scanf(%s,sp);
Mythread(sp);
Sleep(10000);
printf(the output come to teh end !\n);
return 0;
}
(2)设计进程PCB结构和三种进程状态的队列,可以实现PCB队列的插入、删除、排序功能。
(3)设计各进程使用的信号灯,画出各进程的P、V操作实现流程图;
(4)实现进程同步,完成记录的正常输出,要能够通过程序运行表现出对缓冲区s的进行临界区互斥和进程同步的思想(最好能记录或输出二个进程的实时状态和变化过程、二个进程队列的实时内容、几个缓冲区中实时内容,输出到屏幕上,这个过程同时记录在一个文本文件中);
实验代码:
// test2.cpp : Defines the entry point for the console application.
/* 本程序利用受信事件,通过调用应用程序编程接口,实
现了两个线程(get 、 put)之间的同步*/
#include stdaf
您可能关注的文档
最近下载
- 2026届四省联考(山西陕西青海宁夏等)高三上学期期末考试数学试卷+答案.doc VIP
- 高考语文一轮总复习精品课件 古代诗文阅读 任务群六 古代诗歌阅读.ppt VIP
- JC_T 2739-2022 砖和砌块行业绿色工厂评价要求.docx VIP
- 高原高海拔无人机制造作业规范.pdf
- 四川省泸州市泸县第二中学等六校联考2025-2026学年上学期九年级物理期末预测练习试卷( 含答案).pdf VIP
- 研究生考研复试自我介绍PPT课件.pptx VIP
- 2026年工会知识竞赛培训试题及答案.docx VIP
- 2025年中考数学一轮复习:数与式 (4大模块知识梳理+10个基础考点+1个方法技巧+4个易错点)原卷版.pdf VIP
- (正式版)H-G∕T 5362-2018 含铬废液处理处置方法.docx VIP
- 《适者生存》 作者:斯蒂芬·金t.pdf VIP
原创力文档

文档评论(0)