The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Dec. 08, 2020
Filed:
Jun. 29, 2018
Intel Corporation, Santa Clara, CA (US);
Michael Lemay, Hillsboro, OR (US);
David M. Durham, Beaverton, OR (US);
Michael E. Kounavis, Portland, OR (US);
Barry E. Huntley, Hillsboro, OR (US);
Vedvyas Shanbhogue, Austin, TX (US);
Jason W. Brandt, Austin, TX (US);
Josh Triplett, Hillsboro, OR (US);
Gilbert Neiger, Portland, OR (US);
Karanvir Grewal, Hillsboro, OR (US);
Baiju V. Patel, Portland, OR (US);
Ye Zhuang, Portland, OR (US);
Jr-Shian Tsai, Portland, OR (US);
Vadim Sukhomlinov, Santa Clara, CA (US);
Ravi Sahita, Portland, OR (US);
Mingwei Zhang, Hillsboro, OR (US);
James C. Farwell, Portland, OR (US);
Amitabh Das, Hillsboro, OR (US);
Krishna Bhuyan, Sammamish, WA (US);
Intel Corporation, Santa Clara, CA (US);
Abstract
Disclosed embodiments relate to encoded inline capabilities. In one example, a system includes a trusted execution environment (TEE) to partition an address space within a memory into a plurality of compartments each associated with code to execute a function, the TEE further to assign a message object in a heap to each compartment, receive a request from a first compartment to send a message block to a specified destination compartment, respond to the request by authenticating the request, generating a corresponding encoded capability, conveying the encoded capability to the destination compartment, and scheduling the destination compartment to respond to the request, and subsequently, respond to a check capability request from the destination compartment by checking the encoded capability and, when the check passes, providing a memory address to access the message block, and, otherwise, generating a fault, wherein each compartment is isolated from other compartments.