举一反三
- 桌子上有一个盘子,每次只能放一个水果。爸爸专向盘子中放苹果,妈妈专向盘子中放橘子,一个儿子专等吃盘子中的橘子,一个女儿专等吃盘子中的苹果。用P、V操作实现他们之间的同步机制。
- 桌子上有一个盘子,每次只能向其中放入一个水果。爸爸专向盘子中放苹果,妈妈专向盘子中放橘子,儿子专等吃盘子中的橘子,女儿专等吃盘子中的苹果。只有盘子为空时,爸爸或妈妈才可向盘子中放一个水果;仅当盘子中有自己需要的水果时,儿子或女儿可以从盘子中取出。
- 桌子上有一只盘子,盘子中只能放一只水果。爸爸专向盘子中放苹果,女儿专等吃盘子中的苹果。用PV操作实现他们之间的同步机制。
- 桌上有一只盘子,每次只能放入一个水果。爸爸专向盘中放苹果(apple),妈妈专向盘中放橘子(orange),儿子专等吃盘中的橘子,女儿专等吃盘中的苹果。只有盘子为空时,爸爸或妈妈才可向盘子中放一个水果;仅当盘子中有自己需要的水果时,儿子或女儿可以从盘中取出。请用P、V操作或管程来实现爸爸、妈妈、儿子、女儿之间的同步和互斥关系。
- 2、桌子上有一个盘子,最多可容纳N个水果,每次只能放入或取出一个水果.爸爸、妈妈专向盘子中放水果;
内容
- 0
桌子上有一个空盘子,允许存放一只水果,爸爸可以向盘中放苹果,妈妈向盘子中放橘子,女儿专门吃盘子中的苹果,儿子专门吃盘子中的橘子。规定当盘子空的时候一次只能放一只水果,请用信号量实现他们之间的同步问题。
- 1
桌上有一只盘子,每次只能放入一只水果。father削完苹果放入盘子, mother剥完桔子放入盘子,son专等吃盘中的桔子, daughter专等吃盘中的苹果。盘子空时father或mother可向盘中放一只水果,仅当盘中有自己需要的水果时, son或 daughter可从中取出,用wait、signal操作进行管理使这四个进程能正确地并发执行 。请写出上面的代码描述。
- 2
【1】桌上有一空盘,允许存放一只水果。爸爸可向盘中放苹果,也可向盘中放桔子,儿子专等吃盘中的桔子,女儿专等吃盘中的苹果。规定当盘空时一次只能放一只水果供吃者取用,请用P、V原语实现爸爸、儿子、女儿三个并发进程的同步
- 3
桌上有一空盘,最多允许存放一个水果。爸爸可向盘中放一个苹果或放一个桔子,儿子专等吃盘中的桔子,女儿专等吃苹果。 试用P、V操作实现爸爸、儿子、女儿三个并发进程的同步。
- 4
桌子上有一个可以装N个水果的果盘,爸爸往盘子中放水果(苹果或桔子),儿子从盘子中拿桔子,女儿从盘子中拿苹果,同一时间只能有一个人对水果盘进行操作。 现在有3个进程,dad,daughter,son,使用信号量empty=N,orange=0,apple=0,mutex=1 请用wait(empty), signal(empty) ,wait(orange) 等语句填空; 不要填分号,只填信号量操作即可 Dad(){ while(1){ [填空1] [填空2] //果盘互斥 将水果放入盘子; [填空3] if(放入的是桔子) [填空4] ; else [填空5] ; } } Son(){ while(1){ [填空6] ; [填空7] ; 从盘子中取桔子; [填空8]; [填空9] ; 吃桔子 } } Daughter(){ while(1){ [填空10] ; [填空11]; 从盘子中取苹果; [填空12]; [填空13]; 吃苹果 } }