Nuove funzioni dell'ambiente operativo Solaris 8

Sistemi in tempo reale

In questa sezione sono descritte le nuove funzioni di Solaris 8 che riguardano i processi in tempo reale.

Timer ad alta risoluzione

I timer ad alta risoluzione (HRT) "escludono" la tradizionale interfaccia a 100 millisecondi per evidenziare in maggiore dettaglio gli interrupt fisici del clock generati dall'hardware. In questo modo, l'interfaccia HRT permette a un processo in tempo reale di assumere il controllo di un singolo processore (di un sistema multiprocessore) e di operare con il grado di precisione desiderato negli eventi di sincronizzazione.

Si tratta dell'ultimo elemento richiesto per poter eseguire le tradizionali applicazioni in tempo reale sotto Solaris.

Per maggiori informazioni, vedere il manuale System Interface Guide.

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.