La función execvp () pertenece a la familia exec. En el tema de hoy, discutiremos las características y la aplicación de la función execvp () bajo la familia exec.
La función de la familia ejecutiva en el lenguaje C nos ayuda a ejecutar otros programas dentro de nuestro programa. Para hacer eso desde mi programa, utilizamos un conjunto de funciones llamado Exec Family of Function y estos están en el programa Linux.
Aplicación de la función ExecVP ()
Si queremos ejecutar un ping del programa, podemos aplicar esto a través de la función EXECVP (). Para esto, tenemos que usar una matriz. La letra 'V' utilizada para la función Execvp () significa Vector.
Sintaxis
La función de sintaxis para execvp ():
int execvp (const char *file, char *const)Aquí, el primer parámetro es un puntero de archivo que apunta un archivo que se ejecutará en el programa.
El segundo parámetro es una constante de puntero que es de carácter de tipo y se utilizará como terminador nulo.
Programación Ejemplo 1
Aquí, veremos cómo funciona realmente la función EXCVP () en nuestro programa.
#incluirProducción
Explicación
En este ejemplo de programación, si queremos hacer ping el "Google.com ”con la ayuda de la función execvp () En la plataforma Linux, debemos incluir un archivo de encabezado llamado UNISTD.h en nuestro programa.
Para ejecutar la función ExecVP (), tenemos que declarar una matriz (en realidad matriz de cadena) llamada AR [] e inicializar algunos valores como "Ping", "Google.com ”y nulo.
Ahora, si intentamos pasar la variedad de argumentos dentro de la función paréntesis de la función EXCVP (), notaremos que está haciendo ping a Google.com como salida.
Programación Ejemplo 2
Aquí mostramos otra aplicación de la función ExecVP ().
#Include // incluyendo este archivo para la plataforma LinuxProducción
Explicación
En este ejemplo de programación, veremos si la función ExecVP () devolverá el valor falso. Si la función execvp () devuelve el valor falso, entonces imprimió el valor de "Errno " que es 2 e imprime el mensaje que "El fichero o directorio no existe".
Si la función EXECVP () devuelve el valor real, cualquier declaración después de execVP no se ejecutará. Como sabemos por las características de la función ExecVP (), no se ejecuta ninguna línea cuando la función Execvp () toma el control del programa.
Programación Ejemplo 3
En este ejemplo de programación, veremos la aplicación importante de la función ExecVP () relacionada con la bifurcación o el proceso.
#incluirProducción
Explicación
Al igual que todas las funciones de la familia EXEC en C, la función EXECVP () puede ejecutar otros programas dentro de nuestro programa.
En este ejemplo de programación, declaramos una matriz de caracteres o un nombre de cadena arg_ls []. Dentro de esta cadena, inicializamos algunos valores y nulo también. Luego, llamamos a otro proceso llamado Fork ().
Aquí, la función execvp () devuelve el valor real. Entonces, la función Fork () puede ejecutar con éxito su acción. Si no, entonces irá al programa principal.
Programación Ejemplo 4
Aquí veremos otra característica de la función ExecVP ().
#incluirProducción
Explicación
El ejemplo de programación anterior es la versión modificada del ejemplo de programación 3. Aquí, veremos si Function Fork () devolverá '0'. Luego, el proceso infantil ejecutará su código y está controlado por "LS-" L dominio. El valor que devolverá execvp () se asigna a una variable nombrada sts_cd. Si sts_cd Verá el valor -1, entonces entenderemos que es un error de función execvp (). De lo contrario, esta función toma el control sobre el resto del programa.
Conclusión
Desde la discusión anterior sobre la implementación de ExecVP () en la familia EXEC, hemos llegado a la conclusión de que reemplaza una imagen de proceso con una nueva imagen en nuestra RAM (memoria de acceso aleatorio) para ejecutar el nuevo proceso. En realidad, esta función ayuda a nuestro sistema operativo a administrar todos los procesos que están listos para ejecutar el procesador con menos tiempo.