一、系统中的内核对象有:比如存取符号对象、 事件对象、文件对象、文件映射对象、I / O 完成端口对象、作业对象、信箱对象、互斥对象、管道对象、进程对象、信标对象、线程对象和等待计 时器对象等。
二、对于内核的理解:
每个内 核对象只是内核分配的一个内存块,并且只能由该内核访问。
该内存块是一种数据结构,它的成员负责维护该对象的各种信息。
有些数据成员(如安全性描述符、使用计数等)在所有对象类型中是相同的,但大多数数据成员属于特定的对象类型。
例如,进程对象有一个进程I D 、一个基 本优先级和一个退出代码,而文件对象则拥有一个字节位移、一个共享模式和一个打开模式。
三、特别需要注意的一个事实:内核对象的存在时间可以比创建该对象的进程长。
实现的机理:1、内核对象由内核所拥有,而不是由进程所拥有。2内核对象的使用计数
四、究竟是用户对象还是内核对象呢?若要确定一个对象是否属于内核对象,最容易的方法是观察创建该对象所用的函数。创建内核对象的所有函数几乎都有一个参数,你可以用来设定安全属性的信息。
五、进程的内核对象句柄表
进程的句柄表,它只是个数据结构的数组。每个结构都包含一个指向内核对象的指针、一个访问屏蔽和一些标志。
六、跨越进程边界共享内核对象
在不同进程中运行的线程需要共享内核对象。下面是为何需要共享的原因:
• 文件映射对象使你能够在同一台机器上运行的两个进程之间共享数据块。
• 邮箱和指定的管道使得应用程序能够在连网的不同机器上运行的进程之间发送数据块。
• 互斥对象、信标和事件使得不同进程中的线程能够同步它们的连续运行,这与一个应用程序在完成某项任务时需要将情况通知另一个应用程序的情况相同。
七、命名对象
共享跨越进程边界的内核对象的第二种方法是给对象命名。
所有这些函数都有一个共同的最后参数p s z N a m e 。
当为该参数传递N U L L 时,就向系统指明了想创建一个未命名的(匿名)内核对象。
命名对象常常用来防止运行一个应用程序的多个实例。
创建一个命名对象后,怎么判断该命名对象是否已经创建过。
当C r e a t e *函数返回时,调用G e t L a s t E r r o r 函数。
如果G e t L a s t E r r o r 函数返回E R R O R _ A L R E A D Y _ E X I S T S ,那么你的应用程序的另一个实例正在运行
为了保证对象的唯一性,建议创建一个G U I D ,并将G U I D 的字符串表达式用作对象名。
八、 存在的几个疑惑:句柄能够在进程之间拷贝? 这样做有意义吗?
句柄,喔 用途上还没有概念。。。
分享到:
相关推荐
李航《统计学习方法》笔记 --从原理到实现:基于R.pdf
第一章:编程基础 3-11 第二章:数组 11 -31 第三章:面向对象程序开发 31 -74 第四章:异常机制 74 -89 第五章:多线程技术 89 -122122122 第六章:常用类 API 122API 122 API 122API 122API 122API 122API 122-...
自我学习笔记--LUA;python:网络编程等
unix网络编程-第三版读书笔记unix网络编程-第三版读书笔记
核心编程-读书笔记的相关介绍,对每个章节都有描述希望对大家有所帮助
2012-06-11 21:42 554,081 13 套ROOTKITS源码—Windows内核的安全防护.rar 2012-06-11 21:41 1,322,993 1)华为研发(pdf版).pdf 2012-06-11 21:07 9,883 806419蚁群算法程序.rar 2012-06-11 21:40 60 access连接字符...
学生读书笔记共享-学生读书笔记共享系统-学生读书笔记共享系统源码-学生读书笔记共享管理系统-学生读书笔记共享管理系统java代码-学生读书笔记共享系统设计与实现-基于springboot的学生读书笔记共享系统-基于Web的...
Sim-to-Real: Learning Agile Locomotion For Quadruped Robots笔记 Sim-to-Real: Learning Agile Locomotion For Quadruped Robots笔记 Sim-to-Real: Learning Agile Locomotion For Quadruped Robots 笔记
2012-06-12 11:50 3,620,678 visual c++网络通信编程实用案例精选(源代码).rar 2012-06-12 12:23 3,982,016 Visual_C++网络编程经典案例详解PPT.rar 2012-06-12 12:26 428,875 Visual_Studio_2008_入门教程.pdf 2012...
MQTT协议笔记-打印版, 来自:聂永的博客 ...3. MQTT协议笔记之发布流程 nieyong 2014-02-10 23:42 2. MQTT协议笔记之连接和心跳 nieyong 2014-02-09 13:41 1. MQTT协议笔记之头部信息 nieyong 2014-02-07 17:35
WINDOWS核心编程_笔记合集.zip
2021最新幼儿园管理档案-园长读书笔记:园长怎样起好关键作用.doc
Hadoop权威指南----读书笔记
2012-05-27 11:07 3,045,963 '工程师应该掌握的20个...2012-05-27 10:59 112,211 第16章 Unicode.pdf 2012-05-27 11:06 429,034 等一个晴天[1].txt 2012-05-27 10:56 50,176 计算机知识-双核处理器 VS 单核处理器.doc
2012-05-27 11:07 3,045,963 '工程师应该掌握的20个...2012-05-27 10:59 112,211 第16章 Unicode.pdf 2012-05-27 11:06 429,034 等一个晴天[1].txt 2012-05-27 10:56 50,176 计算机知识-双核处理器 VS 单核处理器.doc
学生读书笔记共享-学生读书笔记共享系统-学生读书笔记共享系统源码-学生读书笔记共享管理系统-学生读书笔记共享管理系统java代码-学生读书笔记共享系统设计与实现-基于springboot的学生读书笔记共享系统-基于Web的...
字符编码笔记:ASCII-Unicode和UTF-8 字符编码笔记:ASCII-Unicode和UTF-8 字符编码笔记:ASCII-Unicode和UTF-8