Nuove funzioni dell'ambiente operativo Solaris 8

Ereditarietà delle priorità a livello utente

Le applicazioni in tempo reale (RT) possono eseguire più thread alla volta nella classe di scheduling in tempo reale. È possibile che un thread RT a bassa priorità ottenga un lock ad esclusione reciproca per una certa risorsa, e che tale risorsa venga successivamente richiesta da un thread RT con priorità più elevata. In questo caso, il thread ad alta priorità deve attendere che il thread a bassa priorità abbia terminato l'operazione e rilasci il lock. Questa condizione viene detta "inversione delle priorità".

I thread RT implementano le interfacce POSIX (in precedenza solo simulate) che permettono a un thread ad alta priorità di "prestare" tale priorità ad un thread di priorità inferiore fino al rilascio del lock.

I thread RT che utilizzano l'ereditarietà delle priorità (o il cosiddetto "tetto" dei lock) dovrebbero usare lo scheduling PTHREAD_SCOPE_SYSTEM (o i thread associati). I thread non associati utilizzano lo scheduling PTHREAD_SCOPE_PROCESS e non sono adatti per le esigenze delle applicazioni in tempo reale.

Per maggiori informazioni, vedere il manuale Multithreaded Programming Guide.