当前位置:首页 > 四级网络工程师 > [11] > 正文内容

[11][9][单选]对于如下 C 语言程序

[11]1年前 (2025-02-02)
int main(
{
    printf("Hello World\n";
    fork();
    printf("Hello World\n");
    fork();
    printf("Hello World\n";
}

在 UNIX 操作系统中正确编译链接后,其正确的运行结果是

共打印出 6 行 Hello World

共打印出 7 行 Hello World

共打印出 8 行 Hello World

共打印出 9 行 Hello World


答案

共打印出7行Hello World


解析

`fork()`函数执行的特点是,只被调用一次,却会返回两次,一次是在调用进程(父进程)中,一次是在新创建的子进程中。如果标记第1个`fork()`函数为f1,第2个`fork()`函数为f2。则父进程调用f1产生的子进程代码与父进程一样,但起始执行指令是从f1开始执行的,所以共打印行数为1+f1+1+f2 +1行。调用f1执行后打印行数为1+f2+1行,调用f2执行后打印行数为1行,所以共打印行数为7行。 【涉及考点】 第3章 进程线程模型


转载请注明出处。

本文链接:http://pythonopen.com/?id=6063

相关文章

[11][1][单选]从计算机系统发展角度来看,操作系统的主要作用是提供

人机交互接口软件开发基础第一道安全防线虚拟机和扩展机答案虚拟机和扩展机解析选项 A 是从计算机应用的...

[11][3][单选]在操作系统中,既可以在内核态下运行又可以在用户态下运行的指令是

置程序计数器清指令寄存器清溢出标志置移位方向标志答案置移位方向标志解析特权指令包括输入输出指令、停机...

[11][6][单选]下列进程控制块的组织方式中,哪一种是错误的

B + 树方法线性方法索引方法链接方法答案B + 树方法解析进程由进程控制块、数据和进程控制块(PC...

[11][7][单选]某单核处理机的计算机系统中共有 20 个进程,那么,处于阻塞状态的进程最多有几个

120190答案20解析当该单核处理器的计算机系统因为竞争资源而发生死锁时,有可能20个进程全部阻塞...

[11][8][单选]系统中有多个进程分别处于就绪状态、运行状态和阻塞状态,下列哪一个进程的状态变化必然引起另一个进程的状态发生变化

运行状态—阻塞状态阻塞状态—就绪状态阻塞状态—挂起状态就绪状态—运行状态答案运行状态—阻塞状态解析选...

[11][11][单选]在民航网络订票系统中,相同航班订票人发起的订票进程其相互之间的关系是

同步关系互斥关系前驱关系后驱关系答案互斥关系解析相同航班中的机票相对订票进程而言是临界资源,是要互斥...