NX-bit: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
m Wikipedia:Elenchi generati offline/Sezioni non riconosciute dopo una sezione predefinita
 
(25 versioni intermedie di 23 utenti non mostrate)
Riga 1:
{{F|componenti per computer|marzo 2013|Nessuna fonte}}
'''NX''' sta per ''No eXecute'', "non eseguire". Si tratta di una tecnologia usata generalmente nelle [[CPU]] per isolare aree di memoria al fine di immagazzinare istruzioni del [[microprocessore]] (ovvero codice) o dati. Le sezioni di memoria contrassegnate con l'NX bit sono dedicate al deposito di soli dati, e le istruzioni non dovrebbero risiedervi. Questa funzionalità rende la tecnologia una valida difesa dai programmi nocivi nascosti all'interno dei dati di un altro ''software'', cioè dagli attacchi di [[buffer overflow]] ovvero gli errori di allocazione che generano un errore di questo tipo.
 
'''NX''' (''No eXecute'', {{Lett|non eseguire}})<ref>{{Cita web|autore = Microsoft Corporation|url = https://technet.microsoft.com/en-us/library/dn482072.aspx|titolo = PAE/NX/SSE2 Support Requirement Guide for Windows 8|accesso = 05/12/2014|editore = |data = }}</ref>, anche conosciuta con il nome di ''Enhanced Virus Protection'' (o semplicemente EVP), è una tecnologia usata generalmente nei [[CPU|processori]] per isolare aree di memoria al fine di immagazzinare codice o dati.
Intel ha deciso di denominare la propria applicazione di questa tecnologia '''XD-bit''' da ''eXecute Disable'', ma le due non differiscono affatto se non nel nome.
 
'''NX'''Le sta per ''No eXecute'', "non eseguire". Si trattasezioni di una tecnologia usata generalmente nelle [[CPU]] per isolare aree di RAM|memoria alad fineaccesso di immagazzinare istruzioni del [[microprocessorecasuale]] (ovvero codice) o dati. Le sezioni di memoria contrassegnate con l'NX bit sono dedicate al deposito di soli dati, e le istruzioni non dovrebbero risiedervi. In poche parole è possibile scrivere o leggere dati ma non eseguirli se sono archiviati in queste zone di memoria. Questa funzionalità rende la tecnologia una valida difesa dai programmi nocivi nascosti all'interno dei dati di un altro ''software'', cioè dagli attacchi di [[buffer overflow]] ovvero gli errori di allocazione che generano un erroreblocco di questo tipo.
==Supporto hardware==
Nonostante questo meccanismo fosse presente da anni in altre architetture come lo [[SPARC]] della [[Sun Microsystems]], l'[[Alpha]], il [[PowerPC]] della [[IBM]] e anche nell'architettura [[IA-64]] della [[Intel]], il termine è stato coniato da [[Advanced Micro Devices|AMD]] per i propri processori [[AMD64]], come l'[[Athlon 64]] e l'[[Opteron]], e sta prendendo piede per definire questa tecnologia anche in altri processori.
 
Intel ha deciso di denominare la propria applicazione di questa tecnologia '''XD-bit''' da ''eXecute Disable'', ma le due non differiscono affatto se non nel nome.
L'NX è l'ultimo bit, il numero 63 (i bit si contano negli interi a 64 bit a partire da 0) dell'indirizzo nella [[tabella di paginazione]] di un processore [[x86]]. Se il bit è uguale a 0, può essere eseguito codice proveniente da quella pagina di memoria; se è pari a 1, si presume che siano presenti solo dati, e l'eventuale codice ivi residente non sarà elaborato. Per il supporto di questa tecnologia il formato di paginazione della memoria deve essere il [[Physical Address Extension]] (PAE), e non il formato originale x86. L'NX bit fu introdotto nei processori AMD64, perché questa è una diretta espansione della x86, ma esso non richiede l'attivazione della modalità a 64 bit: perciò [[VIA Technologies]], [[Transmeta]] e naturalmente [[Intel]] stanno includendo questa tecnologia nei propri processori x86.
 
== Supporto hardware ==
==Emulazione software==
Nonostante questo meccanismo fosse presente da anni in altre architetture come lo [[SPARC]] della [[Sun Microsystems]], l'il [[DEC Alpha]], il [[PowerPC]] della [[IBM]] e anche nell'architettura [[IA-64]] della [[Intel]], il termine è stato coniato da [[Advanced Micro Devices|AMD]] per i propri processori [[AMD64]], come l'[[Athlon 64]] e l'[[Opteron]], e sta prendendo piede per definire questa tecnologia anche in altri processori.
Prima che fosse possibile il supporto hardware di questa caratteristica, con molti sistemi operativi si cercò di emularla attraverso il software, come col '''W^X''' o con l''''Exec Shield''', descritti in seguito.
 
L'NX è l'ultimo bit, il numero 63 (i bit si contano negli interi a 64 bit a partire da 0) dell'indirizzo nella [[paging|tabella di paginazione]] di un processore [[x86]]. Se il bit è uguale a 0, può essere eseguito codice proveniente da quella pagina di memoria; se è pari a 1, si presume che siano presenti solo dati, e l'eventuale codice ivi residente non sarà elaborato. Per il supporto di questa tecnologia il formato di paginazione della memoria deve essere il [[Physical Address Extension]] (PAE), e non il formato originale x86. L'NX bit fu introdotto nei processori AMD64, perché questa è una diretta espansione della x86, ma esso non richiede l'attivazione della modalità a 64 bit: perciò [[VIA Technologies]], [[Transmeta]] e naturalmente [[Intel]] stannohanno includendoincluso questa tecnologia nei propri processori x86.
Un sistema operativo che emuli l'NX-bit può proteggere le aree di memoria ''[[stack]]'' e ''[[memoria allocata dinamicamente|heap]]'' dall'esecuzione di codice dannoso, e memoria con codice eseguibile dall'essere sovrascritta. Questo evita l'esecuzione di ''[[exploit]]'' di ''[[buffer overflow]]'', in particolare quelli che scrivono codice e poi lo fanno eseguire, come i ''[[worm]]'' [[SASSER]] e [[Blaster]]. Questi attacchi sono diretti alla memoria che può essere sia scritta che eseguita, come la stack, e falliscono se questa non lo è.
 
== Emulazione software ==
Prima che fosse possibile il supporto hardware di questa caratteristica, con molti sistemi operativi si cercò di emularla attraverso il software, come col '''W^X''' o con l{{'}}'''Exec Shield''', descritti in seguito.
 
Un sistema operativo che emuli l'NX-bit può proteggere le aree di memoria ''[[Pila (informatica)|stack]]'' e ''[[memoriaAllocazione allocatadinamica dinamicamentedella memoria|heap]]'' dall'esecuzione di codice dannoso, e memoria con codice eseguibile dall'essere sovrascritta. Questo evita l'esecuzione di ''[[exploit]]'' di ''[[buffer overflow]]'', in particolare quelli che scrivono codice e poi lo fanno eseguire, come i ''[[worm]]'' [[SASSER]] e [[Blaster (virus)|Blaster]]. Questi attacchi sono diretti alla memoria che può essere sia scritta che eseguita, come la stack, e falliscono se questa non lo è.
 
<!-- In ampliamento, preferibilmente da rendere visibile al completamento
== Applicazioni nei sistemi operativi ==
Molti sistemi operativi includono o rendono disponibile questa tecnologia, mentre alcuni la emulano. Segue una lista dei sistemi interessati, in ordine alfabetico, le cui tecnologie sono ordinate cronologicamente. -->
== Note ==
<references />
 
{{Portale|informatica}}
-->
 
[[Categoria:Microprocessore]]
 
[[cs:NX bit]]
[[de:NX-Bit]]
[[en:NX bit]]
[[es:Bit NX]]
[[fi:NX-bitti]]
[[fr:NX Bit]]
[[ja:NXビット]]
[[nl:NX-bit]]
[[pl:NX-bit]]
[[pt:Bit NX]]
[[ru:NX-бит]]
[[zh:NX位元]]