分享
 
 
 

Windows内核情景分析——采用开源代码ReactOS(上、下册)

Windows内核情景分析——采用开源代码ReactOS(上、下册)  点此进入淘宝搜索页搜索
  特别声明:本站仅为商品信息简介,并不出售商品,您可点击文中链接进入淘宝网搜索页搜索该商品,有任何问题请与具体淘宝商家联系。
  參考價格: 点此进入淘宝搜索页搜索
  分類: 图书,计算机/网络,操作系统/系统开发,WINDOWS,

作者: 毛德操著

出 版 社: 电子工业出版社

出版时间: 2009-5-1字数:版次: 1页数: 1465印刷时间:开本: 16开印次:纸张:I S B N : 9787121081149包装: 平装内容简介

本书通过分析ReactOS的源代码介绍了Windows内核各个方面的结构、功能、算法与具体实现。全书从“内存管理”、“进程”、“进程间通信”、“设备驱动”等多个方面进行分析介绍,所有的分析都有ReactOS的源代码(以及部分由微软公开的源代码)作为依据,使读者能深入理解Windows内核的方方面面,也可以使读者的软件开发能力和水平得到提高。

本书可供大学有关专业的高年级学生和研究生用做教学参考,也可供广大的软件工程师,特别是从事系统软件研发的工程师用于工作参考或用做进修教材。

目录

上册

第1章 概述

1.1 Windows操作系统发展简史

1.2 用户空间和系统空间

1.3 Windows内核

1.4 开源项目ReactOS及其代码

1.5 Windows内核函数的命名

第2章 系统调用

2.1 内核与系统调用

2.2 系统调用的内核入口KiSystemService()

2.3 系统调用的函数跳转

2.4 系统调用的返回

2.5 快速系统调用

2.6 从内核中发起系统调用

第3章 内存管理

3.1 内存区间的动态分配

3.2 页面异常

3.3 页面的换出

3.4 共享映射区(Section)

3.5 系统空间的缓冲区管理

第4章 对象管理

4.1 对象与对象目录

4.2 对象类型

4.3 句柄和句柄表

4.4 对象的创建

4.5 几个常用的内核函数

4.6 对象的访问控制

4.7 句柄的遗传和继承

4.8 系统调用NtDuplicateObject()

4.9 系统调用NtClose()

第5章 进程与线程

5.1 概述

5.2 Windows进程的用户空间

5.3 系统调用NtCreateProcess()

5.4 系统调用NtCreateThread()

5.5 Windows的可执行程序映像

5.6 Windows的进程创建和映像装入

5.7 Windows DLL的装入和连接

5.8 Windows的APC机制

5.9 Windows线程的调度和切换

5.10 线程和进程的优先级

5.11 线程本地存储TLS

5.12 进程挂靠

5.13 Windows的跨进程操作

5.14 Windows线程间的相互作用

第6章 进程间通信

6.1 概述

6.2 共享内存区(Section)

6.3 线程的等待/唤醒机制

6.4 信号量(Semaphore)

6.5 互斥门(Mutant)

6.6 事件(Event)

6.7 命名管道(Named Pipe)和信插(Mailslot)

6.8 本地过程调用(LPC)

6.9 视窗报文(Message)

第7章 视窗报文

7.1 视窗线程与Win32k扩充系统调用

7.2 视窗报文的接收

7.3 Win32k的用户空间回调机制

7.4 用户空间的外挂函数

7.5 视窗报文的发送

7.6 键盘输入线程

7.7 鼠标器输入线程

7.8 默认的报文处理

第8章 结构化异常处理

8.1 结构化异常处理的程序框架

8.2 系统空间的结构化异常处理

8.3 用户空间的结构化异常处理

8.4 软异常

下册

第9章 设备驱动

第10章 网络操作

第11章 文件操作

第12章 操作系统的安全性

第13章 注册表

第14章 系统管理进程与服务进程

参考文献

书摘插图

上册

第2章系统调用

2.1内核与系统调用

对于应用程序的运行即应用进程而言,操作系统内核的作用体现在一组可以供其调用的函数,称为“系统调用(System Call)”,正是这些系统调用加上一些辅助的手段构成了应用软件的运行环境,即日常所说的“运行平台”。从应用软件的角度看,这些系统调用都是操作系统为其提供的服务,所以也称“系统服务(System Service)”。在本书中,“系统调用”与“系统服务”是可以互换的同义词。

从程序运行的角度看,进程是主动的、“活性(Active)”的,是发出调用请求的一方;而内核是被动(Passive)的,只是应进程的要求而提供服务。但是,从整个系统的角度看,则内核也有活性的一面,诸多应用进程就是在内核的调度下运行,所以内核有其两面性。离开进程调度,内核就只剩下了被动的一面,那就类似于一个运行时程序库了。而系统调用即系统服务,就体现了内核被动的一面。内核活性的一面即进程调度,对于应用程序而言是无形的,其目的就在于为应用软件创造一种似乎独占着CPU的假象;相比之下内核被动的一面即系统调用则是有形的,要不然应用程序就无法调用这些服务。

系统调用所提供的服务是在内核中,一般是在“系统空间”实现的,而应用软件则都在用户空间运行,二者之间有着空间的间隔,实质上是CPU运行模式的不同。所以,在应用软件与内核之间必定存在着一个明确定义的“系统调用界面”。

不过要由应用软件直接按规定的形式进行系统调用是不方便的,所以一般都要在外面包上一层,提供一套便于调用的(用户空间)库函数作为中介。在UNIX/Linux系统及后来的POSIX标准中,这就是c语言运行库的一部分。就调用的参数、返回值、作用而言,由标准C语言运行库提供的“系统调用”函数与实际的系统调用一一对应并基本相同。例如,read()是个系统调用,而用户程序引用的read()实际上是库函数,二者是对应的,并且参数的数量、类型、次序等基本相同,功能则完全相同。标准C语言运行库也提供一些建立在系统调用基础上功能有所扩充的高层库函数,例如fread0是建立在read()基础上的,但是用起来更加方便,可是那就不叫系统调用。

……

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
>>返回首頁<<
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有