Nuove funzioni di Solaris Express Developer Edition

Modifiche ai tipi uid_t e gid_t

Questo miglioramento agli strumenti di sviluppo è stato introdotto nella versione Developer 9/07.

A partire da questa versione, i tipi uid_t e gid_t sono stati trasformati da long (file binari a 32 bit) e int (file binari a 64 bit) in uint32_t. Questo tipo viene utilizzato sia per i file binari a 32 bit che per quelli a 64 bit. La modifica favorisce la compatibilità con altri sistemi operativi.

Nell'ambito della modifica del tipo di uid_t e gid_t , l'implementazione di Solaris riserva anche i valori di uid_t e gid_t compresi tra 231 e 232 - 2. Il valore 232 - 1 continua ad essere riservato come valore sentinella. I valori assegnati in questo intervallo sono assegnazioni temporanee effettuate dal nuovo servizio di mappatura dell'identità. Si noti che tali valori non vengono conservati dopo il riavvio del sistema. Di conseguenza, le applicazioni dovrebbero evitare di scrivere i valori UID o GID in file persistenti del file system. Allo stesso modo, dovrebbero evitare di inviare tali valori tramite la connessione di rete per fare riferimento a un'identità persistente. Per ottenere la persistenza, usare il nome dell'identità appropriato. I programma di utilità di Solaris, ad esempio il comando tar e il protocollo di rete NFSv4, sono già conformi a queste direttive.

Poiché i nuovi e vecchi tipi di uid_t e gid_t occupano lo stesso spazio, il funzionamento dei file binari esistenti non è influenzato dalla modifica. Si tratta ad esempio di file binari compilati con le vecchie definizioni dei tipi. In questi casi non è necessario ricompilare il codice. Anche il funzionamento dei file binari, dei file oggetto e delle librerie condivise, incluse quelle collegate alle librerie condivise di Solaris, non subisce nessuna alterazione.

L'impatto delle modifiche è il seguente: