您的当前位置:首页正文

面试题(58)|操作系统(6):什么是内核对象(资源)

2024-11-09 来源:个人技术集锦

什么是内核对象
    常见内核对象
        存取符号对象,时间对象,文件对象,文件映射对象
        I/O完成端口对象,作业对象,信箱对象,互斥对象,管道对象
        进程对象,信标对象,线程对象和等待计时器对象
    内核对象本质
        内核对象时内核分配的一个内存块,并且该内存块只能被内核访问
        该内存块是一种数据结构,它的成员负责维护内核对象的各种信息
        有些数据成员(如安全性描述符,使用计数)在所有内核对象中是相同的;但大多数数据成员是该内核对象特有的
        进程对象数据成员:进程ID一个,基本优先级一个,退出代码一个;文件对象数据成员:字节位移一个,共享模式一个,打开模式一个;
    操作内核对象
        应用程序无法直接修改内核对象,无法在内存中找到内核内存块
        windows提供了一组函数操作内核对象,应用程序通过这组函数访问内核对象
        调用一个创建内核对象的函数时,就可以得到一个标识该对象的句柄
        进程中任何线程可以使用这个句柄,将这个句柄传递给windows各个函数,系统便会对该内核对象做对应操作

参考文献:

《windows核心编程》第三章 

显示全文