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

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

[11]3个月前 (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://www.pythonopen.com/?id=6063

相关文章

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

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

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

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

[11][4][单选]下列哪一种中断与当前运行的进程有关

故障性中断时钟中断I/O 中断程序性中断答案程序性中断解析故障性中断是由掉电、存储器校验错等硬件故障...

[11][5][单选]进程有三种基本状态,在允许抢占并采用高优先级优先调度算法的系统中,一个进程从就绪状态转换为运行状态的可能事件是

该进程创建完成进入就绪队列并具有最高优先级该进程等待从键盘上读取文件数据该进程的优先级由于某原因被降...

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

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

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

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