US2016070577A1PendingUtilityA1

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

Assignee: INTEL CORPPriority: Apr 20, 2009Filed: Apr 17, 2015Published: Mar 10, 2016
Est. expiryApr 20, 2029(~2.7 yrs left)· nominal 20-yr term from priority
G06F 9/44578G06F 9/4403G06F 9/44505G06F 2212/6026G06F 12/0862G06F 9/4406G06F 3/0647G06F 2212/602G06F 9/4408G06F 3/0685G06F 3/0643G06F 3/0611
55
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 - 22 . (canceled) 
     
     
         23 . A prefetch controller that, in operation, executes machine-readable instructions that cause the prefetch controller to:
 generate a list that includes data indicative of one or more boot files used in a boot sequence of a processor;   identify at least one sector logically associated with each respective one of the one or more boot files;   order the identified sectors logically associated with each respective one of the one or more boot files; and   transfer the at least one identified sector logically associated with a respective boot file from a rotating storage device communicably coupled to the processor to a cache memory communicably coupled to the processor prior to execution of the respective boot file.   
     
     
         24 . The prefetch controller of  claim 23  wherein the machine readable instructions that cause the prefetch controller to generate a list that includes data indicative of one or more boot files used in a boot sequence of a processor further cause the prefetch controller to:
 generate at least one file that includes data representative of at least a file identifier logically associated with each of the boot files. 
 
     
     
         25 . The prefetch controller of  claim 23  wherein the machine readable instructions that cause the prefetch controller to generate a list that includes data indicative of one or more boot files used in a boot sequence of a processor, further cause the prefetch controller to:
 update at least one file that includes data representative of at least a file identifier logically associated with each of the boot files. 
 
     
     
         26 . The prefetch controller of  claim 23  wherein the machine readable instructions that cause the prefetch controller to order the identified sectors logically associated with each respective one of the one or more boot files further cause the prefetch controller to:
 order the identified sectors logically associated with each respective one of the one or more boot files by a starting sector number logically associated with each respective one of the one or more boot files. 
 
     
     
         27 . The prefetch controller of  claim 23  wherein the machine readable instructions that cause the prefetch controller to transfer the at least one identified sector logically associated with a respective boot file from a rotating storage device communicably coupled to the processor to a cache memory communicably coupled to the processor prior to execution of the respective boot file, further cause the prefetch controller to:
 transfer the at least one identified sector logically associated with the respective boot file from the rotating storage device to the cache memory prior to execution of the respective boot file, the at least one identified sector selected based at least in part on the list of boot files. 
 
     
     
         28 . The prefetch controller of  claim 23  wherein the machine readable instructions that cause the prefetch controller to transfer the at least one identified sector logically associated with a respective boot file from a rotating storage device to a cache memory prior to execution of the respective boot file, further cause the prefetch controller to:
 transfer the at least one identified sector logically associated with a first boot file; 
 execute at least a portion of the first boot file by the processor; and 
 contemporaneous with executing the first boot file, transfer the at least one identified sector logically associated with a second boot file from the rotating storage device to the cache memory. 
 
     
     
         29 . The prefetch controller of  claim 23  wherein the machine readable instructions that cause the prefetch controller to generate a list that includes data indicative of one or more boot files used in a boot sequence of a processor, further cause the prefetch controller to:
 generate a list that includes data indicative of an order of execution of the boot files. 
 
     
     
         30 . The prefetch controller of  claim 23  wherein the machine readable instructions that cause the prefetch controller to order the identified sectors logically associated with each respective one of the one or more boot files, further cause the prefetch controller to:
 order the identified sectors logically associated with each respective one of the one or more boot files based at least in part on the order of execution of the boot files. 
 
     
     
         31 . The prefetch controller of  claim 23  wherein the machine readable instructions that cause the prefetch controller to transfer the at least one identified sector logically associated with a respective boot file from a rotating storage device to a cache memory prior to execution of the respective boot file, further cause the prefetch controller to:
 transfer the at least one identified sector logically associated with the respective boot file from the rotating storage device to an operating system cache memory prior to execution of the respective boot file. 
 
     
     
         32 . 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:
 generate a list that includes data indicative of one or more boot files used in a boot sequence; 
 identify at least one sector logically associated with each respective one of the one or more boot files; 
 order the identified sectors logically associated with each respective one of the one or more boot files; and 
 transfer the at least one identified sector logically associated with a respective boot file from a rotating storage device to a cache memory prior to execution of the respective boot file. 
   
     
     
         33 . The storage device of  claim 32  wherein the machine-readable instructions that cause the at least one processor to order the identified sectors logically associated with each respective one of the one or more boot files, further cause the at least one processor to:
 order the identified sectors logically associated with each respective one of the one or more boot files by a starting sector number of each of the identified sectors. 
 
     
     
         34 . The storage device of  claim 32  wherein the machine-readable instructions that cause the at least one processor to transfer the at least one identified sector logically associated with a respective boot file from a rotating storage device to a cache memory prior to execution of the respective boot file, further cause the at least one processor to:
 transfer the at least one identified sector logically associated with the respective boot file from the rotating storage device to an operating system cache memory prior to execution of the respective boot file. 
 
     
     
         35 . The storage device of  claim 32  wherein the machine-readable instructions that cause the at least one processor to transfer the at least one identified sector logically associated with a respective boot file from a rotating storage device to a cache memory prior to execution of the respective boot file, further cause the at least one processor to:
 transfer the at least one identified sector logically associated with a first boot file; and 
 transfer at least one identified sector logically associated with a second boot file contemporaneous with execution of the at least one identified sector logically associated with the first boot file. 
 
     
     
         36 . The storage device of  claim 32  wherein the machine-readable instructions that cause the at least one processor to generate a list that includes data indicative of one or more boot files used in a boot sequence, further cause the at least one processor to:
 generate a list that includes data indicative of an execution order for at least some of the one or more boot files. 
 
     
     
         37 . The storage device of  claim 32  wherein the machine-readable instructions that cause the at least one processor to order the identified sectors logically associated with each respective one of the one or more boot files, further cause the at least one processor to:
 order the identified sectors logically associated with each respective one of the one or more boot files based at least in part on an execution sequence of the one or more boot files. 
 
     
     
         38 . The storage device of  claim 32  wherein the machine-readable instructions that cause the at least one processor to transfer the at least one identified sector logically associated with a respective boot file from a rotating storage device to a cache memory prior to execution of the respective boot file, further cause the at least one processor to:
 transfer the at least one identified sector logically associated with the respective boot file from the rotating storage device to an operating system cache memory prior to execution of the respective boot file. 
 
     
     
         39 . A method of prefetching boot files, comprising:
 responsive to detecting a communicably coupled rotating storage device:
 generating, by a processor, a list that includes data indicative of one or more boot files used in a boot sequence; 
 identifying, by the processor, at least one sector logically associated with each respective one of the one or more boot files; 
 ordering, by the processor, the identified sectors logically associated with each respective one of the one or more boot files; and 
 transferring the at least one identified sector logically associated with a respective boot file from a rotating storage device communicably coupled to the processor to a cache memory communicably coupled to the processor prior to execution of the respective boot file by the processor. 
   
     
     
         40 . The method of  claim 39  wherein generating a list that includes data indicative of one or more boot files used in a boot sequence comprises:
 generating, by the processor, at least one file that includes data representative of at least a file identifier logically associated with the one or more boot files. 
 
     
     
         41 . The method of  claim 39  wherein generating a list that includes data indicative of one or more boot files used in a boot sequence comprises:
 updating, by the processor, at least one boot log file that includes data representative of at least a file identifier logically associated with the one or more boot files. 
 
     
     
         42 . The method of  claim 39  wherein ordering the identified sectors logically associated with each respective one of the one or more boot files comprises:
 ordering the identified sectors logically associated with each respective one of the one or more boot files by a starting sector number associated with each of the respective boot files. 
 
     
     
         43 . The method of  claim 39  wherein transferring the at least one identified sector logically associated with a respective boot file from a rotating storage device communicably coupled to the processor to a cache memory communicably coupled to the processor prior to execution of the respective boot file by the processor comprises:
 transferring the at least one identified sector logically associated with the respective boot file from the rotating storage device to a cache memory prior to execution of the respective boot file by the processor, the at least one identified sector selected, based at least in part, on the list of boot files. 
 
     
     
         44 . The method of  claim 39  wherein transferring the at least one identified sector logically associated with a respective boot file from a rotating storage device communicably coupled to the processor to a cache memory communicably coupled to the processor prior to execution of the respective boot file by the processor comprises:
 transferring the at least one identified sector logically associated with a first boot file; 
 executing at least a portion of the first boot file by the processor; and 
 contemporaneous with executing the first boot file, transferring the at least one identified sector logically associated with a second boot file from the rotating storage device to the cache memory. 
 
     
     
         45 . The method of  claim 39  wherein generating a list that includes data indicative of one or more boot files used in a boot sequence comprises:
 generating a list that includes data representative of an order of execution for at least a portion of the boot files in the list. 
 
     
     
         46 . The method of  claim 45  wherein ordering the identified sectors logically associated with each respective one of the one or more boot files comprises:
 ordering the identified sectors logically associated with each respective one of the one or more boot files based at least in part on the order of execution for at least a portion of the boot files in the list. 
 
     
     
         47 . The method of  claim 39  wherein transferring the at least one identified sector logically associated with a respective boot file from a rotating storage device to a cache memory prior to execution of the respective boot file by the processor comprises:
 transferring the at least one identified sector logically associated with the respective boot file from a rotating storage device to an operating system cache memory communicably coupled to the processor prior to execution of the respective boot file by the processor.

Join the waitlist — get patent alerts

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

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