Claims
- 1. A method comprising:
providing an automotive computing device having a processor, volatile memory, non-volatile memory, and SRAM; providing an object store for the computing device in the non-volatile memory; and maintaining one or more pages from the object store in the SRAM.
- 2. The method of claim 1, wherein said maintaining is performed responsive to a detected power loss.
- 3. The method of claim 1 further comprising paging object store pages on demand into volatile memory.
- 4. The method of claim 1 further comprising writing one or more pages from volatile memory into SRAM.
- 5. The method of claim 4, wherein said writing comprises doing so responsive to accessing a page for the purpose of writing to the page.
- 6. The method of claim 1 further comprising writing one or more pages from volatile memory into a DRAM buffer allocated for that purpose.
- 7. The method of claim 1, wherein said providing of the object store comprises copying the object store into the non-volatile memory on an initial boot up of the device.
- 8. The method of claim 1, wherein the non-volatile memory comprises flash memory.
- 9. The method of claim 1 further comprising providing pages from the SRAM into the non-volatile memory in a predetermined manner.
- 10. The method of claim 1 further comprising maintaining an object store page table in SRAM, the object store page table providing data associated with the location of object store pages.
- 11. The method of claim 10 further comprising updating the object store page table in SRAM whenever an object store page is moved from one medium to another.
- 12. The method of claim 1 further comprising maintaining an object store page table in DRAM, the object store page table providing data associated with the location of object store pages.
- 13. The method of claim 1 further comprising battery-backing the SRAM in the event of a power loss.
- 14. In an automotive computing device having non-volatile storage that can contain a system object store and DRAM that can receive object store pages, a method comprising:
providing one or more object store pages from the DRAM into an SRAM or separate DRAM buffer, comprising part of the automotive computing device; and providing one or more pages from the SRAM or DRAM buffer into the non-volatile storage.
- 15. The method of claim 14, wherein said acts of providing comprise doing so using virtual addressing techniques.
- 16. The method of claim 14 further comprising paging object store pages from the non-volatile storage into DRAM responsive to a page being accessed.
- 17. The method of claim 16, wherein the non-volatile storage comprises flash memory.
- 18. The method of claim 16, wherein said paging comprises determining whether a page that is attempted to be accessed is already in DRAM or SRAM, and if not in either, paging it in from the non-volatile memory.
- 19. The method of claim 18 further comprising updating a translation look-aside buffer to contain a new mapping for a virtual address of at least one page that has been paged in.
- 20. The method of claim 14 further comprising maintaining an object store page table in the SRAM, or a region of the DRAM buffer that can be backed up to non volatile memory on shutdown, the object store page table maintaining information associated with the location of object store pages.
- 21. The method of claim 20 further comprising updating one or more entries in the object store page table responsive to said acts of providing.
- 22. The method of claim 20 further comprising using the object store page table to track the object store pages across power cycles.
- 23. The method of claim 14, wherein said providing of the pages from the SRAM or DRAM buffer, to the non-volatile storage comprises doing so in a predetermined manner.
- 24. One or more computer-readable media having computer-readable instructions thereon which, when executed by a computer, implements the method of claim 14.
- 25. A programmable automotive computing device programmed with instructions which, when executed by the computing device, cause the computing device to:
move object store pages between and among non-volatile memory, volatile memory, and battery-backed SRAM; maintain an object store page table in the SRAM that maintains information associated with the location of object store pages; and update the object store page table responsive to moving object store pages.
- 26. In an automotive computing device, a method comprising:
maintaining multiple object store pages in device SRAM; and periodically flushing one or more object store pages to device non-volatile memory to make room for additional object store pages.
- 27. The method of claim 26 further comprising determining when to flush pages as a function of how many free SRAM pages are available.
- 28. A method of operating an automotive computing device comprising:
providing an automotive computing device having a processor, volatile memory, non-volatile memory, and SRAM; providing an object store for the computing device in the non-volatile memory; maintaining one or more pages from the object store in the SRAM responsive to a detected power loss; and battery-backing the SRAM in the event of a power loss.
- 29. The method of claim 28, further comprising writing one or more pages from volatile memory into SRAM responsive to accessing a page for the purpose of writing to the page.
- 30. The method of claim 28 further comprising maintaining an object store page table in SRAM, the object store page table providing data associated with the location of object store pages.
- 31. The method of claim 30 further comprising updating the object store page table in SRAM whenever an object store page is moved from one medium to another.
RELATED APPLICATION
[0001] This application is a continuation application of and claims priority to U.S. patent application Ser. No. 09/745,894, the disclosure of which is incorporated by reference herein.
Continuations (1)
|
Number |
Date |
Country |
Parent |
09745894 |
Dec 2000 |
US |
Child |
10860880 |
Jun 2004 |
US |