- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
深入解析windows操作系统(第五版中文翻译)
概念和工具
在这一章中,我们会介绍全书将会用到的关键的windows操作系统概念和术语,例如Windows API、进程、线程、虚拟内存、内核模式和用户模式、对象、句柄、安全和注册表。我们也会介绍你用来探索Windows 内部机制的工具,例如内核调试器、可靠性和性能监视器、来自Windows sysinternals /technet/sysinternals 主要的工具。此外,我们将解释你怎么使用Windows Driver Kit(WDK)和Windows Software development Kits(SDK)作为资源来发现Windows系统内部更多的信息。
确保你理解本章的所有东西-本书的剩余部分假定你已经理解了一切。
Windows操作系统版本
本书覆盖基于Windows NT内核的最近两个版本:Windows Vista(32位和64位版本)和Windows Server 2008(32位和64位版本)。除非特殊说明,本文适用所有的版本。作为背景信息,表1-1列出了Windows NT内核的发布版本,它们的内部版本号和外部产品名称。
基本概念和术语
在本书的课程当中,我们将会引用一些对一些读者来说比较陌生的结构和概念。在这个部分,我们将会定义这些贯穿于全书的这些术语。
你将在进入到余下章节之前熟悉这些术语。
Windows API
Windows应用程序编程接口(Windows application programming interface)是对Windows操作系统家族的系统编程接口。前面介绍的Windows XP 和Windows Server 2003的64位版本,Windows操作系统的32位版本的编程接口称作Win32 API,以用来区别于原始的16位Windows API,16位Windows API是原始的Windows16位版本的编程接口。在本书中,术语Windows API指的是Windows Vista和Windows Server 2008的32位和64位编程接口。
注意在SDK文档中描述了Windows API(参见本章后面的Windows SDK)。这个文档可以在.在线免费浏览。它也包含了微软开发网络(MSDN,微软对开发者的编程支持)的所有订阅级别(subscription levels)。需要更多的信息,可以看。对基于Windows API编程描述的最精彩的是《Windows via C/C++》(第五版,作者Jeffrey Richter和Christophe Nasarre,微软出版社2007)。
Windows API包数千个可调用的函数,可以分成下面主要的类别:
■基础服务(Base Services)
■组件服务(Component Services)
■ 用户接口服务(User Interface Services)
■ 图形和多媒体服务(Graphics and Multimedia Services)
■ 消息和协作(Messaging and Collaboration)
■ 网络Networking
■ Web服务(Web Services)
本书重点关注内部的关键基础服务,例如进程和线程、内存管理、IO和安全。
.Net是什么?
.Net框架包含了一个称作FCL(Framework Class Library)类库和一个公共语言运行时(Common Language Runtime)(CLR),CLR提供了一个托管代码的执行环境,具有实时编译、类型校验、垃圾回收、代码访问安全等特性。CLR也提供了一个开发环境,可以提高程序员的生产率、减少通常的编程错误。对于.NET Framework出色的描述和它的内核架构,可以参考《CLR via C#, Second Edition by Jeffrey Richter 》 Microsoft Press,2006 。
CLR被实现成一个经典的代码运行在用户模式的DLL COM服务器。实际上,.NET Framework的所有组件都是在windows API基础上使用非托管代码实现成标准的用户模式windows DLL(没有任何一个.NET Framework组件运行在内核模式。图1-1说明这些组件之间的关系。
.Win32 API的历史
有趣的是,Win32 并不是最初就作为微软windows NT的编程接口的候选名单。因为windows NT项目开始是用来替代OS/2 version 2的,主要的编程接口是32位OS/2 外观管理(Presentation Manager)API。然而,项目做了一年以后,微软windows 3.0 上市并取代了它。因此微软改变了方向并把windows NT作为将来取代windo
文档评论(0)