进程、线程及内核对象

本文详细介绍了Windows操作系统中的进程、线程以及内核对象的概念和特性。内核对象由内核管理,有引用计数机制,进程包含内核对象和地址空间,线程则由内核对象和堆栈组成。讨论了进程和线程的资源使用,建议尽量使用线程代替进程。此外,还提到了内存映射文件在进程间通信和数据共享中的作用。
摘要由CSDN通过智能技术生成

进程、线程及内核对象笔记

 

内核对象

每个内核对象只是内核分配的一个内存块,并且只能由该内核访问,这个内存块是一种数据结构,他的成员负责维护该对象的各种信息,如进程对象有一个进程ID、一个基本优先级和一个退出代码。

由于内核对象的数据结构只能被内核访问,so应用程序是无法在内存中找到这些数据结构的并直接改变其内容的。Windows提出这个限制为了确保内核对象结构保持状态的一致,也是为了保证Microsoft能够在不破坏应用程序的情况下在这些内核对象的结构中添加、删除、修改这些数据成员;

 

内核对象使用引用计数

  内核对象由内核所有,而不是进程所有,举例说明,在做单进程限制时,我们一般会CreateMutex来创建一个命名的Mutex,再另外一个进程中再来创建或者打开相同命名的Mutex来检验有相同进程被创建。也可以这么说进程调用一个创建的内核对象函数,进程终止了但是内核对象不一定被撤销;

 

进程内核对象的句柄表

当一个进程被初始化时,

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值