CN106030602A - 基于虚拟化的块内工作负荷隔离 - Google Patents

基于虚拟化的块内工作负荷隔离 Download PDF

Info

Publication number
CN106030602A
CN106030602A CN201580010723.2A CN201580010723A CN106030602A CN 106030602 A CN106030602 A CN 106030602A CN 201580010723 A CN201580010723 A CN 201580010723A CN 106030602 A CN106030602 A CN 106030602A
Authority
CN
China
Prior art keywords
workload
sandbox
block
vmm
bag
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
CN201580010723.2A
Other languages
English (en)
Other versions
CN106030602B (zh
Inventor
D.普拉尚特
U.森古塔
S.齐哈布拉
D.杜尔罕
X.康
U.萨瓦高恩卡
A.纳伦拉特里维迪
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN106030602A publication Critical patent/CN106030602A/zh
Application granted granted Critical
Publication of CN106030602B publication Critical patent/CN106030602B/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/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/84Protecting input, output or interconnection devices output devices, e.g. displays or monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0038System on Chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)

Abstract

本公开一般地提供用于基于虚拟化的块内工作负荷隔离的***、设备、方法和计算机可读介质。该***可包括创建安全虚拟化环境或沙箱的虚拟机管理器(VMM)模块。该***还可包括将数据加载到沙箱的第一区域中并且基于数据生成工作负荷包的处理器块。工作负荷包被存储在沙箱的第二区域中。该***可进一步包括从工作负荷包取回并执行指令的操作块。

Description

基于虚拟化的块内工作负荷隔离
技术领域
本公开涉及块内工作负荷隔离,例如在片上***(SoC)的组件块上,并且更具体地涉及采用安全性引擎或虚拟机管理器(VMM)的块内工作负荷隔离。
背景技术
诸如例如片上***(SoC)或其它类型的平台之类的计算***典型地具有一个或多个处理器或核以及其它操作块或组件,其它操作块或组件可包括设备控制器、图形处理器、音频处理器、通信模块等。这些操作块往往能够以与处理器可执行多个线程的方式类似的方式执行多个工作负荷。在这种情况下可以出现安全性问题。在操作块上执行的不受信工作负荷可以无意或恶意地干扰在相同操作块上的另一个工作负荷的执行(即块内干扰)。例如,在媒体引擎(图形、成像、视频等)上执行的不同工作负荷可能潜在地彼此干扰(无论恶意还是无意),从而破坏工作负荷的正常流或期望的操作。
虽然访问控制机制对于块间事务和/或块到存储器事务可能是可用的,但是这些技术没有解决块内干扰的问题,随着工业进一步朝着异构计算和并行工作负荷执行前进,块内干扰的问题正变得越来越重要。
附图说明
随着下面的具体实施方式的继续进行,并且在参考附图时,要求保护的主题的实施例的特征和优点将变得显而易见,其中相同的附图标记描绘相同的部件,并且在附图中:
图1图示与本公开一致的一个示例性实施例的顶层***图;
图2图示与本公开一致的一个示例性实施例的框图;
图3图示与本公开一致的一个示例性实施例的操作的流程图;
图4图示与本公开一致的另一个示例性实施例的框图;
图5图示与本公开一致的另一个示例性实施例的操作的流程图;以及
图6图示与本公开一致的另一个示例性实施例的平台的***图。
虽然下面的具体实施方式将继续进行,同时对说明性的实施例进行参考,但是许多替代方案、修改及其变型将对本领域技术人员显而易见。
具体实施方式
通常,本公开提供用于基于虚拟化的块内工作负荷隔离的***、设备、方法和计算机可读介质。例如片上***(SoC)的***可包括处理块(核或CPU)、存储器和一个或多个其它操作块或组件,诸如例如设备控制器、图形处理器(GPU)、音频处理器、成像设备、通信模块等。每个操作块可被配置成执行多个工作负荷。工作负荷可由CPU生成,并且作为工作负荷包被提交给操作块以用于执行。工作负荷可被生成并且安全地存储在存储器中(例如使用基于虚拟化和页表的访问),以包含沙箱中的工作负荷。虚拟机管理器(VMM)或其它类型的安全性引擎可被配置成允许操作块在特定上下文中执行来自沙箱的工作负荷,使得在包括其它沙箱中的其它工作负荷的该操作块上执行的任何其它代码可以不访问该沙箱。因此虚拟化可用于在操作块内提供工作负荷隔离,包括与工作负荷相关联的代码、数据(存储器或寄存器内容)和状态信息的隔离,如以下将更详细地描述的。基于工作负荷执行,VMM还可被配置成允许操作块将结果安全地写回沙箱中。
图1图示与本公开一致的一个示例性实施例的顶层***图100。***102被示为包括许多块或组件,包括处理器104、存储器106、VMM 108和被配置用于工作负荷隔离的一个或多个操作块110-1,... 110-n,该***102可能是固定或移动的片上***(SoC)或者其它类型的计算或通信平台。
在一些实施例中,例如互联网服务供应商的第三方实体(未示出)可将请求发送给***102。为了满足这些请求,处理器104可生成并提交工作负荷给操作块110之一,用于与其它工作负荷一起执行。执行的结果可被返回给第三方实体,并且处理器102可证明由于***的工作负荷隔离能力的结果的安全性或完整性,如以下将更详细地描述的。
图2图示与本公开一致的一个示例性实施例的框图200。处理器104可被配置成执行一个或多个进程(或线程),例如进程A 202、进程B 204和进程C 206。这些进程可包括操作***(OS)、应用程序或任何其它***或用户软件组件。这些进程202、204、206中的一个或多个可与做出进程的请求的外部或第三方实体(例如互联网服务供应商)通信。最终可以生成的工作负荷的形式将这些请求分派任务给操作块110中的一个或多个,如以下描述的。
操作块110被示为包括可能是处理器或电路的块引擎214,处理器或电路被配置成执行一个或多个工作负荷,例如工作负荷A 216、工作负荷 B218和工作负荷C220。工作负荷可与进程相关联(例如由进程生成或代表进程)。例如,工作负荷A 216可与进程A 202相关联,等等,虽然这无须是这种情况。工作负荷可被彼此分离(例如通过虚拟化硬件支持或其它合适的机制),以提供安全性并且防止在给定的操作块上的工作负荷之间的无意或恶意干扰。
CPU虚拟化208由VMM 208生成,作为处理器104、进程202、204、206、存储器106和操作块110之间的接口。页表可用作该虚拟化的部分,以在物理和虚拟地址之间变换并维持对与沙箱相关联的存储器106的受保护区域或页210的访问控制(例如读取/写入/执行)。类似地,基于页表和访问控制,设备虚拟化212由VMM 208生成,作为操作块110与处理器104和存储器106之间的接口。
VMM被配置成提供虚拟化环境,虚拟化环境充当用于工作负荷的安全容器或沙箱。沙箱受到保护以免于托管它的进程,并且受到保护以免于处理器104上的OS和其它进程,使得平台上的恶意软件不可以干扰工作负荷的生成。沙盘还受到保护以免于在操作块上执行的其它工作负荷和软件组件。在一些实施例中,对于包含工作负荷包的沙箱的区域,VMM可将访问控制设置成对于除了沙箱内的代码以外的所有实体不可执行。沙箱从而在操作块内提供工作负荷隔离,包括与工作负荷相关联的代码、数据(存储器或寄存器内容)和状态信息的隔离。
在一些实施例中,操作块可包括被配置成监视工作负荷的上下文并实施访问控制策略(例如读取/写入/执行许可)的存储器访问控制器。
图3图示与本公开一致的一个示例性实施例的操作300的流程图。更详细地示出在图的左侧上的处理器104的操作以及在图的右侧上的块110的操作之间的交互。在操作302处,处理器例如从第三方或其它实体接收​​请求。请求可包括以任何合适格式的代码和/或数据。在操作304处,处理器使用VMM 108或任何其它类型的安全性引擎创建安全虚拟化环境(例如沙箱)。在操作306处,处理器将代码/数据加载到沙箱的区域(或页)中,并且在操作308处例如使用加密技术或任何其它合适的验证机制认证它。在操作310处,基于提供的代码/数据或基于从另一个源获得的或本地创建的附加信息,处理器生成工作负荷包。工作负荷包也被存储在沙箱中,例如在可能或可能不在任何程度上与第一区域重叠的第二区域中。可通过任何合适类型的变换、转换、拆包和/或解密过程从提供的代码/数据中生成工作负荷包。生成的工作负荷包可包括适合于由操作块的引擎执行的指令。
在操作312处,处理器请求VMM建立包括页表的设备虚拟化,操作块可通过设备虚拟化访问工作负荷包。在操作314处,工作负荷包被提交给操作块。
在操作320处,操作块将块引擎设置成安全或受保护模式,该模式可能是由VMM维护的块引擎或状态标识符的硬件模式。在该安全模式中,引擎可仅仅从由VMM指定的沙箱取回并执行指令。在操作322和324处,操作块通过从沙箱取回指令(和数据)而收集并执行工作负荷包。在操作326处,执行的结果可被回写给沙箱的第三区域,第三区域可能或可能不在任何程度上与其它区域重叠。在操作316处,处理器收集这些结果,并可将它们返回到第三方请求实体。处理器还可基于工作负荷隔离证明结果的安全性或完整性。
在一些实施例中,工作负荷包可由嵌入式安全性引擎生成,该引擎诸如例如融合安全性引擎(CSE)或融合安全性可管理性引擎(CSME)。CSE可被配置成产生进程以响应于应用程序请求创建工作负荷包。从其它CPU软件、进程和应用程序隔离CSE产生的进程以提供保护以免于干扰或攻击。
在一些实施例中,CSE可被配置成将代码/数据加密为二进制大对象(BLOB),并使用VMM加密地将它绑定到操作块。只有授权的操作块可被配置成解密代码/数据,以获得工作负荷包。VMM可识别授权的操作块,并提供解密所需的凭据。该实施例可能对于不执行代码和/或可不与处理器共享地址空间的诸如例如显示元件的相对“哑的(dumb)”设备特别有用。
图4图示与本公开一致的另一个示例性实施例的框图400。示出简化的示例,简化的示例仅包括两个操作块:图形处理单元(GPU)110-1和显示引擎110-2。在GPU 110-1通常被配置成生成显示表面(例如待显示的位图),而显示引擎110-2通常被配置成向显示元件提供驱动信号以使得显示表面被显示。
在本示例中,第三方402可将请求提交给***,以显示某种类型的图像。请求可以任何提取级别(例如范围从通常的描述下到单独的像素)指定图像,并且可包括可用于生成图像的数据、代码、伪代码和/或算法。在处理器104上的进程404可接收该代码/数据并将它加载到基于虚拟化和页表的容器或沙箱中,其中它将受到保护以免于包括OS的其它进程202、204、206。进程404可被配置成验证代码/数据的真实性,并使用它来为GPU 110-1生成工作负荷包。工作负荷包可包括GPU不可理解的机器代码。用于保持生成的工作负荷包的沙箱的存储器区域(页)的访问控制例如可由VMM 108设置成不可执行的状态,以防止由任何其它未授权的进程​或处理块的意外的执行。
可进一步请求VMM 108,以允许GPU例如通过块引擎214从沙箱中的工作负荷包取回并执行指令。这些指令的执行为显示生成工作负荷406形成基础,显示生成工作负荷406可被配置成生成对应于来自第三方402的请求的显示表面。
生成的显示表面可被存储在专用于工作负荷结果的沙箱的区域中。VMM可被配置成允许显示引擎110-2访问沙箱的该结果区域。然而,在一些实施例中,可将结果从GPU 110-1直接发送到显示引擎110-2,在这种情况下可加密结果并且可通过VMM以安全方式将密钥(用于解密)提供给显示引擎。
VMM 108还可被配置成在用于来自多个沙箱的显示资源的请求之间仲裁,每个沙箱执行显示生成工作负荷。例如,如果对于Z次序优先级(来自一个沙箱的图像平面或表面重叠来自另一个沙箱的图像平面)存在多个请求,VMM可决定优先级并确定显示图像的哪些部分。VMM可以向代表多个沙箱的显示表面提供显示引擎110-2所需的加密资源。显示引擎可被配置成跟踪哪些表面属于哪些沙箱,并且保护工作负荷请求免于任何沙箱读取不属于它的表面。类似地,显示引擎110-2可被配置成实施如由沙箱的工作负荷请求的Z次序。显示引擎还可被配置成生成显示表面的配置的快照并将其发送给沙箱作为表面的可见性的证明。每当显示表面的配置不符合由沙箱请求的配置时,显示引擎可进一步通知沙箱。
图5图示与本公开一致的另一个示例性实施例的操作500的流程图。该操作提供用于基于虚拟化的块内工作负荷隔离的方法。在操作510处,创建安全虚拟化环境(沙箱)。沙箱与***的处理器块相关联,并且由虚拟机管理器(VMM)管理。在操作520处,将数据加载到沙箱中。数据加载可由处理器块执行。在操作530处,认证数据。在操作540处,基于数据生成工作负荷包。与工作负荷相关联的工作负荷包被存储在沙箱中的存储器的非可执行区域中。在操作550处,将工作负荷包从沙箱提交给***的操作块以用于执行。
图6图示与本公开一致的一个示例性实施例的***图600。***600可能是移动平台610或计算设备,诸如例如智能手机、智能平板、个人数字助理(PDA)、移动互联网设备(MID)、可转换平板、笔记本或膝上型电脑、台式电脑、服务器、智能电视或不论是固定还是移动的任何其它设备。经由显示元件670,诸如例如触摸屏、液晶显示器(LCD)或任何其它合适的显示器类型,该设备通常可向用户呈现各种界面。
***600被示为包括处理器104。在一些实施例中,处理器104可被实现为任何数量的处理器核。处理器(或处理器核)可能是任何类型的处理器,诸如例如微处理器、嵌入式处理器、数字信号处理器(DSP)、网络处理器、现场可编程门阵列或被配置成执行代码的其它设备。处理器104可能是单线程核或多线程核,在多线程核中它可包括每个核一个以上的硬件线程上下文(或“逻辑处理器”)。***600还被示为包括耦合到处理器104的存储器106。存储器106可能是对本领域技术人员已知或可以其它方式获得的任何的各种各样的存储器(包括存储器分层结构的各种层和/或存储器高速缓存)。***600还被示为包括VMM模块108或其它合适的安全性引擎,如先前所述。
***600还被示为包括任何数量的操作块110,操作块110可包括输入/输出(IO)***或控制器650,输入/输出(IO)***或控制器650可被配置成使能或管理在处理器104和***600的其它元件或***600外部的其它元件(未示出)之间的数据通信。操作块110还可包括无线通信接口620,无线通信接口620被配置成使能***600和任何外部实体之间的无线通信(例如通过无线通信收发器660)。无线通信可符合或以其它方式与任何现有的或尚未开发的通信标准兼容,该通信标准包括移动电话通信标准。操作块110还可包括图形处理器(或GPU)630和被配置成驱动显示元件670的显示引擎640。操作块110可被配置成如本文所述地采用VMM模块108的安全性能力提供块内工作负荷隔离。
将理解的是:在一些实施例中,可在片上***(SoC)架构中组合***600的各种组件。在一些实施例中,组件可能是硬件组件、固件组件、软件组件或者硬件、固件或软件的任何合适的组合。
可在包括一个或多个存储介质的***中实现本文所述的方法的实施例,一个或多个存储介质具有单独地或组合地在其上存储的指令,该指令在由一个或多个处理器执行时执行方法。这里,处理器例如可包括***CPU(例如核处理器)和/或可编程电路。从而,其意图是:根据本文所述的方法的操作可以跨越多个物理设备(诸如在几个不同物理位置处的处理结构)而分布。此外,其意图是:可单独地或在子组合中执行方法操作,如将由本领域技术人员所理解。从而,不需要执行流程图中每一个的所有操作,并且本公开明确的意图是:使能将由本领域普通技术人员理解的这样的操作的所有子组合。
存储介质可包括任何类型的有形介质,例如任何类型的盘,包括软盘、光盘、致密盘只读存储器(CD-ROM)、可重写致密盘(CD-RW)、数字多功能盘(DVD)和磁光盘,半导体器件,诸如只读存储器(ROM)、诸如动态和静态RAM之类的随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器、磁或光卡,或者适合于存储电子指令的任何类型的介质。
如在本文的任何实施例中使用的“电路”例如可单独地或任意组合地包括硬连线电路、可编程电路、状态机电路和/或存储由可编程电路执行的指令的固件。app可被体现为可在诸如主机处理器或其它可编程电路之类的可编程电路上执行的代码或指令。如在本文中任何实施例中使用的模块可被体现为电路。该电路可被体现为集成电路,诸如集成电路芯片。
从而,本公开提供用于基于虚拟化的块内工作负荷隔离的***、设备、方法以及计算机可读介质。下面的示例涉及进一步的实施例。
根据示例1,提供有一种用于块内工作负荷隔离的***。该***可包括创建安全虚拟化环境(沙箱)的虚拟机管理器(VMM)模块。该示例的***还可包括将数据加载到沙箱的第一区域中的处理器块。该示例的处理器块可被进一步配置成生成与工作负荷相关联的工作负荷包,该工作负荷包基于该数据并存储在沙箱的第二区域中。该示例的***可进一步包括从工作负荷包取回并执行指令的操作块。
示例2可包括前述示例的元件,并且VMM将进一步设置沙箱的第二区域的访问控制,以提供与工作负荷相关联的代码、数据和状态信息的块内隔离。
示例3可包括前述示例的元件,并且VMM将进一步将沙箱的第二区域的访问控制设置成非可执行模式。
示例4可包括前述示例的元件,并且在工作负荷包的选择的执行时段期间,VMM将进一步将沙箱的第二区域的访问控制设置成针对操作块的可执行模式。
示例5可包括前述示例的元件,并且操作块将进一步向沙箱的第三区域写入结果,该结果基于工作负荷包的执行。
示例6可包括前述示例的元件,并且处理器块将进一步加密地认证数据。
示例7可包括前述示例的元件,并且VMM将进一步提供与沙箱相关联的虚拟和物理地址之间的基于页表的变换,并且进一步提供与地址相关联的读取/写入/执行访问控制。
示例8可包括前述示例的元件,并且操作块是从由图形处理单元、设备控制器、无线通信接口、数字信号处理器和音频处理器组成的组中选择的。
示例9可包括前述示例的元件,并且***是片上***。
示例10可包括前述示例的元件,并且***是智能手机、膝上型计算设备、智能TV或智能平板。
示例11可包括前述示例的元件,并且进一步包括用户界面,并且该用户界面是触摸屏。
根据示例12,提供有一种用于块内工作负荷隔离的方法。该示例的方法可包括:创建与***的处理器块相关联的安全虚拟化环境(沙箱),该沙箱由虚拟机管理器(VMM)管理。该示例的方法还可包括将数据加载到沙箱中。该示例的方法可进一步包括认证数据。该示例的方法可进一步包括生成与工作负荷相关联的工作负荷包,该工作负荷包基于该数据并且存储在沙箱中的存储器的非可执行区域中。该示例的方法可进一步包括从沙箱向***的操作块提交工作负荷包以用于执行。
示例13可包括前述示例的元件,并且进一步包括在沙箱上设置访问控制,以提供与工作负荷相关联的代码、数据和状态信息的块内隔离。
示例14可包括前述示例的元件,并且提交进一步包括:请求VMM以使得操作块能够从工作负荷包取回并执行指令。
示例15可包括前述示例的元件,并且进一步包括:从操作块接收结果,该结果基于执行。
示例16可包括前述示例的元件,并且接收进一步包括:请求VMM以使得操作块能够写入到沙箱中的存储器的区域。
示例17可包括前述示例的元件,并且操作块是图形处理单元、设备控制器、无线通信接口、数字信号处理器或音频处理器。
示例18可包括前述示例的元件,并且认证进一步包括验证加密签名。
示例19可包括前述示例的元件,并且VMM提供与沙箱相关联的虚拟和物理地址之间的基于页表的变换,并且进一步提供与地址相关联的读取/写入/执行访问控制。
根据示例20,提供有一种用于块内工作负荷隔离的***。该示例的***可包括:用于创建与***的处理器块相关联的安全虚拟化环境(沙箱)的装置,该沙箱由虚拟机管理器(VMM)管理。该示例的***还可包括用于将数据加载到沙箱中的装置。该示例的***可进一步包括用于认证数据的装置。该示例的***可进一步包括用于生成与工作负荷相关联的工作负荷包的装置,该工作负荷包基于该数据并且存储在沙箱中的存储器的非可执行区域中。该示例的***可进一步包括用于从沙箱向***的操作块提交工作负荷包以用于执行的装置。
示例21可包括前述示例的元件,并且进一步包括用于在沙箱上设置访问控制以提供与工作负荷相关联的代码、数据和状态信息的块内隔离的装置。
示例22可包括前述示例的元件,并且用于提交的装置进一步包括用于请求VMM以使得操作块能够从工作负荷包取回并执行指令的装置。
示例23可包括前述示例的元件,并且进一步包括用于从操作块接收结果的装置,该结果基于执行。
示例24可包括前述示例的元件,并且用于接收的装置进一步包括用于请求VMM以使得操作块能够写入到沙箱中的存储器的区域的装置。
示例25可包括前述示例的元件,并且操作块是图形处理单元、设备控制器、无线通信接口、数字信号处理器或音频处理器。
示例26可包括前述示例的元件,并且用于认证的装置进一步包括用于验证加密签名的装置。
示例27可包括前述示例的元件,并且VMM提供用于与沙箱相关联的虚拟和物理地址之间的基于页表的变换的装置,并且进一步提供用于与地址相关联的读取/写入/执行访问控制的装置。
根据另一个示例,提供有具有在其上存储的指令的至少一个计算机可读存储介质,该指令在由处理器执行时使得处理器执行如以上任何示例中所述的方法的操作。
根据另一个示例,提供有一种装置,包括执行如以上任何示例中所述的方法的装置。
已经在本文中采用的术语和表达用作描述的术语而不是限制,并且在这样的术语和表达的使用中没有意图排除所示和所述的特征(或其部分)的任何等同物,并且认识到:在权利请求的范围内各种修改是可能的。因此,权利请求意在覆盖所有这样的等同物。本文已经描述了各种特征、方面和实施例。特征、方面和实施例易于与彼此以及变型和修改组合,如将由本领域技术人员所理解的。因此,本公开应当被认为包含这样的组合、变型和修改。

Claims (26)

1.一种用于块内工作负荷隔离的***,所述***包括:
创建安全虚拟化环境(沙箱)的虚拟机管理器(VMM)模块;
将数据加载到所述沙箱的第一区域中的处理器块;
所述处理器块进一步生成与所述工作负荷相关联的工作负荷包,所述工作负荷包基于所述数据并存储在所述沙箱的第二区域中;以及
从所述工作负荷包取回并执行指令的操作块。
2.根据权利要求1所述的***,其中所述VMM将进一步设置所述沙箱的所述第二区域的访问控制,以提供与所述工作负荷相关联的代码、数据和状态信息的块内隔离。
3.根据权利要求1所述的***,其中所述VMM将进一步将所述沙箱的所述第二区域的访问控制设置成非可执行模式。
4.根据权利要求3所述的***,其中在所述工作负荷包的选择的执行时段期间,所述VMM将进一步将所述沙箱的所述第二区域的访问控制设置成针对所述操作块的可执行模式。
5.根据权利要求1所述的***,其中所述操作块将进一步向所述沙箱的第三区域写入结果,所述结果基于所述工作负荷包的执行。
6.根据权利要求1所述的***,其中所述处理器块将进一步加密地认证所述数据。
7.根据权利要求1所述的***,其中所述VMM将进一步提供与所述沙箱相关联的虚拟和物理地址之间的基于页表的变换,并且进一步提供与所述地址相关联的读取/写入/执行访问控制。
8.根据权利要求1所述的***,其中所述操作块是从由图形处理单元、设备控制器、无线通信接口、数字信号处理器和音频处理器组成的组中选择的。
9.根据权利要求1所述的***,其中所述***是片上***。
10.根据权利要求1所述的***,其中所述***是智能手机、膝上型计算设备、智能TV或智能平板。
11.根据权利要求1所述的***,进一步包括用户界面,其中所述用户界面是触摸屏。
12.一种用于块内工作负荷隔离的方法,所述方法包括:
创建与***的处理器块相关联的安全虚拟化环境(沙箱),所述沙箱由虚拟机管理器(VMM)管理;
将数据加载到所述沙箱中;
认证所述数据;
生成与所述工作负荷相关联的工作负荷包,所述工作负荷包基于所述数据并且存储在所述沙箱中的存储器的非可执行区域中;以及
从所述沙箱向所述***的操作块提交所述工作负荷包以用于执行。
13.根据权利要求12所述的方法,进一步包括在所述沙箱上设置访问控制,以提供与所述工作负荷相关联的代码、数据和状态信息的块内隔离。
14.根据权利要求12所述的方法,其中所述提交进一步包括:请求所述VMM以使得所述操作块能够从所述工作负荷包取回并执行指令。
15.根据权利要求12所述的方法,进一步包括:从所述操作块接收结果,所述结果基于所述执行。
16.根据权利要求15所述的方法,其中所述接收进一步包括:请求所述VMM以使得所述操作块能够写入到所述沙箱中的存储器的区域。
17.根据权利要求12所述的方法,其中所述操作块是从由图形处理单元、设备控制器、无线通信接口、数字信号处理器和音频处理器组成的组中选择的。
18.根据权利要求12所述的方法,其中所述认证进一步包括验证加密签名。
19.根据权利要求12所述的方法,其中所述VMM提供与所述沙箱相关联的虚拟和物理地址之间的基于页表的变换,并且进一步提供与所述地址相关联的读取/写入/执行访问控制。
20.具有在其上存储的指令的至少一个计算机可读存储介质,该指令在由处理器执行时导致用于块内工作负荷隔离的下列操作,所述操作包括:
创建与***的处理器块相关联的安全虚拟化环境(沙箱),所述沙箱由虚拟机管理器(VMM)管理;
将数据加载到所述沙箱中;
认证所述数据;
生成与所述工作负荷相关联的工作负荷包,所述工作负荷包基于所述数据并且存储在所述沙箱中的存储器的非可执行区域中;以及
从所述沙箱向所述***的操作块提交所述工作负荷包以用于执行。
21.根据权利要求20所述的计算机可读存储介质,进一步包括:在所述沙箱上设置访问控制以提供与所述工作负荷相关联的代码、数据和状态信息的块内隔离的操作。
22.根据权利要求20所述的计算机可读存储介质,其中所述提交进一步包括:请求所述VMM以使得所述操作块能够从所述工作负荷包取回并执行指令的操作。
23.根据权利要求20所述的计算机可读存储介质,进一步包括:从所述操作块接收结果的操作,所述结果基于所述执行。
24.根据权利要求23所述的计算机可读存储介质,其中所述接收进一步包括:请求所述VMM以使得所述操作块能够写入到所述沙箱中的存储器的区域的操作。
25.根据权利要求18所述的计算机可读存储介质,其中所述认证进一步包括验证加密签名的操作。
26.根据权利要求18所述的计算机可读存储介质,其中所述VMM提供与所述沙箱相关联的虚拟和物理地址之间的基于页表的变换,并且进一步提供与所述地址相关联的读取/写入/执行访问控制。
CN201580010723.2A 2014-03-28 2015-03-26 基于虚拟化的块内工作负荷隔离 Active CN106030602B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/228994 2014-03-28
US14/228,994 US20150278512A1 (en) 2014-03-28 2014-03-28 Virtualization based intra-block workload isolation
PCT/US2015/022802 WO2015148834A1 (en) 2014-03-28 2015-03-26 Virtualization based intra-block workload isolation

Publications (2)

Publication Number Publication Date
CN106030602A true CN106030602A (zh) 2016-10-12
CN106030602B CN106030602B (zh) 2019-04-30

Family

ID=54190795

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580010723.2A Active CN106030602B (zh) 2014-03-28 2015-03-26 基于虚拟化的块内工作负荷隔离

Country Status (4)

Country Link
US (2) US20150278512A1 (zh)
EP (1) EP3123388B1 (zh)
CN (1) CN106030602B (zh)
WO (1) WO2015148834A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109726549A (zh) * 2017-09-29 2019-05-07 英特尔公司 用于采用处理器沙箱支持的不可信代码执行的技术
CN110687878A (zh) * 2019-09-16 2020-01-14 广东鑫光智能***有限公司 工业设备模型组件应用云平台
WO2020225708A1 (en) * 2019-05-09 2020-11-12 International Business Machines Corporation Dynamically changing containerized workload isolation in response to detection of a triggering factor
CN112241309A (zh) * 2020-10-21 2021-01-19 海光信息技术股份有限公司 一种数据安全方法、装置、cpu、芯片及计算机设备

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10097263B2 (en) * 2017-01-18 2018-10-09 Ciena Corporation User defined applications executed on optical modules for performance monitoring in optical networks

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101517591A (zh) * 2006-09-29 2009-08-26 英特尔公司 虚拟安全模块的体系结构
KR20110052194A (ko) * 2009-11-12 2011-05-18 제주대학교 산학협력단 가상화 보안 시스템 및 방법
US20110191562A1 (en) * 2010-02-02 2011-08-04 Broadcom Corporation Apparatus and method for partitioning, sandboxing and protecting external memories
US20110296487A1 (en) * 2010-05-28 2011-12-01 Walsh Daniel J Systems and methods for providing an fully functional isolated execution environment for accessing content
TW201232410A (en) * 2010-11-02 2012-08-01 Ibm Managing a workload of a plurality of virtual servers of a computing environment
CN103034524A (zh) * 2011-10-10 2013-04-10 辉达公司 半虚拟化的虚拟gpu

Family Cites Families (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7793111B1 (en) * 2000-09-28 2010-09-07 Intel Corporation Mechanism to handle events in a machine with isolated execution
US7689676B2 (en) * 2003-03-06 2010-03-30 Microsoft Corporation Model-based policy application
US8122106B2 (en) * 2003-03-06 2012-02-21 Microsoft Corporation Integrating design, deployment, and management phases for systems
EP1870814B1 (en) * 2006-06-19 2014-08-13 Texas Instruments France Method and apparatus for secure demand paging for processor devices
US7908653B2 (en) * 2004-06-29 2011-03-15 Intel Corporation Method of improving computer security through sandboxing
US8274518B2 (en) * 2004-12-30 2012-09-25 Microsoft Corporation Systems and methods for virtualizing graphics subsystems
WO2006082990A1 (en) * 2005-02-07 2006-08-10 Sony Computer Entertainment Inc. Methods and apparatus for secure processor collaboration in a multi-processor system
US8200796B1 (en) * 2005-05-05 2012-06-12 Digital Display Innovations, Llc Graphics display system for multiple remote terminals
US8549513B2 (en) * 2005-06-29 2013-10-01 Microsoft Corporation Model-based virtual system provisioning
US7836303B2 (en) * 2005-12-09 2010-11-16 University Of Washington Web browser operating system
US7656409B2 (en) * 2005-12-23 2010-02-02 Intel Corporation Graphics processing on a processor core
KR20080085210A (ko) * 2006-01-17 2008-09-23 카이다로 (이스라엘) 리미티드 네트워크 환경에서의 데이터 보안
US20070226795A1 (en) * 2006-02-09 2007-09-27 Texas Instruments Incorporated Virtual cores and hardware-supported hypervisor integrated circuits, systems, methods and processes of manufacture
US7941813B1 (en) * 2006-02-17 2011-05-10 Parallels Holdings, Ltd. System and method for using virtual machine for driver installation sandbox
US8146079B2 (en) * 2006-07-26 2012-03-27 Hewlett-Packard Development Company, L.P. Systems and methods for controlling resource usage by a driver domain on behalf of a virtual machine
US20080279189A1 (en) * 2007-05-07 2008-11-13 3Com Corporation Method and System For Controlled Delay of Packet Processing With Multiple Loop Paths
US8806479B2 (en) * 2007-06-05 2014-08-12 International Business Machines Corporation Creating an application virtual machine image by isolating installation artifacts in shadow area
US20090070752A1 (en) * 2007-09-06 2009-03-12 International Business Machines Corporation Method and system for optimization of an application
US20090275407A1 (en) * 2008-04-30 2009-11-05 Bally Gaming, Inc. Virtualization for gaming devices
US8381288B2 (en) * 2008-09-30 2013-02-19 Intel Corporation Restricted component access to application memory
US8135964B2 (en) * 2008-12-09 2012-03-13 Nvidia Corporation Apparatus, system, method, and computer program product for executing a program utilizing a processor to generate keys for decrypting content
US8868925B2 (en) * 2008-12-09 2014-10-21 Nvidia Corporation Method and apparatus for the secure processing of confidential content within a virtual machine of a processor
US8738932B2 (en) * 2009-01-16 2014-05-27 Teleputers, Llc System and method for processor-based security
CN102349031B (zh) * 2009-03-13 2014-06-11 Abb技术有限公司 用于部分地由实现运行时过程的一个或者多个计算机实现的过程控制***中的控制的方法
TW201104561A (en) * 2009-07-23 2011-02-01 Young Optics Inc Projection system and method thereof
US8938723B1 (en) * 2009-08-03 2015-01-20 Parallels IP Holdings GmbH Use of GPU for support and acceleration of virtual machines and virtual environments
US20110102443A1 (en) * 2009-11-04 2011-05-05 Microsoft Corporation Virtualized GPU in a Virtual Machine Environment
US8595446B2 (en) * 2009-11-25 2013-11-26 Oracle America, Inc. System and method for performing dynamic mixed mode read validation in a software transactional memory
US8954958B2 (en) * 2010-01-11 2015-02-10 Code Systems Corporation Method of configuring a virtual application
US8813065B2 (en) * 2010-04-26 2014-08-19 Vmware, Inc. Microcloud platform delivery system
US9772831B2 (en) * 2010-04-26 2017-09-26 Pivotal Software, Inc. Droplet execution engine for dynamic server application deployment
US9323921B2 (en) * 2010-07-13 2016-04-26 Microsoft Technology Licensing, Llc Ultra-low cost sandboxing for application appliances
US8458791B2 (en) * 2010-08-18 2013-06-04 Southwest Research Institute Hardware-implemented hypervisor for root-of-trust monitoring and control of computer system
US9405700B2 (en) * 2010-11-04 2016-08-02 Sonics, Inc. Methods and apparatus for virtualization in an integrated circuit
US20120159127A1 (en) * 2010-12-16 2012-06-21 Microsoft Corporation Security sandbox
US8913067B1 (en) * 2011-03-01 2014-12-16 Google Inc. GPU accelerated compositing on a multithreaded browser
US9891939B2 (en) * 2011-03-03 2018-02-13 Microsoft Technology Licensing, Llc Application compatibility with library operating systems
US10496824B2 (en) * 2011-06-24 2019-12-03 Microsoft Licensing Technology, LLC Trusted language runtime on a mobile platform
US9311126B2 (en) * 2011-07-27 2016-04-12 Mcafee, Inc. System and method for virtual partition monitoring
CN102254120B (zh) * 2011-08-09 2014-05-21 华为数字技术(成都)有限公司 恶意代码的检测方法、***及相关装置
US8812830B2 (en) * 2011-08-31 2014-08-19 Microsoft Corporation Attestation protocol for securely booting a guest operating system
CN103959242A (zh) * 2011-10-10 2014-07-30 惠普发展公司,有限责任合伙企业 用于在云计算***中规划应用的执行的方法和***
US8590041B2 (en) * 2011-11-28 2013-11-19 Mcafee, Inc. Application sandboxing using a dynamic optimization framework
US9389933B2 (en) * 2011-12-12 2016-07-12 Microsoft Technology Licensing, Llc Facilitating system service request interactions for hardware-protected applications
US20130185729A1 (en) * 2012-01-13 2013-07-18 Rutgers, The State University Of New Jersey Accelerating resource allocation in virtualized environments using workload classes and/or workload signatures
US8692832B2 (en) * 2012-01-23 2014-04-08 Microsoft Corporation Para-virtualized asymmetric GPU processors
US9122507B2 (en) * 2012-02-18 2015-09-01 Cisco Technology, Inc. VM migration based on matching the root bridge of the virtual network of the origination host and the destination host
EP2642715A1 (en) * 2012-03-20 2013-09-25 British Telecommunications public limited company Method and system for malicious code detection
US9115626B2 (en) * 2012-07-10 2015-08-25 GM Global Technology Operations LLC Kinetics-based SCR control model improvement
US8933662B2 (en) * 2012-07-26 2015-01-13 Daifuku Co., Ltd. Charging apparatus for lead storage battery
US9898445B2 (en) * 2012-08-16 2018-02-20 Qualcomm Incorporated Resource prefetching via sandboxed execution
US20140229942A1 (en) * 2012-09-21 2014-08-14 Willard Monty Wiseman Isolated guest creation in a virtualized computing system
US9465596B2 (en) * 2012-09-27 2016-10-11 Google Inc. Cross system installation of web applications
WO2014100279A1 (en) * 2012-12-18 2014-06-26 Dynavisor, Inc. Dynamic device virtualization
RU2535175C2 (ru) * 2012-12-25 2014-12-10 Закрытое акционерное общество "Лаборатория Касперского" Система и способ обнаружения вредоносного программного обеспечения путем создания изолированной среды
RU2541895C2 (ru) * 2012-12-25 2015-02-20 Закрытое акционерное общество "Лаборатория Касперского" Система и способ повышения защищенности данных организации путем создания изолированной среды
US9223602B2 (en) * 2012-12-28 2015-12-29 Intel Corporation Processors, methods, and systems to enforce blacklisted paging structure indication values
US9396011B2 (en) * 2013-03-12 2016-07-19 Qualcomm Incorporated Algorithm and apparatus to deploy virtual machine monitor on demand
US9781118B2 (en) * 2013-03-14 2017-10-03 Intel Corporation Differentiated containerization and execution of web content based on trust level and other attributes
US9430258B2 (en) * 2013-05-10 2016-08-30 Vmware, Inc. Efficient sharing of identical graphics resources by multiple virtual machines using separate host extension processes
US9298506B2 (en) * 2013-09-30 2016-03-29 Teradata Us, Inc. Assigning resources among multiple task groups in a database system
WO2015087333A1 (en) * 2013-12-13 2015-06-18 Comilion Mobile Ltd. Collaborative system for cyber security analysis
US9621524B2 (en) * 2013-12-16 2017-04-11 Sophos Limited Cloud-based key management
US9311508B2 (en) * 2013-12-27 2016-04-12 Intel Corporation Processors, methods, systems, and instructions to change addresses of pages of secure enclaves
US9843533B2 (en) * 2014-03-06 2017-12-12 Trilio Data Inc. Elastic compute cloud based on underutilized server resources using a distributed container system
US9213866B1 (en) * 2014-04-01 2015-12-15 Xilinx, Inc. Circuits for and methods of preventing unauthorized access in an integrated circuit

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101517591A (zh) * 2006-09-29 2009-08-26 英特尔公司 虚拟安全模块的体系结构
KR20110052194A (ko) * 2009-11-12 2011-05-18 제주대학교 산학협력단 가상화 보안 시스템 및 방법
US20110191562A1 (en) * 2010-02-02 2011-08-04 Broadcom Corporation Apparatus and method for partitioning, sandboxing and protecting external memories
US20110296487A1 (en) * 2010-05-28 2011-12-01 Walsh Daniel J Systems and methods for providing an fully functional isolated execution environment for accessing content
TW201232410A (en) * 2010-11-02 2012-08-01 Ibm Managing a workload of a plurality of virtual servers of a computing environment
CN103034524A (zh) * 2011-10-10 2013-04-10 辉达公司 半虚拟化的虚拟gpu

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109726549A (zh) * 2017-09-29 2019-05-07 英特尔公司 用于采用处理器沙箱支持的不可信代码执行的技术
WO2020225708A1 (en) * 2019-05-09 2020-11-12 International Business Machines Corporation Dynamically changing containerized workload isolation in response to detection of a triggering factor
US11175939B2 (en) 2019-05-09 2021-11-16 International Business Machines Corporation Dynamically changing containerized workload isolation in response to detection of a triggering factor
CN113711541A (zh) * 2019-05-09 2021-11-26 国际商业机器公司 响应于触发因素的检测动态改变容器化工作负载隔离
GB2599279A (en) * 2019-05-09 2022-03-30 Ibm Dynamically changing containerized workload isolation in response to detection of a triggering factor
CN113711541B (zh) * 2019-05-09 2023-04-04 国际商业机器公司 改变容器化工作负载隔离的方法和***
GB2599279B (en) * 2019-05-09 2023-04-19 Ibm Dynamically changing containerized workload isolation in response to detection of a triggering factor
CN110687878A (zh) * 2019-09-16 2020-01-14 广东鑫光智能***有限公司 工业设备模型组件应用云平台
CN112241309A (zh) * 2020-10-21 2021-01-19 海光信息技术股份有限公司 一种数据安全方法、装置、cpu、芯片及计算机设备
CN112241309B (zh) * 2020-10-21 2022-04-01 海光信息技术股份有限公司 一种数据安全方法、装置、cpu、芯片及计算机设备

Also Published As

Publication number Publication date
WO2015148834A1 (en) 2015-10-01
US20170372063A1 (en) 2017-12-28
CN106030602B (zh) 2019-04-30
US20150278512A1 (en) 2015-10-01
US10395028B2 (en) 2019-08-27
EP3123388B1 (en) 2024-04-24
EP3123388A1 (en) 2017-02-01
EP3123388A4 (en) 2017-08-23

Similar Documents

Publication Publication Date Title
US10831886B2 (en) Virtual machine manager facilitated selective code integrity enforcement
CN107077428B (zh) 保护应用秘密的方法、电子***和计算机存储介质
EP2577449B1 (en) Method and apparatus for trusted execution in infrastructure as a service cloud environments
US20170104597A1 (en) Technologies for end-to-end biometric-based authentication and platform locality assertion
US11847225B2 (en) Blocking access to firmware by units of system on chip
US10395028B2 (en) Virtualization based intra-block workload isolation
TW201937395A (zh) 安全區之平台遷移
EP3210159B1 (en) Technologies for secure input and display of virtual touch user interfaces
KR20090078563A (ko) 컨텐츠를 안전하게 공유하는 방법 및 시스템
KR20180011847A (ko) 가상 기계들을 위한 상태 정보 보호
US10127064B2 (en) Read-only VM function chaining for secure hypervisor access
US10938857B2 (en) Management of a distributed universally secure execution environment
Zobaed et al. Confidential computing across edge-to-cloud for machine learning: A survey study
KR20140127124A (ko) 시스템 자원에 대한 접근을 관리하는 전자 장치
WO2024040508A1 (en) Memory preserved warm reset mechanism
KR102192328B1 (ko) Sgx 상의 입력 채널을 보호하기 위한 고립된 인터럽트 핸들러를 포함하는 프로세서 및 인터럽트 처리 방법
TWI844763B (zh) 系統晶片以及操作系統晶片的方法
US20240193281A1 (en) Unified encryption across multi-vendor graphics processing units
US20220245252A1 (en) Seamless firmware update mechanism
WO2023191895A1 (en) Secure shared memory buffer for communications between trusted execution environment virtual machines

Legal Events

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