TW200741455A - Multistage virtual memory paging system - Google Patents
Multistage virtual memory paging systemInfo
- Publication number
- TW200741455A TW200741455A TW095140814A TW95140814A TW200741455A TW 200741455 A TW200741455 A TW 200741455A TW 095140814 A TW095140814 A TW 095140814A TW 95140814 A TW95140814 A TW 95140814A TW 200741455 A TW200741455 A TW 200741455A
- Authority
- TW
- Taiwan
- Prior art keywords
- store
- page
- data
- paging
- main
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
- G06F2212/2022—Flash memory
Abstract
A computer implemented hierarchical method for paging data, when evicting a page of data from the computer system main storage, evicting the page to a first paging store (preferably NVRAM). When evicting a page of data from the first paging store, evicting the page to a second paging store (such as a disk). When the main store requires a page of data that is not in the main store and when the page of data is available in the first paging store, loading the third page of data into main store from first paging store. When the page of data is not available in the first paging store, loading the third page of data into main store from the second store. Optionally, pages of main store are saved and restored from NVRAH during a power-down, power-up sequence of events.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/268,075 US7543123B2 (en) | 2005-11-07 | 2005-11-07 | Multistage virtual memory paging system |
Publications (1)
Publication Number | Publication Date |
---|---|
TW200741455A true TW200741455A (en) | 2007-11-01 |
Family
ID=38005154
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW095140814A TW200741455A (en) | 2005-11-07 | 2006-11-03 | Multistage virtual memory paging system |
Country Status (4)
Country | Link |
---|---|
US (2) | US7543123B2 (en) |
KR (1) | KR100810013B1 (en) |
CN (1) | CN100412824C (en) |
TW (1) | TW200741455A (en) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7543123B2 (en) * | 2005-11-07 | 2009-06-02 | International Business Machines Corporation | Multistage virtual memory paging system |
JP5124217B2 (en) * | 2007-09-18 | 2013-01-23 | 株式会社日立製作所 | Storage device |
WO2009048707A1 (en) * | 2007-10-12 | 2009-04-16 | Rambus Inc. | Managing flash memory in computer systems |
US7962684B2 (en) * | 2008-02-14 | 2011-06-14 | Sandisk Corporation | Overlay management in a flash memory storage device |
US7979638B2 (en) * | 2008-04-01 | 2011-07-12 | Oracle America, Inc. | Method and system for accessing data using an asymmetric cache device |
US8825700B2 (en) * | 2008-05-26 | 2014-09-02 | Microsoft Corporation | Paging hierarchical data |
GB2460464A (en) * | 2008-05-30 | 2009-12-02 | Symbian Software Ltd | Memory paging control method using two cache parts, each maintained using a FIFO algorithm |
US8171206B2 (en) * | 2008-07-22 | 2012-05-01 | Sandisk Technologies Inc. | Avoidance of self eviction caused by dynamic memory allocation in a flash memory storage device |
US8499174B2 (en) * | 2008-09-08 | 2013-07-30 | Via Technologies, Inc. | Method and controller for power management |
US8504850B2 (en) * | 2008-09-08 | 2013-08-06 | Via Technologies, Inc. | Method and controller for power management |
US8966181B2 (en) * | 2008-12-11 | 2015-02-24 | Seagate Technology Llc | Memory hierarchy with non-volatile filter and victim caches |
US8244955B2 (en) * | 2009-03-17 | 2012-08-14 | Hitachi, Ltd. | Storage system and its controlling method |
US8180981B2 (en) | 2009-05-15 | 2012-05-15 | Oracle America, Inc. | Cache coherent support for flash in a memory hierarchy |
KR101612922B1 (en) * | 2009-06-09 | 2016-04-15 | 삼성전자주식회사 | Memory system and method of managing memory system |
US9208084B2 (en) * | 2009-06-29 | 2015-12-08 | Oracle America, Inc. | Extended main memory hierarchy having flash memory for page fault handling |
US8788739B2 (en) * | 2009-06-29 | 2014-07-22 | Hewlett-Packard Development Company, L.P. | Hypervisor-based management of local and remote virtual memory pages |
US20120102273A1 (en) * | 2009-06-29 | 2012-04-26 | Jichuan Chang | Memory agent to access memory blade as part of the cache coherency domain |
US8661189B2 (en) * | 2010-08-31 | 2014-02-25 | Apple Inc. | Systems and methods for trimming logical block addresses corresponding to a data structure residing in non-volatile memory |
US8656133B2 (en) | 2011-05-05 | 2014-02-18 | International Business Machines Corporation | Managing storage extents and the obtaining of storage blocks within the extents |
US8683169B2 (en) | 2011-05-05 | 2014-03-25 | International Business Machines Corporation | Selecting an auxiliary storage medium for writing data of real storage pages |
US8793444B2 (en) | 2011-05-05 | 2014-07-29 | International Business Machines Corporation | Managing large page memory pools |
US8799611B2 (en) | 2011-05-05 | 2014-08-05 | International Business Machines Corporation | Managing allocation of memory pages |
US8868876B2 (en) | 2011-12-28 | 2014-10-21 | International Business Machines Corporation | Dedicated large page memory pools |
CN102567216B (en) * | 2011-12-29 | 2015-07-29 | 北京交控科技有限公司 | Improve the reliable storage method of service life of flash memory |
US8949512B2 (en) | 2012-02-17 | 2015-02-03 | Apple Inc. | Trim token journaling |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6488661A (en) * | 1987-09-29 | 1989-04-03 | Toshiba Corp | Virtual memory control and management system |
JPH04230508A (en) * | 1990-10-29 | 1992-08-19 | Internatl Business Mach Corp <Ibm> | Apparatus and method for controlling electric power with page arrangment control |
WO1995018997A2 (en) * | 1993-12-30 | 1995-07-13 | Connectix Corporation | Virtual memory management system and method using data compression |
SG45399A1 (en) * | 1994-01-12 | 1998-01-16 | Sun Microsystems Inc | Logically addressable physical memory for a virtual memory computer system that support multiple page sizes |
US5778441A (en) | 1994-03-01 | 1998-07-07 | Intel Corporation | Method and apparatus for accessing split lock variables in a computer system |
US5778443A (en) * | 1994-12-14 | 1998-07-07 | International Business Machines Corp. | Method and apparatus for conserving power and system resources in a computer system employing a virtual memory |
US5893135A (en) * | 1995-12-27 | 1999-04-06 | Intel Corporation | Flash memory array with two interfaces for responding to RAS and CAS signals |
US6038571A (en) * | 1996-01-31 | 2000-03-14 | Kabushiki Kaisha Toshiba | Resource management method and apparatus for information processing system of multitasking facility |
US5732238A (en) * | 1996-06-12 | 1998-03-24 | Storage Computer Corporation | Non-volatile cache for providing data integrity in operation with a volatile demand paging cache in a data storage system |
US6819271B2 (en) | 1999-01-29 | 2004-11-16 | Quickshift, Inc. | Parallel compression and decompression system and method having multiple parallel compression and decompression engines |
US6438668B1 (en) * | 1999-09-30 | 2002-08-20 | Apple Computer, Inc. | Method and apparatus for reducing power consumption in a digital processing system |
KR20010055981A (en) * | 1999-12-13 | 2001-07-04 | 오길록 | Method for recovering main memory database system using stable memory |
KR100365891B1 (en) | 2000-12-13 | 2002-12-27 | 한국전자통신연구원 | Backup/recovery Apparatus and method for non-log processing of real-time main memory database system |
US6671786B2 (en) | 2001-06-07 | 2003-12-30 | Microsoft Corporation | System and method for mirroring memory with restricted access to main physical mirrored memory |
JP2003345520A (en) * | 2002-05-24 | 2003-12-05 | Hitachi Ltd | Disk array system and cache control method in disk array system |
US7089396B2 (en) * | 2002-10-10 | 2006-08-08 | International Business Machines Corporation | Method and profiling cache for management of virtual memory |
US20040117587A1 (en) * | 2002-12-12 | 2004-06-17 | International Business Machines Corp. | Hardware managed virtual-to-physical address translation mechanism |
JP4244716B2 (en) * | 2003-06-13 | 2009-03-25 | 日本電気株式会社 | Secondary storage management method and method for multiple virtual storage systems |
US7315852B2 (en) | 2003-10-31 | 2008-01-01 | International Business Machines Corporation | XPath containment for index and materialized view matching |
US7130960B1 (en) * | 2005-04-21 | 2006-10-31 | Hitachi, Ltd. | System and method for managing disk space in a thin-provisioned storage subsystem |
US7424577B2 (en) * | 2005-08-26 | 2008-09-09 | Network Appliance, Inc. | Dynamic optimization of cache memory |
US7543123B2 (en) | 2005-11-07 | 2009-06-02 | International Business Machines Corporation | Multistage virtual memory paging system |
-
2005
- 2005-11-07 US US11/268,075 patent/US7543123B2/en not_active Expired - Fee Related
-
2006
- 2006-10-27 KR KR1020060104845A patent/KR100810013B1/en not_active IP Right Cessation
- 2006-10-31 CN CNB2006101429378A patent/CN100412824C/en active Active
- 2006-11-03 TW TW095140814A patent/TW200741455A/en unknown
-
2009
- 2009-02-13 US US12/370,908 patent/US7827364B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN1963790A (en) | 2007-05-16 |
US7543123B2 (en) | 2009-06-02 |
CN100412824C (en) | 2008-08-20 |
US20090150625A1 (en) | 2009-06-11 |
KR100810013B1 (en) | 2008-03-10 |
KR20070049062A (en) | 2007-05-10 |
US20070106853A1 (en) | 2007-05-10 |
US7827364B2 (en) | 2010-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW200741455A (en) | Multistage virtual memory paging system | |
US8397014B2 (en) | Memory mapping restore and garbage collection operations | |
US20160070474A1 (en) | Data-Retention Controller/Driver for Stand-Alone or Hosted Card Reader, Solid-State-Drive (SSD), or Super-Enhanced-Endurance SSD (SEED) | |
WO2006012257A3 (en) | Method, system, and program for utilizing a virtualized data structure table | |
TW200508860A (en) | Systems and methods for storing data on computer systems | |
JP2008176785A (en) | Hybrid hard disk drive, computer system incorporating hybrid hard disk drive, and flash memory dma circuit for hybrid hard disk drive | |
CN101983376B (en) | Access device, information recording device, information recording system, file management method, and program | |
WO2005082037A3 (en) | Intelligent solid state disk with hot-swappable components | |
WO2010056571A3 (en) | Managing cache data and metadata | |
TW200720924A (en) | Interfacing systems operating through a logical address space and on a direct data file basis | |
TW200707186A (en) | Method for improving writing data efficiency and storage subsystem and system implementing the same | |
CN105630405B (en) | A kind of storage system and the reading/writing method using the storage system | |
CN102890620A (en) | Non-volatile temporary data handling | |
WO2016095151A1 (en) | Storing log records in a non-volatile memory | |
JP6276470B2 (en) | System and method for reducing standby power of volatile memory in portable computing devices | |
WO2005069148A3 (en) | Memory management method and related system | |
US8296270B2 (en) | Adaptive logging apparatus and method | |
US20170031833A1 (en) | Hibernation based on page source | |
CN104281538A (en) | Storage device capacity expanding and snapping method and storage devices | |
CN102915282A (en) | Block device data cache management method and system for memory system | |
TW200732918A (en) | Method and system for accessing non-volatile storage devices | |
CN104915265B (en) | Data back up method and electronic equipment | |
TW201426548A (en) | Electronic apparatus hibernation recovering setting method and electronic apparatus having hibernation state and hibernation recovering mechanism | |
EP1683028A4 (en) | Emulated storage system supporting instant volume restore | |
CN1963810A (en) | Method for realizing cache memory relates to file allocation table on Flash storage medium |