El siguiente programa en C se ejecuta en un sistema Unix/Linux:
#include <unistd.h> int main() { int i; for (i = 0; i < 10; i++) if (i % 2 == 0) fork(); return 0; }
El número total de procesos secundarios creados es __________.
Nota: esta fue una pregunta de tipo numérico.
(A) 31
(B) 63
(C) 5
(D) 6
Respuesta: (A)
Explicación: La condición “si” se cumplirá solo para i = 0, 2, 4, 6, 8. Entonces, «fork()» llamará 5 veces.
El número total de procesos creados es,
= 2number of fork()
Siempre hay un solo proceso principal de estos procesos y el resto serán procesos secundarios.
Por lo tanto, el número de procesos secundarios creados es,
= 2number of fork() - 1 = 25 - 1 = 32 - 1 = 31
Entonces, la opción (A) es correcta.
Cuestionario de esta pregunta
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA