Articulo de referencia

Entorno de ejecución portátil de Netscape

Netscape Portable Runtime , o NSPR , es una biblioteca de capa de abstracción multiplataforma para el lenguaje de programación C. Proporciona una API uniforme para varias funcio...

Netscape Portable Runtime , o NSPR , es una biblioteca de capa de abstracción multiplataforma para el lenguaje de programación C. Proporciona una API uniforme para varias funciones del sistema operativo. [ 2 ]

Historia

NSPR fue diseñado originalmente para servir de base a la máquina virtual Java en Netscape 5. Con el tiempo, se amplió para admitir funcionalidades adicionales utilizadas en el software de servidor y cliente de Netscape. [ 3 ] NSPR sigue siendo utilizado hoy en día por Firefox, así como por muchos productos de servidor de Oracle y Red Hat. [ 2 ]

Características

Trapos

NSPR proporciona una API de subprocesos . Utiliza las capacidades de subprocesos del sistema operativo siempre que sea posible. También ofrece soporte para compartir memoria entre subprocesos, así como para crear y utilizar grupos de subprocesos. Se proporcionan bloqueos , operaciones atómicas , semáforos y monitores tanto en caché como sin caché . [ 4 ]

E/S

NSPR proporciona funciones para trabajar con archivos, directorios, tuberías anónimas y sockets de red . [ 4 ]

Direcciones de red

NSPR define un objeto de dirección de red centrado en IP . Se proporcionan funciones para traducir cadenas ASCII ( nombres DNS ) a las estructuras de direcciones de red de NSPR, independientemente de si la tecnología de direccionamiento utiliza IPv4 o IPv6. [ 3 ] [ 4 ]

Tiempo

NSPR ofrece funciones de cronometraje en dos formatos: cronometraje por intervalos y funciones de calendario.

Los temporizadores de intervalo se basan en un temporizador de resolución de 32 bits de funcionamiento libre. Su época e intervalo se pueden configurar según sea necesario.

Las horas del calendario se representan utilizando el formato de tiempo Unix de 64 bits con signo . NSPR proporciona funciones para manipular y convertir marcas de tiempo. [ 3 ] [ 4 ]

Gestión de la memoria

NSPR proporciona una API para realizar las funciones básicas malloc , calloc , realloc y free . Dependiendo de la plataforma, las funciones pueden implementarse casi por completo en el entorno de ejecución de NSPR o simplemente como adaptadores que las integran directamente en las funcionalidades del sistema operativo anfitrión. [ 3 ] [ 4 ]

Enlace

La compatibilidad con la vinculación ( carga y descarga de bibliotecas compartidas ) forma parte del conjunto de características de NSPR. En la mayoría de los casos, se trata simplemente de una mejora de las funcionalidades ofrecidas por los distintos proveedores de plataformas. [ 3 ] [ 4 ]

Estructuras de datos

NSPR proporciona implementaciones de una lista enlazada circular y una tabla hash . [ 4 ]

Véase también

Referencias

  1. Kai Engert. " [ ANUNCIO ] Lanzamiento de NSPR 4.39" . Consultado el 6 de mayo de 2026 .
  2. 1 2 "NSPR" . Documentación fuente de Firefox . Mozilla . Consultado el 27 de enero de 2024 .
  3. 1 2 3 4 5 Larry H. "Acerca de NSPR" . Documentación fuente de Firefox . Mozilla . Consultado el 27 de enero de 2024 .
  4. 1 2 3 4 5 6 7 "Referencia de la API NSPR" . Documentación fuente de Firefox . Mozilla . Consultado el 27 de enero de 2024 .
  • Sitio web oficial
  • Código fuente de NSPR