DETAILED ACTION
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This Office Action is responsive to communication(s) filed on 02/19/2024. Claims 1-20 have been examined and are pending in this application.
Information Disclosure Statement
The information disclosure statements (IDSs) were submitted on 06/11/2025, 05/06/2025, 02/19/2024, and 02/19/2024. The submission is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statements are being considered by the examiner.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1 and 7-8 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by NPL Saileshwar et al. “Bespoke Cache Enclaves: Fine-Grained and Scalable Isolation from Cache Side-Channels via Flexible Set-Partitioning”, 2021 International Symposium on Secure and Private Execution Environment Design (SEED), 2021, pages 37-49 (“Saileshwar”).
As per independent claim 1, Saileshwar teaches A method for allocating resources of a processor among trust domains (Cache partitioning to fully isolate caches are described, Section 1. Introduction, page 37, col 2 lines 15-18), the method comprising:
obtaining a coloring scheme for resources of the processor (Page Coloring defenses partitions LLC (last level cache), Section 2.3.2 Page Coloring, page 40, col 1, lines 1-2), wherein the coloring scheme has a coloring function that indexes both shared resources and private resources of the processor (Page Coloring defenses partition the LLC along sets dividing memory pages into colors based on the cache sets they map to, Section 2.3.2, page 40, col 1 lines 1-3) and provides protection against information leakage through the shared resources of the processor between the trust domains (Page Coloring defenses partitions LLC (last level cache), Section 2.3.2 Page Coloring, page 40, col 1, lines 1-2);
assigning a first set of colors, from a plurality of unassigned colors according to the coloring scheme, to a first trust domain (assign distinct colors to successive 4KB pages as shown in FIG. 3(a), Section 2.3.2, page 40 col 1 lines 4-5);
allocating first resources to the first trust domain according to the first set of colors, wherein each of the first resources has an assigned color of the first set of colors (allocate pages of as many colors to a process as the amount of cache space desired, Section 2.3.2, page 40, col 1, lines 6-7).
As per dependent claim 7, Saileshwar discloses the method of claim 1. Saileshwar teaches wherein the coloring scheme comprises a set of coloring functions that each index both the shared resources and the private resources of the processor, each of the set of coloring functions having a different number of available colors (This supports a large number of colors, section 2.3.2, page 40, col 1, lines 7-8).
As per dependent claim 8, Saileshwar discloses the method of claim 1. Saileshwar teaches wherein the first trust domain relates to at least one of a virtual machine or a container (applicable for LLC-isolation between VMs, section 4, page 44, col 2, lines 12-13).
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 2-4 are rejected under 35 U.S.C. 103 as being unpatentable over Saileshwar.
As per dependent claim 2, Saileshwar discloses the method of claim 1. Saileshwar does not explicitly teach “wherein: one or more first indexing functions are configured to index the private resources; one or more second indexing functions are configured to index the shared resources; and obtaining the coloring scheme comprises generating the coloring function using the one or more first indexing functions and the one or more second indexing functions, wherein the coloring function indexes both the private resources and the shared resources and divides the shared resources to maximize available colors of the coloring scheme and minimize subdivisions of the private resources”.
However, Saileshwar teaches allocate pages of as many colors to a process as the amount of cache space desired, Section 2.3.2, page 40, col 1, lines 6-7.
Hence, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to further modify the scope of the invention of Saileshwar with “wherein: one or more first indexing functions are configured to index the private resources; one or more second indexing functions are configured to index the shared resources; and obtaining the coloring scheme comprises generating the coloring function using the one or more first indexing functions and the one or more second indexing functions, wherein the coloring function indexes both the private resources and the shared resources and divides the shared resources to maximize available colors of the coloring scheme and minimize subdivisions of the private resources”. The motivation would be that the invention allows cache-partitioning defense that is scalable, page 38, col 1, lines 23-24 of Saileshwar.
As per dependent claim 3, Saileshwar discloses the method of claim 2. Saileshwar teaches wherein the first resources comprise one or more of a physical thread, a memory page (assign distinct colors to successive 4KB pages, Section 2.3.2, page 40, col 1, lines 4-5), a cache line (assign distinct colors to successive 4KB pages, Section 2.3.2, page 40, col 1, lines 4-5 and Figure 3(a)), and a microarchitectural resource.
As per dependent claim 4, Saileshwar discloses the method of claim 2. Saileshwar teaches wherein obtaining the coloring scheme further comprises generating a set of coloring functions that each provide protection against information leakage (Page Coloring defenses partitions LLC (last level cache), Section 2.3.2 Page Coloring, page 40, col 1, lines 1-2).
Claims 9-14 are rejected under 35 U.S.C. 103 as being unpatentable over Saileshwar in view of Boivie et al. US 2016/0171250 (“Boivie”).
As per dependent claim 9, Saileshwar discloses the method of claim 2. Saileshwar may not explicitly disclose, but in an analogous art in the same field of endeavor, Boivie teaches wherein allocating the first resources comprises using a first color bitmap having bits corresponding to colors of the coloring scheme (“A color corresponds to a Security Domain. The Free Color Bit Vector [FCBV] is a 1K bit-vector supporting up to 1024 colors.” Para 0060.1).
Given the teaching of Boivie, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to further modify the scope of the invention of Saileshwar with “wherein allocating the first resources comprises using a first color bitmap having bits corresponding to colors of the coloring scheme”. The motivation would be that the invention does not require encryption and decryption for security and hence is more efficient and can provide higher performance, para 0008 of Boivie.
As per dependent claim 10, Saileshwar in combination with Boivie discloses the method of claim 9. Saileshwar may not explicitly disclose, but Boivie teaches wherein the first color bitmap is exclusive to the first trust domain (“A color corresponds to a Security Domain.” Para 0060.1).
The same motivation that was utilized for combining Saileshwar and Boivie as set forth in claim 9 is equally applicable to claim 10.
As per dependent claim 11, Saileshwar in combination with Boivie discloses the method of claim 9. Saileshwar may not explicitly disclose, but Boivie teaches wherein the first color bitmap is shared among the first trust domain and a second trust domain (“A Secure Object may also have additional colors for pages that are shared with other software.” Para 0060.1).
The same motivation that was utilized for combining Saileshwar and Boivie as set forth in claim 9 is equally applicable to claim 11.
As per dependent claim 12, Saileshwar in combination with Boivie discloses the method of claim 9. Saileshwar teaches wherein using the first color bitmap comprises iterating over the first color bitmap to allocate memory locations as the first resources so that the allocated memory locations are adjacent to each other in a physical memory (“Typically, such schemes assign distinct colors to successive 4KB pages, as shown in Figure 3(a),” section 2.3.2, page 40, col 1, lines 4-5).
As per dependent claim 13, Saileshwar in combination with Boivie discloses the method of claim 9. Saileshwar teaches wherein assigning the first set of colors comprises assigning the first set of colors according to a maximum memory size assigned to the first trust domain (“the OS allocates pages of as many colors to a process as the amount of cache space desired.” Section 2.3.2, page 40, col 1, lines 6-7).
As per dependent claim 14, Saileshwar in combination with Boivie discloses the method of claim 9. Saileshwar may not explicitly disclose, but Boivie teaches wherein the first trust domain is a guest virtual machine, the method further comprising: assigning a set of memory colors from the coloring scheme to a root virtual machine; and reserving remaining colors from the coloring scheme for guest virtual machines (When a Virtual Machine invokes an “Enter Secure Mode” call, the system allocates an ID/primary color for the VM, para 0062.b).
The same motivation that was utilized for combining Saileshwar and Boivie as set forth in claim 9 is equally applicable to claim 14.
Allowable Subject Matter
Claims 5-6 are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
Claims 15-20 are allowed.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ZUBAIR AHMED whose telephone number is (571)272-1655. The examiner can normally be reached 7:30AM - 5:00PM EST.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, HOSAIN T. ALAM can be reached at (571) 272-3978. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/ZUBAIR AHMED/Examiner, Art Unit 2132
/HOSAIN T ALAM/Supervisory Patent Examiner, Art Unit 2132