#include<stdio.h>main(){int p1,p2;while ((p1=fork())==-1); if(p1==0) putchar('b') ; else { while((p2=fork())==-1) ;if(p2==0) putchar('c');else putchar('a'); }}程序怎么解释?运行结果是什么?
2 回答
FFIVE
TA贡献1797条经验 获得超6个赞
fork() 创建子进程
根据fork()的返回值可以判断该处是在父进程还是子进程的代码里。
while((p1=fork())==-1);
是创建子进程,失败重复,直到创建成功一个为止;
这时在创建的p1子进程里输出'b';
然后,同理,在创建的p2子进程里输出‘c’
最后,父进程输出'a'
这个程序就是用一个父进程创建了两个子进程,分别在每个进程里输出一个不同的字符以作区别。
在终端看来,就是输出了三个字符,但顺序不确定。
SMILET
TA贡献1796条经验 获得超4个赞
操作系统(OS)学的基本上都比较低层了,大致就是在计算机硬件上上搭载一个平台,并且给予上层接口,使上层的软件可以操作计算机~~
操作系统存在广泛性,从小型机到大型机使用的系统都是不同的,微机上常见的OS诸如Linux,Mac OS X,Windows,DOS,Solaris,BSD,OS/2等,一般中型机以上的就都是运行Unix或者类Unix系统了~~
目前Top500的机子里大多数使用的都是Linux系统~~
你的串号我已经记下,采纳后我会帮你制作
添加回答
举报
0/150
提交
取消