US2016110204A1PendingUtilityA1

Booting an operating system of a system using a read ahead technique

Assignee: INTEL CORPPriority: Apr 20, 2009Filed: Dec 28, 2015Published: Apr 21, 2016
Est. expiryApr 20, 2029(~2.8 yrs left)· nominal 20-yr term from priority
G06F 9/44578G06F 3/0643G06F 3/0685G06F 3/0647G06F 12/0862G06F 3/0611G06F 9/4406G06F 2212/602G06F 9/4408G06F 2212/6026G06F 9/4403G06F 9/44505
57
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

In one embodiment, the present invention includes a method for generating a list of files accessed during an operating system (OS) boot process to profile the OS boot process, and optimizing the list of files to generate an optimized file list for use in future OS boot processes, where the optimizing is according to a first optimization technique if the files were accessed from a solid state medium and according to a second optimization technique if the files were accessed from a rotating medium. Other embodiments are described and claimed.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A prefetch controller that, in operation, executes machine-readable instructions that cause the at least one processor to:
 detect a presence of at least one of: a communicably coupled rotating storage device or a communicably coupled solid state storage device;   selectively perform a boot file prefetch responsive to detecting a communicably coupled, bootable, rotating storage device, the first boot file prefetch causing the at least one processor to:
 identify at least one file included a boot sequence; and 
 transfer the at least one identified file from rotating storage device communicably coupled to the at least one processor to a cache memory communicably coupled to the at least one processor prior to execution of the at least one file; and 
   selectively perform a different boot file prefetch responsive to detecting a communicably coupled, bootable, solid state storage device.   
     
     
         2 . The prefetch controller of  claim 1  wherein the machine-readable instructions that cause the prefetch controller to identify at least one file included a boot sequence further cause the prefetch controller to:
 generate a boot file log that identifies the at least one file included in the boot sequence. 
 
     
     
         3 . The prefetch controller of  claim 1  wherein the machine-readable instructions that cause the prefetch controller to identify at least one file included a boot sequence further causes the prefetch controller to:
 identify each of a plurality of files included a boot sequence. 
 
     
     
         4 . The prefetch controller of  claim 3  wherein the machine-readable instructions that cause the prefetch controller to transfer the at least one identified file from rotating storage device to a cache memory prior to execution of the at least one file further causes the prefetch controller to:
 selectively sequentially transfer each respective one of the identified plurality of files, each of the identified files transferred from the rotating storage device to the cache memory contemporaneous with execution, by the at least one processor, of a preceding file transferred from the rotating storage device to the cache memory. 
 
     
     
         5 . The prefetch controller of  claim 1  wherein the machine-readable instructions that cause the prefetch controller to identify at least one file included a boot sequence further causes the prefetch controller to:
 identify each of a plurality of files included a boot sequence for each of a plurality of preceding boot sequences. 
 
     
     
         6 . The prefetch controller of  claim 1  wherein the machine-readable instructions that cause the prefetch controller to transfer the at least one identified file from rotating storage device to a cache memory prior to execution of the at least one file further causes the prefetch controller to:
 transfer the at least one identified file from the rotating storage device to an operating system cache memory prior to execution of the at least one file. 
 
     
     
         7 . A method of prefetching boot files, comprising:
 detecting, by at least one processor, a presence of at least one of: a communicably coupled rotating storage device or a communicably coupled solid state storage device;   selectively performing, by the at least one processor, a boot file prefetch responsive to detecting a bootable communicably coupled rotating storage device, the first boot file prefetch including:
 identifying, by the at least one processor, at least one file included a boot sequence; and 
 transferring, by the at least one processor, the at least one identified file from rotating storage device communicably coupled to the at least one processor to a cache memory communicably coupled to the at least one processor prior to execution of the at least one file; and 
   selectively performing, by the at least one processor, a different boot file prefetch responsive to detecting a bootable solid state storage device communicably coupled to the at least one processor.   
     
     
         8 . The method of  claim 7  wherein identifying at least one file included a boot sequence further comprises:
 generating, by the at least one processor, a boot file log that identifies the at least one file included in the boot sequence. 
 
     
     
         9 . The method of  claim 7  wherein identifying at least one file included a boot sequence further comprises:
 Identifying, by the at least one processor, each of a plurality of files included a boot sequence. 
 
     
     
         10 . The method of  claim 9  wherein transferring the at least one identified file from rotating storage device communicably coupled to the at least one processor to a cache memory communicably coupled to the at least one processor prior to execution of the at least one file further comprises:
 selectively sequentially transferring, by the at least one processor, each respective one of the identified plurality of files, each of the identified files transferred from the rotating storage device to the cache memory contemporaneous with execution, by the at least one processor, of a preceding file transferred from the rotating storage device to the cache memory. 
 
     
     
         11 . The method of  claim 7  wherein identifying at least one file included a boot sequence further comprises:
 Identifying, by the at least one processor, each of a plurality of files included a boot sequence for each of a plurality of preceding boot sequences. 
 
     
     
         12 . The method of  claim 7  wherein transferring the at least one identified file from rotating storage device communicably coupled to the at least one processor to a cache memory communicably coupled to the at least one processor prior to execution of the at least one file further comprises:
 transferring, by the at least one processor, the at least one identified file from the rotating storage device to an operating system cache memory prior to execution of the at least one file. 
 
     
     
         13 . A storage device that includes machine-readable instructions, that when executed by at least one processor, cause the at least one processor to:
 responsive to detecting a communicably coupled rotating storage device, selectively perform a first boot file prefetch to:
 identify at least one file included a boot sequence; and 
 transfer the at least one identified file from the communicably coupled rotating storage device to a cache memory prior to execution of at least a portion of the at least one file; and 
   responsive to detecting a communicably coupled solid state storage device, selectively perform a second boot file prefetch, the second boot file prefetch different from the first boot file prefetch.   
     
     
         14 . The storage device of  claim 13  wherein the machine readable instructions that cause the at least one processor to identify at least one file included a boot sequence, further cause the at least one processor to:
 generate a boot log file that identifies the at least one file included in the boot sequence. 
 
     
     
         15 . The storage device of  claim 13  wherein the machine readable instructions that cause the at least one processor to identify at least one file included a boot sequence, further cause the at least one processor to:
 identify each of a plurality of files included a boot sequence. 
 
     
     
         16 . The storage device of  claim 15  wherein the machine readable instructions that cause the at least one processor to transfer the at least one identified file from the communicably coupled rotating storage device to a cache memory prior to execution of at least a portion of the at least one file, further cause the at least one processor to:
 selectively sequentially transfer each respective one of the identified plurality of files, each of the identified files transferred from the communicably coupled rotating storage device to the cache memory contemporaneous with execution, by the at least one processor, of a preceding boot file transferred from the communicably coupled rotating storage device to the cache memory. 
 
     
     
         17 . The storage device of  claim 13  wherein the machine readable instructions that cause the at least one processor to identify at least one file included a boot sequence, further cause the at least one processor to:
 identify each of a plurality of files included a boot sequence for each of a plurality of preceding boot sequences. 
 
     
     
         18 . The storage device of  claim 13  wherein the machine readable instructions that cause the at least one processor to transfer the at least one identified file from the communicably coupled rotating storage device to a cache memory prior to execution of at least a portion of the at least one file, further cause the at least one processor to:
 transfer the at least one identified file from the rotating storage device to an operating system cache memory prior to execution of the at least one file. 
 
     
     
         19 . A boot file prefetch system, comprising:
 at least one processor;   at least one storage device that includes machine-readable instructions that, when executed by the at least one processor, cause the at least one processor to:   detect a presence of at least one of: a communicably coupled rotating storage device or a communicably coupled solid state storage device;   selectively perform a boot file prefetch responsive to detecting a communicably coupled, bootable, rotating storage device, the first boot file prefetch causing the at least one processor to:
 identify at least one file included a boot sequence; and 
 transfer the at least one identified file from rotating storage device communicably coupled to the at least one processor to a cache memory communicably coupled to the at least one processor prior to execution of the at least one file; and 
   selectively perform a different boot file prefetch responsive to detecting a communicably coupled, bootable, solid state storage device.   
     
     
         20 . The boot file prefetch system of  claim 19 , further comprising:
 at least one rotating storage device communicably coupled to the at least one processor; and   at least one cache memory communicably coupled to the at least one processor.   
     
     
         21 . The boot file prefetch system of  claim 20  wherein the at least one cache memory communicably coupled to the at least one processor comprises:
 at least one operating system (O/S) cache memory communicably coupled to the at least one processor. 
 
     
     
         22 . The boot file prefetch system of  claim 19  wherein the machine-readable instructions that cause the at least one processor to identify at least one file included a boot sequence further causes the at least one processor to:
 generate a boot file log that identifies the at least one file included in the boot sequence. 
 
     
     
         23 . The boot file prefetch system of  claim 19  wherein the machine-readable instructions that cause the at least one processor to identify at least one file included a boot sequence further causes the at least one processor to:
 identify each of a plurality of files included a boot sequence. 
 
     
     
         24 . The boot file prefetch system of  claim 23  wherein the machine-readable instructions that cause the at least one processor to transfer the at least one identified file from rotating storage device to a cache memory prior to execution of the at least one file further causes the at least one processor to:
 selectively sequentially transfer each respective one of the identified plurality of files, each of the identified files transferred from the rotating storage device to the cache memory contemporaneous with execution, by the at least one processor, of a preceding file transferred from the rotating storage device to the cache memory. 
 
     
     
         25 . The boot file prefetch system of  claim 19  wherein the machine-readable instructions that cause the at least one processor to identify at least one file included a boot sequence further causes the at least one processor to:
 identify each of a plurality of files included a boot sequence for each of a plurality of preceding boot sequences.

Join the waitlist — get patent alerts

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

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