Debido a que estas semánticas requieren autorizar instrucciones de ensamblaje no portátiles, la mayoría de los usuarios probablemente serán autores de la biblioteca en lugar de desarrolladores de aplicaciones comunes. Futex es una llamada de sistema único que realiza muchas operaciones. Que puede parecer extraño, incluso desconcertante, si no francamente. Es decir, sin embargo, el procedimiento estándar para una llamada de sistema única: la llamada del sistema "IOCTL" contiene considerablemente más operaciones que Futex. Para otro caso, es poco probable que los programadores descubran porque GLIBC lo oculta, aunque el sistema de llamadas de socket implementa todas las funciones relacionadas con el socket. Como resultado, si los subprocesos lo acceden en un solo proceso, se puede especificar como una variable global o almacenarse en un segmento de memoria compartida si los subprocesos de varios procesos lo utilizan. Un estado actualizado en el espacio de usuario utilizando operaciones atómicas se almacena en la variable compartida. No hay necesidad de una llamada del sistema cuando el estado dice que no hay conflicto. Si la condición indica una afirmación, en el otro lado, se hace una llamada del sistema Futex para dormir la tarea de llamadas.
Ejemplo para explicar la llamada del sistema Futex () en el lenguaje C
Para comprender la llamada del sistema Futex () en el idioma C, hemos instalado Ubuntu 20.04 Sistema operativo Linux. Crear un archivo titulado "FC.C". El título del archivo se puede modificar, pero la extensión seguirá siendo la misma. Entonces, en primer lugar, abra la carcasa del Ubuntu 20 instalado.04 Sistema operativo Linux al encontrarlo en las "aplicaciones" o verificar la tecla "Ctrl+Alt+T". Una vez abierto, ejecute las instrucciones fijadas en el terminal del Ubuntu 20 instalado.04 Sistema operativo Linux.
$ nano fc.CPuede confirmar la ejecución exitosa del archivo solo si obtiene el editor GNU Nano en su pantalla. Ahora tiene que escribir el código que se muestra en la captura de pantalla adjunta. Este es uno de los ejemplos más básicos de llamada del sistema Futex ().
es un archivo que contiene declaraciones para varias funciones y macros que se requieren para recibir la entrada de las entradas y mostrar la salida en la ventana de salida del programa C. No es necesario agregar "stdio. h "porque podemos proporcionar información al programa C utilizando cualquier otro programa, como DOS, y los resultados de la tienda. El encabezado proporciona y declara una variedad de constantes y tipos simbólicos, así como una variedad de funciones. syscall () es una pequeña función de biblioteca que llama a la llamada del sistema con la cantidad de argumentos solicitados y la interfaz de lenguaje de ensamblaje dada. Una vez que comprenda el código anterior, está listo para verificar la salida. Hemos instalado un compilador GCC para la compilación del código. El compilador GNU C, o GCC, es el compilador más famoso y ampliamente utilizado entre los programadores que usan C como lenguaje de programación. GCC es un compilador accesible que viene con todas las distribuciones de Linux de forma gratuita. Ahora ejecute el comando adjunto en el terminal del Ubuntu 20.04 Sistema Linux.
$ GCC FC.CLa salida se puede ver en la imagen atacada.
Conclusión
Este artículo proporcionó una breve introducción de la llamada del sistema Futex () en el lenguaje de programación C. Tenemos un ejemplo simple y breve de una llamada del sistema Futex (). Implementar los mismos ejemplos y agregar pocos cambios puede ayudarlo a comprender el sistema del sistema Futex () en el lenguaje de programación C.