首页 > 厂商 > 问答 > 内核对象,内核对象的介绍

内核对象,内核对象的介绍

来源:整理 时间:2024-06-03 05:35:53 编辑:智能门户 手机版

1,内核对象的介绍

进程对象有一个进程I D 、一个基本优先级和一个退出代码,而文件对象则拥有一个字节位移、一个共享模式和一个打开模式。

内核对象的介绍

2,什么是内核对象跟用户对象有什么区别

理解内核对象,先要了解什么是内核。内核可以理解为一个人的大脑,我们知道大脑能控制一个人的行为,但是大脑并不是直接控制,而是是通过神经来传递命令,内核对象就是操作系统的神经。内核对象实际上就是一些只有内核才能访问的内存数据,内核通过访问这些数据来完成对系统的控制,上层可以看到内核对象,并执行对它的一些操作,但是却无法访问这些数据。进程、线程、作业等都是内核对象,你可以操作它们却不能访问它们。用户对象:窗口,窗口类,菜单等。

什么是内核对象跟用户对象有什么区别

3,windows中的窗口是内核对象吗

窗口不是内核对象。“内核对象”,肯定是只能被内核访问的创建于内存中的“数据结构”,也就是说,内核对象只是一块存储空间,这个空间中保存了有关这个“对象”的“数据结构”,简而言之,就是一个数据结构,只能被操作系统内核访问。对于各种不同类型的内核对象,只能被内核访问,那我们又怎么来操作这些存在内存中的内核结构呢?
是的,两大操作系统windows和linux中,只有windows才有exe文件,才能执行。

windows中的窗口是内核对象吗

4,什么是内核对象请列举出一些

内核对象是内核分配的一个内存块,并只能由内核进行访问。这个内存块是一种数据结构,数据结构的成员负责维护对象的各种信息。由于内核对象的数据结构只能被内核访问,因此应用程序无法直接在内存中找到这个数据结构,也无法直接改变它们的内容。Microsoft公司作了这样的限制,目的是确保内核对象结构状态的一致性。这样,操作系统就能够在不破坏任何应用程序的情况下,向结构中添加,删除或者修改数据成员。Microsoft公司提供了一组函数,用定义好的方法对结构进行操作。当调用一个内核对象创建函数时,函数就会返回一个标识所创建对象的句柄。为了提高操作系统的健壮性,这些句柄值是与进程密切关联的。 内核对象由内核而不是进程所拥有。换句话说,如果进程调用了一个创建内核对象的函数,当进程终止运行时,不一定销毁内核对象。在大多数情况下,对象将在进程终止运行时被销毁。但是,如果另外一个进程正在使用这个进程创建的内核对象,内核在另外一个进程停止使用这个对象前,不会销毁这个对象。需要记住,内核对象的存在时间可以比创建该对象的进程长。

5,什么是内核对象

系统要创建和操作若干类型的内核对象,比如存取符号对象、 事件对象、文件对象、文件映射对象、I / O 完成端口对象、作业对象、信箱对象、互斥对象、管道对象、进程对象、信标对象、线程对象和等待计 时器对象等。这些对象都是通过调用函数来创建的。例如,C r e a t e F i l e M a p p i n g 函数可使系统能够创建一个文件映射对象。每个内 核对象只是内核分配的一个内存块,并且只能由该内核访问。该内存块是一种数据结构,它的成员负责维护该对象的各种信息。有些数据成员(如安全性描述符、使用计数等)在所有对象类型中是相同的,但大多数数据成员属于特定的对象类型。例如,进程对象有一个进程I D 、一个基 本优先级和一个退出代码,而文件对象则拥有一个字节位移、一个共享模式和一个打开模式。由于内核对象的数据结构只能被内核访问,因此应用程序无法在内存中找到这些数据结构并直接改变它们的内容。M i c r o s o f t 规定了这个限 制条件,目的是为了确保内核对象结构保持状态的一致。这个限制也使M i c r o s o f t 能够在不破坏任何应用程序的情况下在这些结构中添加、 删除和修改数据成员。如果我们不能直接改变这些数据结构,那么我们的应用程序如何才能操作这些内核对象呢?解决办法是,Wi n d o w s 提供了一组函数,以便用定 义得很好的方法来对这些结构进行操作。这些内核对象始终都可以通过这些函数进行访问。当调用一个用于创建内核对象的函数时,该函数就返回一 个用于标识该对象的句柄。该句柄可以被视为一个不透明值,你的进程中的任何线程都可以使用这个值。将这个句柄传递给Wi n d o w s 的各个函 数,这样,系统就能知道你想操作哪个内核对象。本章后面还要详细讲述这些句柄的特性。为了使操作系统变得更加健壮,这些句柄值是与进程密切相关的。因此,如果将该句柄值传递给另一个进程中的一个线程(使用某种形式的进程间的 通信)那么这另一个进程使用你的进程的句柄值所作的调用就会失败。在3 . 3 节跨越进程边界共享内核对象中,将要介绍3 种机制,使多个进 程能够成功地共享单个内核对象。内核对象的使用计数内核对象由内核所拥有,而不是由进程所拥有。换句话说,如果你的进程调用了一个创建内核对象的函数,然后你的进程终止运行,那么内核对象不 一定被撤消。在大多数情况下,对象将被撤消,但是如果另一个进程正在使用你的进程创建的内核对象,那么该内核知道,在另一个进程停止使用该 对象前不要撤消该对象,必须记住的是,内核对象的存在时间可以比创建该对象的进程长。内核知道有多少进程正在使用某个内核对象,因为每个对象包含一个使用计数。使用计数是所有内核对象类型常用的数据成员之一。当一个对象刚刚 创建时,它的使用计数被置为1 。然后,当另一个进程访问一个现有的内核对象时,使用计数就递增1 。当进程终止运行时,内核就自动确定该进程 仍然打开的所有内核对象的使用计数。如果内核对象的使用计数降为0 ,内核就撤消该对象。这样可以确保在没有进程引用该对象时系统中不保留任 何内核对象。

6,内核对象问题

临界区是非内核对象,只在用户态进行锁操作线程、进程、互斥器都是
系统要创建和操作若干类型的内核对象,比如存取符号对象、 事件对象、文件对象、文件映射对象、i / o 完成端口对象、作业对象、信箱对象、互斥对象、管道对象、进程对象、信标对象、线程对象和等待计 时器对象等。这些对象都是通过调用函数来创建的。例如,c r e a t e f i l e m a p p i n g 函数可使系统能够创建一个文件映射对象。每个内 核对象只是内核分配的一个内存块,并且只能由该内核访问。该内存块是一种数据结构,它的成员负责维护该对象的各种信息。有些数据成员(如安全性描述符、使用计数等)在所有对象类型中是相同的,但大多数数据成员属于特定的对象类型。例如,进程对象有一个进程i d 、一个基 本优先级和一个退出代码,而文件对象则拥有一个字节位移、一个共享模式和一个打开模式。由于内核对象的数据结构只能被内核访问,因此应用程序无法在内存中找到这些数据结构并直接改变它们的内容。m i c r o s o f t 规定了这个限 制条件,目的是为了确保内核对象结构保持状态的一致。这个限制也使m i c r o s o f t 能够在不破坏任何应用程序的情况下在这些结构中添加、 删除和修改数据成员。如果我们不能直接改变这些数据结构,那么我们的应用程序如何才能操作这些内核对象呢?解决办法是,wi n d o w s 提供了一组函数,以便用定 义得很好的方法来对这些结构进行操作。这些内核对象始终都可以通过这些函数进行访问。当调用一个用于创建内核对象的函数时,该函数就返回一 个用于标识该对象的句柄。该句柄可以被视为一个不透明值,你的进程中的任何线程都可以使用这个值。将这个句柄传递给wi n d o w s 的各个函 数,这样,系统就能知道你想操作哪个内核对象。本章后面还要详细讲述这些句柄的特性。为了使操作系统变得更加健壮,这些句柄值是与进程密切相关的。因此,如果将该句柄值传递给另一个进程中的一个线程(使用某种形式的进程间的 通信)那么这另一个进程使用你的进程的句柄值所作的调用就会失败。在3 . 3 节跨越进程边界共享内核对象中,将要介绍3 种机制,使多个进 程能够成功地共享单个内核对象。内核对象的使用计数内核对象由内核所拥有,而不是由进程所拥有。换句话说,如果你的进程调用了一个创建内核对象的函数,然后你的进程终止运行,那么内核对象不 一定被撤消。在大多数情况下,对象将被撤消,但是如果另一个进程正在使用你的进程创建的内核对象,那么该内核知道,在另一个进程停止使用该 对象前不要撤消该对象,必须记住的是,内核对象的存在时间可以比创建该对象的进程长。内核知道有多少进程正在使用某个内核对象,因为每个对象包含一个使用计数。使用计数是所有内核对象类型常用的数据成员之一。当一个对象刚刚 创建时,它的使用计数被置为1 。然后,当另一个进程访问一个现有的内核对象时,使用计数就递增1 。当进程终止运行时,内核就自动确定该进程 仍然打开的所有内核对象的使用计数。如果内核对象的使用计数降为0 ,内核就撤消该对象。这样可以确保在没有进程引用该对象时系统中不保留任 何内核对象。
文章TAG:内核内核对象对象介绍内核对象

最近更新

  • 全民k歌直播里的机器人,直播协议里的机器人怎么了?全民k歌直播里的机器人,直播协议里的机器人怎么了?

    全民K歌里面只转发不唱歌的用户是真人还是机器人?全民K歌里面只转发不唱歌的用户是真人还是机器人这是看跟你习惯了有的人的话,他只喜欢转发一些歌曲,因为她的话她就给他的话他就喜欢,老鼠.....

    问答 日期:2024-06-03

  • 惠州市宇帆自动化科技有限公司,于凡网络科技有限公司惠州市宇帆自动化科技有限公司,于凡网络科技有限公司

    北交所首批上市公司名单贝特瑞新材料集团股份有限公司,南京云创大数据科技股份有限公司,湖南五新隧道智能装备股份有限公司,上海创远仪器技术股份有限公司,上海艾融软件股份有限公司,.....

    问答 日期:2024-06-03

  • 昆山科电自动化设备厂地址,哪个流水线比较好?昆山科电自动化设备厂地址,哪个流水线比较好?

    博世勒自动化科技(昆山博世勒自动化科技(昆山)有限公司是20170928在江苏省苏州市昆山市注册成立的有限责任公司(自然人投资或控股),注册地址位于昆山市花桥镇横塘路38号6号房。昆山泰润.....

    问答 日期:2024-06-03

  • 美国大学 大数据美国大学 大数据

    请问美国大学专业百科:留学美国大学、美国大学数据专业研究生比较好的学校有:哈佛大学、卡耐基梅隆大学、加州大学伯克利分校、斯坦福大学、南加州大学。我去美国大学学数学,南加州大学.....

    问答 日期:2024-06-03

  • 控制工程专业与自动化,过程装备与控制工程和自动化的区别控制工程专业与自动化,过程装备与控制工程和自动化的区别

    自动化专业,以及控制论与控制工程专业?专业控制科学与工程和自动化有什么区别?控制理论和控制工程和电气工程及其自动化一样吗?两者专业都有...本科学自动化或电学自动化可以考控制理论和.....

    问答 日期:2024-06-03

  • 位阻效应,怎么抵消空间位阻在化学反应中的影响位阻效应,怎么抵消空间位阻在化学反应中的影响

    怎么抵消空间位阻在化学反应中的影响空间位阻是固有的,在空间上是定向的,企图抵消是很难的。只有增强反应试剂的活性实现反应。另一方面,空间位阻在立体反应和手性合成中又是非常重要的。.....

    问答 日期:2024-06-02

  • 东北能源大学自动化专业,由能源及其自动化专业的大学排名东北能源大学自动化专业,由能源及其自动化专业的大学排名

    自动化:东北大学的自动化专业也是该校的一大特色,东北电力大学机械设计制造及自动化怎么样?东北大学有哪些口碑不错的专业?机械设计制造及自动化专业以机电一体化为专业方向。机械工程:.....

    问答 日期:2024-06-02

  • 系统学习,怎么学好装置电脑操作系统系统学习,怎么学好装置电脑操作系统

    怎么学好装置电脑操作系统2,想学好DOS系统最主要从哪方面学3,怎么系统学习嵌入式开发4,如何进行系统地学习电脑知识呢5,电路模电数电信号与系统学习顺序先后是什么呢6,哪里有网站学习电脑系.....

    问答 日期:2024-06-02