Perché il software utilizza il nome Win32?

29

Se un software / libreria ha qualche supporto per la piattaforma Windows, quasi sempre nominano le loro directory e variabili come win32 . Questo è più diffuso nei progetti C / C ++. Anche il triplo target del progetto MinGW utilizza win32 . C'è una ragione per questo? Perché non usare un nome proprio come Windows o Microsoft Windows? C'è un ostacolo legale alla scelta del nome?

Questa domanda non riguarda l'API, ma la convenzione di denominazione in uso. Quando una libreria supporta altri sistemi operativi, spesso usano nomi propri come linux , freebsd o qualsiasi supporto speciale necessario. Ma quando si tratta di Windows, è spesso abbreviato in win32 che sembra un po 'strano rispetto al resto.

    
posta Unmanned Player 29.08.2017 - 14:03
fonte

2 risposte

62

Win32 è il nome consueto per l'API di Windows. Questa API specifica in che modo le applicazioni possono interfacciarsi con il sistema operativo. È approssimativamente paragonabile allo standard POSIX su Unix, ma Win32 copre anche GUI e molte altre funzionalità.

L'API Win32 non è limitata alle installazioni Windows a 32 bit.

Da Centro risorse di Windows :

The Windows application programming interface (API) lets you develop desktop and server applications that run successfully on all versions of Windows while taking advantage of the features and capabilities unique to each version.

The Windows API can be used in all Windows-based desktop applications, and the same functions are generally supported on 32-bit and 64-bit Windows. Differences in the implementation of the programming elements depend on the capabilities of the underlying operating system. These differences are noted in the API documentation.

Note This was formerly called the Win32 API. The name Windows API more accurately reflects its roots in 16-bit Windows and its support on 64-bit Windows.

Non è necessario utilizzare l'API Win32 per svilupparsi per Windows. Le alternative sono le classi .NET o l'interfaccia di Windows RT.

Esiste tecnicamente una variante Win64. Ma differisce da Win32 per lo più nel modello di dati (la dimensione dei puntatori). Non è un insieme distinto di API:

The Win64 API environment is almost the same as the Win32 API environment—unlike the major shift from Win16 to Win32. The Win32 and Win64 APIs are now combined and called the Windows API. Using the Windows API, you can compile the same source code to run natively on either 32-bit Windows or 64-bit Windows. To port the application to 64-bit Windows, just recompile the code.

The Windows header files are modified so that you can use them for both 32-bit and 64-bit code. (source)

Poiché Win64 non è sostanzialmente diverso, quasi mai vedi i progetti con win64 targeting a livello di codice sorgente, anche se i nuovi progetti potrebbero targetizzare winapi invece del tradizionale win32 . Ma per tutti gli scopi pratici tutti questi nomi si riferiscono alla stessa API.

    
risposta data 29.08.2017 - 14:24
fonte
30

Poiché l'API di Windows ha più di 30 anni ed è esistita quando i PC erano a 16 bit, allora erano presenti 32 bit, quindi Win32s e poi win64. C'è una dipendenza dalla piattaforma nello sviluppo di Windows, e hai bisogno del tuo codice per abbinare le librerie del sistema operativo (dll) in architettura.

link

Un'applicazione Windows costruita su win32 verrà eseguita su architetture a 32 bit e verrà eseguita su 64 bit in virtù del sistema operativo Windows che fornisce un sottosistema win32 in modo che le app win32 vengano eseguite su un moderno sistema operativo Windows a 64 bit .

Mentre le build di win32 stanno diventando sempre meno col passare del tempo, win32 probabilmente non svanirà completamente in qualsiasi momento presto. Quando le build di win32 terminano, ci sarà probabilmente un win128, e win64 sarà la nuova win32.

    
risposta data 29.08.2017 - 14:47
fonte

Leggi altre domande sui tag