Nuove funzioni dell'ambiente operativo Solaris 9 12/02

Funzioni di Solaris 9 per gli sviluppatori di software

Tool di sviluppo

Descrizione 

Compatibilità delle API Solaris e Linux

Alcuni software freeware che erano inclusi nel CD Solaris 8 Software Companion sono ora integrati nell'ambiente operativo Solaris 9. Ciò significa che è ora possibile sviluppare e compilare più facilmente le applicazioni freeware nell'ambiente operativo Solaris. Le librerie freeware includono:

  • glib

  • GTK+

  • Jpeg

  • libpng

  • Tcl/Tk

  • libtif

  • libxm12

Per maggiori informazioni sul freeware incluso in Solaris, vedere Freeware.

Output in formato XML per i messaggi di Live Upgrade

Quando si utilizza Solaris Live Upgrade dalla riga di comando, è ora possibile impostare la visualizzazione dell'output in formato XML con l'opzione -X. Questa opzione può essere usata nella scrittura dei programmi e degli script che utilizzano il tool Solaris Live Upgrade. L'output predefinito è in formato testo, ma l'opzione -X permette di creare un output XML adatto per le operazioni di analisi e interpretazione eseguite dal sistema. Con l'opzione -X, l'output viene visualizzato in XML per tutti i messaggi di errore, di avvertimento, di carattere informativo o di natura generale.

Vedere la pagina man lucreate(1M).

SPARC: Supporto di pagine di più dimensioni

La funzione MPSS (Multiple Page Size Support) permette ai programmi di usare pagine di qualunque dimensione supportata dall'hardware per accedere alle diverse parti della memoria virtuale. In precedenza, per gli stack, gli heap o la memoria anonima mappata con la funzione mmap() sulle piattaforme UltraSPARC erano disponibili solo pagine di 8 KB.

È possibile ottimizzare le prestazioni delle applicazioni complesse che usano grandi quantità di memoria usando pagine di qualunque dimensione. È possibile usare qualunque dimensione supportata dall'hardware per lo stack, l'heap o la memoria privata /dev/zero che sia mappata con la funzione mmap(). L'uso di pagine più ampie può migliorare sensibilmente le prestazioni dei programmi che utilizzano grandi quantità di memoria.

Per maggiori informazioni, vedere le pagine man pagesize( 1), mpss.so.1( 1), ppgsz( 1), memcntl( 2), mmap( 2) e getpagesizes( 3C).

Nuova libreria di multithreading

Solaris 9 include una nuova libreria di multithreading più veloce. Questa libreria era disponibile come libthread alternativo nelle precedenti release di Solaris.

Per maggiori informazioni, vedere il manuale Multithreaded Programming Guide e la pagina man threads (3THR).

Perl Versione 5.6.1

Solaris 9 include una nuova versione predefinita del linguaggio Perl (Practical Extraction and Report Language). La nuova versione è la 5.6.1. Include inoltre una versione precedente, la 5.005_03. Questa versione era inclusa in Solaris 8. 

Per maggiori informazioni, vedere la pagina man perl(1).

Formato unificato per diff

I comandi diff e sccs-sccsdiff supportano ora il formato unificato per diff adottato da GNU. In questo formato, le righe di contesto vengono visualizzate una sola volta nell'elenco delle differenze.

Per informazioni su questi comandi, vedere le pagine man diff(1) e sccs-sccsdiff (1).

Il framework Sysevent

Il framework sysevent permette la notifica degli eventi di sistema a livello del kernel e a livello dell'utente alle applicazioni appropriate. Gli eventi possono includere le modifiche di stato dell'hardware e del software, gli errori e i guasti.

Il framework sysevent comprende i seguenti componenti:

  • Il daemon syseventd

  • Il comando syseventadm

  • API delle librerie usate per l'estrazione dei dati sugli eventi e la registrazione a sysevent

  • Un'interfaccia per gli eventi di sistema a livello del driver, ddi_log_sysevent

syseventd è un daemon eseguito a livello dell'utente che accetta i buffer di eventi di sistema trasmessi dal kernel. Quando un buffer di eventi viene inviato a syseventd, quest'ultimo propaga tale evento a tutti i processi interessati.

Il comando syseventadm permette di configurare le specifiche degli eventi. Le specifiche configurate vengono quindi usate per richiamare comandi, applicazioni o script in risposta agli eventi di sistema.

Per informazioni sul kernel sysevent e sulle API delle librerie, vedere le nuove pagine man syseventadm (1M), syseventconfd (1M) e syseventd(1M).

Per informazioni sul logging degli eventi notificati a livello dei driver, vedere ddi_log_sysevent(9F).

Generatore di numeri pseudo-casuali nel kernel

Il generatore di numeri pseudo-casuali di Solaris (PRNG) è disponibile attraverso i dispositivi /dev/random e /dev/urandom. PRNG offre agli ISV un'interfaccia standard che genera numeri pseudo-casuali per le operazioni di cifratura, le applicazioni scientifiche e i tool di simulazione. L'utility PRNG opera a livello del kernel di Solaris. Questa funzione protegge il contenuto dell'entropy pool. Il software PRNG raccoglie i dati entropici dalle pagine di memoria del kernel e mantiene sempre un alto livello di casualità.

Per maggiori informazioni, vedere la pagina man random( 7D).

SPARC: Interfaccia applicativa per la memoria condivisa remota sui cluster

Questa interfaccia è utile per lo sviluppo di applicazioni che estendono l'uso degli ambienti Sun Cluster. Con la nuova API RSM (Remote Shared Memory) è infatti possibile programmare le applicazioni in modo da ridurre la latenza nell'inoltro dei messaggi sulle interconnessioni ad alta velocità dei cluster. Questo tipo di applicazioni può ridurre significativamente il tempo necessario per rispondere agli eventi in una configurazione cluster.

L'utilizzo di questa funzione richiede l'installazione di Sun Cluster 3.0. Occorre inoltre modificare le applicazioni esistenti in modo che utilizzino la nuova interfaccia.  

Per maggiori informazioni, vedere il documento Programming Interfaces Guide. Vedere inoltre le pagine man librsm(3LIB) e “Section 3: Extended Library Functions” (3RSM).

Versione compatibile con GNU delle funzioni delle API gettext()

Solaris 9 include una versione compatibile con GNU delle funzioni della API gettext() che mantiene la compatibilità all'indietro con le funzioni della API di Solaris.

  • Le funzioni esistenti di libc possono ora gestire sia i file di messaggi di Solaris che quelli di GNU. Le funzioni esistenti sono le seguenti:

    • gettext()

    • dgettext()

    • dcgettext()

    • textdomain()

    • bindtextdomain()

  • Le nuove funzioni compatibili con GNU di libc possono gestire i file di messaggi di GNU o compatibili. Le nuove funzioni sono le seguenti:

    • ngettext()

    • dngettext()

    • dcngettext()

    • bind_textdomain_codeset()

  • Inoltre, le utility msgfmt e gettext possono ora gestire sia i file di messaggi Solaris che quelli compatibili con GNU.

Per maggiori informazioni, vedere la pagina man gettext (3C).

Estensione degli attributi dei file

I file system UFS, NFS e TMPFS includono ora attributi estesi per i file. Questi attributi permettono agli sviluppatori di applicazioni di associare attributi specifici ai file. Ad esempio, all'interno di un'applicazione di gestione dei file per un sistema a finestre, è possibile associare un'icona specifica a un determinato file.  

Per maggiori informazioni, vedere Miglioramenti ai file system.

Nuova classe di scheduling a priorità fissa (FX)

Lo scheduler FX permette di organizzare i processi che richiedono un controllo delle priorità di pianificazione, da parte dell'applicazione o dell'utente. Vedere Miglioramenti delle risorse del sistema.

DHCP (Dynamic Host Configuration Protocol)

Il servizio DHCP (Dynamic Host Configuration Protocol) permette ai sistemi host di ricevere gli indirizzi IP e le informazioni sulla configurazione della rete. Queste informazioni vengono ricevute dal server di rete nella fase di boot. Prima di Solaris 8 7/01, i dati di configurazione per DHCP potevano essere memorizzati solo in file di testo o nei database NIS+. Ora, l'accesso ai dati nel servizio DHCP di Solaris è stato riprogettato per l'uso di un framework modulare. Solaris DHCP comprende una API che permette di scrivere oggetti condivisi che supportino qualunque facility di memorizzazione dei dati DHCP.  

Il manuale Solaris DHCP Service Developer's Guide contiene una descrizione generale del framework di accesso ai dati usato da Solaris DHCP. Fornisce inoltre una serie di direttive generali per gli sviluppatori. Infine, contiene un elenco delle funzionalità delle API che permettono di scrivere i moduli a supporto dei nuovi data store.

Per maggiori informazioni, vedere il manuale Solaris DHCP Service Developer's Guide.

Solaris “Web Start Wizards” SDK 3.0.1

La funzione “Web Start Wizards” di Solaris semplifica l'installazione, la configurazione e l'amministrazione delle applicazioni native Solaris, Java e non Java. Grazie a Web Start Wizards, gli sviluppatori possono commercializzare in modo congiunto le versioni Solaris e Microsoft Windows delle applicazioni. La procedura di installazione gestisce le caratteristiche specifiche della piattaforma.  

L'SDK Web Start Wizards 3.0.1 è ora incluso nella release Solaris 9. SDK 3.0.1 può essere installato usando il programma Web Start di Solaris.  

Debugger modulare (mdb)

mdb è un'utility espandibile che permette il debugging e la modifica a basso livello del sistema operativo in uso. Permette inoltre di eseguire il debugging dei crash dump del sistema, dei processi degli utenti, dei core dump dei processi degli utenti e dei file oggetto. In Solaris 9, mdb offre un nuovo supporto del debugging simbolico per il kernel di Solaris e nuovi comandi per il debugging del kernel. L'utility mdb offre inoltre nuove funzioni per l'esame e il controllo dei processi utente in esecuzione, oltre alla possibilità di esaminare i file e i dispositivi “raw” sul disco.

Per maggiori informazioni, vedere il manuale Solaris Modular Debugger Guide e la pagina man mdb( 1).

Nuove funzioni audio

La release Solaris 9 comprende nuove directory per le funzioni audio. La directory /usr/include/audio contiene i file header delle applicazioni audio. Il formato dei file audio contiene un nuovo file di intestazione, /usr/include/audio/au.h, e la pagina man au(4).

La directory /usr/share/audio contiene vari tipi di file audio. Ad esempio, sono stati spostati in questa directory i file audio precedentemente residenti in /usr/demo/SOUND/sounds. È stato creato un collegamento simbolico da /usr/demo/SOUNDS/sounds a /usr/share/audio/samples/au. Questo collegamento permette di eseguire senza errori le applicazioni e gli script correnti.

Sono state apportate numerose correzioni ai moduli del kernel audio per migliorarne l'affidabilità.  

Per maggiori informazioni, vedere il manuale System Administration Guide: Basic Administration.

Chiamata di sistema vettoriale sendfilev()

sendfilev() è una chiamata di sistema vettoriale di sendfile che permette di ottenere prestazioni migliori nell'invio dei dati dai buffer o dai file delle applicazioni. Ad esempio, permette ai Web server di costruire le risposte HTTP con un'unica chiamata di sistema. Tali risposte HTTP includono l'header, i dati, una parte conclusiva (trailer) ed elementi “include” del server. Questa funzione assicura prestazioni ottimali con l'NCA (Network Cache and Accelerator) di Solaris. Inoltre, sendfilev() permette la restituzione di risposte formate da più segmenti provenienti da diversi file.

Per maggiori informazioni, vedere le pagine man sendfilev (3EXT) e sendfile(3EXT).

Verifica della conformità dei file con l'utility appcert

L'utility appcert verifica la conformità dei file oggetto alla ABI Solaris. La conformità alla ABI Solaris aumenta notevolmente la probabilità che un'applicazione sia compatibile con le future release di Solaris.

Per maggiori informazioni, vedere la sezione " Using appcert" del manuale Programming Interfaces Guide.

GSS-API (Generic Security Services Application Programming Interface)

La GSS-API (Generic Security Services Application Programming Interface) è un framework di sicurezza che permette alle applicazioni di proteggere i dati trasmessi.

Vedere Miglioramenti alla sicurezza.

Tool di gestione aziendale basati sul Web

Descrizione 

Solaris WBEM Services 2.5

Solaris WBEM Services 2.5 è l'implementazione di Sun Microsystems del WBEM (Web-Based Enterprise Management). WBEM è un insieme di tecnologie di gestione e di tecnologie legate a Internet. Queste tecnologie hanno lo scopo di unificare la gestione degli ambienti di elaborazione aziendali. Sviluppata dalla Distributed Management Task Force (DMTF), la funzione WBEM permette di realizzare un set integrato di tool di gestione basati sugli standard. Questi tool supportano e promuovono le tecnologie del World Wide Web. Solaris WBEM Services è stato aggiornato alla versione 2.5 in Solaris 9.

Per maggiori informazioni su WBEM, vedere il manuale Solaris WBEM SDK Developer's Guide.

Nuova API di batching WBEM

La API del client WBEM (Web-Based Enterprise Management) Java supporta ora il batching di più operazioni CIM (Common Interface Model) eseguite da un client in un singolo ciclo di richiesta e risposta. Il gestore di oggetti CIM può inoltre accettare e servire le richieste del batch. Questa funzione è definita nel documento Distributed Management Task Force (DMTF) Specification for CIM Operations Over HTTP.

Il risultato è una riduzione del numero di chiamate remote effettuate dal client. 

Per maggiori informazioni, vedere il manuale Solaris WBEM SDK Developer's Guide.

Nuovo CIM Workshop WBEM

Il CIM WorkShop offre un'interfaccia utente grafica per il tool di sviluppo WBEM. Questa utility è destinata agli sviluppatori di strumentazione, di sistemi e di applicazioni di rete. Con il CIM WorkShop, gli sviluppatori possono visualizzare e creare classi e istanze WBEM.  

In CIM WorkShop è possibile: 

  • Visualizzare e selezionare gli spazi dei nomi

  • Aggiungere ed eliminare gli spazi dei nomi

  • Visualizzare, creare, modificare ed eliminare le classi

  • Aggiungere ed eliminare proprietà, qualificatori e metodi nelle nuove classi

  • Visualizzare, creare ed eliminare le istanze

  • Visualizzare, modificare ed eliminare i valori delle istanze

  • Attraversare le associazioni

  • Eseguire i metodi

  • Visualizzare la guida contestuale

Le nuove funzioni disponibili in CIM Workshop sono le seguenti: 

  • Una guida contestuale aggiornata e corretta.

  • La possibilità di attraversare le associazioni.

  • La possibilità di registrare e visualizzare informazioni sugli eventi relativi a una classe selezionata, facilitando il debugging delle applicazioni che utilizzano gli eventi. Questa nuova funzione è disponibile solo se viene selezionato il protocollo RMI.

  • La possibilità di eseguire query in formato WQL (WBEM Query Language) per ricercare e visualizzare informazioni WBEM.

Per maggiori informazioni, vedere il manuale Solaris WBEM SDK Developer's Guide.

Supporto di eventi di indicazione dei processi WBEM

Attualmente, i servizi di eventi WBEM permettono alle applicazioni client di ricevere gli indicatori in modo asincrono quando si verificano le condizioni specificate. Tuttavia, le uniche indicazioni supportate sono quelle riferite al ciclo di vita delle classi. Le indicazioni relative al ciclo di vita sono quelle riguardanti la modifica, la creazione e l'eliminazione delle istanze. 

Benché questa classe di indicatori sia molto flessibile ed estesa, è possibile che la strumentazione utilizzata debba pubblicare indicazioni non appartenenti a questa categoria. Per questa ragione, la DMTF ha introdotto una gerarchia degli indicatori dei processi in aggiunta alla gerarchia preesistente. Gli indicatori dei processi per i servizi WBEM possono ora gestire questa gerarchia aggiuntiva.

Gli indicatori dei processi per i servizi WBEM rappresentano l'implementazione di Sun Microsystems della parte del modello degli eventi riguardante le indicazioni dei processi. La classe degli indicatori di processo è un sovrainsieme degli indicatori pubblicati dalla strumentazione. Tale sovrainsieme include anche gli indicatori relativi al ciclo di vita.  

Il processo di registrazione per la ricezione degli indicatori dei processi è uguale a quello utilizzato per gli indicatori relativi al ciclo di vita. 

Per maggiori informazioni, vedere il manuale Solaris WBEM SDK Developer's Guide.

Comando mofcomp di WBEM

Il compilatore MOF (Managed Object Format) (mofcomp) permette ora di specificare uno spazio dei nomi nella riga di comando. Se lo spazio dei nomi specificato non esiste, ne viene creato uno con il nome designato.

Inoltre, il compilatore MOF genera ora i file sorgenti per le classi e le interfacce Java. Questa funzione permette di usare le interfacce Java standard al posto dei costrutti e delle API del modello di oggetti CIM. 

Per ogni CIMClass vengono generati un'interfaccia e un file di classe. L'interfaccia generata permette di creare diverse implementazioni mantenendo l'interoperabilità.

Per maggiori informazioni, vedere il manuale Solaris WBEM SDK Developer's Guide.

Nuovi programmi di esempio per l'SDK Java WBEM

Il Java WBEM Software Developer's Kit (SDK) include nuovi esempi di applet e programmi Java. Tali applet e programmi sono installati in /usr/demo/wbem.

I programmi esemplificativi del Java WBEM SDK illustrano l'uso degli eventi, delle query e del batching e possono essere usati come base per lo sviluppo di altri programmi. 

Per maggiori informazioni, vedere il manuale Solaris WBEM SDK Developer's Guide.

Toolkit Sun WBEM per sviluppatori

L'SDK WBEM (Web-Based Enterprise Management) di Solaris include una serie di API utili per la creazione di applicazioni. Queste applicazioni basate su WBEM possono accedere ai dati e gestire le risorse dell'ambiente operativo Solaris. L'SDK WBEM di Solaris include anche il CIM WorkShop. Il CIM WorkShop è un'applicazione Java che può essere usata per la creazione di applicazioni WBEM. Con il CIM WorkShop, è possibile visualizzare i programmi di esempio per i client e i provider WBEM inclusi con il software.  

Per maggiori informazioni, vedere il manuale Solaris WBEM SDK Developer's Guide.

Nuovi Provider Solaris

I nuovi Provider Solaris permettono agli sviluppatori di creare prodotti software in grado di ottenere e impostare le informazioni sui dispositivi gestiti negli ambienti CIM (Common Information Model). I Provider Solaris forniscono al gestore di oggetti CIM le istanze delle risorse gestite nell'ambiente operativo Solaris.

Solaris 9 comprende cinque nuovi provider:

  • Monitor di prestazioni WBEM per dispositivi e sistemi Solaris – Offre una serie di informazioni statistiche sul sistema su cui è in esecuzione l'ambiente operativo Solaris.

  • Registro dei prodotti WBEM – Offre la possibilità di aggiungere, eliminare o modificare i prodotti nuovi o preesistenti installati sul sistema.

  • Provider SNMP WBEM – Permette ai servizi WBEM di fornire informazioni mediante SNMP (Simple Network Management Protocol), un protocollo del modello di riferimento Internet usato per la gestione delle reti.

  • Provider di EEPROM WBEM – Permette di visualizzare e modificare le informazioni di configurazione nella EEPROM.

  • Provider per la disponibilità del sistema WBEM – Offre informazioni sul reboot del sistema. Tali informazioni permettono alle applicazioni di calcolare la percentuale di tempo in cui il sistema è stato attivo e funzionante. Fornisce inoltre le cause degli errori del sistema:

    • Errore “panic” del sistema

    • Arresto del sistema da parte di un utente

    • Spegnimento del sistema da parte di un utente

Per maggiori informazioni, vedere il manuale Solaris WBEM SDK Developer's Guide.

Scrittura dei driver

Descrizione 

Gestione dei consumi dei frame buffer

Alcuni dispositivi, ad esempio alcune unità nastro e i frame buffer, non dovrebbero spegnersi quando si scollegano i relativi driver, neppure durante il riavvio del sistema. Una nuova interfaccia, ddi_removing_power(9F), controlla se l'alimentazione del dispositivo viene interrotta in seguito a un'operazione di sospensione. Inoltre, per assicurare che il dispositivo non venga spento involontariamente, è possibile specificare una nuova proprietà, no-involuntary-power-cycles.

Per maggiori informazioni, vedere le pagine man ddi_removing_power(9F) e no-involuntary-power-cycles(9P).

SPARC: Sun StorEdge Traffic Manager

La funzione Sun StorEdge Traffic Manager supporta più percorsi per i dispositivi di I/O, ad esempio i dispositivi accessibili attraverso l'interfaccia Fibre Channel. Questa funzione distribuisce il carico di lavoro tra più dispositivi. Il Traffic Manager migliora l'affidabilità del sistema poiché è in grado di redirigere le richieste delle schede di interfaccia o dei dispositivi di memorizzazione guasti verso una scheda o un dispositivo funzionante. 

SPARC: Test sulla solidità dei driver

È stato introdotto un tool di sviluppo che permette di testare sotto sforzo i driver di Solaris. Il test simula una vasta gamma di errori hardware quando il driver in corso di sviluppo accede al dispositivo a cui è associato. In questo modo è possibile testare la resistenza dei driver per sistemi SPARC. 

Per maggiori informazioni, vedere le pagine man th_define(1M) e th_manage( 1M).

Driver generico per le LAN

Gli sviluppatori di driver possono ora utilizzare il Generic LAN Driver (GLD). Il GLD implementa gran parte delle funzionalità STREAMS e DLPI (Data Link Provider Interface) per i driver delle reti Solaris. Fino alla release Solaris 8 10/00, il modulo GLD era disponibile solo per i driver di rete di Solaris Edizione per piattaforma Intel. Ora il GLD è disponibile anche per i driver di rete di Solaris Edizione per piattaforma SPARC.

Per maggiori informazioni, vedere la sezione "Drivers for Network Devices" in Writing Device Drivers.

Release di Java

Descrizione 

JavaHelp v. 1.1.2

JavaHelpTM v. 1.1.2 è un sistema di guida espandibile indipendente dalla piattaforma. Questo sistema permette agli sviluppatori e agli autori di contenuti di incorporare la guida online in applet, componenti, applicazioni, sistemi operativi e dispositivi. Per maggiori informazioni, accedere al sito Web:

http://java.sun.com/products

Java 2 SDK, Standard Edition v. 1.4.0

L'SDK Java 2 Standard Edition v. 1.4.0, J2SETM 1.4.0, è un aggiornamento dell'SDK Java 2, Standard Edition. La release di aggiornamento include diverse novità a livello di funzioni per la piattaforma, tool e utility.

Per maggiori dettagli, vedere la documentazione della piattaforma J2SE 1.4.0 sul sito Web: 

http://java.sun.com/j2se/1.4/docs/relnotes/features.html

Supporto di JSP 1.2 e Java Servlet 2.3 nel Web server Apache

Jakarta Tomcat 4.0.1 e un modulo mod_jserv sono stati aggiunti al Web server Apache. Questo server supporta ora JavaServer Pages, JSP Versione 1.2, e Java Servlets Versione 2.3.

Sotto /etc/apache si trovano i seguenti file:

  • tomcat.conf

  • README.Solaris

  • zone.properties

  • jserv.properties

  • jserv.conf

Per informazioni su come abilitare il supporto di Tomcat, vedere il file README.Solaris. Per informazioni sulla configurazione, vedere anche http://jakarta.apache.org/tomcat/tomcat-4.0-doc/index.html.

Tomcat e il modulo mod-jserv, come gli altri software Apache, utilizzano un codice “open source” gestito da un gruppo esterno a Sun. Uno degli obiettivi di questo gruppo è quello di mantenere la compatibilità con le release precedenti.