US 11,947,662 B2
Uniform enclave interface
Matthew Gingell, Woodinville, WA (US); Peter Gonda, Seattle, WA (US); Alexander Thomas Cope, Seattle, WA (US); Sergey Karamov, Redmond, WA (US); Keith Moyer, Kirkland, WA (US); Uday Savagaonkar, Redmond, WA (US); and Chong Cai, Kirkland, WA (US)
Assigned to Google LLC, Mountain View, CA (US)
Filed by Google LLC, Mountain View, CA (US)
Filed on Sep. 22, 2022, as Appl. No. 17/950,205.
Application 17/950,205 is a continuation of application No. 17/046,593, granted, now 11,494,485, previously published as PCT/US2018/042625, filed on Jul. 18, 2018.
Claims priority of provisional application 62/664,438, filed on Apr. 30, 2018.
Prior Publication US 2023/0077623 A1, Mar. 16, 2023
Int. Cl. G06F 21/53 (2013.01); G06F 21/12 (2013.01); G06F 21/57 (2013.01); G06F 21/62 (2013.01); G06F 21/74 (2013.01)
CPC G06F 21/53 (2013.01) [G06F 21/12 (2013.01); G06F 21/57 (2013.01); G06F 21/6245 (2013.01); G06F 21/74 (2013.01)] 19 Claims
OG exemplary drawing
 
1. A method for handling threads of execution using an enclave stored in memory of a host computing device, the method comprising:
receiving, by one or more processors, a request for a new thread of execution for a function of an application running in the enclave;
adding, by the one or more processors, the request for the new thread to a queue of requests;
requesting, by the one or more processors, host software of the host computing device to create the new thread based on the queue of requests;
allowing, by the one or more processors, the new thread to enter the enclave;
allowing, by the one or more processors, the new thread to exit the enclave; and
requesting, by the one or more processors, the host software to create a second new thread outside of the enclave based on the new thread.