课程名称: 操作系统实验名称: _避免死锁(银行家算法)
一实验目的
1. 加深对进程概念的理解,明确进程和程序的区别。
2. 进一步认识并发执行的实质。
3. 验证用信号量机制实现进程互斥的方法。
4. 验证用信号量机制实现进程同步的方法。
二实验内容
解决经典同步问题,生产者/消费者问题,使用 java 代码编写,并对分析问题进行分析。
三实验分析
实验设计 Producer 类作为生产者类和 Consumer 类作为消费者类,设计八个缓冲区
设计了 Global 类,进行定义缓冲区,互斥信号量
设计 syn 类,作为 PV 操作类。
四实验程序设计
1. packagecaozuoxitong;
2. publicclassMain{
3. publicstaticvoidmain(String[]args){
4. Producerp[]=newProducer[3];//3 个生产者
5. Consumerc[]=newConsumer[3];
6. inti;
7. for(i=0;i<3;i++){
8. p[i]=newProducer(i+1);
9. }
10. for(i=0;i<3;i++){
11. c[i]=newConsumer(i+1);
12. }
13. Threadpp[]=newThread[3];
14. Threadcp[]=newThread[3];
评论0