Native API: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nuovo articolo |
Nessun oggetto della modifica |
||
(22 versioni intermedie di 17 utenti non mostrate) | |||
Riga 1:
Le
▲In [[informatica]], il termine '''native API''' (o anche '''native system services''' o '''executive system services''') indica i servizi interni dei [[sistema operativo|sistemi operativi]] appartenenti alla famiglia [[Windows NT]].
Generalmente ad ogni
▲Le ''native API'' costituiscono l'interfaccia al [[kernel]] di più basso livello possibile, tuttavia non si tratta dell'[[API]] ufficiale e documentata del sistema operativo, bensì di un'interfaccia privata sulla quale si appoggiano le [[Windows API]]. La compatibilità delle ''native API'' non è garantita tra differenti versioni di Windows NT, in quanto cambiamenti alla struttura del kernel potrebbero riflettersi in cambiamenti delle ''native API''. Per la scrittura di applicazioni è necessario utilizzare esclusivamente le Windows API.
La ragione per la quale esiste questo doppio strato di API deriva dal fatto che i sistemi operativi Windows NT possono disporre di differenti ''subsystem''. In Windows NT sono disponibili i ''subsystem'' Win32, [[Posix]] e [[OS/2]] (a partire da [[Windows XP]] è presente solo quello Win32). Pertanto le
▲Generalmente ad ogni ''native API'' corrisponde una Windows API equivalente, ad esempio alla ''native API'' <tt>NtWriteFile</tt> corrisponde la Windows API <tt>CreateFile</tt>.
Le
▲La ragione per la quale esiste questo doppio strato di API deriva dal fatto che i sistemi operativi Windows NT possono disporre di differenti ''subsystem''. In Windows NT sono disponibili i ''subsystem'' Win32, [[Posix]] e [[OS/2]] (a partire da [[Windows XP]] è presente solo quello Win32). Pertanto le ''native API'' sono l'interfaccia con la quale vengono sviluppati i ''subsystem''.
== Voci correlate ==
▲Le ''native API'' sono implementate nella [[dynamic-link library|libreria]] <tt>Ntdll.dll</tt>. A ciascuna ''native API'' corrisponde un servizio del kernel, che viene invocato tramite un [[interrupt]] ''0x2E'' (o con un'istruzione di [[linguaggio macchina]] ''sysenter'' o ''syscall'' sui [[microprocessori]] più recenti); questa operazione viene definita ''system service dispatching''.
* [[Architettura Windows NT]]
== Collegamenti esterni ==
* [https://web.archive.org/web/20050327034343/http://www.sysinternals.com/ntw2k/info/ntdll.shtml Inside the Native API] - articolo introduttivo di [[Mark Russinovich]]
* [https://msdn.microsoft.com/library/default.asp?url=/library/en-us/devnotes/winprog/ntcreatefile.asp Calling Internal APIs] - informazioni tecniche di [[Microsoft]]
{{portale|Microsoft}}
[[Categoria:Componenti di Windows]]
|