CN108985098A - 数据处理器 - Google Patents

数据处理器 Download PDF

Info

Publication number
CN108985098A
CN108985098A CN201810845255.6A CN201810845255A CN108985098A CN 108985098 A CN108985098 A CN 108985098A CN 201810845255 A CN201810845255 A CN 201810845255A CN 108985098 A CN108985098 A CN 108985098A
Authority
CN
China
Prior art keywords
kernel
interrupt
untrusted
data processor
trusted
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.)
Granted
Application number
CN201810845255.6A
Other languages
English (en)
Other versions
CN108985098B (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.)
Hangzhou C Sky Microsystems Co Ltd
Original Assignee
Hangzhou C Sky Microsystems 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 Hangzhou C Sky Microsystems Co Ltd filed Critical Hangzhou C Sky Microsystems Co Ltd
Priority to CN201810845255.6A priority Critical patent/CN108985098B/zh
Publication of CN108985098A publication Critical patent/CN108985098A/zh
Application granted granted Critical
Publication of CN108985098B publication Critical patent/CN108985098B/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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供一种数据处理器,所述数据处理器包括可信内核和非可信内核,其特征在于,所述可信内核包括中断处理控制模块和可信内核中断处理模块,所述非可信内核包括非可信内核中断处理模块。本发明通过对可信内核响应非可信中断提供一种软件响应处理机制,能够满足系统实时性要求,同时能够提高基于可信处理器架构下中断处理机制的灵活性。

Description

数据处理器
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据处理器。
背景技术
随着移动互联网以及物联网技术的迅速发展,系统可信性变得越来越重要。现有的系统可信性手段有两种,分别为基于软件层面的可信性保护和基于处理器架构的可信性架构,其中,基于软件层面的可信性保护,在很多情况下已经无法给系统提供足够的可信性,黑客可以攻击操作系统从而越过软件保护,对敏感资源进行攻击或者获取;而基于处理器架构的可信性架构,能够为系统提供软件保护之外的底层硬件保护机制,将系统中的敏感信息(例如秘钥、密码等)通过硬件进行隔离保护,构建一个安全可信的编程环境。具体地,基于处理器架构的可信性架构是将处理器的物理内核虚拟出可信内核和非可信内核两种属性的内核,其中,可信内核用于存储和处理敏感信息,非可信内核用于存储和处理除敏感信息以外的信息;相应地,基于可信性架构的中断机制分为可信中断机制和非可信中断机制,分别用于处理属性为可信和非可信的中断请求,具体地,在处理器工作的当前内核为可信内核的情况下,如果接收到的中断请求为非可信属性,则保护现场至可信内核,然后进行内核切换,即将当前内核切换为非可信内核,并由切换后的非可信内核响应与处理该中断请求,处理完中断请求后处理器再切换返回可信内核继续执行。
在实现本发明的过程中,发明人发现现有技术中至少存在如下技术问题:
现有技术中的可信内核响应非可信中断的处理机制是在非可信内核处理中断请求后会切换返回可信内核,而在很多应用场合,将当前内核切换到非可信内核处理完该中断请求后,需要继续停留在非可信内核继续执行其他任务以满足系统的实时性,显然,现有技术中的可信内核响应非可信中断的处理机制无法满足系统实时性的要求,也就是说,现有的基于可信处理器架构下的中断处理机制缺乏灵活性。
发明内容
本发明提供的数据处理器,对可信内核响应非可信中断提供一种软件响应处理机制,能够满足系统实时性要求,同时能够提高基于可信处理器架构下中断处理机制的灵活性。
本发明提供一种数据处理器,所述数据处理器包括可信内核和非可信内核,其特征在于,所述可信内核包括中断处理控制模块和可信内核中断处理模块,所述非可信内核包括非可信内核中断处理模块;
所述中断处理控制模块,用于从外部接收中断属性信号、中断向量号和中断处理控制信号,当运行在可信内核的数据处理器接收到中断请求时,根据所述中断属性信号确定所述中断请求的属性;如果所述中断请求的属性与当前可信内核的属性不一致,则根据所述中断处理控制信号确定所述数据处理器直接切换至非可信内核还是通过调用内核切换管理程序切换至所述非可信内核,以实现在所述非可信内核处理所述中断请求;
所述可信内核中断处理模块,用于当确定所述数据处理器通过调用内核切换管理程序切换至所述非可信内核时根据接收到的中断向量号在可信内核中断向量表中查找所述中断请求对应的中断服务程序入口,以使得所述中断服务程序通过调用内核切换管理程序进行内核切换;
所述非可信内核中断处理模块,用于在所述数据处理器通过调用内核切换管理程序切换到所述非可信内核后根据接收到的中断向量号在非可信内核中断向量表中查找所述中断请求对应的中断服务程序入口,以在所述非可信内核通过所述中断服务程序处理所述中断请求,并在处理完所述中断请求后停留在所述非可信内核继续执行其他任务。
本发明实施例提供的数据处理器,与现有技术相比,本发明对可信内核响应非可信中断提供一种软件响应处理机制,能够满足系统实时性要求,同时能够提高基于可信处理器架构下中断处理机制的灵活性。
附图说明
图1为本发明一实施例数据处理器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种数据处理器,如图1所示,所述数据处理器包括可信内核和非可信内核,其特征在于,所述可信内核包括中断处理控制模块和可信内核中断处理模块,所述非可信内核包括非可信内核中断处理模块。
所述中断处理控制模块,用于从外部接收中断属性信号、中断向量号和中断处理控制信号,当运行在可信内核的数据处理器接收到中断请求时,根据所述中断属性信号确定所述中断请求的属性;如果所述中断请求的属性与当前可信内核的属性不一致,则根据所述中断处理控制信号确定所述数据处理器直接切换至非可信内核还是通过调用内核切换管理程序切换至所述非可信内核,以实现在所述非可信内核处理所述中断请求。
其中,所述中断属性信号用于指示待处理的中断请求的属性是可信中断请求或者非可信中断请求,所述中断向量号用于提供中断服务程序入口在中断向量表中的地址,所述中断处理控制信号用于指示所述数据处理器直接切换至非可信内核还是通过调用内核切换管理程序切换至所述非可信内核。
所述可信内核中断处理模块,用于当确定所述数据处理器通过调用内核切换管理程序切换至所述非可信内核时根据接收到的中断向量号在可信内核中断向量表中查找所述中断请求对应的中断服务程序入口,以使得所述中断服务程序通过调用内核切换管理程序进行内核切换。
所述非可信内核中断处理模块,用于在所述数据处理器通过调用内核切换管理程序切换到所述非可信内核后根据接收到的中断向量号在非可信内核中断向量表中查找所述中断请求对应的中断服务程序入口,以在所述非可信内核通过所述中断服务程序处理所述中断请求,并在处理完所述中断请求后停留在所述非可信内核继续执行其他任务。
本发明实施例提供的数据处理器,与现有技术相比,本发明对可信内核响应非可信中断提供一种软件响应处理机制,即通过调用内核切换管理程序进行内核切换,并在非可信内核处理完中断请求后会停留在非可信内核继续执行其他任务,从而能够满足系统实时性要求,同时由于可信内核响应中断请求时具有两种响应处理机制,从而能够提高基于可信处理器架构下中断处理机制的灵活性。
在上述实施例中,所述中断服务程序通过调用内核切换管理程序进行内核切换包括:保存所述可信内核的运行现场至可信内存,从所述可信内存载入所述非可信内核的运行现场,之后通过调用内核任务切换返回命令切换到所述非可信内核的运行现场,以实现所述中断请求在所述非可信内核下触发。
其中,所述非可信内核的运行现场是上一次从所述非可信内核切换到所述可信内核时保存在所述可信内存的现场。
可选地,所述可信内核中断向量表用于提供可信内核中断服务程序入口,所述非可信内核中断向量表用于提供非可信内核中断服务程序入口。
所述内核切换管理程序,用于管理可信内核现场和非可信内核现场,以实现内核切换。
进一步地,如图1所示,所述可信内核中断处理模块,用于当确定所述数据处理器直接切换至非可信内核时通过将所述程序指针、所述程序状态寄存器和所述通用寄存器压栈,以及对所述通用寄存器进行清零进行内核切换;
所述非可信内核中断处理模块,用于在所述数据处理器直接切换至非可信内核后根据接收到的中断向量号在非可信内核中断向量表中查找所述中断请求对应的中断服务程序入口,以在所述非可信内核通过所述中断服务程序处理所述中断请求,并在处理完中断请求后通过将所述程序指针、所述程序状态寄存器和所述通用寄存器弹栈以恢复所述可信内核的运行现场继续执行其他任务。
需要说明的是,由于数据处理器直接切换到非可信内核以及非可信内核处理中断请求后恢复可信内核的运行现场和现有技术类似,所以未在图1中示出程序状态寄存器和通用寄存器等硬件。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (7)

1.一种数据处理器,所述数据处理器包括可信内核和非可信内核,其特征在于,所述可信内核包括中断处理控制模块和可信内核中断处理模块,所述非可信内核包括非可信内核中断处理模块;
所述中断处理控制模块,用于从外部接收中断属性信号、中断向量号和中断处理控制信号,当运行在可信内核的数据处理器接收到中断请求时,根据所述中断属性信号确定所述中断请求的属性;如果所述中断请求的属性与当前可信内核的属性不一致,则根据所述中断处理控制信号确定所述数据处理器直接切换至非可信内核还是通过调用内核切换管理程序切换至所述非可信内核,以实现在所述非可信内核处理所述中断请求;
所述可信内核中断处理模块,用于当确定所述数据处理器通过调用内核切换管理程序切换至所述非可信内核时根据接收到的中断向量号在可信内核中断向量表中查找所述中断请求对应的中断服务程序入口,以使得所述中断服务程序通过调用内核切换管理程序进行内核切换;
所述非可信内核中断处理模块,用于在所述数据处理器通过调用内核切换管理程序切换到所述非可信内核后根据接收到的中断向量号在非可信内核中断向量表中查找所述中断请求对应的中断服务程序入口,以在所述非可信内核通过所述中断服务程序处理所述中断请求,并在处理完所述中断请求后停留在所述非可信内核继续执行其他任务。
2.根据权利要求1所述的数据处理器,其特征在于,所述中断服务程序通过调用内核切换管理程序进行内核切换包括:
保存所述可信内核的运行现场至可信内存,从所述可信内存载入所述非可信内核的运行现场,之后通过调用内核任务切换返回命令切换到所述非可信内核的运行现场,以实现所述中断请求在所述非可信内核下触发。
3.根据权利要求2所述的数据处理器,其特征在于,所述非可信内核的运行现场是上一次从所述非可信内核切换到所述可信内核时保存在所述可信内存的现场。
4.根据权利要求1所述的数据处理器,其特征在于,所述中断属性信号用于指示待处理的中断请求的属性是可信中断请求或者非可信中断请求,所述中断向量号用于提供中断服务程序入口在中断向量表中的地址,所述中断处理控制信号用于指示所述数据处理器直接切换至非可信内核还是通过调用内核切换管理程序切换至所述非可信内核。
5.根据权利要求1所述的数据处理器,其特征在于,所述可信内核中断向量表用于提供可信内核中断服务程序入口,所述非可信内核中断向量表用于提供非可信内核中断服务程序入口。
6.根据权利要求1所述的数据处理器,其特征在于,所述内核切换管理程序,用于管理可信内核现场和非可信内核现场,以实现内核切换。
7.根据权利要求1所述的数据处理器,其特征在于,所述可信内核中断处理模块,用于当确定所述数据处理器直接切换至非可信内核时通过将所述程序指针、所述程序状态寄存器和所述通用寄存器压栈,以及对所述通用寄存器进行清零进行内核切换;
所述非可信内核中断处理模块,用于在所述数据处理器直接切换至非可信内核后根据接收到的中断向量号在非可信内核中断向量表中查找所述中断请求对应的中断服务程序入口,以在所述非可信内核通过所述中断服务程序处理所述中断请求,并在处理完中断请求后通过将所述程序指针、所述程序状态寄存器和所述通用寄存器弹栈以恢复所述可信内核的运行现场继续执行其他任务。
CN201810845255.6A 2018-07-27 2018-07-27 数据处理器 Active CN108985098B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810845255.6A CN108985098B (zh) 2018-07-27 2018-07-27 数据处理器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810845255.6A CN108985098B (zh) 2018-07-27 2018-07-27 数据处理器

Publications (2)

Publication Number Publication Date
CN108985098A true CN108985098A (zh) 2018-12-11
CN108985098B CN108985098B (zh) 2020-10-13

Family

ID=64551396

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810845255.6A Active CN108985098B (zh) 2018-07-27 2018-07-27 数据处理器

Country Status (1)

Country Link
CN (1) CN108985098B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111382441A (zh) * 2018-12-29 2020-07-07 阿里巴巴集团控股有限公司 一种应用处理器、协处理器及数据处理设备
CN113486356A (zh) * 2021-06-30 2021-10-08 佛山职业技术学院 一种控制中断源的运行方法、装置、终端设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1711524A (zh) * 2002-11-18 2005-12-21 Arm有限公司 在安全模式和非安全模式间切换的处理器
US20070074223A1 (en) * 2003-04-09 2007-03-29 Eric Lescouet Operating systems
CN101477612A (zh) * 2008-01-02 2009-07-08 Arm有限公司 保护从中央处理器发送的以供处理的安全数据的安全性
CN106775971A (zh) * 2016-12-02 2017-05-31 杭州中天微系统有限公司 数据处理装置
CN107463856A (zh) * 2017-08-01 2017-12-12 杭州中天微系统有限公司 一种基于可信内核的防攻击数据处理器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1711524A (zh) * 2002-11-18 2005-12-21 Arm有限公司 在安全模式和非安全模式间切换的处理器
US20070074223A1 (en) * 2003-04-09 2007-03-29 Eric Lescouet Operating systems
CN101477612A (zh) * 2008-01-02 2009-07-08 Arm有限公司 保护从中央处理器发送的以供处理的安全数据的安全性
CN106775971A (zh) * 2016-12-02 2017-05-31 杭州中天微系统有限公司 数据处理装置
CN107463856A (zh) * 2017-08-01 2017-12-12 杭州中天微系统有限公司 一种基于可信内核的防攻击数据处理器

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111382441A (zh) * 2018-12-29 2020-07-07 阿里巴巴集团控股有限公司 一种应用处理器、协处理器及数据处理设备
CN111382441B (zh) * 2018-12-29 2023-04-25 阿里巴巴集团控股有限公司 一种应用处理器、协处理器及数据处理设备
CN113486356A (zh) * 2021-06-30 2021-10-08 佛山职业技术学院 一种控制中断源的运行方法、装置、终端设备及存储介质
CN113486356B (zh) * 2021-06-30 2024-05-07 佛山职业技术学院 一种控制中断源的运行方法、装置、终端设备及存储介质

Also Published As

Publication number Publication date
CN108985098B (zh) 2020-10-13

Similar Documents

Publication Publication Date Title
KR102204501B1 (ko) 인터럽트 핸들링 방법 및 장치
US11443034B2 (en) Trust zone-based operating system and method
US20120297452A1 (en) Providing protection against unauthorized network access
CN106599717B (zh) 数据处理器
JP4247228B2 (ja) ヘテロマルチプロセッサシステムおよびそのos構成方法
EP3663958B1 (en) Trusted kernel-based attack-prevention data processor
CN107273765B (zh) 基于双虚拟内核机制的处理器
CN113051034B (zh) 一种基于kprobes的容器访问控制方法与系统
CN106775971B (zh) 数据处理装置
CN106603498B (zh) 事件上报方法及装置
CN108985098A (zh) 数据处理器
CN105579963A (zh) 任务处理装置、电子设备及方法
CN110276214A (zh) 一种基于从机访问保护的双核可信soc架构及方法
CN109063516A (zh) 数据处理器
EP3646216B1 (en) Methods and devices for executing trusted applications on processor with support for protected execution environments
US10754967B1 (en) Secure interrupt handling between security zones
US9501667B2 (en) Security domain prediction
CN109033842A (zh) 数据处理器
Ma et al. Construction of RISC-V lightweight trusted execution environment based on hardware extension
US7080179B1 (en) Multi-level interrupts
JP2022509722A (ja) 例外原因イベントをハンドリングするための装置及び方法
KR102210659B1 (ko) 지능형 악성앱 탐지를 위한 게임이론 기반의 동적 분석 입력 시스템 및 방법
CN112231072A (zh) 一种处理器及内核切换处理方法
US20240354450A1 (en) Information processing method and apparatus
US20210157489A1 (en) Supervisor mode access protection for fast networking

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