一、实验目的 1、理解进程并发执行的实质。 2、分析进程竞争资源的现象,学习解决进程互斥的方法。 3、掌握进程时间片轮转调度算法和优先权调度算法。 二、实验设备 每人一台计算机,硬件要求:CPU PII以上,64M内存,100M硬盘空间即可;软件要求:Linux操作系统。 三、实验内容 1、用lockf()来给每一个进程加锁,以实现进程之间的互斥。 2、编制两种进程调度算法:时间片轮转调度算法和优先权调度算法。 四、实验步骤 1、打开centos7,进入终端命令行模式。 2、使用vi编辑器,vi *.c。(*是要编辑的文件名)。 3、在实验一,进程互斥中,vi zhanghaohao1.c。 在实验二,进程调度中,vi zhanghaohao2.c。 4、输入a/i/o,切换为输入模式,输入代码。 5、按ESC退出输入模式,按shift+:wq,保存退出。 6、输入gcc ./zhanghaohao1.c与gcc ./zhanghaohao2.c编译。 五、程序代码 1、用lockf()来给每一个进程加锁,以实现进程之间的互斥 互斥代码: 六、实验结果
2022-11-21 18:03:03 271KB linux 操作系统 实验报告 源码
1
1. 理解各个算法的思想、原理 2. 结合上小节学习的“实现互斥的四个逻辑部分”,重点理解各算法在进入区、退出区都做了什么 3. 分析各算法存在的缺陷(结合“实
2022-08-03 18:00:40 1.24MB 软件/插件
1
分布式系统进程互斥算法的分析与改进.pdf
2022-07-11 09:11:04 593KB 文档资料
分布式系统进程互斥算法的研究与改进.docx
2022-05-30 09:08:36 436KB 算法 文档资料
关于分布式系统进程互斥算法的研究.doc
2022-05-09 19:14:18 234KB 算法 文档资料
操作系统实验五:进程互斥实验报告。进一步研究和实践操作系统中关于并发进程同步与互斥操作的一些经典问题的解法,加深对于非对称性互斥问题有关概念的理解。观察和体验非对称性互斥问题的并发控制方法。进一步了解Linux系统中IPC进程同步工具的用法,训练解决对该类问题的实际编程、调试和分析问题的能力。
2022-05-09 16:23:46 41KB 操作系统 进程互斥 实验报告 Linux
1
小实验一:编写一个没有线程同步机制的程序,调试程序,观察在执行程序的过程中,出现的问题并解答原因 小实验二:使用Windows互斥信号量操作函数解决上述线程并发问题,并分析、尝试和讨论线程执行体中有关信号量操作函数调用的正确位置 小实验三:根据同步机制的Peterson软件解决方案尝试自己编程实现线程同步机制和用于上述线程并发问题的解决,并基于程序运行时间长短将其与基于Windows互斥信号量的线程同步机制的效率展开比较。 实验要求:线程主体代码循环执行1000000次 试验一:没有线程同步机制 HANDLE thread[2]; 实验二::使用Windows互斥信号量操作函数 mutex = CreateMutex(NULL,FALSE,NULL); WaitForSingleObject(mutex,INFINITE); ReleaseMutex(mutex); 实验三:Peterson软件解决方案 void request ( int id )
1
多线程进程互斥读写XML文件
2022-02-25 14:45:34 882KB xml 多线程
1
理发店问题:假设理发店的理发室中有3个理发椅子和3个理发师,有一个可容纳4个顾客坐等理发的沙发。此外还有一间等候室,可容纳13位顾客等候进入理发室。顾客如果发现理发店中顾客已满(超过20人),就不进入理发店。 在理发店内,理发师一旦有空就为坐在沙发上等待时间最长的顾客理发,同时空出的沙发让在等候室中等待时间最长的的顾客就坐。顾客理完发后,可向任何一位理发师付款。但理发店只有一本现金登记册,在任一时刻只能记录一个顾客的付款。理发师在没有顾客的时候就坐在理发椅子上睡眠。理发师的时间就用在理发、收款、睡眠上。
2021-12-22 23:42:16 37KB 进程互斥实验 理发店问题
1
编写程序实现苹果-桔子问题。桌上有一个空盘子,只允许放一个水果。爸爸专向盘中放苹果,妈妈专向盘中放桔子,儿子专等吃盘中的桔子,女儿专等吃盘中的苹果。规定当盘空时,一次只能放一个水果。 桔子苹果问题是《操作系统》中一个典型的有关进程同步问题的例子,它主要包括4个进程,即“父亲进程“,“母亲进程”,“儿子进程”,“女儿进程”。 现在要求如下:桌上有一个空盘子,只允许放一个水果。爸爸专向盘中放苹果,妈妈专向盘中放桔子,儿子专等吃盘中的桔子,女儿专等吃盘中的苹果。规定当盘空时,一次只能放一个水果。在该题目中,4个进程是有相互影响的。比如,当母亲往盘子里放了1个桔子时,儿子就可以吃桔子而女儿则不可以。在该题目的实现中,我采用的是人工干预的方法,即先由我们自己确定某一进程,然后让系统自己执行。
2021-12-21 11:05:39 59KB 并发进程 临界区 进程同步 进程互斥
1