CN116702180B - 微内核操作系统及其访问控制方法、芯片、设备和介质 - Google Patents

微内核操作系统及其访问控制方法、芯片、设备和介质 Download PDF

Info

Publication number
CN116702180B
CN116702180B CN202310965319.7A CN202310965319A CN116702180B CN 116702180 B CN116702180 B CN 116702180B CN 202310965319 A CN202310965319 A CN 202310965319A CN 116702180 B CN116702180 B CN 116702180B
Authority
CN
China
Prior art keywords
component
service
access
capability
client component
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310965319.7A
Other languages
English (en)
Other versions
CN116702180A (zh
Inventor
闫天瑜
王慧
王喆
赵健
顿中强
吴甜甜
王绍勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Smartchip Microelectronics Technology Co Ltd
Original Assignee
Beijing Smartchip Microelectronics Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Smartchip Microelectronics Technology Co Ltd filed Critical Beijing Smartchip Microelectronics Technology Co Ltd
Priority to CN202310965319.7A priority Critical patent/CN116702180B/zh
Publication of CN116702180A publication Critical patent/CN116702180A/zh
Application granted granted Critical
Publication of CN116702180B publication Critical patent/CN116702180B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明公开了一种微内核操作系统及其访问控制方法、芯片、设备和介质。其中,微内核操作系统包括用户态和内核态,用户态配置有客户组件和服务组件,内核态配置有微内核,方法应用于微内核,方法包括:响应于客户组件对服务组件的访问请求,获取客户组件的权能;基于权能验证客户组件是否具有对服务组件的访问权限;在客户组件具有对服务组件的访问权限时,调用服务组件,以使服务组件基于访问请求执行相应的服务。由此,通过将权能验证机制扩展至用户态客户组件与服务组件之间的访问权限管理上,能够最大限度地发挥权能验证机制的作用,且便于设置对用户态组件的服务组件的访问权限,提升微内核操作系统的安全性和可靠性。

Description

微内核操作系统及其访问控制方法、芯片、设备和介质
技术领域
本发明涉及微内核操作系统技术领域,尤其涉及一种微内核操作系统及其访问控制方法、芯片、设备和介质。
背景技术
随着物联网和工业控制场景中对嵌入式系统的安全性和可靠性要求,使得微内核操作系统受到极大关注。在微内核操作系统中,微内核只保留了精简的功能,其中的系统服务组件(包括设备驱动组件)和应用程序组件都在用户态下作为独立的线程或任务,运行在相互独立的地址空间,使得微内核操作系统具有良好的隔离性。但是,微内核操作系统中用户态下运行的系统服务组件和应用程序组件之间通过IPC(Inter-ProcessCommunication,线程间通信)机制,实现不同线程之间的数据交换和信息传递的协同工作,此时,信息流的传递过程中会突破隔离的限制,因此,难以保证微内核操作系统的安全性,尤其是难以保证运行在用户态下运行的系统服务的安全性。
相关技术中,通常采取权能机制限制用户态程序对内核态中资源的访问权限,缺乏对在用户态下运行的系统服务组件访问权限进行控制的机制。
需要说明的是,本背景技术部分中公开的信息仅用于理解本申请构思的背景技术,并且因此,它可以包含不构成现有技术的信息。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的目的在于提出一种微内核操作系统及其访问控制方法、芯片、设备和介质,通过将权能验证机制扩展至用户态客户组件与服务组件之间的访问权限管理上,能够最大限度地发挥权能验证机制的作用,且便于设置对用户态组件的服务组件的访问权限,提升微内核操作系统的安全性和可靠性。
为达上述目的,本发明第一方面实施例提供一种微内核操作系统的访问控制方法,微内核操作系统包括用户态和内核态,用户态配置有客户组件和服务组件,内核态配置有微内核,方法应用于微内核,方法包括:响应于客户组件对服务组件的访问请求,获取客户组件的权能;基于权能验证客户组件是否具有对服务组件的访问权限;在客户组件具有对服务组件的访问权限时,调用服务组件,以使服务组件基于访问请求执行相应的服务。
根据本发明实施例的微内核操作系统的访问控制方法,在客户组件对服务组件发送访问请求时,微内核将响应于该访问请求,获取客户组件的权能,并基于该权能验证客户组件是否具有对服务组件的访问权限,进而在客户组件具有对服务组件的访问权限时,调用服务组件,以使服务组件基于访问请求执行相应的服务,从而将权能验证机制扩展至用户态客户组件与服务组件之间的访问权限管理上,能够最大限度地发挥权能验证机制的作用,且便于设置对用户态组件的服务组件的访问权限,提升微内核操作系统的安全性和可靠性。
在本发明的一些实施例中,微内核包括多个内核对象,客户组件具有至少一个权能,每个权能以三元组的方式被抽象,三元组的三个元素分别为权能类型、权能权限和权能基本信息,权能类型用于指示允许客户组件的访问内核对象的类型,权能权限用于指示客户组件对内核对象的操作权限,权能基本信息包括用于指示内核对象的信息。
在本发明的一些实施例中,基于权能验证客户组件是否具有对服务组件的访问权限,包括:在基于权能类型确定允许客户组件的访问内核对象包括端点对象、基于权能权限确定客户组件对端点对象的操作权限满足访问请求、且端点对象允许访问服务组件时,确定客户组件具有对服务组件的访问权限。
在本发明的一些实施例中,调用服务组件,包括:基于端点对象,调用服务组件。
在本发明的一些实施例中,微内核操作系统的访问控制方法还包括:在客户组件不具有对服务组件的访问权限时,向客户组件的父组件发送访问权限申请请求,以使父组件对客户组件进行访问权限的临时委派。
在本发明的一些实施例中,父组件在自身具有对服务组件的访问权限、且允许客户组件继承自身权能的情况下,对客户组件进行访问权限的临时委派。
在本发明的一些实施例中,服务组件包括多个服务接口,访问请求包括服务接口类型,服务组件基于服务接口类型获取相应的服务接口,以通过服务接口执行相应的服务。
为达上述目的,本发明第二方面实施例提供了一种微内核操作系统,包括用户态和内核态,用户态配置有客户组件和服务组件,内核态配置有微内核,其中,客户组件用于向微内核发送对服务组件的访问请求;微内核用于响应于访问请求,获取客户组件的权能,并基于权能验证客户组件是否具有对服务组件的访问权限,以及在客户组件具有对服务组件的访问权限时,调用服务组件;服务组件用于基于访问请求执行相应的服务。
根据本发明实施例的微内核操作系统,基于前述的微内核操作系统的访问控制方法,通过将权能验证机制扩展至用户态客户组件与服务组件之间的访问权限管理上,能够最大限度地发挥权能验证机制的作用,且便于设置对用户态组件的服务组件的访问权限,提升微内核操作系统的安全性和可靠性。
在本发明的一些实施例中,微内核包括多个内核对象,客户组件具有至少一个权能,每个权能以三元组的方式被抽象,三元组的三个元素分别为权能类型、权能权限和权能基本信息,权能类型用于指示允许客户组件的访问内核对象的类型,权能权限用于指示客户组件对内核对象的操作权限,权能基本信息包括用于指示内核对象的信息。
在本发明的一些实施例中,微内核具体用于:在基于权能类型确定允许客户组件的访问内核对象包括端点对象、基于权能权限确定客户组件对端点对象的操作权限满足访问请求、且端点对象允许访问服务组件时,确定客户组件具有对服务组件的访问权限。
在本发明的一些实施例中,微内核具体用于:基于端点对象,调用服务组件。
在本发明的一些实施例中,客户组件具有父组件,微内核还用于在客户组件不具有对服务组件的访问权限时,向客户组件的父组件发送访问权限申请请求;父组件用于对客户组件进行访问权限的临时委派。
在本发明的一些实施例中,父组件具体用于在自身具有对服务组件的访问权限、且允许客户组件继承自身权能的情况下,对客户组件进行访问权限的临时委派。
在本发明的一些实施例中,服务组件包括多个服务接口,访问请求包括服务接口类型,服务组件具体用于基于服务接口类型获取相应的服务接口,以通过服务接口执行相应的服务。
为达上述目的,本发明第三方面实施例提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现上述任一实施例的微内核操作系统的访问控制方法。
根据本发明实施例的计算机可读存储介质,基于前述的微内核操作系统的访问控制方法,通过将权能验证机制扩展至用户态客户组件与服务组件之间的访问权限管理上,能够最大限度地发挥权能验证机制的作用,且便于设置对用户态组件的服务组件的访问权限,提升微内核操作系统的安全性和可靠性。
为达上述目的,本发明第四方面实施例提供了一种芯片,包括:存储器、处理器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时,实现上述任一实施例的微内核操作系统的访问控制方法。
根据本发明实施例的芯片,基于前述的微内核操作系统的访问控制方法,通过将权能验证机制扩展至用户态客户组件与服务组件之间的访问权限管理上,能够最大限度地发挥权能验证机制的作用,且便于设置对用户态组件的服务组件的访问权限,提升微内核操作系统的安全性和可靠性。
为达上述目的,本发明第五方面实施例提供了一种电子设备,包括根据前述实施例的芯片,或者根据前述任一实施例的微内核操作系统。
根据本发明实施例的电子设备,基于前述的微内核操作系统的访问控制方法,通过将权能验证机制扩展至用户态客户组件与服务组件之间的访问权限管理上,能够最大限度地发挥权能验证机制的作用,且便于设置对用户态组件的服务组件的访问权限,提升微内核操作系统的安全性和可靠性。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本申请的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本发明一个实施例的微内核操作系统的访问控制方法的流程示意图;
图2是根据本发明一个实施例的用户态和内核态下的组件构成示意图;
图3是根据本发明一个实施例的微内核内权能的三元组结构示意图;
图4是根据本发明一个实施例的用户态下运行的客户组件和服务组件之间消息传递的流程示意图;
图5是根据本发明一个实施例的客户组件访问服务组件的服务接口的流程示意图;
图6是根据本发明一个实施例的微内核操作系统的结构框图;
图7是根据本发明一个实施例的应用微内核操作系统的访问控制方法的芯片的结构框图;
图8是根据本发明一个实施例的电子设备的结构框图;
图9是根据本发明另一个实施例的电子设备的结构框图。
具体实施方式
下面详细描述本发明的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
具体来说,微内核操作系统中的系统服务组件和应用程序组件都运行在用户态空间中,内核态配置有微内核,由于系统服务组件可以访问磁盘、网卡等硬件设备代表的系统级资源,因此,考虑到安全性和可靠性要求,需要通过权能机制对应用程序组件对系统服务组件的访问权限进行限制。
在以seL4(一种微内核操作系统)为代表的第三代微内核中,权能是一个不可伪造的令牌,它唯一地标识了一个内核对象(如线程控制块TCB),即,一种权能代表一种操作权限,比如操作IRQ(nterrupt Request,中断请求)的权限、操作地址空间的权限等,权能还具有访问权限信息,这些访问权限信息中指示了组件是否有的访问权限,其中,seL4提供了基本的进程管理、内存管理、线程调度和间接通信等功能,而将文件系统、网络协议栈等功能实现为可选的用户空间服务。
权能机制具有低开销高安全的特点,在微内核操作系统中系统服务组件和应用程序组件应用权能机制来实现访问控制时,存在着较多问题,例如:由于权能机制通常允许组件动态、自主地获取权能,因此,要想合理地为应用程序组件配置针对系统服务组件的访问权限,便需要开发者对应用程序组件所需服务和系统底层相关机制进行充分了解,否则难以发挥权能机制的优势,导致权能配置困难、开发难度增大等问题。
基于此,本发明实施例提供了一种微内核操作系统及其访问控制方法、芯片、设备和介质,通过将权能验证机制扩展至用户态客户组件与服务组件之间的访问权限管理上,能够最大限度地发挥权能验证机制的作用,且便于设置对用户态组件的服务组件的访问权限,提升微内核操作系统的安全性和可靠性。
下面结合附图详细描述本发明实施例的微内核操作系统及其访问控制方法、芯片、设备和介质。
图1是根据本发明一个实施例的微内核操作系统的访问控制方法的流程示意图。
如图1所示,微内核操作系统的访问控制方法应用于微内核,可包括:
S11:响应于客户组件对服务组件的访问请求,获取客户组件的权能。
具体来说,微内核操作系统包括用户态和内核态,用户态配置有客户组件和服务组件,内核态配置有微内核,用户态是指应用程序运行时所处的特权级别,内核态是指操作系统内核运行时所处的特权级别。
在用户态组件之间的访问过程中,客户组件通常指的是请求系统服务的组件,充当客户端的角色,如:与用户交互的应用程序组件,该应用程序组件发送请求与服务组件进行通信;服务组件通常指的是拥有系统服务的组件,充当服务器的角色,如:接收客户组件请求,并提供相应服务的系统服务组件。服务组件用于创建权能和维护组件内部所有服务接口与请求类型的映射关系,客户组件在拥有相应的权能时,方可具有与服务组件进行通信的权限。
其中,客户组件和服务组件有多个,客户组件和服务组件以线程或任务为载体,每个线程或任务在微内核操作系统中均是一个独立的运行单元,在微内核操作系统中线程控制块或任务控制块中记录了它所拥有的权能,不同线程或任务拥有独立的权能即可实现权限的隔离。
权能存在于微内核内,用于确定和限制客户组件对服务组件的访问,即权能具有访问权限信息,这些访问权限信息中指示了组件是否有的访问权限,在客户组件想要对服务组件进行访问以实现信息流的传递时,微内核将响应于客户组件对服务组件的访问请求,对客户组件拥有的权能进行获取,以确定客户组件是否对服务组件有访问权限。
需要说明的是,在客户组件基于权能发起访问请求的过程,由于消息传递的可靠性由内核保证,因此访问过程中不考虑超时或请求结果无响应的情况。
S12:基于权能验证客户组件是否具有对服务组件的访问权限。
对于每一次访问请求,均需要通过微内核基于权能验证客户组件是否具有对服务组件的访问权限,此时,微内核将验证权能的类型和属性,该权能类型和属性可包括对内核对象进行读取、写入、执行等操作的权限信息,且微内核会根据访问请求所指定的操作,检查发起访问请求的客户组件是否具备对服务组件进行相关操作的权限,若有,则客户组件对服务组件的访问将会成功,以保证只有具备合适权限的客户组件才能够对服务组件进行访问,从而保护微内核操作系统的安全性和完整性。
示例性的,如图2所示,用户态配置有客户组件和服务组件,组件1、组件2和组件3均为客户组件,文件系统组件、基础服务组件(组件加载等服务)、用户自定义服务组件、串口驱动组件和网络驱动组件等组件均为服务组件。内核态配置有微内核,CAP_RAM(内存能力)、CAP_TCB(线程能力)、CAP_AS(地址空间能力)和CAP_CNODE(能力节点的能力)均为微内核的内核对象。
在组件3向服务组件发送访问请求时,微内核将对组件3拥有的权能进行获取,并基于权能验证该组件3是否具有对服务组件的访问权限,若该组件3具有对服务组件的访问权限,则表示该组件3拥有访问服务组件的文件系统、基础服务、用户自定义服务或串口驱动等组件的消息传递权能CAP_EP,通过该CAP_EP,客户组件能够与服务组件进行消息传递。此外,该组件3还拥有其他权能,如:指向内核对象的特定内存区域的CAP_RAM,指向自身TCB(Trusted Computing Base,计算机系统中被信任的组件集合)的CAP_TCB,指向自身地址空间的CAP_AS,指向自身权能列表的CAP_CNODE等。其中,针对用户态的客户组件和服务组件实施访问控制的关键是使用消息传递权能CAP_EP实现对组件间的通信管理。
S13:在客户组件具有对服务组件的访问权限时,调用服务组件,以使服务组件基于访问请求执行相应的服务。
具体来说,客户组件和服务组件运行在不同地址空间的线程或任务,并使用IPC进行线程间通信,客户组件通过拥有服务组件的CAP_EP权能指针,可以与服务组件进行通信,服务组件通过CAP_EP权能指向的端点对象来接收来自客户组件的带参数的访问请求。
通过系统服务组件创建权能,如:消息传递权能CAP_EP、文件系统权能或其它权能,并对需要具有访问权限的客户组件赋予所创建的权能。在客户组件向微内核发送对服务组件的访问请求时,微内核将响应该访问请求,获取客户组件的权能,并基于所获取的权能验证客户组件是否被赋予过服务组件创建的权能,若是,则微内核允许客户组件对服务组件进行访问,此时微内核将调用服务组件,以使服务组件在接收到带参数的访问请求后,从服务组件创建的CAP_EP权能指向的端点对象中获取相应的函数,以根据据访问请求选择适当的函数执行所需的操作,在服务组件执行完所获取的函数后,将调用结果生成IPC消息,并通过IPC操作将该结果传递给客户组件,从而实现客户组件对服务组件的访问。
上述实施例中,在客户组件对服务组件发送访问请求时,微内核将响应于该访问请求,获取客户组件的权能,并基于该权能验证客户组件是否具有对服务组件的访问权限,进而在客户组件具有对服务组件的访问权限时,调用服务组件,以使服务组件基于访问请求执行相应的服务,从而将权能验证机制扩展至用户态客户组件与服务组件之间的访问权限管理上,能够最大限度地发挥权能验证机制的作用,且便于设置对用户态组件的服务组件的访问权限,提升微内核操作系统的安全性和可靠性。
在一些实施例中,微内核包括多个内核对象,客户组件具有至少一个权能,每个权能以三元组的方式被抽象,三元组的三个元素分别为权能类型、权能权限和权能基本信息,权能类型用于指示允许客户组件的访问内核对象的类型,权能权限用于指示客户组件对内核对象的操作权限,权能基本信息包括用于指示内核对象的信息。
示例性的,如图3所示,每个权能以三元组的方式被抽象,该三元组可表示为:Type×Rights×CapInfo,其中,Type表示权能类型,权能类型指的是权能的分类或种类,该权能类型用于指示允许客户组件的访问内核对象的类型,其与微内核中内核对象的类型一一对应,常见的权能类型包括文件访问权能、网络访问权能、进程管理权能等;Rights表示权能权限,权能权限指的是每个权能所具备的操作权限,该权能权限用于指示客户组件对内核对象的操作权限,常见的权能权限包括创建权限(即客户组件对内核对象的所有权)、授权权限(即客户组件对内核对象的访问权限)、读取权限(即客户组件基于内核对象接收数据的权限)和写入权限(即客户组件基于内核对象发送数据的权限);CapInfo表示的是权能基本信息,该权能基本信息包括用于指示内核对象的信息,如指向内核对象的指针,通过权能基本信息,权能系统能够识别和管理特定的内核对象,并根据需要进行权限验证、访问控制等操作。
不同的内核对象具有不同的权能,将不同的权能构成权能列表,在微内核操作系统中每个线程控制块或任务控制块中记录了它所拥有的权能,一个线程或任务所拥有的权能列表可认为是访问控制矩阵中的一行,如式(1)所示,控制矩阵中的一行存储了客户组件/>对内核对象/>的权限,其中/>表示具体的权限属性,/> 表示内核对象的标识符:
](1)
也就是说,通过将每个权能抽象为三元组的方式,在客户组件对服务组件发送访问请求时,微内核将基于客户组件中每个权能的三元组验证客户组件是否具有对服务组件的访问权限,如此,能够保证客户组件对服务组件的安全访问。
在一些实施例中,基于权能验证客户组件是否具有对服务组件的访问权限,包括:在基于权能类型确定允许客户组件的访问内核对象包括端点对象、基于权能权限确定客户组件对端点对象的操作权限满足访问请求、且端点对象允许访问服务组件时,确定客户组件具有对服务组件的访问权限。
具体来说,进行访问权限控制主要是限制用户态的组件对系统中内核态资源的操作权限和用户态下运行的客户组件和服务组件间的消息传递,微内核中的各类内核对象用于实现对资源和内核功能的管理,其中消息传递权能CAP_EP对应的内核对象为端点(Endpoint)对象,客户组件和服务组件基于相同的端点对象可以进行消息传递(如数据的收/发)。
端点对象是在访问控制模型中用于表示内核对象的抽象概念,它充当内核对象与客户组件之间消息传递的接口,也可作为客户组件访问控制的权限标识,内核对象可以通过与之相关联的端点对象进行访问控制,内核对象会定义一组权能类型,表示可以对其执行的操作,只有具备与端点对象相关联的权能类型的客户组件才能被允许访问相应的内核对象。
在前述实施例中,可知权能权限包括创建权限、授权权限、读取权限和写入权限,基于上述权能权限确定客户组件对端点对象的操作权限是否满足访问请求,如:权能权限为读取权限和写入权限,若访问请求为读取或写入,则确定客户组件对端点对象的操作权限满足访问请求,若访问请求为创建或授权,则确定客户组件对端点对象的操作权限不满足访问请求。进一步,在确定客户组件对端点对象的操作权限满足访问请求时,若端点对象允许访问服务组件,则确定客户组件具有对服务组件的访问权限。
示例性的,如图4所示,在用户态下运行的客户组件和服务组件间的消息传递过程为:客户组件生成访问请求,并发送该访问请求至内核态;在该访问请求进入内核态后,微内核基于权能进行验证,其中,基于权能进行验证是通过获取该访问请求中权能的三元组,对该三元组的权能类型和权能权限进行验证以确定客户组件是否具有对服务组件的访问请求;若确定该客户组件具有对服务组件的访问权限,则微内核将基于端点对象调用服务组件,以使服务组件基于访问请求执行相应的服务,在服务组件发出响应结果后,确定客户组件对服务组件的访问完成。
如此,通过权能类型、权能权限和端点对象对客户组件对服务组件的访问权限进行判定,能够有效地限制客户组件对服务组件的访问权限,避免不可靠的组件影响其他组件的安全性。
在一些实施例中,微内核操作系统的访问控制方法还包括:在客户组件不具有对服务组件的访问权限时,向客户组件的父组件发送访问权限申请请求,以使父组件对客户组件进行访问权限的临时委派。
具体来说,一种内核对象使用一种权能来表示,一种权能代表一种操作权限,比如操作IRQ的权限、操作地址空间的权限等,在微内核操作系统中,通过权能控制所有对内核服务的访问(包括对内核对象的访问、线程或任务间通信、事件触发等),用户态的客户组件在具备相应权能权限的情况下,才能通过该权能来调用服务组件。
继续参照图4,若确定客户组件不具有对服务组件的访问权限,则访问中断,并向该客户组件的父组件发送访问权限申请请求,以使父组件对客户组件进行访问权限的临时委派。其中,父组件对客户组件进行访问权限的临时委派可以理解为,父组件根据自身权能的三元组确定自身是否具有对服务组件的访问权限,在该父组件自身具有对服务组件的访问权限时,将进一步确定是否允许客户组件继承自身权能,并在允许客户组件继承自身权能的情况下,对客户组件进行访问权限的临时委派,从而使得该客户组件具有对服务组件的访问权限,以实现客户组件对服务组件的访问。
如此,对于访问权限受限的客户组件,可以通过父组件对子组件进行访问权限的临时委派,最大限度地发挥权能的作用,提高微内核操作系统的可靠性和可用性。
需要说明的是,由于客户组件默认可以访问微内核的内核对象,因此,在客户组件对内核对象进行访问时,无需进行上述权能的三元组验证。另外,由于客户组件和服务组件以线程或任务为载体,每个线程或任务在微内核操作系统中均是一个独立的运行单元,在微内核操作系统中线程控制块或任务控制块中记录了它所拥有的权能,因此客户组件是否具有对服务组件的访问权限主要通过对该客户组件的线程控制块中所记录的权能的三元组进行配置,通过对三元组的权能权限进行限定,在客户组件对端点对象的操作权限不满足所配置的三元组的权能权限时,该客户组件将不具有对服务组件的访问权限,在客户组件对端点对象的操作权限满足所配置的三元组的权能权限时,该客户组件将具有对服务组件的访问权限,从而从权能权限的授权入手,能够便捷地为客户组件配置针对服务组件的访问权限,无需开发者对客户组件所需服务和系统底层相关机制进行充分了解,降低开发难度。
在一些实施例中,服务组件包括多个服务接口,访问请求包括服务接口类型,服务组件基于服务接口类型获取相应的服务接口,以通过服务接口执行相应的服务。
具体来说,由于服务组件需要维护组件内部的服务接口与请求类型的映射关系,因此服务组件内部包括有多个服务接口,每个服务接口对应一个函数入口,用于处理特定类型的请求。客户组件通过拥有服务组件的CAP_EP权能,可以向服务组件发起带参数的请求,服务组件根据请求中的reqTag(请求标识)来将请求分发到相应的服务接口进行处理,也就是说,如果客户组件拥有服务组件的CAP_EP权能指针,那么它可以访问该服务组件提供的服务接口。
示例性的,如图5所示,该服务组件包括多个服务接口,每个服务接口实际是一个函数入口,客户组件中的reqTag参数用于调用服务组件中的REQ_OPEN(创建接口)、REQ_READ(读取接口)或REQ_WRITE(写接口)等服务接口,args参数用于针对确定的服务接口来扩充参数,reply参数根据需求进行配置,本申请中的reply参数并未使用。
在客户组件拥有消息传递权能CAP_EP时,确定客户组件对服务组件具有访问权限,此时客户组件可通过CAP_EP权能向服务组件发起带参数的访问请求,服务组件接收到访问请求后,会提取函数参数,并基于客户组件访问请求中的reqTag参数调用REQ_OPEN、REQ_READ或REQ_WRITE等服务接口,以使服务组件基于访问请求执行相应的服务,并将处理结果通过IPC返回给客户组件,以完成访问请求的处理。
如此,基于服务接口类型获取相应的服务接口,以通过服务接口执行相应的服务,实现了客户组件和服务组件之间的远程调用和通信。
需要说明的是,不同线程或任务拥有独立的权能即可实现权限的隔离,如此,能够避免针对服务组件的每个接口都设置权能所带来的复杂性和高开销,在安全性上,服务组件中的不同组件可以拥有不同的权能,不需要共享同一组授权集合,在动态修改、授予或删除权限时无需考虑会影响到其他组件,这样能够将权限的变动导致的影响降至最低,同时可以简化权限管理的机制。
需要指出的是,上述所提到的具体数值只为了作为例子详细说明本发明的实施,而不应理解为对本发明的限制。在其它例子或实施方式或实施例中,可根据本发明来选择其它数值,在此不作具体限定。
对应上述实施例,本发明的实施例还提供了一种微内核操作系统。
图6是根据本发明一个实施例的微内核操作系统的结构框图。该微内核操作系统10包括用户态100和内核态200,用户态100配置有客户组件102和服务组件104,内核态200配置有微内核202,其中,客户组件102用于向微内核202发送对服务组件104的访问请求;微内核202用于响应于访问请求,获取客户组件102的权能,并基于权能验证客户组件102是否具有对服务组件104的访问权限,以及在客户组件102具有对服务组件104的访问权限时,调用服务组件104;服务组件104用于基于访问请求执行相应的服务。
根据本发明实施例的微内核操作系统,基于前述的微内核操作系统的访问控制方法,通过将权能验证机制扩展至用户态客户组件与服务组件之间的访问权限管理上,能够最大限度地发挥权能验证机制的作用,且便于设置对用户态组件的服务组件的访问权限,提升微内核操作系统的安全性和可靠性。
在本发明的一些实施例中,微内核202包括多个内核对象,客户组件102具有至少一个权能,每个权能以三元组的方式被抽象,三元组的三个元素分别为权能类型、权能权限和权能基本信息,权能类型用于指示允许客户组件102的访问内核对象的类型,权能权限用于指示客户组件102对内核对象的操作权限,权能基本信息包括用于指示内核对象的信息。
在本发明的一些实施例中,微内核202具体用于:在基于权能类型确定允许客户组件102的访问内核对象包括端点对象、基于权能权限确定客户组件102对端点对象的操作权限满足访问请求、且端点对象允许访问服务组件104时,确定客户组件102具有对服务组件104的访问权限。
在本发明的一些实施例中,微内核202具体用于:基于端点对象,调用服务组件104。
在本发明的一些实施例中,客户组件102具有父组件,微内核202还用于在客户组件102不具有对服务组件104的访问权限时,向客户组件102的父组件发送访问权限申请请求;父组件用于对客户组件102进行访问权限的临时委派。
在本发明的一些实施例中,父组件具体用于在自身具有对服务组件104的访问权限、且允许客户组件102继承自身权能的情况下,对客户组件102进行访问权限的临时委派。
在本发明的一些实施例中,服务组件104包括多个服务接口,访问请求包括服务接口类型,服务组件104具体用于基于服务接口类型获取相应的服务接口,以通过服务接口执行相应的服务。
需要指出的是,上述对微内核操作系统的访问控制方法的实施例和有益效果的解释说明,也适应本发明实施例的微内核操作系统10,为避免冗余,在此不作详细展开。
对应上述实施例,本发明的实施例还提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现上述任一实施例的微内核操作系统的访问控制方法。
根据本发明实施例的计算机可读存储介质,基于前述的微内核操作系统的访问控制方法,通过将权能验证机制扩展至用户态客户组件与服务组件之间的访问权限管理上,能够最大限度地发挥权能验证机制的作用,且便于设置对用户态组件的服务组件的访问权限,提升微内核操作系统的安全性和可靠性。
需要指出的是,上述对微内核操作系统的访问控制方法的实施例和有益效果的解释说明,也适应本发明实施例的计算机可读存储介质,为避免冗余,在此不作详细展开。
对应上述实施例,本发明的实施例还提供了一种芯片。
图7是根据本发明一个实施例的芯片的结构框图。如图7所示,该芯片30包括:存储器302、处理器304及存储在存储器302上并可在处理器304上运行的程序306,处理器304执行程序306时,实现上述任一实施例的微内核操作系统的访问控制方法。
根据本发明实施例的芯片,基于前述的微内核操作系统的访问控制方法,通过将权能验证机制扩展至用户态客户组件与服务组件之间的访问权限管理上,能够最大限度地发挥权能验证机制的作用,且便于设置对用户态组件的服务组件的访问权限,提升微内核操作系统的安全性和可靠性。
需要指出的是,上述对微内核操作系统的访问控制方法的实施例和有益效果的解释说明,也适应本发明实施例的芯片30,为避免冗余,在此不作详细展开。
对应上述实施例,本发明的实施例还提供了一种电子设备。
图8是根据本发明一个实施例的电子设备的结构框图。图9是根据本发明另一个实施例的电子设备的结构框图。如图8所示,该电子设备40包括根据前述实施例的芯片30,如图9所示,该电子设备40包括前述任一实施例的微内核操作系统10。
根据本发明实施例的电子设备,基于前述的微内核操作系统的访问控制方法,通过将权能验证机制扩展至用户态客户组件与服务组件之间的访问权限管理上,能够最大限度地发挥权能验证机制的作用,且便于设置对用户态组件的服务组件的访问权限,提升微内核操作系统的安全性和可靠性。
需要指出的是,上述对微内核操作系统的访问控制方法的实施例和有益效果的解释说明,也适应本发明实施例的电子设备40,为避免冗余,在此不作详细展开。
需要说明的是,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
此外,本发明实施例中所使用的“第一”、“第二”等术语,仅用于描述目的,而不可以理解为指示或者暗示相对重要性,或者隐含指明本实施例中所指示的技术特征数量。由此,本发明实施例中限定有“第一”、“第二”等术语的特征,可以明确或者隐含地表示该实施例中包括至少一个该特征。在本发明的描述中,词语“多个”的含义是至少两个或者两个及以上,例如两个、三个、四个等,除非实施例中另有明确具体的限定。第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备以及计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (9)

1.一种微内核操作系统的访问控制方法,其特征在于,所述微内核操作系统包括用户态和内核态,所述用户态配置有客户组件和服务组件,所述内核态配置有微内核,所述微内核包括多个内核对象,所述方法应用于所述微内核,所述方法包括:
响应于所述客户组件对所述服务组件的访问请求,获取所述客户组件的权能;所述客户组件具有至少一个权能,每个所述权能以三元组的方式被抽象,所述三元组的三个元素分别为权能类型、权能权限和权能基本信息,所述权能类型用于指示允许所述客户组件的访问内核对象的类型,所述权能权限用于指示所述客户组件对所述内核对象的操作权限,所述权能基本信息包括用于指示所述内核对象的信息;
基于所述权能验证所述客户组件是否具有对所述服务组件的访问权限,包括:在基于所述权能类型确定允许所述客户组件的访问内核对象包括端点对象、基于所述权能权限确定所述客户组件对所述端点对象的操作权限满足所述访问请求、且所述端点对象允许访问所述服务组件时,确定所述客户组件具有对所述服务组件的访问权限;
在所述客户组件具有对所述服务组件的访问权限时,调用所述服务组件,以使所述服务组件基于所述访问请求执行相应的服务;
在所述客户组件不具有对所述服务组件的访问权限时,向所述客户组件的父组件发送访问权限申请请求,以使所述父组件对所述客户组件进行所述访问权限的临时委派;其中,所述父组件在自身具有对所述服务组件的访问权限、且允许所述客户组件继承自身权能的情况下,对所述客户组件进行所述访问权限的临时委派。
2.根据权利要求1所述的微内核操作系统的访问控制方法,其特征在于,所述调用所述服务组件,包括:
基于所述端点对象,调用所述服务组件。
3.根据权利要求1或2所述的微内核操作系统的访问控制方法,其特征在于,所述服务组件包括多个服务接口,所述访问请求包括服务接口类型,所述服务组件基于所述服务接口类型获取相应的服务接口,以通过所述服务接口执行相应的服务。
4.一种微内核操作系统,其特征在于,包括用户态和内核态,所述用户态配置有客户组件和服务组件,所述内核态配置有微内核,所述微内核包括多个内核对象,其中,
所述客户组件用于向所述微内核发送对所述服务组件的访问请求;
所述微内核用于响应于所述访问请求,获取所述客户组件的权能,并基于所述权能验证所述客户组件是否具有对所述服务组件的访问权限,以及在所述客户组件具有对所述服务组件的访问权限时,调用所述服务组件;所述客户组件具有至少一个权能,每个所述权能以三元组的方式被抽象,所述三元组的三个元素分别为权能类型、权能权限和权能基本信息,所述权能类型用于指示允许所述客户组件的访问内核对象的类型,所述权能权限用于指示所述客户组件对所述内核对象的操作权限,所述权能基本信息包括用于指示所述内核对象的信息;其中,所述微内核用于:在基于所述权能类型确定允许所述客户组件的访问内核对象包括端点对象、基于所述权能权限确定所述客户组件对所述端点对象的操作权限满足所述访问请求、且所述端点对象允许访问所述服务组件时,确定所述客户组件具有对所述服务组件的访问权限;
所述服务组件用于基于所述访问请求执行相应的服务;
所述客户组件具有父组件,所述微内核还用于在所述客户组件不具有对所述服务组件的访问权限时,向所述客户组件的父组件发送访问权限申请请求;所述父组件用于对所述客户组件进行所述访问权限的临时委派;其中,所述父组件用于在自身具有对所述服务组件的访问权限、且允许所述客户组件继承自身权能的情况下,对所述客户组件进行所述访问权限的临时委派。
5.根据权利要求4所述的微内核操作系统,其特征在于,所述微内核用于:
基于所述端点对象,调用所述服务组件。
6.根据权利要求4或5所述的微内核操作系统,其特征在于,所述服务组件包括多个服务接口,所述访问请求包括服务接口类型,所述服务组件用于基于所述服务接口类型获取相应的服务接口,以通过所述服务接口执行相应的服务。
7.一种计算机可读存储介质,其特征在于,其上存储有程序,该程序被处理器执行时实现根据权利要求1-3任一项所述的微内核操作系统的访问控制方法。
8.一种芯片,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序,所述处理器执行所述程序时,实现根据权利要求1-3任一项所述的微内核操作系统的访问控制方法。
9.一种电子设备,其特征在于,包括根据权利要求8所述的芯片,或者包括根据权利要求4-6任一项所述的微内核操作系统。
CN202310965319.7A 2023-08-02 2023-08-02 微内核操作系统及其访问控制方法、芯片、设备和介质 Active CN116702180B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310965319.7A CN116702180B (zh) 2023-08-02 2023-08-02 微内核操作系统及其访问控制方法、芯片、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310965319.7A CN116702180B (zh) 2023-08-02 2023-08-02 微内核操作系统及其访问控制方法、芯片、设备和介质

Publications (2)

Publication Number Publication Date
CN116702180A CN116702180A (zh) 2023-09-05
CN116702180B true CN116702180B (zh) 2024-04-05

Family

ID=87829618

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310965319.7A Active CN116702180B (zh) 2023-08-02 2023-08-02 微内核操作系统及其访问控制方法、芯片、设备和介质

Country Status (1)

Country Link
CN (1) CN116702180B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117113378A (zh) * 2023-09-12 2023-11-24 腾云创威信息科技(威海)有限公司 基于权能的负载空间隔离方法及其系统

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103092645A (zh) * 2012-12-31 2013-05-08 武汉中地数码科技有限公司 一种基于微内核技术的地理空间信息应用系统及其实现方法
CN104951694A (zh) * 2014-03-24 2015-09-30 华为技术有限公司 一种管理虚拟机的隔离方法及装置
RU2626350C1 (ru) * 2016-04-11 2017-07-26 Андрей Сергеевич Моляков Способ функционирования операционной системы вычислительного устройства программно-аппаратного комплекса
CN109117658A (zh) * 2018-08-28 2019-01-01 深圳市鼎昇贸易有限公司 库存的权限管理方法及相关产品
CN111147572A (zh) * 2019-12-24 2020-05-12 中国建设银行股份有限公司 云客服平台管理系统及方法
CN112149109A (zh) * 2020-09-21 2020-12-29 珠海市卓轩科技有限公司 模块化权限控制管理方法及系统
CN113098695A (zh) * 2021-04-21 2021-07-09 金陵科技学院 一种基于用户属性的微服务统一权限控制方法与系统
CN113778612A (zh) * 2021-07-14 2021-12-10 中移物联网有限公司 基于微内核机制的嵌入式虚拟化系统实现方法
CN115208693A (zh) * 2022-09-09 2022-10-18 中国电子科技集团公司第十五研究所 一种基于微服务的安全访问控制方法及装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103092645A (zh) * 2012-12-31 2013-05-08 武汉中地数码科技有限公司 一种基于微内核技术的地理空间信息应用系统及其实现方法
CN104951694A (zh) * 2014-03-24 2015-09-30 华为技术有限公司 一种管理虚拟机的隔离方法及装置
RU2626350C1 (ru) * 2016-04-11 2017-07-26 Андрей Сергеевич Моляков Способ функционирования операционной системы вычислительного устройства программно-аппаратного комплекса
CN109117658A (zh) * 2018-08-28 2019-01-01 深圳市鼎昇贸易有限公司 库存的权限管理方法及相关产品
CN111147572A (zh) * 2019-12-24 2020-05-12 中国建设银行股份有限公司 云客服平台管理系统及方法
CN112149109A (zh) * 2020-09-21 2020-12-29 珠海市卓轩科技有限公司 模块化权限控制管理方法及系统
CN113098695A (zh) * 2021-04-21 2021-07-09 金陵科技学院 一种基于用户属性的微服务统一权限控制方法与系统
CN113778612A (zh) * 2021-07-14 2021-12-10 中移物联网有限公司 基于微内核机制的嵌入式虚拟化系统实现方法
CN115208693A (zh) * 2022-09-09 2022-10-18 中国电子科技集团公司第十五研究所 一种基于微服务的安全访问控制方法及装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Component Management Framework for Operating System Based on Microkernel Architecture;Wang Hui等;《2022 China International Conference on Electricity Distribution (CICED)》;正文第三-五部分 *
Wang Hui等.Component Management Framework for Operating System Based on Microkernel Architecture.《2022 China International Conference on Electricity Distribution (CICED)》.2022,正文第三-五部分. *
受限环境下基于权能的访问控制研究;沈海波等;计算机应用研究;20170531(05);全文 *

Also Published As

Publication number Publication date
CN116702180A (zh) 2023-09-05

Similar Documents

Publication Publication Date Title
JP4690437B2 (ja) ネットワークアプリケーションにおける通信方法、通信装置及びそのためのプログラム
EP1155366B1 (en) Techniques for permitting access across a context barrier on a small footprint device using an entry point object
US5832483A (en) Distributed control interface for managing the interoperability and concurrency of agents and resources in a real-time environment
US7788669B2 (en) System for isolating first computing environment from second execution environment while sharing resources by copying data from first portion to second portion of memory
US5566302A (en) Method for executing operation call from client application using shared memory region and establishing shared memory region when the shared memory region does not exist
US6044224A (en) Mechanism for dynamically associating a service dependent representation with objects at run time
EP0803154B1 (en) A mechanism for providing security to a dual decor command host system
EP0924607A2 (en) Method and apparatus for fast local CORBA object references
US20050102679A1 (en) Techniques for permitting access across a context barrier in a small footprint device using global data structures
CN116702180B (zh) 微内核操作系统及其访问控制方法、芯片、设备和介质
EP1155365B1 (en) Techniques for implementing security on a small footprint device using a context barrier
EP1163579B1 (en) Techniques for permitting access across a context barrier on a small footprint device using run time environment privileges
EP1234234B1 (en) Apparatus and methods for communicating between resource domains
US20080046899A1 (en) System and method for using an rmi activation system daemon with non-java applications
US8032898B2 (en) Kernel interface with categorized kernel objects
US7093122B1 (en) Techniques for permitting access across a context barrier in a small footprint device using shared object interfaces
EP1830261B1 (en) Method and apparatus for data transfer between isolated execution contexts
US7607142B2 (en) Cancellation mechanism for cooperative systems
CN109923547B (zh) 程序行为监控设备、分布式对象生成管理设备、存储介质、以及程序行为监视系统
Dannenberg et al. A butler process for resource sharing on spice machines
US6161121A (en) Generic transfer of exclusive rights
Au et al. L4 user manual
CN114462388A (zh) 句柄管理或通信方法、电子设备、存储介质及程序产品
EP4145318A1 (en) System and method for monitoring delivery of messages passed between processes from different operating systems
Baker et al. Establishing a reliable Jini infrastructure for parallel applications

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant