Utilice la programación en lenguaje C para implementar: el proceso principal crea dos procesos secundarios y cada uno de los tres procesos imprime sus procesos.
Los métodos de implementación en Linux y Windows son completamente diferentes. Porque las funciones para crear procesos en los dos sistemas son diferentes. La implementación en entorno Windows es muy complicada.
Déjame darte dos ejemplos para tu referencia.
Implementación en entorno Linux:
#include
int main(int argc, char *argv[])
{
int pid1,pid2;
/*Llamar a la función fork para crear el proceso 1*/
if ( ( pid1=fork() ) < 0 )
{ /*Si el valor de retorno de fork() es un número negativo, la creación del proceso falla*/
printf( "ProcessCreate Failed!"); p>
exit (-1);
}
/**
/*fork() devuelve un valor de 0, entonces el hijo El proceso se crea con éxito y el proceso actual es un proceso secundario
*/
if ( ( pid1=fork() ) == 0 )
{
printf( "b\ n" ); //El subproceso 1 genera 'b';
}
/**
/ *Crear subproceso 2
***/
if ( ( pid2=fork() ) < 0 ) /*El valor de retorno de fork() es un número negativo, entonces el La creación del proceso falla*/
{
printf( "¡Error en la creación del proceso!");
exit(-1);
}
/**
/*fork() devuelve un valor de 0, entonces el proceso hijo se crea correctamente y el proceso actual es un proceso hijo
*/
if ( ( pid2=fork() ) = = 0 )
{
printf( "c\n" ); genera 'c';
}
/*el valor de retorno de fork() es mayor que 0, entonces el proceso actual es el proceso padre*/
else
{
wait(NULL);
p>printf( "a\n" ); //El proceso padre genera 'a'; p>
exit(0);
}
return 0;
}
La implementación en entorno Windows no ha sido realizada. sido escrito. Probablemente necesites usar la función CreateProcess() incluida en el archivo de encabezado en windows.h para crear un proceso.