Articulo de referencia

Función nula

En informática , una función nula (u operador nulo ) es una subrutina que deja el estado del programa sin cambios. Cuando forma parte del conjunto de instrucciones de un procesa...

En informática , una función nula (u operador nulo ) es una subrutina que deja el estado del programa sin cambios. Cuando forma parte del conjunto de instrucciones de un procesador , se denomina NOP o NOOP (No Operation).

Matemáticamente, una función (de computadora)F{\displaystyle f}es nulo si y solo si su ejecución abandona el estado del programa.s{\displaystyle s}sin cambios. Es decir, una función nula es una función identidad cuyo dominio y codominio son ambos el espacio de estados.S{\displaystyle S}del programa, y ​​para el cual:

F(s)=s{\displaystyle f(s)=s}

para todos los elementossS{\displaystyle s\in S}.

También pueden encontrarse definiciones menos rigurosas. Por ejemplo, una función puede tomar un único operando, transformarlo en un nuevo tipo de dato y devolver el resultado. [ 1 ] Si bien estos usos se asemejan visualmente a las funciones de identidad, crean o modifican un valor de datos binarios y, por lo tanto, cambian el estado del programa. Desde la perspectiva del mantenimiento del software, es mejor identificar explícitamente estas alteraciones de estado "menores", ya que llamarlas funciones nulas no proporciona a los futuros responsables del mantenimiento del código ninguna información sobre sus propósitos reales.

Usos

Las funciones nulas tienen varios usos.

Durante el desarrollo de software , a menudo se utilizan funciones nulas con los mismos nombres y firmas de tipo que las funciones planificadas como stubs , es decir, como marcadores de posición no funcionales que permiten compilar y probar el código incompleto antes de completar todas las funcionalidades planificadas.

Las funciones nulas, en particular las de tipo NOP, también se utilizan para proporcionar retardos de duración indeterminada dentro de los bucles de espera . Esta es una estrategia común en los controladores de dispositivos dedicados que deben esperar una entrada externa y no tienen otras tareas que realizar mientras esperan. Dichos bucles de espera también se utilizan en aplicaciones de software en sistemas informáticos multiprocesador de mayor tamaño . Sin embargo, para los sistemas multiprocesador, un enfoque más adecuado es utilizar funciones del sistema operativo que permitan a otros procesos usar la CPU durante el período de espera.

Un tercer uso de las funciones nulas es como definición de una característica del programa que, si se crea inadvertidamente, casi siempre resulta perjudicial. Las funciones nulas no intencionadas pueden surgir durante el desarrollo de programas complejos y, al igual que el código muerto , tales casos indican fallos graves en la estructura del programa.

En un entorno de objetos, a menudo se utiliza una función o método nulo como comportamiento predeterminado de una función revectorizable o un método anulable.

Véase también

Referencias

  1. Ejemplo de una función de conversión de tipo etiquetada como "función nula": _NULLF - función nula.
  • El algoritmo de cifrado NULL y su uso con IPsec . IETF . Noviembre de 1998. doi : 10.17487/RFC2410 . RFC 2410 .Hace comentarios humorísticos sobre el algoritmo de cifrado NULL.