1、进程与线程
进程是惰性的,从来不执行任何东西,它只是一个线程的容器。线程必定是在某个进程的上下文中创建的,
而且其生命周期都在该进程中。因为句柄表是针对每一个进程的,因此同一个进程中的多个线程可以共享
内核对象句柄。进程运行需要占用许多的内存资源(加载DLL等),进程只需要一个内核对象和一个进程栈,
无需占用多少内存。
2、终止线程的几种方式:
2.1线程函数返回(强烈推荐)
2....
分类:
编程语言 时间:
2015-01-27 16:26:54
阅读次数:
215
目录一:基础二:自旋锁示例三:SpinLock四:继续SpinLock五:总结一:基础内核锁:基于内核对象构造的锁机制,就是通常说的内核构造模式。用户模式构造和内核模式构造 优点:cpu利用最大化。它发现资源被锁住,请求就排队等候。线程切换到别处干活,直到接受到可用信号,线程再切回来继续处理...
分类:
编程语言 时间:
2015-01-24 21:25:39
阅读次数:
404
Windows 对象
Windows 对象分类
1.Windows的 GUI对象
2.Windows的 GDI 对象
3.Windows的内核对象
Windows对象的句柄和对象机制的意义
1.句柄和对象机制有效的保证了Windows在升级后仍然保持对已有应用程序的极高兼容性
2.句柄和对象机制从根本上保证的了Windows系统的安全性
3.句柄和对象机制把开发人员从繁杂的系统...
介绍 本章主要说下基于内核模式构造的线程同步方式,事件,信号量。目录一:理论二:WaitHandle三:AutoResetEvent四:ManualResetEvent五:总结一:理论我们晓得线程同步可分为,用户模式构造和内核模式构造。内核模式构造:是由windows系统本身使用,内核对象进行调度....
分类:
编程语言 时间:
2015-01-10 08:52:19
阅读次数:
289
首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象。 不管是文件,还是套接字,还是管道,我们都可以把他们看作流。 之后我们来讨论I/O的操作,通过read,我们可以从流中读入数据;通过write,我们可以往流写入数据。现在假定一个情形,我们需要从流中.....
分类:
其他好文 时间:
2014-12-26 14:34:03
阅读次数:
165
Windows多线程编程总结keyword:多线程 线程同步 线程池 内核对象1 内核对象1 .1内核对象的概念内核对象是内核分配的一个内存块,这样的内存块是一个数据结构,表示内核对象的各种特征。而且仅仅能由内核来訪问。应用程序若须要訪问内核对象,须要通过操作系统提供的函数来进行,不能直接訪问内核对...
分类:
编程语言 时间:
2014-12-24 13:12:01
阅读次数:
271
如果想要在两个进程之间进行传输数据,共享内存是其中一个方法。当然个人觉得,共享内存主要的还是用来节约内存。首先使用下面的函数创建一个新的文件映射内核对象HANDLE CreateFileMapping( HANDLE hFile, //物理文件句柄 LPSECURITY_ATTRIB...
分类:
其他好文 时间:
2014-12-16 18:45:55
阅读次数:
163
多线程常用的内核对象:CreateEvent事件,CreateMutex互斥,CreateSemaphore信号,CreateWaitableTimer计时器{建立事件}function CreateEvent( lpEventAttributes: PSecurityAttributes; {!....
分类:
编程语言 时间:
2014-12-11 23:44:51
阅读次数:
309
最近一直没有更新博客,因为一直在想一个问题,内核对象这一章内容很多很重要,自己没有掌握好也没有把握写好这一章,最后还是决定能写多少写多少,一面写一面学,后续学到新的再更新吧;
《windows核心编程》提了几种内核对象:
访问令牌对象:与windows的安全性有关,目前不是很懂,了解后再写;
事件对象: Event对象,可跨进程同步; 由CreateEvent创建;
文件对象: Fi...
看《windows 核心编程》 第五版到纤程了,下一章节即将介绍内存体系编程。如果做window平台下的开发,我感觉此书一定要读。记得开始讲解了window的基础,然后讲解内核对象。内核对象包括,进程,作业,线程,事件,临界点,互斥体等。个人认为还是比较详细,里面的内容无法详细的说出,强烈windo...