Extending server-based desktop virtual machine architecture to client machines
US-2024078126-A1 · Mar 7, 2024 · US
US9250942B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9250942-B2 |
| Application number | US-2218408-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 30, 2008 |
| Priority date | Jan 30, 2008 |
| Publication date | Feb 2, 2016 |
| Grant date | Feb 2, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
At least one anomaly associated with at least one actual hardware element in a computer system having a plurality of hardware elements is addressed. The anomaly is detected, and, responsive to the detection, a virtualization layer is inserted between (i) an operating system of the computer system, and (ii) the plurality of hardware elements. Hardware emulation and/or selective hardware activation/deactivation are performed on the at least one actual hardware element by the virtualization layer. The insertion of the virtualization layer is accomplished in an on-the-fly manner.
Opening claim text (preview).
What is claimed is: 1. A method for addressing at least one anomaly associated with at least one actual hardware element in a computer system having a plurality of hardware elements, said method comprising the steps of: responsive to detecting said at least one anomaly, inserting a virtualization layer between (i) an operating system of said computer system, and (ii) said plurality of hardware elements; performing at least one of hardware emulation and hardware deactivation on said at least one actual hardware element, with said virtualization layer; wherein said insertion of said virtualization layer is accomplished in an on-the-fly manner; wherein said at least one anomaly associated with said at least one actual hardware element comprises a failure of said actual hardware element, and wherein said virtualization layer performs said hardware emulation by presenting to said operating system a virtual hardware element having characteristics substantially similar to those of said actual hardware element; and wherein said at least one actual hardware element comprises an original first storage element; receiving, by said virtualization layer from said operating system, a request to read a block of data from said original first storage element; determining whether said block of data has already been transferred from said original first storage element to a second storage element; and responsive to said determining step indicating that said block of data has not already been transferred from said original first storage element to said second storage element, reading said block of data from said original first storage element. 2. The method of claim 1 , wherein said failure comprises an incipient failure. 3. The method of claim 1 , wherein said hardware emulation is continued at least until a hardware replacement for said at least one actual hardware element is in place. 4. The method of claim 1 , further comprising the additional steps of: repeating said receiving and determining steps of claim 1 for additional blocks of data; and responsive to said repeated determining step indicating that given ones of said additional blocks of data have already been transferred from said original first storage element to said second storage element, reading said given ones of said additional blocks of data from said second storage element. 5. The method of claim 4 , further comprising the additional steps of: receiving, by said virtualization layer from said operating system, a request to write a particular block of data to said original first storage element; and responsive to said write request, writing said particular block of data to said second storage element. 6. The method of claim 5 , further comprising the additional steps of: monitoring at least said writing to determine whether migration of substantially all said blocks of data to said second storage element is substantially complete; and responsive to determining that said migration is substantially complete, replacing said original first storage element with a replacement first storage element. 7. The method of claim 6 , further comprising the additional steps of: receiving, by said virtualization layer from said operating system, a request to read a block of data from said replacement first storage element; determining whether said block of data has already been transferred from said second storage element to said replacement first storage element; and responsive to said step of determining whether said block of data has already been transferred from said second storage element to said replacement first storage element indicating that said block of data has not already been transferred from said second storage element to said replacement first storage element, reading said block of data from said second storage element. 8. The method of claim 7 , further comprising the additional steps of: repeating said receiving step and said determining step of claim 7 for additional blocks of data; and responsive to said repetition of said determining step of claim 7 indicating that given ones of said additional blocks of data have already been transferred from said second storage element to said replacement first storage element, reading said given ones of said additional blocks of data from said replacement first storage element. 9. The method of claim 8 , further comprising the additional steps of: receiving, by said virtualization layer from said operating system, a request to write a particular block of data to said replacement first storage element; and writing said particular block of data to said replacement first storage element. 10. The method of claim 9 , further comprising the additional steps of: monitoring at least said writing to said replacement first storage element to determine whether migration of substantially all said blocks of data to said replacement first storage element is substantially complete; and responsive to determining that said migration to said replacement first storage element is substantially complete, uninstalling said virtualization layer from said system, so that said operating system can access said replacement first storage element directly. 11. The method of claim 1 , wherein said at least one anomaly associated with said at least one actual hardware element comprises a condition of said actual hardware element that indicates that said actual hardware element is to be masked, and wherein said virtualization layer performs said hardware deactivation by: masking presence of said actual hardware element from said operating system; and disabling said actual hardware element. 12. The method of claim 11 , further comprising the additional steps of: monitoring said actual hardware element for replacement; and responsive to detecting replacement, ceasing said masking and uninstalling said virtualization layer from said system. 13. The method of claim 11 , wherein said actual hardware element is a battery and wherein said condition comprises a fire hazard. 14. An apparatus for addressing at least one anomaly associated with at least one actual hardware element in a computer system having a plurality of hardware elements, said apparatus comprising: means for, responsive to detecting said at least one anomaly, inserting a virtualization layer between (i) an operating system of said computer system, and (ii) said plurality of hardware elements; means for performing at least one of hardware emulation and hardware deactivation on said at least one actual hardware element, with said virtualization layer; wherein said means for inserting said virtualization layer are configured to accomplish said insertion in an on-the-fly manner; wherein said at least one anomaly associated with said at least one actual hardware element comprises a failure of said actual hardware element, and wherein said virtualization layer performs said hardware emulation by presenting to said operating system a virtual hardware element having characteristics substantially similar to those of said actual hardware element; and wherein said at least one actual hardware element comprises an original first storage element; means for receiving, by said virtualization layer from said operating system, a request to read a block of data from said original first storage element; means for determining whether said block of data has already been transferred from said original first storage element to a second storage element; and responsive to said determining indicating that said block of data has not already been transferred from said original first storage ele
in a virtual computing platform, e.g. logically partitioned systems · CPC title
Remedial or corrective actions (recovery from an exception in an instruction pipeline G06F9/3861; by retry G06F11/1402; for recovering from a failure of a protocol instance or entity H04L69/40) · CPC title
Provision of facilities of other operating environments, e.g. WINE (I/O emulation G06F13/105) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.