
windows核心编程
文章平均质量分 66
小瑾
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Windows核心编程笔记---内核对象
1、内核对象 1)内核对象的拥有者是操作系统内核,内核对象包括事件对象、文件对象、文件映射对象及作业对象等等。 2)每个内核对象都只是一个内存块,由操作系统内核分配,并只能由操作系统内核访问,这个内存块是一个数据结构,维护着与内核对象有关的信息。少数成员(安全描述符和使用级数等)是所有对象共有的, 3)内核对象的访问可以利用Windows提供的一组函数,当创建一个内核对象之原创 2012-12-31 14:16:44 · 550 阅读 · 0 评论 -
内核对象(2)
一、跨进程边界共享内核对象1、使用对象句柄实现继承 1)前面我们有提及到共享利用对象句柄继承,不错。在句柄表中的第3项正是与此相关,当然首先要创建SECURITY_ATTRIBUTES结构。在创建CreateProcess时,将bInheritHandle设置为TRUE后,会将其完整的复制到子进程的句柄表中。复制项的位置与它在父进程中的位置是一样的,这就是意味这一个内核对象进行标识的句原创 2012-12-31 15:18:22 · 499 阅读 · 0 评论 -
多线程,进程,模块,
多线程1、回调函数:若类成员函数是一个callback函数,必须声明为static.才能将C++编译器加于函数的一个隐藏参数this去掉。由Windows系统调用的函数统称为callback函数,这些函数都有一定的类型。Windowsi并不借助任何对象调用这个函数,没有传递this指针给callback函数。于是堆栈中有一个随机变量会成为this 指针,直接的是程序的崩溃原创 2013-01-16 16:49:28 · 957 阅读 · 0 评论 -
Windows核心编程--Windows内存体系结构
Windows内存体系结构1、进程的虚拟地址空间 每个进程都有自己的虚拟地址空间。虚拟地址空间为用户编程时用的地址,用户程序地址的集合为逻辑地址空间。它的编制是从0开始的。32位进程的地址空间是4GB,因为32位指针可以表示从Ox00000000到OxFFFFFFFF之间的任一值。指针在这个范围内副高可进程的4GB地址空间。每个进程都有自己的地址空间,当线程运行的时候,只能访问自己进程的内原创 2013-03-19 21:29:35 · 963 阅读 · 0 评论 -
Windows核心编程--在应用程序中使用虚拟内存
在应用程序中使用虚拟内存在Windows中可以使用3中机制进行对内存操控1、虚拟内存 适合用来管理大型对象数组或大型结构数组2、内存映射文件 管理大型数据流,通常是文件,以及在同一机器上运行的多个进程之间共享数据3、堆 管理大量的小型对象1、预订地址空间区域要访问在内存中地址,必须先进行地址空间区域的预订,这步就是告诉系统要预订地址空间中的哪一块。这是在进程的地址原创 2013-03-26 11:45:13 · 770 阅读 · 0 评论 -
Windows核心编程--用内核对象进行线程同步(一)
用内核对象进行线程同步(一) 无论是进程还是线程都有一个内核对象。我们可以通过检查进程对象的布尔值就可以知道进程是否在运行。线程内核对象在创建的时候处于未触发状态,当线程终止时候,操作系统会自动将线程对象的状态改为已触发。只有在已经触发的情况下,才是可以调度的。那么这就是等待。决定每个对象处于触发还是未触发状态的规则与对象的类型有关。1、等待函数,就是使一个线程自愿进入等待状态,原创 2013-03-26 21:43:18 · 802 阅读 · 0 评论 -
向同名共享内存写入的数据大小不一样问题
以同样的名字申请不同大小的共享内存中出现的问题1、当我们使用CreateFileMapping时,我们告诉系统文件映射对象需要多大的物理存储器,此时会返回一个句柄给调用线程,这个句柄用来标识所创建的文件映射对象,2、第二步我们需要使用MapViewOfFile.用来为文件的数据预订一块地址空间区域并将文件的数据作为物理存储器调拨给区域。将文件的数据映射到进程的地址空间分析:首先我们原创 2013-04-21 18:29:43 · 2150 阅读 · 0 评论 -
匿名管道与子进程
管道技术管道技术是用在两个进程之间的通信,首先我们来看看进程之间的通信方式会有哪些一、内核对象在很多时候会需要共享内核对象,1、利用文件映射对象,可以在同一个机器上运行的两个不同进程之间共享数据块2、借助邮件槽和命名管道,在网络中的不同计算机上运行进程可以相互发送数据块3、互斥量、信号量和时间允许不同进程中的线程同步执行。在操作系统中将句柄设计成为相对于某个进程的。原创 2013-06-09 21:44:15 · 1319 阅读 · 0 评论