Sulle piattaforme x86, Solaris 10 supporta il bit no execute (NX) in modalità a 32 bit e a 64 bit. Il bit NX permette di implementare completamente le protezioni connesse al mancato utilizzo di PROT_EXEC in varie chiamate di sistema alla memoria, ad esempio nella funzione mmap(). In precedenza, PROT_EXEC era implicitamente impostato in tutta la memoria mappata. Il supporto del bit NX in Solaris migliora la protezione antivirus.
Sui sistemi hardware che supportano NX, Solaris utilizza automaticamente il bit NX ogni volta che non viene specificato PROT_EXEC. I segmenti degli stack, tuttavia, nell'impostazione predefinita utilizzano PROT_EXEC, non il bit NX. Per modificare l'impostazione predefinita per i segmenti degli stack, usare una delle procedure seguenti:
Impostare no_exec_userstack in /etc/system in modo da utilizzare globalmente no exec in tutti gli stack di applicazioni.
Collegare una singola applicazione con il file di mappa /usr/lib/ld/map.noexstk.
L'amministratore di sistema può disabilitare completamente l'utilizzo del bit NX con il comando eeprom, impostando enforce-prot-exec su “off”. Questa variabile viene offerta come soluzione transitoria per i sistemi con applicazioni legacy che non dispongono di PROT_EXEC.