US9021457B2ActiveUtilityA1

Method and system for dynamically resizing enclosed storage device partitions

Assignee: APPLE INCPriority: Jan 22, 2013Filed: Jan 22, 2013Granted: Apr 28, 2015
Est. expiryJan 22, 2033(~6.5 yrs left)· nominal 20-yr term from priority
G06F 8/65G06F 9/4401G06F 3/0631G06F 11/1417G06F 11/1433G06F 9/441
27
PatentIndex Score
0
Cited by
29
References
20
Claims

Abstract

A computer-implemented method for updating a recovery operating system (OS) stored in a boot partition of a storage device. The method involves booting, via host operating system (OS) boot files stored in the boot partition, a host OS that is stored in a host partition of the storage device, receiving a request to update a recovery OS also stored in the boot partition, determining the recovery OS update requires additional storage space of size Z to be added to the boot partition, decreasing the size of the host partition by the size Z, increasing the size of the boot partition by the size Z, and updating the recovery OS.

Claims

exact text as granted — not AI-modified
We claim: 
     
       1. A computer-implemented method for updating a recovery operating system (OS) stored in a boot partition of a storage device, comprising:
 booting, via host operating system (OS) boot files stored in the boot partition, a host OS that is stored in a host partition of the storage device, wherein a size of the host partition is size X and a size of the boot partition is size Y; 
 receiving a request to update a current recovery OS stored in the boot partition with an updated recovery OS; 
 determining that the updated recovery OS requires additional storage space of size Z to be added to the boot partition; 
 determining a size R that represents the size of the boot partition if a set of recovery OS files associated with the current recovery OS were to be removed from the boot partition; and 
 in response to a determination that the size Z<(size Y−size R):
 decreasing the size of the host partition by the size Z such that the host partition is of a size X−Z, 
 increasing the size of the boot partition by the size Z such that the boot partition is of a size Y+Z and 
 copying the updated recovery OS into the boot partition of the size Y+Z. 
 
 
     
     
       2. The method of  claim 1 , further comprising determining that the host partition includes a size of free storage space that is greater than or equal to the size Z. 
     
     
       3. The method of  claim 1 , wherein decreasing the size of the host partition by the size Z includes decreasing a size of a file system included in the host partition by the size Z. 
     
     
       4. The method of  claim 1 , wherein increasing the size of the boot partition by the size Z includes:
 removing the set of recovery OS files from the boot partition, 
 reducing the size of the boot partition to create a minimal boot partition that retains the host OS boot files, 
 creating a new boot partition that stores a copy of the minimal boot partition and abuts an ending point of the host partition of the size X−Z, and 
 increasing a size of the new boot partition to the size Y+Z. 
 
     
     
       5. The method of  claim 4 , wherein the current recovery OS is corrupted during increasing the size of the boot partition and the host OS can still be booted via the retained host OS boot files. 
     
     
       6. The method of  claim 1 , wherein an ending point of the host partition abuts a starting point of the boot partition. 
     
     
       7. The method of  claim 6 , wherein a starting point of the host partition abuts an ending point of a first partition included in the storage device, and an ending point of the boot partition abuts a starting point of a second partition included in the storage device. 
     
     
       8. The method of  claim 1 , wherein decreasing the size of the host partition by the size Z and increasing the size of the boot partition by the size Z are carried out while the host OS is executing. 
     
     
       9. The method of  claim 4 , wherein an amount of free space available in the boot partition is determined to be greater than the size Z prior to reducing the size of the boot partition. 
     
     
       10. A non-transitory computer-readable medium storing instructions that, when executed by a processor of a computing device, cause the computing device to carry out steps that include:
 booting, via host operating system (OS) boot files stored in a boot partition, a host OS that is stored in a host partition of a storage device, wherein a size of the host partition is size X and a size of the boot partition is size Y; 
 receiving a request to update a current recovery OS stored in the boot partition with an updated recovery OS; 
 determining that the updated recovery OS requires additional storage space of size Z to be added to the boot partition; 
 determining a size R that represents the size of the boot partition if a set of recovery OS files associated with the current recovery OS were to be removed from the boot partition; and 
 in response to a determination that the size Z<(size Y−size R):
 decreasing the size of the host partition by the size Z such that the host partition is of a size X−Z, 
 increasing the size of the boot partition by the size Z such that the boot partition is of a size Y+Z and 
 copying the updated recovery OS into the boot partition of the size Y+Z. 
 
 
     
     
       11. The non-transitory computer-readable medium of  claim 10 , wherein the steps further include determining that the host partition includes a size of free storage space that is greater than or equal to the size Z. 
     
     
       12. The non-transitory computer-readable medium of  claim 10 , wherein decreasing the size of the host partition by the size Z includes decreasing a size of a file system included in the host partition by the size Z. 
     
     
       13. The non-transitory computer-readable medium of  claim 10 , wherein increasing the size of the boot partition by the size Z includes:
 removing the set of recovery OS files from the boot partition, 
 reducing the size of the boot partition to create a minimal boot partition that retains the host OS boot files, 
 creating a new boot partition that stores a copy of the minimal boot partition and abuts an ending point of the host partition of the size X−Z, and 
 increasing a size of the new boot partition to the size Y+Z. 
 
     
     
       14. The non-transitory computer-readable medium of  claim 13 , wherein the current recovery OS is corrupted during increasing the size of the boot partition and the host OS can still be booted via the retained host OS boot files. 
     
     
       15. The non-transitory computer-readable medium of  claim 10 , wherein an ending point of the host partition abuts a starting point of the boot partition. 
     
     
       16. The non-transitory computer-readable medium of  claim 15 , wherein a starting point of the host partition abuts an ending point of a first partition included in the storage device, and an ending point of the boot partition abuts a starting point of a second partition included in the storage device. 
     
     
       17. The non-transitory computer-readable medium of  claim 10 , wherein decreasing the size of the host partition by the size Z and increasing the size of the boot partition by the size Z are carried out while the host OS is executing. 
     
     
       18. The non-transitory computer-readable medium of  claim 13 , wherein an amount of free space available in the boot partition is determined to be greater than the size Z prior to reducing the size of the boot partition. 
     
     
       19. A system, comprising:
 a storage device; and 
 a processor configured to cause the system to:
 boot, via host operating system (OS) boot files stored in a boot partition, a host OS that is stored in a host partition of the storage device, wherein a size of the host partition is size X and a size of the boot partition is size Y; 
 receive a request to update a current recovery OS stored in the boot partition with an updated recovery OS; 
 determine that the updated recovery OS requires additional storage space of size Z to be added to the boot partition; 
 determine a size R that represents the size of the boot partition if a set of recovery OS files associated with the current recovery OS were to be removed from the boot partition; and 
 in response to a determination that the size Z<(size Y−size R):
 decrease the size of the host partition by the size Z such that the host partition is of a size X−Z, 
 increase the size of the boot partition by the size Z such that the boot partition is of a size Y+Z, and 
 copy the updated recovery OS into the boot partition of the size Y+Z. 
 
 
 
     
     
       20. The system of  claim 19 , wherein the processor is configured to further cause the system to determine that the host partition includes a size of free storage space that is greater than or equal to the size Z.

Join the waitlist — get patent alerts

Track US9021457B2 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.