首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于进程结构解决思路

2012-03-26 
关于进程结构如下是我对windows操作系统下,进程结构的理解问题有两个:1。进程维护了一个内核对象的句柄表,

关于进程结构
如下是我对windows操作系统下,进程结构的理解

问题有两个:
1。进程维护了一个内核对象的句柄表,我知道内核对象的句柄是与进程相关的,那么这些被维护的内核对象是否存在于进程的地址空间中?还是说全局的空间?
2.对于用户对象的句柄系统又是如何维护的?有没有一张表存在呢?

[解决办法]
1。进程维护了一个内核对象的句柄表,我知道内核对象的句柄是与进程相关的,那么这些被维护的内核对象是否存在于进程的地址空间中?还是说全局的空间?
这些被维护的内核对象是在内核空间,也是在进程的虚拟地址空间里;只是它们在内核空间里面

2.对于用户对象的句柄系统又是如何维护的?有没有一张表存在呢?
“用户对象的句柄系统”这句话是不成立的,在操作系统中,句柄是操作系统给程序分配的;操作系统有自己的管理,要么在各个进程中,要么系统自己可能管理
[解决办法]
之前粗看过《windows核心编程》,记得里面对这问题有详细的解释。
[解决办法]

探讨

Windows核心编程这本书对这些问题也是不清不楚,
查过相关资料,也看过几篇博客,我现在对此问题的理解:
1.内核对象是存在于进程的地址空间中,不然不会说是进程相关,而其他进程无权访问。
2.用户对象句柄,系统应该也是以表格映射的方式进行维护的,提供给所有进程共享。

[解决办法]

建议看 《windows核心编程》 -> 《windows内核原理与实现》
[解决办法]
还有《windows驱动开发技术详解》
[解决办法]
1.句柄最终索引到一个指针 句柄与进程关联 句柄表在进程空间 内核对象在公共空间
2. 用户模式下使用句柄 句柄在句柄表里 句柄最终指向一个内核对象

建议看<<深入解析windows操作系统>> <<windows内核情景分析>>
[解决办法]
探讨

1.句柄最终索引到一个指针 句柄与进程关联 句柄表在进程空间 内核对象在公共空间
2. 用户模式下使用句柄 句柄在句柄表里 句柄最终指向一个内核对象

建议看<<深入解析windows操作系统>> <<windows内核情景分析>>

[解决办法]

补充一下

有哪些内核对象?

如下:存取符号对象、事件对象、文件对象、文件映射对象、I / O 完成端口对象、作业对象、信箱对象、互斥对象、管道对象、进程对象、信标对象、线程对象和等待计时器对象等。这些对象都是通过调用函数来创建的。

 除了内核对象外,你的应用程序也可以使用其他类型的对象,如菜单、窗口、鼠标光标、刷子和字体等。这些对象属于用户对象或图形设备接口(GDI)对象,而不是内核对象。
  
来源:http://blog.csdn.net/geeeeeeee/article/details/6564661

  

热点排行