1.内核对象:
2).事件对象 【程序编程相关:得到windows系统图标的解决方案】 1).符号对象 【推荐阅读:[分享]总结:VC小知识!】 4).文件影象对象 【扩展信息:开一新窗口监视TRACE的工具,Rele】 3).文件对象 5).i/o完成对象 6).作业对象 7).信箱对象 8).互斥对象 9).管道对象 10).进程对象 11).信标对象 12).线程对象 13).等待计时器对象2.内核对象只能由内核所拥有,而不是由进程拥有.
3.内核对象的数据结构有计数器,进程调用时,计数器增1,调用结束,计数器减1,内核对象计数器为零时,销毁此内核对象.4.内核安全性,进程使用什么权限调用内核对象,由security_attributes结构的数据结构来指定.几乎所有的调用内核对象的函数都含有security_attributes结构的指针参数.typedef struct _security_attributes { dword nlength; //结构体长度 lpvoid lpsecuritydescriptor; //安全性设置 bool binherithandle; //可继承性} security_attributes, *psecurity_attributes; 5.进程的内核对象的句柄表,进程调用内核对象时,就会创建内核对象的句柄表,就是内核对象在进程中的索引,索引值就是调用内核对象函数返回的句柄.关闭所有的内核对象,使用closehandle();6.跨越进程边界共享内核对象microsoft把句柄设计成进程句柄,不设计成系统句柄是为了实现句柄的健壮性与安全性.1)内核对象句柄的继承性. 作用:为了子进程实现对父进程创建的内核对象的访问. 步骤:首先,父进程创建内核对象时,初始化security_attributes结构的对象,让security_attributes结构体的成员变量binherithandle设置为true.... 下一页