在Microsoft BUILD session 上,我看到了这个数字。

我想知道Win32的位置是否正确。 Win32 API在现代Windows体系结构中的角色和地位是什么?

我对Win32 API的概念是所有现代Windows体系结构的一种组合。 Win32 API(或DDK)将“Windows内核服务”桥接到其他技术。

我认为Internet Explorer/.NET/Silverlight都是基于Win32 API构建的。即使是新的Metro Metro应用程序,我也猜想Win32在最底层。但是,这个数字违背了我的知识。

如您所见,IE/.NET/SL/Metro与Win32处于水平连接。

问题:

  • 这个数字是否一定意味着Win32不是所有其他现代技术的框架?
  • 什么是“Windows内核服务”?程序员如何访问它们?不是通过Win32 API和DDK吗?
  • 最佳答案

    该图是错误的。

    虽然最初有其他子系统(例如POSIX)无需通过Win32(ntdll.dllkernel32.dll)即可访问user32.dll(“内核服务”网关),但这些子系统现在都已失效。

    Windows的所有现代应用程序框架均基于Win32。不再支持其他子系统。在某些情况下(驱动程序和启动时系统实用程序,例如chkdsk),代码是直接针对 native API编写的,但是这种情况很少见。

    我对WinRT不太熟悉,但我认为Win32也适合它(或者它可以使用Win32和直接ntdll.dll服务的组合)。

    根据Sasha Goldshtein

    10-08 09:44
    查看更多