Solaris 9 9/04: Novedades del sistema operativo

Herramientas de desarrollo

La versión Solaris 9 contiene las siguientes mejoras en las herramientas de desarrollo.

Compatibilidad de Solaris y las interfaces de programación de aplicaciones de Linux

Algunos de los programas de software gratuito disponibles en el CD de software adicional de Solaris 8 se han integrado en el sistema operativo Solaris 9. De este modo, los desarrolladores de aplicaciones de software pueden desarrollar y compilar más fácilmente aplicaciones de software gratuitas en el sistema operativo Solaris. Las bibliotecas de software gratuito son las siguientes:

Si desea más información sobre el software gratuito disponible en los soportes de Solaris, consulte Mejoras en el software gratuito.

Elección de salida de XML para los mensajes de modernización automática

Cuando se usa la Modernización automática de Solaris desde la línea de órdenes, ahora se puede elegir la salida XML con la opción -X. Esta opción se usa al escribir programas o secuencias de shell que usen la Modernización automática de Solaris como herramienta. La salida predeterminada es texto, pero con la opción -X, se crea el XML adecuado para el análisis y la interpretación de la máquina. La salida de la opción -X es XML para todos los mensajes, incluidos mensajes de error, de advertencia, informativos y generales.

Consulte la página de comando man lucreate(1M).

SPARC: Admisión de múltiples tamaños de página

La admisión de múltiples tamaños de página (Multiple Page Size Support, MPSS) permite que un programa use cualquier tamaño de página que admita el hardware para acceder a secciones de memoria virtual. Anteriormente, sólo estaban disponibles páginas de 8–KB en las plataformas UltraSPARC para una pila o área de almacenamiento dinámico de un programa o memoria anónima asignada mediante mmap().

Se puede ajustar el rendimiento de las aplicaciones grandes y con un uso intensivo de memoria para que utilicen páginas de cualquier tamaño. Se puede usar cualquier tamaño de página que admita el hardware para pila o memoria /dev/zero privada asignada con la función mmap(). El uso de tamaños de páginas mayores puede mejorar notablemente el rendimiento de programas que usan grandes cantidades de memoria de forma intensiva.

Si desea más información, consulte las páginas de comando man pagesize(1), mpss.so.1(1), ppgsz(1), memcntl(2), mmap(2) y getpagesizes(3C).

Biblioteca de subprocesos múltiples mejorada

La versión de Solaris 9 incluye una biblioteca de proceso múltiple mejor y más rápida. Dicha biblioteca se incluía como libthread alternativas en versiones anteriores del software Solaris.

Si desea más información, consulte el documento Multithreaded Programming Guide y la página de comando man threads(3THR).

Perl Version 5.6.1

La versión de Solaris 9 dispone de una versión nueva predeterminada del Lenguaje práctico de extracción e informes (Perl). La nueva versión predeterminada de Perl es la 5.6.1. También se proporciona en Solaris 9 una versión anterior de Perl, la 5.005_03, que ya se incluía en Solaris 8.

Si desea más información, consulte la página de comando man perl(1).

Formato diff unificado

Las órdenes diff y sccs-sccsdiff se han actualizado para que sean compatibles con el formato unificado diff al estilo GNU. En este formato, las líneas de contexto sólo se imprimen una vez en la lista de diferencias.

Para obtener información sobre estas órdenes consulte las páginas de comando man diff(1) y sccs-sccsdiff(1).

Estructura sysevent

La estructura sysevent permite la notificación de eventos del sistema de nivel de núcleo central y de nivel de usuario a las aplicaciones apropiadas. Entre los eventos puede haber cambios de estado, errores y fallos de hardware y software.

Entre los componentes de la estructura sysevent están los siguientes:

El daemon syseventd es un daemon de nivel de usuario que acepta la entrega de memorias intermedias de eventos del sistema desde el núcleo. Después de entregar una memoria intermedia de evento a syseventd, el daemon intenta propagar el evento a todos los suscriptores de eventos finales interesados.

La orden syseventadm se puede usar para configurar especificaciones de eventos que se usan posteriormente para llamar a órdenes, aplicaciones o secuencias en respuesta a eventos del sistema.

Si desea información sobre el núcleo sysevent y las API de biblioteca, consulte las páginas de comando man syseventadm(1M), syseventconfd(1M) y syseventd(1M).

Consulte ddi_log_sysevent(9F) para obtener información sobre los registros de notificaciones de eventos de nivel de controlador.

Generador de números pseudoaleatorios de núcleo

El Generador de números pseudoaleatorios (PRNG) de Solaris está disponible a través de los dispositivos /dev/random y /dev/urandom. PRNG ofrece a los proveedores de software una interfaz estándar para acceder a números pseudoaleatorios para operaciones de criptografía, aplicaciones científicas y herramientas de simulación. El PRNG funciona en el núcleo central de Solaris, protege el contenido del depósito de entropía, recopila datos entrópicos de las páginas de memoria del núcleo y mantiene un elevado nivel de aleatoriedad permanentemente.

Si desea más información, consulte la página de comando man random(7D).

SPARC: Interfaz de aplicaciones a memoria remota compartida en clústers

Esta interfaz es útil para el desarrollo de aplicaciones que amplían el uso de un entorno de clústers de Sun. Al utilizar la nueva API de memoria compartida remota (RSM), puede programar sus aplicaciones para disminuir la latencia del paso de mensajes a través de interconexiones de clústers de alta velocidad. Dichas aplicaciones de clústers pueden reducir significativamente el tiempo que se necesita para responder a los eventos en una configuración de clústers.

Debe tener Sun Cluster 3.0 instalado. Las aplicaciones Sun Cluster deberán modificarse para poder aprovechar la nueva interfaz.

Si desea más información, consulte el documento Programming Interfaces Guide. También puede ver las páginas de comando man librsm(3LIB) y las páginas de comando man de “Sección 3: Funciones ampliadas de biblioteca” (3RSM) que incluyen referencias a RSM.

Versión compatible con GNU de las funciones de API de gettext()

La versión Solaris 9 proporciona una versión compatible con GNU de las funciones API gettext(), al tiempo que mantiene la compatibilidad con las funciones API gettext() de Solaris.

Si desea más información, consulte la página de comando man gettext(3C).

Atributos de archivo ampliados

Se han mejorado los sistemas de archivos UFS, NFS y TMPFS para incluir atributos de archivo ampliados que permiten a los desarrolladores de aplicaciones asociar a un archivo atributos específicos. Por ejemplo, un desarrollador de una aplicación de gestión de archivos para un sistema de ventanas puede decidir asociar un icono a un archivo.

Si desea más información, consulte Mejoras en el sistema de archivos.

Nueva clase de programación con prioridad fija (FX)

El programador FX proporciona una política de programación a los procesos que requieren un control de usuario o de aplicación sobre las prioridades de programación. Consulte Mejoras en los recursos del sistema.

Protocolo dinámico de configuración del sistema (DHCP)

El servicio de Protocolo dinámico de configuración del sistema (DHCP) permite a los sistemas anfitriones recibir direcciones IP e información de configuración de red Esta información se recibe de un servidor de red en tiempo de arranque. Antes de la versión de Solaris 8 7/01, los datos de configuración de DHCP sólo se podían almacenar en archivos de texto o NIS+. Ahora, se ha rediseñado el acceso a los datos del servicio de DHCP de Solaris para que use una estructura modular. El DHCP de Solaris proporciona una API que permite al usuario grabar objetos compartidos que admitan todas las prestaciones para almacenar datos de DHCP.

El documento Solaris DHCP Service Developer’s Guide proporciona un resumen de la estructura de acceso de datos que utiliza el DHCP de Solaris. así como pautas genéricas para los desarrolladores. Incluye también un listado de las funciones de API que se pueden usar para escribir un módulo que admita un nuevo almacén de datos.

Para obtener más información, consulte Solaris DHCP Service Developer’s Guide.

Solaris Web Start Wizards SDK 3.0.1

Los asistentes Web Start Wizards simplifican la instalación, configuración y administración de aplicaciones Java nativas de Solaris y las aplicaciones que no son Java. Con Web Start Wizards los desarrolladores pueden empaquetar juntas las versiones para Solaris y Microsoft Windows de sus aplicaciones. El asistente de instalación gestiona las peculiaridades de cada plataforma.

Web Start Wizards SDK 3.0.1 se incluye en cada ejemplar de la versión de Solaris 9. SDK 3.0.1 se puede instalar mediante el programa de instalación de Solaris Web Start.

Depurador modular (mdb)

mdb es una utilidad extensible para la depuración y edición a bajo nivel del sistema operativo activo, que puede, asimismo, depurar volcados por parada del sistema, volcados del núcleo central por procesos de usuario y archivos objeto. En la versión de Solaris 9, mdb proporciona nuevas funciones de depuración simbólica para el núcleo de Solaris y nuevas órdenes de depuración de núcleo e incorpora, también, funciones nuevas para el examen y control de procesos de usuario activos en ejecución, así como la posibilidad de examinar archivos de disco y dispositivos de formato básico.

El documento Solaris Modular Debugger Guide y la página de comando man mdb(1) proporcionan más información.

Mejoras de audio

En el sistema operativo Solaris 9 se han agregado nuevos directorios de audio. El directorio /usr/include/audio contiene archivos de cabeceras de audio para aplicaciones. El formato del archivo de audio tiene un nuevo archivo de cabecera, /usr/include/audio/au.h, y una página de comando man, au(4).

El directorio /usr/share/audio es un nuevo depósito de archivos de audio diversos, donde se han trasladado los archivos de audio del directorio /usr/demo/SOUND/sounds. Se ha creado un enlace simbólico desde /usr/demo/SOUNDS/sounds a /usr/share/audio/samples/au que permite a las aplicaciones y secuencias actuales ejecutarse sin errores.

Se han solucionado múltiples defectos de los módulos de núcleo de audio para mejorar la fiabilidad.

Si desea más información, consulte System Administration Guide: Basic Administration.

Llamada al sistema vectorizada: sendfilev()

La llamada al sistema vectorizada sendfilev() permite obtener un mejor rendimiento para enviar datos desde las memorias intermedias o archivos de las aplicaciones. Por ejemplo, en aplicaciones de Web, un servidor Web puede construir una respuesta HTTP en una única llamada al sistema. Dicha respuesta HTTP incluye cabecera, datos y final, así como inclusiones del lado de servidor. Esta función proporciona un rendimiento óptimo con el Acelerador y antememoria de red (NCA). Además, sendfilev() permite devolver bloques múltiples en la respuesta, procedentes de varios archivos.

Si desea más informacion, consulte las páginas de comando man sendfilev(3EXT) y sendfile(3EXT).

Verificación de la compatibilidad del archivo con la utilidad appcert

La utilidad appcert comprueba la conformidad del archivo de un objeto con el ABI de Solaris. La conformidad con el ABI de Solaris aumenta en gran medida la probabilidad de que la aplicación sea compatible con futuras versiones del software de Solaris.

Para obtener más información, consulte “Using appcert” in the Programming Interfaces Guide.

Interfaz de programación de aplicaciones de servicios de seguridad genérica (GSS-API)

La Interfaz de programación de aplicaciones de servicios de seguridad genérica (GSS-API) es una estructura de seguridad que permite proteger los datos que transmiten las aplicaciones.

Consulte Mejoras en la seguridad.