Windows 核心编程 _ 内核对象一
内核对象 系统会创建和处理的几种内核对象 访问令牌对象(access token) 事件对象 文件对象 文件映射对象 I/O完成端口对象 作业对象 邮件槽对象(mailslot) 互斥量对象 管道对象 进程对象 信号量对象 线程对象 可等待的计时器对象 线程池工厂对象 每个内核对...
内核对象 系统会创建和处理的几种内核对象 访问令牌对象(access token) 事件对象 文件对象 文件映射对象 I/O完成端口对象 作业对象 邮件槽对象(mailslot) 互斥量对象 管道对象 进程对象 信号量对象 线程对象 可等待的计时器对象 线程池工厂对象 每个内核对...
创建线程 概述 每个进程至少都有一个线程。 线程的组成 线程的内核对象,操作系统用它管理线程。 系统还用内核对象来存放线程统计信息的地方。 线程栈,用于维护线程执行时所需的所有函数参数和局部变量。 进程从来不会执行任何东西,它是线程的容器。 线程必然是在某个进程的上下文中创建的,...
lm lmv 概述 是 lm命令的详细模式,用于显示所有已加载模块的完整信息,包括: 模块基地址(Start/End):模块在内存中的起始和结束地址 模块路径(Image path):文件在磁盘中的完整路径 符号状态(Symbols):如 Loaded(符号已加载)、Deferr...
网络函数 WNetAddConnection 创建同一个网络资源的永久性连接 WNetAddConnection2 创建同一个网络资源的连接 WNetAddConnection3 创建同一个网络资源的连接 WNetCancelConnection 结束一个网络连接 WNetCan...
概述 在用户模式下进行线程同步的最大好处就是速度非常快。 与用户模式下的同步机制相比,内核对象的用途要广泛的多。实际上,内核对象的唯一缺点就是性能。 对线程同步来说,内核对象的每一种要么处于触发状态,要么处于未触发状态。 Microsoft为每种对象创建了一些规则,规定如何在这两...
ATL下载 ATL 作为微软官方库,源码随 Visual Studio 安装包 默认集成 正确代码结构 接口定义(使用 IDL) 实现类(使用 ATL) 对象创建宏 客户端调用示例 完整示例 项目结构 ExampleComponent.idl 在 Visual Studio 中创...
某程序替换图片资源,发现还是显示旧的 简述 替换了程序的一些背景图片,安装图片 编译后发现还是显示旧资源的内容 清理visual studio项目缓存,重新编译还是显示旧资源内容 分析 资源替换成功了,重新编译了,还显示旧内容,那说明跑起来的程序内部的资源本身就是旧的内容 也就是...
进程 本质 进程是资源分配的基本单位,是一个执行环境的容器 在Windows内核中,每个进程由一个EPROCESS(Executive Process)结构体表示 EPROCESS关键结构 进程地址空间 概述 每个进程拥有独立的虚拟地址空间(32位系统4GB,64位系统理论上25...
关键段 概述 critical section是一小段代码,它在执行之前需要独占对一些共享资源的访问权。 这种方式可以让多行代码以“原子方式”来对资源进行操控。 这里的原子方式,是指除了当前线程之外,没有其他任何线程会同时访问该资源。 当然,系统仍然可以暂停当前线程去调度其他线程...
概述 当所有线程都能独自运行而不需要相互通信的时候,Microsoft Windows将进程最佳运行状态。 系统中的所有线程必须访问系统资源,比如堆、串口、文件、窗口以及无数其他资源。 如果一个线程独占了对某个资源的访问,那么其他线程就无法完成它们的工作。 以下两种基本情况下,线...
搜索当前分类