DETAILED ACTION
Claims 1-20 are presented for examination.
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
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.
Claim(s) 1-6, 14, and 16-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Williams et al. (US PG Pub No. 2016/0048440 A1) in view of Gollub et al. (US PG Pub No. 2009/0300434 A1), further in view of Cherkasova et al. (US PG Pub No. 2006/0200819 A1).
Regarding claim 1, Williams teaches a method, implemented at a computer system that includes one or more processors associated with performance monitoring hardware configured to generate telemetry data related to performance of the one or more processors([0004]), for multiplexing access the performance monitoring hardware in different modes, the computer system having a hypervisor configured to manage a plurality of virtual machines including
providing a first mode at the one or more guest partitions, the first mode enabling each of the one or more guest partitions to access the performance monitoring hardware for monitoring one or more virtual processors of a corresponding partition ([0047], wherein hypervisor program is executed at second privilege level; [0045], wherein performance monitoring circuits monitor performance of the processor); and
providing a second mode at the guest partition, the second mode enabling the guest partition to access the performance monitoring hardware for monitoring one or more virtual processors of another at least one of the one or more guest partitions ([0047], wherein one or more guest operating systems are executed at a first privilege level), wherein:
the first mode has a first priority ([0026]), and
the second mode has a second priority that is lower than the first priority ([0009], wherein the second privilege level is higher than the first privilege level), such that when the first mode at a particular guest partition is enabled ([0026]), the second mode associated with the particular guest partition at the management partition is automatically disabled ([0026-27], wherein a disable control flag is set for the second privilege level which causes performance monitoring circuits configured by the first privilege level to continue operating when in the second privilege level).
Williams does not teach the use of a management partition managed by the hypervisor.
Gollub teaches the use of a hypervisor management partition that provides an operating system executing in a virtualized partition provided by the hypervisor ([0025]). It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to include the use of a management partition. One would be motivate by the desire to include a management partition having special privileges such being able to create new guest operating systems and being able to access the hardware directly as taught by Gollub.
Williams and Gollub do not teach when the second mode is enabled, the hypervisor reads telemetry data generated by performance monitoring hardware associated with at least one processor corresponding to one or more virtual processors of the at least one guest partition and provides the telemetry data to the management partition.
Cherkasova teaches a Xen-based virtualization architecture with a privileged management domain (“Dom0”), a VMM/hypervisor and multiple guest VMs (“Dom1…DomK”) ([0030]). Cherkasova teaches the hypervisor reading telemetry generated by performance-monitoring functionality tied to guest virtual processors ([0017], “embodiments provided herein monitor communications between a VM and VMM, and based on such communications determine an amount of CPU utilization of the VMM that is attributable to the VM”; [0045], “CPU utilization monitor 103A observes communication from a VM 31 to device drivers 311 included in the VMM 32… [and] determines, based on the observed communication, CPU utilization of the VMM 32 that is attributable to the VM 31”). Cherkasova teaches the hypervisor providing that telemetry to the management partition ([0027], “This monitoring system can be used, as examples, for assistance in billing and/or for a whole variety of management tasks, such as: a) support of policy-based resource allocation; b) admission control of new VMs; c) support for VMs migration; and d) quality of service ("QoS") provisioning of VMs”; [0028], “The CPU utilization monitor described herein may be advantageously employed for use in management of such a system, for example. Of course, embodiments of the CPU utilization monitor described herein may be employed for various types of applications (e.g., billing, resource utilization management, etc.) in any type of virtualized system that may be implemented”). Cherkasova identifies Dom0 as a privileged management domain which includes control plane software ([0030]). Since Dom0’s control plane software is the consumer of “management tasks” data derived by the VMM’s CPU utilization monitor, Cherkasova teaches the VMM (hypervisor) generating VM telemetry per guest and that data being consumed by the privileged management domain to perform its management functions.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention that when the second mode is enabled, the hypervisor reads telemetry data generated by performance monitoring hardware associated with at least one processor corresponding to one or more virtual processors of the at least one guest partition and provides the telemetry data to the management partition. One would be motivated by the desire to make available VM performance metrics derived from the hypervisor to privileged, non-guest management entities in order to perform basic virtualization-management function as taught by Cherkasova.
Regarding claim 2, Williams teaches wherein the performance monitoring hardware includes one or more registers, and state of the performance monitoring hardware includes values stored in the one or more registers ([0044]).
Regarding claim 3, Williams teaches wherein the one or more registers include at least one of (1) one or more CPU counter registers, or (2) one or more CPU configuration registers ([0053]).
Regarding claim 4, Williams teaches wherein the one or more registers include one or more model-specific registers (MSRs).
Regarding claim 5, Williams teaches wherein the telemetry data includes at least one of (1) processor pipeline slot utilization, (2) stalls due to last level cache (LLC) misses, (3) shortage in hardware resources, (4) shortage in software dependencies, (5) thermal and power capping throttling events, (6) processor microcode revision, or (7) whether hyper-threading is on or off ([0004]).
Regarding claim 6, Williams teaches further comprising providing a third mode at the management partition, the third mode enabling performance monitoring for processors of the computer system, wherein the third mode has a third priority that is lower than the second priority, such that when the first mode is enabled, the second mode and the third mode are automatically disabled, and when the second mode is enabled, the third mode is automatically disabled ([0043]).
Regarding claims 14, and 16-20, they are the system and storage device claims of claims 1-6 above. Therefore, they are rejected for the same reasons as claims 1-6 above.
Response to Arguments
Applicant’s arguments with respect to claim(s) 1-6, 14, and 16-20 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Allowable Subject Matter
Claims 7-13 and 15 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.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ERIC C WAI whose telephone number is (571)270-1012. The examiner can normally be reached Monday - Friday 9-5.
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, Aimee Li can be reached at (571) 272-4169. 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.
/Eric C Wai/Primary Examiner, Art Unit 2195