US2010115006A1PendingUtilityA1

Computing device with relatively limited storage space and operating/file system thereof

Assignee: MICROSOFT CORPPriority: Mar 22, 2004Filed: Jan 11, 2010Published: May 6, 2010
Est. expiryMar 22, 2024(expired)· nominal 20-yr term from priority
G06F 3/0674G06F 3/0643G06F 3/0608G06F 3/0607
47
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A computing device includes a storage device and a file system for storing and retrieving files on the storage device. The storage device includes storage space divided into sectors and the file system externally addresses the storage device on a per-sector basis, but internally divides each sector of the storage device into chunks and manages data within each sector on a per-chunk basis. Thus, the file system reads a chunk from or writes a chunk to the storage device by reading or writing the sector having the chunk.

Claims

exact text as granted — not AI-modified
1 . A computing device, comprising:
 a storage device addressable on a per-byte basis and having configured thereon a non-contiguously stored executable file;   a file system configured to:
 receive a command to execute the executable file, 
 determine that the executable file can be executed in place on the storage device, 
 obtain a virtual start address of the executable file, and 
 obtain a physical location and length of each fragment of the executable file; and 
   a virtual address translator configured to:
 receive the virtual start address of the executable file from the file system, 
 receive the physical location and length of each fragment of the executable file from the file system, and 
 create a mapping of the physical location and length of each fragment of the executable file to a single contiguous virtual location starting at the virtual start address. 
   
   
   
       2 . The computing device of  claim 1 , wherein the executable file comprises the virtual start address. 
   
   
       3 . The computing device of  claim 1 , wherein the executable file comprises at least one virtual branch address. 
   
   
       4 . The computing device of  claim 1 , wherein the virtual address translator is further configured to provide the mapping to a processor. 
   
   
       5 . The computing device of  claim 1 , wherein the virtual address translator is further configured to locate data within the executable file and provide the data to a processor. 
   
   
       6 . The computing device of  claim 1 , wherein the file system determines that the executable file can be executed in place on the storage device by determining that the executable file is not compressed. 
   
   
       7 . The computing device of  claim 1 , wherein the file system determines that the executable file can be executed in place on the storage device by determining that the executable file comprises the virtual start address. 
   
   
       8 . The computing device of  claim 1 , wherein the file system determines that the executable file can be executed in place on the storage device by determining that the executable file comprises virtual branch addresses. 
   
   
       9 . A method of executing a file on a storage device, comprising:
 receiving, at a file system configured on a computing device, a command to execute an executable file, wherein the executable file is stored non-contiguously on the storage device, and wherein the storage device is addressable on a per-byte basis;   determining, at the file system, that the executable file can be executed in place on the storage device;   obtaining, at the file system, a virtual start address of the executable file;   obtaining, at the file system, a physical location and length of each fragment of the executable file;   receiving, at a virtual address translator configured on the computing device, the virtual start address of the executable file from the file system;   receiving, at the virtual address translator, the physical location and length of each fragment of the executable file from the file system; and   creating, at the virtual address translator, a mapping of the physical location and length of each fragment of the executable file to a single contiguous virtual location starting at the virtual start address.   
   
   
       10 . The method of  claim 9 , wherein the executable file comprises the virtual start address. 
   
   
       11 . The method of  claim 9 , wherein the executable file comprises at least one virtual branch address. 
   
   
       12 . The method of  claim 9 , further comprising providing the mapping to a processor. 
   
   
       13 . The method of  claim 9 , further comprising locating, by the virtual address translator, data within the executable file and providing the data to a processor. 
   
   
       14 . The method of  claim 9 , wherein determining that the executable file can be executed in place on the storage device comprises determining at least one of the executable file is not compressed, the executable file comprises the virtual start address, and the executable file comprises virtual branch addresses. 
   
   
       15 . A computer-readable storage medium comprising computer-executable instructions for executing a file on a storage device, the computer-executable instructions comprising instructions for:
 receiving a command to execute an executable file, wherein the executable file is stored non-contiguously on the storage device, and wherein the storage device is addressable on a per-byte basis;   determining that the executable file can be executed in place on the storage device;   obtaining a virtual start address of the executable file;   obtaining a physical location and length of each fragment of the executable file;   receiving the virtual start address of the executable file from the file system;   receiving the physical location and length of each fragment of the executable file from the file system; and   creating a mapping of the physical location and length of each fragment of the executable file to a single contiguous virtual location starting at the virtual start address.   
   
   
       16 . The computer-readable storage medium of  claim 15 , wherein the executable file comprises the virtual start address. 
   
   
       17 . The computer-readable storage medium of  claim 15 , wherein the executable file comprises at least one virtual branch address. 
   
   
       18 . The computer-readable storage medium of  claim 15 , further comprising instructions for providing the mapping to a processor. 
   
   
       19 . The computer-readable storage medium of  claim 15 , further comprising instructions for locating, by the virtual address translator, data within the executable file and providing the data to a processor. 
   
   
       20 . The computer-readable storage medium of  claim 15 , wherein instructions for determining that the executable file can be executed in place on the storage device comprise instructions for determining at least one of the executable file is not compressed, the executable file comprises the virtual start address, and the executable file comprises virtual branch addresses.

Join the waitlist — get patent alerts

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

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