在Microsoft BUILD会议上,我看到了这个数字.
我想知道Win32的位置是否正确.Win32 API在现代Windows体系结构中的作用和地位是什么?
我的Win32 API概念是所有现代Windows体系结构的一种组合.Win32 API(或DDK)将"Windows内核服务"与其他技术联系起来.
我认为Internet Explorer/.NET/Silverlight都是基于 Win32 API 构建的.即使是一个花哨的新Metro应用程序,我猜想Win32处于最底层.然而,这个数字违背了我的知识.
如您所见,IE/.NET/SL/Metro与Win32水平放置.
问题:

图是错的.
虽然最初有其他子系统(例如POSIX)访问ntdll.dll("内核服务"网关)而不通过Win32(kernel32.dll,user32.dll),但这些子系统现在都已经不存在了.
Windows的所有现代应用程序框架都是基于Win32构建的.不再支持其他子系统.在某些情况下(驱动程序和启动时系统实用程序,如chkdsk)代码是直接针对本机API编写的,但这些方案非常罕见.
我对WinRT不太熟悉,但我认为Win32也适合它(或者它可能使用Win32和直接ntdll.dll服务的组合).
接下来,C++ Metro应用程序仍将加载Win32 DLL,例如kernel32和ntdll.此外,WinRT API调用Win32 DLL - 因此它们不是替代品,而是Win32之上的包装器,API风格.(历史记录:Windows曾经有一个名为"环境子系统"的功能,可以粗略地描述为API风格.WinRT不是环境子系统 - 它是Win32环境子系统之上的一个库.)
| 归档时间: |
|
| 查看次数: |
1961 次 |
| 最近记录: |