Nyheter i operativmiljön Solaris 8

Förbättringar för realtidssystem

I det här avsnittet beskrivs de nya funktioner i operativmiljön Solaris 8 som påverkar realtidsprocesser.

Klocka med hög upplösning (HRT)

HRT åsidosätter det vanliga 10 millisekunders klockgränssnittet för att visa den möjliga upplösningen hos de fysiska klockavbrotten från maskinvaran. En realtidsprocess kan därför via HRT-gränssnittet ta över en processor (i ett flerprocessorsystem) och arbeta vid den erfordrade tidsupplösningen för händelser.

Det här var den sista detaljen som krävdes för att traditionella realtidsprogram ska kunna köras under Solaris.

Mer information finns i System Interface Guide.

Arv av prioritet på användarnivå

Realtidsprogram (RT) kan köras på fler än en tråd samtidigt i klassen för realtidsschemaläggning. En RT-tråd med låg prioritet kan få ett lås för ömsesidig uteslutning även om det krävs av en RT-tråd med högre prioritet. Tråden med hög prioritet måste då vänta på att tråden med låg prioritet ska bli klar med låset för ömsesidig uteslutning och släppa det. Det här tillståndet kallas "prioritetsinvertering".

RT-trådfunktionen implementerar de POSIX-gränssnitt (tidigare endast inkluderade som dummy) som kan låta den högprioriterande tråden "låna ut" sin prioritet till tråden med låg prioritet tills denna släpper låset.

RT-trådar som använder prioritetsarv eller lås för prioritetstak bör använda schemaläggningsomfånget PTHREAD_SCOPE_SYSTEM (eller kopplade trådar). Ej kopplade trådar använder schemaläggningens PTHREAD_SCOPE_PROCESS och är inte lämpliga för realtidsprogram.

Mer information finns i Multithreaded Programming Guide.