Neuerungen in Solaris 8 2/04 - Ergänzung

Kapitel 4 Neuerungen für Entwickler

In diesem Kapitel werden die neuen Funktionen für Solaris-Entwickler beschrieben, um welche die aktualisierten Versionen von Solaris 8 bereichert wurden.


Hinweis –

Die neuesten Manpages können Sie mit dem Befehl man abrufen. Die Manpages für die aktualisierte Version von Solaris 8 enthalten Informationen über neue Funktionen, die Sie in der vorhandenen Dokumentationsreihe zu Solaris 8 (Solaris 8 Reference Manual Collection) noch nicht finden.


Entwicklungstools

Beschreibung der Funktionen  

Versionsdatum  

WBEM Prozessanzeige

Der WBEM Ereignismechanismus wurde erweitert. Prozessanzeigen im Common Information Model (CIM) ermöglichen Instrumentationsprovidern, außer den Standardereignissen, die mit den Klassendeklarationen im CIM vordefiniert sind, auch ihre eigene Ereignisklassen zu registrieren. Mit diesen Klassen können Ereignisse erstellt werden, die nicht als Erstellungs-, Löschungs-, Zugriffs-, Änderungs- oder Methodenaufrufe von bereits im CIM erstellten Klassen ausgedrückt werden können. Diese Funktion verbessert den bestehenden Ereignissupport.

Weitere Informationen sind im Solaris WBEM SDK Developer's Guide in der Solaris 9 Software Developer Collection enthalten. Anweisungen für den Zugriff auf die Solaris 9 Dokumentation finden Sie unter Early Access in diesem Dokument.

2/02 

Modifizierungen des alternativen Libthread

In der Solaris Version 8 2/02 enthalten ist eine verbesserte alternative Multithreading-Bibliothek, die eine bessere Leistung, Zuverlässigkeit und eine einfachere Bedienung bietet. 

Weitere Informationen sind auf der threads.3thr Manpage und im Multithreaded Programming Guide in der Solaris 9 Software Developer Collection enthalten. Anweisungen für den Zugriff auf die Solaris 9 Dokumentation finden Sie unter Early Access in diesem Dokument.

2/02 

SPARC: Anwendungsschnittstelle zum RSM (Remote Shared Memory) auf Clustern

Wenn Sie Anwendungen entwickeln, die eine SunTM Cluster-Umgebung erfordern, wird diese Schnittstelle von großem Nutzen für Sie sein. Mit der neuen Remote Shared Memory API können Sie Ihre Anwendungen so programmieren, dass Sie die Latenzzeit für Nachrichten verringern, die über schnelle Clusterverbindungen weitergegeben werden. Solche “cluster-bewussten” Anwendungen können die Reaktionszeit auf Events in einer Clusterkonfiguration erheblich verkürzen. Sun Cluster 3.0 muss installiert sein. Außerdem sollten Sie wissen, wie man bestehende Anwendungen auf die neue Schnittstelle einstellt.

Die librsm(3LIB)-Manpages und der Section (3RSM) “Section 3: Extended Library Functions”-Manpages enthalten Hinweise zu RSM.

10/01  

Dynamic Host Configuration Protocol (DHCP)

Der DHCP (Dynamic Host Configuration Protocol)-Service ermöglicht Host-Systemen, IP-Adressen und Netwerkkonfigurationsinformationen zur Startzeit von einem Netzwerkserver abzurufen. In früheren Versionen konnten DHCP-Konfigurationsdaten lediglich in Textdateien oder NIS+ gespeichert werden. In dieser Version erfolgt der Datenzugriff des Solaris DHCP-Service jetzt über ein modulares Framework. Solaris DHCP bietet eine API, mit der Sie gemeinsame Objekte zur Unterstützung beliebiger Einrichtungen zur Speicherung von DHCP-Daten schreiben können.  

Der Solaris DHCP Service Developer's Guide bietet einen Überblick über das von Solaris DHCP verwendete Datenzugriffs-Framework, allgemeine Richtlinien für Entwickler und eine Auflistung der API-Funktionen, mit denen Module zur Unterstützung eines neuen Datenspeichers geschrieben werden können.

7/01  

Ein zeitgesteuerter sendfile-Systemaufruf: sendfilev()

Der zeitgesteuerte sendfile-Systemaufruf sendfilev() ermöglicht eine bessere Leistung beim Senden von Daten von Anwendungspuffern oder Dateien. Zum Beispiel kann ein Webserver im Webbetrieb eine HTTP-Antwort (Header, Daten und Trailer als auch Includes vom SSI-Server) in einem einzigen Systemaufruf erstellen. Diese Funktion optimiert die Leistung mit NCA, das sie die Rückgabe mehrerer Chunks ermöglicht, die für die Antwort möglicherweise aus verschiedenen Dateien zusammengestellt werden.

Weitere Infos finden Sie auf der Manpage sendfilev(2).

7/01 

Prüfen der Dateikonformität mit dem appcert -Dienstprogramm

Das Dienstprogramm appcert überprüft, ob eine Objektdatei dem Solaris ABI entspricht. Eine solche Übereinstimmung mit dem Solaris ABI erhöht die Wahrscheinlichkeit, dass eine Anwendung mit zukünftigen Versionen der Solaris-Software kompatibel sein wird, wesentlich.

Weitere Informationen finden Sie unter “Using appcert” in Solaris 8 Software Developer Supplement.

4/01 

Sun WBEM Software Developer's Toolkit (SDK)

Web-Based Enterprise Management (WBEM) beinhaltet Standards für das webgestützte Management von Systemen, Netzwerken und Geräten auf verschiedenen Plattformen. Das Sun WBEM Software Developer's Toolkit (SDK) ermöglicht die Entwicklung standardgemäßer Anwendungen für die Verwaltung von Ressourcen innerhalb der Betriebssystemumgebung Solaris. Außerdem können Entwickler mit diesem Toolkit Provider schreiben, Programme, die zum Zugriff auf Daten mit verwalteten Ressourcen kommunizieren. Sun WBEM SDK umfasst Client-APIs für die Beschreibung und die Verwaltung von Ressourcen in CIM (Common Information Model) sowie Provider-APIs zum Abrufen und Setzen dynamischer Daten auf den verwalteten Ressourcen. Darüber hinaus enthält Sun WBEM SDK die Java-Anwendung CIM WorkShop zum Erzeugen und Anzeigen der verwalteten Ressourcen auf einem System und einen Beispielsatz von WBEM-Client- und -Provider-Programmen.  

Weitere Informationen finden Sie im Dokument Sun WBEM SDK Developer's Guide.

4/01  

SPARC: Aktualisierte Multithreaded Programming Dokumentation

In den Multithreaded Programming Guide wurden die folgenden Fehlerkorrekturen aufgenommen: 4308968, 4356675, 4356690.

Weitere Infos finden Sie im Multithreaded Programming Guide.

1/01 

Überarbeitungen des Linkers and Libraries Guide

Das Handbuch Linkers and Libraries Guide wurde um einige neue Funktionen aktualisiert. Zu den Aktualisierungen für Version 1/01 gehören:

  • Die Umgebungsvariable LD_BREADTH wird vom Laufzeit-Linker ignoriert. Siehe den Abschnitt “Initialization and Termination Routines”.

  • Der Laufzeit-Linker und seine Debugger-Schnittstelle wurden hinsichtlich einer besseren Laufzeit- und Kerndateianalyse erweitert. Diese Aktualisierung ist durch eine neue Versionsnummer gekennzeichnet. Siehe den Abschnitt “Agent Manipulation”. Dieses Update erweitert die Felder rl_flags, rl_bend und rl_dynamic der rd_loadobj_t-Struktur. Siehe den Abschnitt “Scanning Loadable Objects”.

  • Die Prüfung durch Distanzierung verschobener Daten hinsichtlich ihrer Verwendung oder potentiellen Verwendung mit Kopierverschiebungen ist jetzt möglich. Siehe den Abschnitt “Displacement Relocations”.

  • 64-Bit-Filter können einzig anhand der Option link-editors -64 aus einer Tabellendatei erzeugt werden. Siehe den Abschnitt “Generating a Standard Filter”.

  • Einige Anmerkungen erklären, weshalb die dynamische Erweiterung der Token-Zeichenkette $ORIGIN auf sichere Anwendungen beschränkt ist. Siehe den Abschnitt “Security”.

  • Aktualisiert: 10/00

  • Die Nachschlagesemantik-Versionen dlsym(3DL) und dlinfo(3DL) wurden durch die neue Behandlungsroutine RTLD_SELF erweitert.

  • Der zur Laufzeit dynamische Objekte verschiebende Symbol-Nachschlagevorgang kann durch die Angabe von Informationen für die direkte Bindung innerhalb jedes dynamischen Objekts bedeutend reduziert werden. Siehe die Abschnitte “External Bindings” und “Direct Binding”.

10/00  

Aktualisisert: 1/01 und 7/01  

Überarbeitungen des Linkers and Libraries Guide, Fortsetzung

Zu den Aktualisierungen für Version 1/01 gehören:

  • Die für dladdr(3DL) verfügbaren symbolischen Infos wurden mit der Einführung von dladdr1() erweitert.

  • Aus dlinfo(3DL) lässt sich der $ORIGIN eines dynamischen Objekts ermitteln.

  • Die Anzeige der Befehlszeilenoptionen, die zur Erstellung von Laufzeit-konfigurationsdateien mit crle(1) verwendet wurden, erleichtert nun die Pflege dieser Dateien. Es ist auch eine Aktualisierungsfunktion verfügbar. (Siehe dazu die Option -u.)

  • Der erweiterte Laufzeit-Linker und seine Debugger-Schnittstelle können nun die Auflösung von Einträgen in der Prozedurverknüpfungstabelle feststellen. Diese Aktualisierung ist durch eine neue Versionsnummer gekennzeichnet. Siehe den Abschnitt “Agent Manipulation”. Dieses Update erweitert die rd_plt_info_t-Struktur. Siehe den Abschnitt “Procedure Linkage Table Skipping”.

  • Mit dem neuen mapfile-Segmentbeschreiber STACK kann ein Anwendungsstapel als nicht-ausführbar definiert werden. Siehe den Abschnitt “Segment Declarations”.

Zu den Aktualisierungen für Version 7/01 gehören:

  • Nicht verwendete Abhängigkeiten können mithilfe von ldd(1) bestimmt werden. (Siehe die Option -u.)

  • Es wurden verschiedene ELF ABI-Erweiterungen hinzugefügt und die dazugehörige Dokumentation überarbeitet. Siehe “Initialization and Termination Sections”, “Initialization and Termination Routines”, Tabelle 6, Tabelle 9, Tabelle 16, Tabelle 17, “Section Groups”, Tabelle 19, Tabelle 24, Tabelle 45, Tabelle 46 und “Program Loading (Prozessor-spezifisch)”.

  • Durch die Addition der Varianten _32 und _64 ist die Verwendung der link-editor Umgebungsvariablen noch flexibler geworden. Siehe “Environment Variables” im Linker and Libraries Guide.

Weitere Infos finden Sie im Linker and Libraries Guide.

 

Updates für den System Interface Guide

Die Aktualisierung des Dokuments System Interface Guide besteht in Fehlerkorrekturen. Mit dieser Ausgabe wurden verschiedene Druckfehler im Text und in Quellcode- Beispielen behoben.

Weitere Infos finden Sie im System Interface Guide.

6/00  

Sprachunterstützung

Beschreibung der Funktionen  

Versionsdatum  

Unterstützung für die neue chinesische GB18030-2000 Sprachumgebungskodierung

Mit der Solaris Plattform können Sie jetzt den gesamten GB18030-2000 Zeichensatz (mit fast 30.000 Zeichen) eingeben, anzeigen und drucken. Allen Anwendungen, die auf Solaris laufen, steht damit eine erweiterter Satz chinesischer Zeichen zur Verfügung. Diese Glyphen sind primär Han Zeichen, aber die Kodierung umfasst auch Glyphen für Minoritätssprachen wie Tibetisch, Wei, Yi und Mongolisch.

Die Unterstützung für GB18030-2000 in dieser Solaris Version umfasst auch die Abwärtskompatibilität mit früheren chinesischen Codesätzen (GBK und GB2312) sowie die Konvertierung in andere Codesätze wie Unicode. Solaris Entwickler müssen Ihre Verfahren für den Zugriff auf diese neue Kodierungsunterstützung nicht umstellen. Standard-Toolkits können diese neue Unterstützung nutzen.

Für Java-Anwendungen, die Unterstützung für GB18030-2000 benötigen, prüfen Sie bitte J2SETM unter http://java.sun.com/j2se/1.4.

Weitere Informationen sind im International Language Environments Guide in der Solaris 9 Software Developer Collection enthalten. Anweisungen für den Zugriff auf die Solaris 9 Dokumentation finden Sie unter Early Access in diesem Dokument.

2/02 

Erweiterter Unicode-Support

File System Safe Universal Transformation Format, kurz UTF-8, ist eine von X/Open als Multibyte-Darstellung von Unicode definierte Kodierung. UTF-8 berücksichtigt nahezu alle Zeichen herkömmlicher Einzelbyte- und Multibyte-Sprachumgebungen für europäische und asiatische Sprachen in Solaris. In Version 10/00 wurden Russisch, Polnisch und zwei neue Sprachumgebungen für Katalanisch hinzugefügt. Mit Version 4/01 wurden die Zeichensätze Türkisch UTF-8 und Russisch UTF-8 zur Liste der vorhandenen osteuropäischen Sprachumgebungen hinzugefügt.  

Weitere Informationen finden Sie unter “Additional Partial Locales for European Solaris Software” in Solaris 8 Software Developer Supplement.

10/00  

Aktualisiert: 4/01  

Print Filter Enhancement – Das mp-Programm

Das Programm mp akzeptiert internationale Textdateien aus unterschiedlichen Solaris-Sprachumgebungen und erzeugt eine für die angegebene Sprachumgebung angemessene Ausgabe. Die Ausgabe weist außerdem das richtige Textlayout auf, z. B. bidirektionales Text-Rendering und Formgebung, da mp Unterstützung für CTL (Complex Text Layout) bietet. Je nach der Systemschriftkonfiguration für mp der jeweiligen Sprachumgebung kann die PostScriptTM-Ausgabedatei Symbole aus systemresidenten skalierbaren oder Bitmap-Schriften von Solaris enthalten.

Weitere Informationen finden Sie unter “Print Filter Enhancement mp(1)” in Solaris 8 Software Developer Supplement.

4/01 

Wortumbruch für Thai

In dieser Aktualisierung ist ein neues Framework für die Textgrenzauflösung für asiatische Sprachen enthalten. Mithilfe dieses Frameworks können CDE-Anwendungen und Motif-Bibliotheken die korrekten, für Sprachumgebungen spezifischen Textgrenzauflösungen auf alle Sprachumgebungen anwenden. Diese Funktion, zusammen mit Änderungen an der CDE-/Motif-Bibliothek, ist in libXm.so.4 enthalten. Das Textgrenzauflösungsmodul für Thai ist eine neue Funktion, mit der Wörter in Satzstrings in Thai korrekt umgebrochen werden. Die Thai-Sprachumgebung unterstützt jetzt die korrekte Wortgrenzhandhabung für Motif-Widgets.

Weitere Infos zur Thai-Sprachumgebung finden Sie im International Language Environments Guide.

1/01  

Schreiben von Gerätetreibern

Beschreibung der Funktionen  

Versionsdatum  

Frame Buffer Power Management

Einige Geräte wie bestimmte Bandlaufwerke und Frame Buffer sollten, auch wenn ihre Treiber nicht angehängt sind, ohne Probleme weiter arbeiten. Die neue Schnittstelle ddi_removing_power(9F) prüft, ob ein Gerät wegen eines Suspend-Vorgangs nicht mehr korrekt arbeitet. Die neue Eigenschaft no-involuntary-power-cycles kann spezifiziert werden, um sicherzustellen, dass Geräte nicht unabsichtlich ausgeschaltet werden.

Weitere Infos zum Power Management finden Sie auf den Manpages ddi_removing_power(9F) und no-involuntary-power-cycles(9P).

10/01  

SPARC: Driver Hardening Test Harness

Driver Hardening Test Harness ist ein Entwicklungstool für Solaris-Gerätetreiber. Es simuliert beim Zugriff des in Entwicklung befindlichen Treibers auf seine Hardware die verschiedenartigsten Hardwarefehler. Die nach diesem Prinzip der “fault-injection” arbeitende Testausrüstung testet die Elastizität (im Hinblick auf den Ausgleich von Fehlern) SPARC-basierter Gerätetreiber.

Weitere Informationen finden Sie unter “Driver Hardening Test Harness” in Solaris 8 Software Developer Supplement.

4/01 

Dokumentation zu hochverfügbaren Treibern

Unter “High-Availability Drivers” erfahren Sie im Detail, wie Sie durch das so genannte driver hardening, ein Verfahren zur Maximierung des Fehlerausgleichs durch den Treiber, und durch die Bereitstellung von Wartungsmöglichkeiten Treiber entwerfen können, die Unterstützung für Hochverfügbarkeit bieten. Dieses Material stellt eine Ergänzung der in Solaris 8 Writing Device Drivers enthaltenen Informationen dar.

Weitere Informationen finden Sie unter “High-Availability Drivers” in Solaris 8 Software Developer Supplement.

10/00  

Generic LAN Driver (GLD)

Mit dem Generic LAN Driver (GLD) lässt sich die Funktionalität von STREAMS und Data Link Provider Interface (DLPI) für Solaris Netzwerktreiber implementieren. Bis Solaris 8 10/00 war das GLD-Modul nur für Netzwerktreiber der Solaris Intel-Plattform Edition erhältlich. Jetzt steht GLD auch für Netzwerktreiber der Solaris SPARC-Plattform Edition zur Verfügung.

In Version 4/01 wurde GLD durch Fehlerkorrekturen aktualisiert.  

Weitere Informationen finden Sie unter “Drivers for Network Devices” in Solaris 8 Software Developer Supplement.

10/00  

Aktualisiert: 4/01  

Java-Versionen

Beschreibung der Funktionen  

Versionsdatum  

Java 2 SDK, Standard Edition v. 1.2.2_10

JavaTM 2 SDK 1.2.2_10 enthält die aktuellen Fehlerbehebungen, die seit der letzten Version integriert wurden. Weitere Infos zu Java 2 SDK 1.2 finden Sie auf der Website unter http://java.sun.com/products/jdk/1.2/ReleaseNotes.html.

2/02 

Java 2 SDK, Standard Edition v. 1.3.1

Die JavaTM 2 SDK Standard Edition (J2SETM) Version 1.3.1 ist eine Wartungsversion, in der Fehler aus J2SE 1.3.0 behoben wurden. Eine Liste der wichtigsten Fehlerbehebungen in J2SE 1.3.1 finden Sie auf der Website unter http://java.sun.com/j2se/1.3/fixedbugs/1.3.1/BugIndex.html.

10/01  

Java 2 SDK, Standard Edition v. 1.3.0

Die auch als J2SE 1.3.0 bekannte Java 2 SDK Standard Edition v. 1.3.0 ist eine Aktualisierung für Java 2 SDK. Die Version J2SE umfasst die folgenden neuen Funktionen und Erweiterungen.  

  • Verbesserte Leistung

    Hinsichtlich Technologie und Leistung optimierte Java HotSpotTM-Laufzeitbibliotheken machen J2SE 1.3.0 zu der heute schnellsten Java-Plattform.

  • Einfachere Bereitstellung im Web

    Neue Funktionen wie das Zwischenspeichern von Applets und die automatische Installation von optionalen Softwarepaketen durch die JavaTM-Plug-in-Komponente von J2SE 1.3.0 erhöhen die Geschwindigkeit und Flexibilität bei der Anzeige von Programmen im Web.

  • Enterprise-Interoperabilität

    Durch die Erweiterung um RMI/IIOP und das Java Naming and Directory InterfaceTM wurde mit J2SE 1.3.0 eine Verbesserung der Interoperabilität der Java 2-Plattform erzielt.

  • Mehr Sicherheit

    Die neue Unterstützung für elektronische RSA-Signaturen, dynamisches Trust-Management, X.509-Zertifikate und die Prüfung von Netscape-signierten Dateien gibt Entwicklern noch mehr Möglichkeiten zum Schützen ihrer elektronischen Daten an die Hand.

  • Java-Sound

    J2SE 1.3.0 beinhaltet ein leistungsstarkes neues Sound-API. In vorigen Versionen der Plattform war die Audio-Unterstützung auf die bloße Wiedergabe von Audio-Clips beschränkt. Mit dieser Version definiert die Java 2-Plattform einen Satz von Standardklassen und -schnittstellen für eine Low-Level-Audio-Unterstützung.

  • Verbesserte APIs und mehr Entwicklungsfreundlichkeit

    Als Reaktion auf die Wünsche der Entwicklergemeinde wurden mit J2SE 1.3.0 neue Funktionen in verschiedenste Bereiche der Java 2-Plattform eingeführt. Diese Funktionen erweitern den Leistungsumfang der Plattform und ermöglichen die Entwicklung leistungsstärkerer Anwendungen. Einige der neuen Funktionen tragen außerdem an sich zur Beschleunigung und Erhöhung der Effizienz des Entwicklungsprozesses bei.

Hinweise zu weiteren J2SE-Verbesserungen finden Sie unter “Java 2 SDK, Standard Edition, version 1.3.0” in Solaris 8 Software Developer Supplement.

4/01 

Java 2 SDK, Standard Edition v. 1.2.2_07a

J2SE 1.2.2_07a enthält Korrekturen für Fehler, die in vorigen Versionen der Serie J2SE 1.2.2 festgestellt wurden. Zu den wichtigen Fehlerkorrekturen zählt eine, die einen in J2SE 1.2.2_05 vorkommenden Leistungsabfall korrigiert. Weitere Infos zu Fehlerbehebungen in J2SE 1.2.2_07a finden Sie auf der Website unter http://java.sun.com/j2se/1.2/ReleaseNotes.html.

4/01 

Java 2 SDK 1.2.2_06 and JDK 1.1.8_12

Java 2 SDK 1.2.2_06 und JDK 1.1.8_12 wurden seit der letzten Version durch Fehlerkorrekturen verbessert.  

1/01 

Java 2 SDK 1.2.2_05a

Java 2 SDK 1.2.2_05a umfasst die folgenden neuen Funktionen.

  • Verbesserung der Skalierbarkeit auf mehr als 20 CPUs

  • Verbesserte JIT-Compiler-Optimierung

  • Verbesserte Leistung bei Text-Rendering

  • Demo-Paket für poller-Klasse

  • Swing-Verbesserungen

Weitere Infos finden Sie unter “Java 2 SDK, Standard Edition, version 1.2.2_07a and Previous Releases” in Solaris 8 Software Developer Supplement.

10/00  

32-Bit:Support für Java-Servlets

 

Durch die Erweiterung um das Modul mod_jserv und die dazugehörigen Dateien bietet der Apache Web Server nun Unterstützung für Java-Servlets.

Weitere Informationen finden Sie unter “Java Servlet Support in Apache Web Server” in Solaris 8 Software Developer Supplement.

10/00