Nyheter i operativmiljön Solaris 9 8/03

Utvecklingsverktyg

Kompatibilitet för Solaris- och Linux-API:er

En del gratisprogram som var tillgängliga på Solaris 8 Software Companion CD har nu integrerats i operativmiljön Solaris 9. Programvaruutvecklare kan nu enklare utveckla och kompilera gratisprogram i operativmiljön Solaris. Bland de bibliotek som inkluderats gratis ingår följande:

Mer information om de gratisprogram som ingår på Solaris-skivorna hittar du i Gratisprogram.

Välja XML-utdata för Live Upgrade-meddelanden

När du använder Solaris Live Upgrade på kommandoraden kan du nu välja XML-utdata med alternativet -X. Det här alternativet används när du skriver program eller skalskript som använder Solaris Live Upgrade som ett verktyg. Standardutdata är text, men med alternativet -X skapas XML-data som lämpar sig för maskinell analys och tolkning. Utdata för alternativet -X är XML för alla meddelanden, inklusive fel, varningar, information och allmänna meddelanden.

Mer information finns i direkthjälpen för lucreate( 1M).

SPARC: Stöd för flera sidväxlingsstorlekar

Stöd för flera sidstorlekar (Multiple Page Size Support, MPSS) gör det möjligt för ett program att använda vilken maskinvarustödd sidstorlek som helst för att komma åt delar av det virtuella minnet. Tidigare var bara 8 kB-sidor tillgängliga på UltraSPARC-plattformar för ett programs stack, heap eller anonyma minne som är avbildat med funktionen mmap().

Du kan justera minnesanvändningen för stora minneskrävande program till att använda vilken sidstorlek som helst. Så långt maskinvaran för stacken, heap-utrymmet eller det privata minnet /dev/zero stöder, kan valfri sidstorlek användas med hjälp av funktionen mmap(). Användning av större sidstorlekar kan avsevärt förbättra prestanda för program med intensiv och stor minnesanvändning.

Du hittar mer information i direkthjälpen (man pages) för pagesize( 1), mpss.so.1( 1), ppgsz( 1), memcntl( 2), mmap( 2) och getpagesizes( 3C).

Förbättrat flertrådsbibliotek

Flertrådsbiblioteket har förbättrats och blivit snabbare i Solaris 9. Det här biblioteket var tillgängligt som alternativ libthread i tidigare Solaris-versioner.

Du hittar mer information i direkthjälpen för Multithreaded Programming Guide och threads (3THR).

Perl 5.6.1

I Solaris 9 finns nu en ny standardversion av Perl (Practical Extraction and Report Language). Den nya standardversionen av Perl är version 5.6.1. En äldre Perl-version ingår även i Solaris 9, version 5.005_03. Detta är den version som tidigare ingick i Solaris 8.

Mer information finns i direkthjälpen (man page) för perl(1).

Enhetligt diff-format

Kommandona diff och sccs-sccsdiff har uppdaterats, och stöder nu GNU:s enhetliga diff-format. I detta format skrivs kontextrader bara ut en gång när skillnaderna listas.

Mer information om dessa kommandon finns i direkthjälpen (man pages) för diff(1) och sccs-sccsdiff (1).

Sysevent-ramverk

Med hjälp av sysevent-ramverket kan händelser på kärnnivå och systemhändelser på användarnivå meddelas till lämpligt program. Exempel på sådana händelser är lägesförändringar, fel och krascher för maskinvara eller programvara.

Komponenterna i sysevent-ramverket inkluderar följande:

Bakgrundsprogrammet syseventd är ett program på användarnivå som accepterar sändning av systemhändelsebuffertar från kärnan. När en händelsebuffert har skickats till syseventd försöker bakgrundsprogrammet att vidarebefordra händelsen till alla intresserade sluthändelseprenumeranter.

Kommandot syseventadm kan användas för att konfigurera händelsespecifikationer. De här specifikationerna används därefter för att aktivera kommandon, program eller skript som svar på systemhändelser.

Du hittar mer information om sysevent-kärnan och biblioteks-API:er i direkthjälpen (man pages) för syseventadm (1M), syseventconfd (1M), och syseventd(1M).

Avsnittet ddi_log_sysevent(9F) innehåller information om loggning av händelsemeddelanden på drivrutinsnivå.

Kärn-PRNG (Kernel Pseudo-Random Number Generator)

Slumpgeneratorn PRNG i Solaris (Pseudo-Random Number Generator) är tillgänglig via enheterna /dev/random och /dev/urandom. PRNG ger ISV:er ett standardgränssnitt till pseudoslumpmässiga tal för krypteringsåtgärder, vetenskapliga program och simuleringsverktyg. PRNG finns i Solaris-kärnan. PRNG skyddar innehållet i entropipoolen. PRNG samlar entropidata från kärnans minnessidor med en konstant hög slumpmässighet.

Du hittar ytterligare information i direkthjälpen (man page) för random( 7D).

SPARC: Programgränssnitt till fjärrdelat minne på kluster

Om du utvecklar program som utökar användningen av en Sun Cluster-miljö har du nytta av det här gränssnittet. Med hjälp av det nya API:t för fjärrdelat minne (RSM) kan du programmera dina program att minska fördröjningen för meddelandeöverföring över klusteranslutningar med hög hastighet. Sådana klustermedvetna program kan avsevärt reducera den tid som behövs för att svara på händelser i en klustrad konfiguration.

Du måste ha Sun Cluster 3.0 installerat. Befintliga Sun Cluster-program måste ändras för att kunna utnyttja det nya gränssnittet.

Du hittar mer information i Programming Interfaces Guide. Direkthjälpen (man pages) för librsm(3LIB) och “Avsnitt 3: Utökade biblioteksfunktioner” (3RSM) innehåller referenser till RSM.

GNU-kompatibel version av API-funktionerna igettext()

Solaris 9 har en GNU-kompatibel version av API-funktionerna i gettext(), men är också kompatibelt med tidigare versioner av API-funktionerna i Solaris gettext().

Du hittar mer information i direkthjälpen (man page) för gettext (3C).

Utökade filattribut

UFS-, NFS- och TMPFS-filsystemen har förbättrats så att de klarar utökade filattribut. De här attributen gör det möjligt för programvaruutvecklare att koppla särskilda attribut till en fil. Exempelvis kan en utvecklare av ett filhanteringsprogram för ett fönstersystem välja att associera en visningsikon med en fil.

Mer information hittar du i Filsystemsförbättringar.

Ny FX-tiddelningsklass (Fixed-Priority)

Med köhanteraren FX kan du schemalägga processer som kräver att användaren eller programmet har kontroll över schemaläggningsprioriteter. Se Förbättringar av systemresurser.

DHCP-tjänst (Dynamic Host Configuration Protocol)

DHCP-tjänsten (Dynamic Host Configuration Protocol) gör att värdsystemen kan ta emot IP-adresser och information om nätverkskonfiguration. Den här informationen tas emot vid start från en nätverksserver. I Solaris-versioner före Solaris 8 7/01 kunde konfigurationsdata för DHCP endast lagras i textfiler eller via NIS+. Nu har dataåtkomsten i Solaris DHCP-tjänst omarbetats till ett modulärt ramverk. Solaris DHCP är ett API som gör att du kan skriva delade objekt som stöder alla funktioner för att spara DHCP-data.

I Solaris DHCP Service Developer's Guide finns en översikt över det dataåtkomstramverk som används av Solaris DHCP. I handboken finns också allmänna riktlinjer för utvecklare. Dessutom ingår en förteckning över de API-funktioner som du kan använda dig av om du behöver skriva en modul för att stödja ett nytt datalager.

Mer information finns i Solaris DHCP Service Developer's Guide.

Solaris Web Start Wizards SDK 3.0.1

Solaris Web Start Wizards förenklar installation, konfiguration och administration av inbyggda Solaris- och Java-program och andra program som inte är av Java-typ. Med Web Start Wizards-program kan utvecklare sampaketera Solaris- och Microsoft Windows-versioner av sina program. Installationsguiden hanterar den plattformsspecifika informationen.

Web Start Wizards SDK 3.0.1 ingår nu i Solaris 9. SDK 3.0.1 kan installeras med hjälp av installationsprogrammet för Solaris Web Start.

Modulfelsökare (mdb)

mdb är ett utökningsbart verktyg för felsökning på låg nivå samt redigering av det aktiva operativsystemet. Verktyget kan även felsöka minnesutskrifter från operativsystemet, användarprocesser, minnesutskrifter från användarprocesser och objektfiler. mdb i Solaris 9 har stöd för en ny symbolbaserad felsökning för Solaris-kärnan samt nya felsökningskommandon för kärnan. I verktyget mdb finns även nya funktioner för att analysera och styra aktiva användarprocesser, samt funktioner för att analysera direkta enhetsfiler och enheter.

Du hittar mer information i Solaris Modular Debugger Guide och i direkthjälpen (man page) för mdb( 1).

Ljudförbättringar

Nya ljudkataloger har lagts till i operativmiljön Solaris 9. Katalogen /usr/include/audio är en ny katalog för programljudsrubrikfiler för program. Ljudfilformatet har en ny headerfil, /usr/include/audio/au.h, och en ny direkthjälp (man page), au(4).

Katalogen /usr/share/audio är den nya lagringsplatsen för udda ljudfiler. Ljudfilerna från katalogen /usr/demo/SOUND/sounds har flyttats hit. En symbolisk länk har skapats från /usr/demo/SOUNDS/sounds till /usr/share/audio/samples/au. Med hjälp av den här länken fungerar befintliga program och skript som förut.

Ett flertal felkorrigeringar har gjorts i ljudkärnmodulerna för att förbättra stabiliteten.

Mer information finns i Handbok för systemadministratörer: Grundläggande administration.

Vektoriserade systemanrop: sendfilev()

Vektoriserade systemanrop, med hjälp av sendfilev(), öppnar för högre prestanda vid dataöverföring från programbuffertar eller filer. Prestanda för webbservrar kan förbättras genom att ett HTTP-svar kan skapas med hjälp av ett enda systemanrop i stället för flera. I HTTP-svaret ingår huvud, data och blockslut, samt servertillägg. Den här funktionen ger optimal prestanda tillsammans med NCA i Solaris (Network Cache and Accelerator). Systemanropet sendfilev() gör att flera delar, som kan komma från olika filer, kan returneras för svaret.

Mer information hittar du i direkthjälpen (man pages) för sendfilev(3EXT) och sendfile(3EXT).

Verifiera filens anpassning med appcert-verktyget

appcert-verktyget verifierar objektfilens anpassning till Solaris ABI. Genom anpassning till Solaris ABI ökas sannolikheten att programmet är kompatibelt med framtida Solaris-versioner väsentligt.

Mer information finns i avsnittet “Using appcert” i Programming Interfaces Guide.

GSS-API (Generic Security Services Application Programming Interface)

GSS-API (Generic Security Services Application Programming Interface) är ett ramverk för säkerhet som gör att program kan skydda skickade data.

Se Säkerhetsförbättringar.