Nyheter i Solaris 10

Det dynamiska spårningsverktyget DTrace

DTrace är en mycket viktig funktion i operativsystemet Solaris 10. DTrace är ny för Solaris Express 11/03 och förbättrades i Solaris Express 5/04 och i Solaris Express 11/04.

DTrace är ett omfattande dynamiskt spårningsverktyg som innebär att Solaris-användare, administratörer och utvecklare får en ny observationsnivå för kärn- och användarprocesser.

Med DTrace kan du lättare förstå systemet genom att du dynamiskt kan styra operativsystemets kärn- och användarprocesser och registrera data som du anger vid intressanta platser, kallade probes. Probes kan liknas vid små programmerbara sensorer som är spridda över Solaris-systemet. Det finns mer än 30 000 probes i den här versionen. Varje probe kan associeras med anpassade program som skrivs med det nya programmeringsspråket D. Med den här associationen kan du komma åt systemdata genom att använda ANSI C-typer och -uttryck. Du kan enkelt fånga stackspårningar, registrera tidsstämplar, bygga histogram och mycket mer.

All styrning av DTrace är helt dynamisk och tillgänglig för användning på det system du använder för produktion. När DTrace är avstängt har du inga prestandakostnader. All påverkan från spårningen begränsas till de probes och åtgärder som du aktiverar. Dessutom är det säkert att använda DTrace: du kan inte skada det aktiva systemet eftersom säkerhet och felkontroll är inbyggd i utformningen av DTrace. De här funktionerna gör att du med tillförsikt kan använda DTrace på det aktiva systemet närhelst du vill undersöka ett problem.

Mer information om DTrace finns i Solaris Dynamic Tracing Guide och i flera direkthjälpsavsnitt, bl.a. dtrace(1M). Handboken innehåller en fullständig referensguide för funktionerna och exempel som hjälper dig att komma igång. Du kan även delta i DTrace-forumet på BigAdmin (http://www.sun.com/bigadmin/content/dtrace) där du kan lära dig mer om DTrace, hämta exempelprogram och ställa frågor.

I Solaris Express 5/04 gjordes användarprocesspårning som använder providern pid tillgänglig för x86-system. Den här funktionen har varit tillgänglig på SPARC-plattformar sedan introduktionen av DTrace i Solaris Express 11/03.

Med pid-providern kan du spåra alla instruktioner i alla processer, på den nivå som funktionsanropet kommer in eller returneras, eller vid en offset i en funktion. Mer information finns i kapitel 27, ”pid Provider”, och i kapitel 32, ”User Process Tracing”, i Solaris Dynamic Tracing Guide.

I Solaris Express 11/04 kan du använda verktyget plockstat(1M) för att observera synkroniseringsfunktioner på användarnivå, t.ex. lockstat(1M) i kärnan. Providern DTrace plockstat är den underliggande instrumenteringsmetoden för plockstat(1M). Dtrace plockstat kan användas för att utöka de data som registreras med verktyget plockstat. Mer information finns i direkthjälpen för plockstat(1M).