一个计算机操作系统题,求解答!!!!

问题问的是z可能的取值,答案给了z可能取1,请问1是怎么来的???... 问题问的是z可能的取值,答案给了z可能取1,请问1是怎么来的??? 展开
 我来答
C巨蟹座C
2020-07-29 · 超过20用户采纳过TA的回答
知道答主
回答量:85
采纳率:50%
帮助的人:18.1万
展开全部
我是这样理解的,p1进程执行到if(x>0)后,中断执行p2进程的x=-1;然后中断返回执行z=x+y;此时其中x=-1;y=2;得出z=1;
--------------------------------
看了另一位老哥的回答中题主的追问,我算是知道题主迷惑的点在哪里了.你先顺序执行p1进程到if判断结束,此时由于x=1;所以转入z=x+y执行,但在执行这条语句前,系统中断执行了p2进程的x=-1;然后中断返回,此时x就已经等于-1了.可以好好理解一下书上的进程的并发与异步.
石卒冫水
2020-07-29 · TA获得超过5985个赞
知道大有可为答主
回答量:2.1万
采纳率:36%
帮助的人:1852万
展开全部
并发可能交替执行,两边都有一个x,可能出现了-1+2的情况,所以z可能出现1的结果。
更多追问追答
追问
不是if x>0吗?x=-1不就小于0了吗
追答
如果是在x=1时进行了判断,之后中断,走了p2,然后中断p2,返回p1,这时同名变量x内保存的是-1
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式