每个内核对象都只是一个内存块,它由操作系统内核分配,并只能由操作系统内核访问。这个内存块是一个数据结构,其成员维护着与对象相关的信息。少数成员(安全描述符和使用计数)是所有对象都有的,但其...
分类:
其他好文 时间:
2014-08-12 03:42:33
阅读次数:
224
1、kobject
Linux内核用kobject来表示一个内核对象。它和Sysfs文件系统联系密切,在内核中注册到系统中的每个kobject对象在sysfs文件系统中对对应着一个文件目录。kobject数据结构通常的用法是嵌入到其对他的数据结构中(即容器,比如cdev结构),用于实现内核对该类数据结构对象的管理。这些数据结构(容器)通过kobject连接起来,形成了一个树状结构...
分类:
系统相关 时间:
2014-08-11 21:34:03
阅读次数:
344
X86处理器上用户层到内核层的转换要花费600个CPU指令周期 临界区(关键代码段)不是内核对象 但当访问被占用的资源时会使用内核资源 功能同互斥但不可跨进程 (以上引用自:http://www.dewen.org/q/9561) WIN32内核对...
分类:
编程语言 时间:
2014-08-11 12:16:02
阅读次数:
243
学习资源:《Windows核心编程》第5版知识基础支持:跳过的内容:1、知识要点:1:注意事项:1、不理解知识点:1、进度:1、2014-08-10,前两章结束,接下来“第3章内核对象”
Mutex和Critical Section都是主要用于限制多线程(Multithread)对全局或共享的变量、对象或内存空间的访问。下面是其主要的异同点(不同的地方用绿色表示)。MutexCritical Section性能和速度慢。Mutex是内核对象,相关函数的执行(WaitForSingle...
分类:
编程语言 时间:
2014-08-07 18:24:21
阅读次数:
298
Event是内核对象,他可以分为自动和手动两种模式。HANDLE CreateEvent( LPSECURITY_ATTRIBUTES lpEventAttributes,BOOL bManualReset,BOOL bInitialState,LPCTSTR lpName); 参数lpEventA...
分类:
编程语言 时间:
2014-07-22 00:12:36
阅读次数:
220
每个内核对象都只是一个内存块,它由操作系统内核分配,并只能由操作系统内核访问。这个内存块是一个数据结构,其成员维护着与对象相关的信息。少数成员(安全描述符和使用计数)是所有对象都有的,但其他大多数成...
分类:
其他好文 时间:
2014-07-21 10:34:35
阅读次数:
410
临界区Critical Section(CS) 不可跨进程,效率高事件 Event 使用内核对象,可跨进程,用于通知互斥量 Mutex 使用内核对象,可跨进程,用户互斥信号量 Semaphore 使用内核对象,可跨进程,有限数量资源http://blog.csdn.net/column/deta.....
分类:
编程语言 时间:
2014-07-21 09:37:54
阅读次数:
294
Mutex 用途和critical section 非常类似,不过Mutex是内核对象,速度比section慢。Mutexes可以跨进程使用。另外Mutex在等待的时候可以设置等待时间。以下是两种对象的相关函数比较:CRITICAL_SECTION Mut...
分类:
编程语言 时间:
2014-07-19 00:38:29
阅读次数:
342
正在拜读《windows核心编程》,稍后总结。---------XiaoF先说说为何要实现此功能 1,利用文件映射对象,可以在同一电脑的不同进程之间共享数据块。 2,借助邮件槽和命名管道,在网络中的不同计算机上运行的进程相互发送消息。 3,互斥量。信号量。事件,允许不同进程中的线程做同步。如何实现,...
分类:
其他好文 时间:
2014-07-14 23:31:16
阅读次数:
285