KR20100038564A - Method and system for permanent computing using non-volatile random access memory - Google Patents
Method and system for permanent computing using non-volatile random access memory Download PDFInfo
- Publication number
- KR20100038564A KR20100038564A KR1020080097581A KR20080097581A KR20100038564A KR 20100038564 A KR20100038564 A KR 20100038564A KR 1020080097581 A KR1020080097581 A KR 1020080097581A KR 20080097581 A KR20080097581 A KR 20080097581A KR 20100038564 A KR20100038564 A KR 20100038564A
- Authority
- KR
- South Korea
- Prior art keywords
- value
- power
- register
- nonvolatile ram
- program
- Prior art date
Links
Images
Classifications
-
- 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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
본 발명의 실시예들은 물리적인 간섭에 관계 없이 영속적인 컴퓨팅 환경을 제공하는 방법 및 시스템에 관한 것이다.Embodiments of the present invention are directed to a method and system for providing a persistent computing environment regardless of physical interference.
플래시 메모리는 전원이 공급되지 않아도 저장된 데이터가 유지되는 비휘발성 메모리 (non-volatile memory)로서, 칩 전체 혹은 일부를 전기적으로 (electrically) 소거하고 (erase) 다시 쓸(re-write) 수 있는 기능을 제공한다.Flash memory is a non-volatile memory that retains stored data even when power is not supplied. The flash memory is capable of electrically erasing and rewriting all or part of a chip. to provide.
플래시 메모리는 메모리 셀(cell) 어레이(array)의 구조에 따라 NAND, NOR 등의 여러 가지 타입으로 분류될 수 있다. 여기서 메모리 셀은 1비트의 데이터를 저장할 수 있는 최소 단위이다.Flash memories may be classified into various types such as NAND and NOR according to the structure of an array of memory cells. The memory cell is the smallest unit that can store one bit of data.
NAND 플래시 메모리는 고집적화 및 대용량화가 가능하므로 기존의 하드 디스크를 대체할 소자로서 메모리 시장에서 급격히 주목을 받고 있다. 현재 NAND 플래시 메모리는 휴대폰, 디지털 카메라, MP3 플레이어, 캠코더, PDA 등 휴대형 모바일 기기의 저장매체로 널리 이용되고 있다.NAND flash memory is rapidly attracting attention in the memory market as a device to replace the existing hard disk because of the high integration and large capacity. NAND flash memory is widely used as a storage medium for portable mobile devices such as mobile phones, digital cameras, MP3 players, camcorders, and PDAs.
그러나, 플래시 메모리에 데이터를 읽고 쓰는 시간은 SRAM(Static Random Access Memory)이나 DRAM(Dynamic Random Access Memory)에 비해 데이터를 읽고 쓰는 시간이 길다. 또한 플래시 메모리에 저장된 데이터를 소거하는 시간 및 플래시 메모리에 데이터를 저장하는 시간은 플래시 메모리에 저장된 데이터를 읽는 시간보다 길다.However, the time for reading and writing data in the flash memory is longer than that for static random access memory (SRAM) or dynamic random access memory (DRAM). Also, the time for erasing data stored in the flash memory and the time for storing data in the flash memory are longer than the time for reading the data stored in the flash memory.
이러한 플래시 메모리에 비하여, 최근 비휘발성이면서도 바이트 단위로 주소 접근이 가능(byte addressable)하고, 데이터를 읽고 쓰는 시간이 기존의 SRAM 또는 DRAM과 유사한 비휘발성 램 (Non-Volatile Random Access Memory, NVRAM)이 개발되어 그 사용 영역이 확대되고 있다.Compared to such flash memory, non-volatile random access memory (NVRAM), which is recently nonvolatile and byte addressable, and reads and writes data, is similar to that of conventional SRAM or DRAM. The area of use has been expanded.
본 발명의 일 실시예에 따르면 비휘발성 램 상에서 프로그램을 수행함으로써 프로그램에 대하여 영속성을 제공하는 시스템 소프트웨어가 제공된다.According to an embodiment of the present invention, there is provided system software that provides persistence for a program by executing the program on a nonvolatile RAM.
본 발명의 일 실시예에 따르면 프로그램을 비휘발성 램 상에서 수행함으로써 수행 시간의 오버헤드 없이 프로그램을 전원 차단 이전의 마지막 시점으로 완벽하게 복구하여 영속적 컴퓨팅을 제공할 수 있다.According to an embodiment of the present invention, by executing the program on the nonvolatile RAM, the program can be completely restored to the last time point before powering off without the overhead of execution time, thereby providing persistent computing.
본 발명의 일 실시예에 따른 컴퓨팅 시스템은 프로그램을 수행하는 프로세서, 및 전원이 차단되어도 저장된 데이터를 잃지 않으며, 바이트 단위로 주소 접근이 가능하고, 상기 프로그램이 수행되는 동안 발생하는 레지스터의 값 및 주변 장치의 상태 값을 저장하는 비휘발성 램을 포함할 수 있다. 상기 프로세서는 상기 전원이 차단된 후 재 공급되면 상기 비휘발성 램에 저장된 상기 레지스터의 값 및 상기 상태 값을 호출하고 상기 전원이 차단되기 전의 상태를 복원할 수 있다.Computing system according to an embodiment of the present invention, the processor for performing the program, and the stored data does not lose even if the power is cut off, the address is accessible by byte unit, the value and the periphery of the register generated during the program execution It may include a nonvolatile RAM that stores the state value of the device. The processor may call the value of the register and the state value stored in the nonvolatile RAM when the power is supplied again and restore the state before the power is turned off.
본 발명의 일 실시예에 따른 컴퓨팅 방법은 프로그램이 수행되는 동안 발생하는 레지스터의 값 및 주변 장치의 값을 비휘발성 램 - 상기 비휘발성 램은 전원이 차단되어도 저장된 데이터를 잃지 않으며, 바이트 단위로 주소 접근이 가능함 - 에 저장하는 단계, 상기 전원이 차단된 후 재 공급되는 이벤트를 감지하는 단계, 상기 이벤트가 감지되면 상기 비휘발성 램에 저장된 상기 레지스터의 값 및 상기 상태 값을 호출하는 단계, 및 상기 호출된 상기 레지스터의 값 및 상기 상태 값에 기초하여 상기 전원이 차단되기 전의 상태를 복원하는 단계를 포함할 수 있다.Computing method according to an embodiment of the present invention non-volatile RAM to the value of the register and the peripheral device that occurs while the program is running-the non-volatile RAM does not lose the stored data even if the power is off, address in bytes Accessible; detecting an event that is resupplyed after the power is cut off; recalling the value of the register and the state value stored in the non-volatile RAM when the event is detected; and Restoring a state before the power is cut based on the value of the called register and the state value.
휘발성 램으로만 메모리가 구성된 시스템에서 갑작스럽게 전원이 차단될 시 프로그램의 데이터와 상태가 보존되지 못하여 중요한 작업을 하고 있던 경우 큰 손실이 발생하였다.In case of sudden power failure in a system configured only with volatile RAM, the program's data and state could not be preserved, causing significant loss.
본 발명의 일 실시예에 따르면 비휘발성 램을 메모리의 전부 또는 일부로 사용하고 영속적으로 수행할 프로그램의 데이터와 상태를 비휘발성램에 보존하기 때문에 레지스터 정보와 간단한 복구 절차를 거치면 별도의 큰 비용 없이 완전히 복구하게 되므로 영속적인 컴퓨팅이 가능하여 사용자에게 신뢰성과 안정성 및 편리성을 제공한다.According to an embodiment of the present invention, since the nonvolatile RAM is used as all or part of the memory, and the data and state of the program to be executed permanently are preserved in the nonvolatile RAM, the register information and the simple recovery procedure are completely eliminated without any significant cost. Recovery allows for persistent computing, providing users with reliability, stability and convenience.
본 발명의 일 실시예에 따르면 비휘발성 램에 프로그램이 동작하기 위한 모든 정보가 저장되어 있으므로 레지스터 상태 값만 복구하면 전원 차단 이전 상태에 놓이기 때문에 시스템의 초기화나 부팅 과정 없이 매우 빠르게 사용자가 시스템을 사용할 수 있어 편리성을 제공한다. According to an embodiment of the present invention, since all information for operating a program is stored in the nonvolatile RAM, restoring only the register state value puts the state before power down, so that the user can use the system very quickly without initializing or booting the system. Provide convenience.
본 발명의 일 실시예에 따르면 운영 체제와 같은 시스템 구동을 위한 중요 시스템 소프트웨어가 비휘발성 램 상에서 수행되는 경우에는 시스템을 멈추었다가 재 구동 시키는 시간은 레지스터 값을 복원시키는 수 초 정도로 매우 짧으므로, 시스템이 사용되지 않고 있는 동안 전원을 꺼 두었다가 다시 사용하고자 할 때 전원을 공급하는 경우에도 큰 오버헤드가 발생하지 않는다. 따라서 본 발명의 일 실시예에 따르면 에너지를 절감할 수 있다.According to an embodiment of the present invention, when critical system software for operating a system such as an operating system is executed on a nonvolatile RAM, the time to stop and restart the system is very short, such as several seconds to restore the register value. This overhead does not occur even when the power is turned off and then used again when the power is not used. Therefore, according to an embodiment of the present invention can save energy.
이하에서, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, the present invention is not limited or limited by the embodiments. Like reference numerals in the drawings denote like elements.
도 1은 본 발명의 일 실시예에 따른 컴퓨팅 시스템(100)을 도시하는 도면이다.1 illustrates a
컴퓨팅 시스템 (100)은 프로세서 (110), 비휘발성 램 (120) 및 보조 전원 (130)을 포함한다.
비휘발성 램 (120)은 바이트 단위의 주소 접근이 가능하므로 프로세서 (110)가 인식하는 논리 주소 (logical address)와 일치하는 물리 주소 (physical address)를 이용하여 접근될 수 있다. 따라서 프로세서 (110)는 주소 변환 (address translation) 없이 프로세서 (110)가 인식하는 논리 주소 공간 (logical address space)을 이용하여 비휘발성 램 (120)을 인식할 수 있다. 이러한 비휘발성 램 (120)의 특성에 의하여 비휘발성 램 (120) 상에서 프로그램이 수행될 수 있다.Since the
비휘발성 램 (120)은 비휘발성의 특징과 랜덤 접근의 특징을 가진다. 이러한 비휘발성 램 (120)의 예로는 FRAM (Ferroelectric RAM), MRAM (Magnetoresistive RAM), PRAM (Phase-change RAM) 등이 알려져 있으나 본 발명은 이에 국한되지 않음은 당업자에게 자명하다.
비휘발성 램 (120)은 전원이 차단되더라도 저장된 데이터를 영구적으로 보존 할 수 있다. 프로그램이 수행되던 도중 전원이 차단되면 프로세서 (110)는 휘발성 데이터인 레지스터 (111) (프로세서 (110)에 포함되어 있는 메모리)의 상태 값 및 주변 장치들 (도시되지 않음)의 상태 값을 비휘발성 램 (120)에 옮겨 저장할 수 있다. 다시 전원이 공급되면 프로세서 (110)는 비휘발성 램 (120)에 저장된 상태 값을 레지스터 (111) 및 장치에 복구시킬 수 있다. 이 때 프로그램은 전원 차단 이전의 상태에서 다시 수행되는 것과 마찬가지이므로 영속적인 컴퓨팅이 가능하다.The
컴퓨팅 시스템 (100)은 전원이 갑작스럽게 차단될 때에도 완벽하게 이전 상태로 복구되므로 데이터의 손실 없이 안전하게 프로그램을 수행할 수 있다.
도 1의 컴퓨팅 시스템 (100)은 휘발성 램을 포함하지 않고 비휘발성 램 (120)이 전체 메모리 영역에 대응하는 실시예이다. 이러한 실시예는 전력을 적게 소모하므로 임베디드 시스템에 더욱 적합할 수 있다.The
프로세서 (110) 내부의 레지스터(register) (111)에는 프로그램 수행 도중 연산 값이 저장된다. 레지스터 (111)는 전원이 차단되면 저장된 데이터를 유실하는 휘발성 메모리이다. 비휘발성 램 (120)에는 프로그램의 데이터와 상태 정보가 저장되어 있고 프로세서 (110)는 주소를 이용하여 비휘발성 램 (120)에 접근한다. An operation value is stored in a
축전기 (131) 및 전압 모니터/덤프 매니저 (132)는 프로세서 (110)가 휘발성인 레지스터 (111)의 내용을 비휘발성 램 (120)에 저장할 수 있도록 동작한다. 전압 모니터/덤프 매니저 (132)는 전압이 기준값 이하로 떨어지면 컴퓨팅 시스템 (100)의 전원이 차단된 것으로 간주하고 프로세서 (110)를 제어하여 레지스터 (111)의 내용을 비휘발성 램 (120)의 미리 정해진 영역에 옮겨 저장한다. 이로써 비휘발성 램 (120)에 저장된 값은 전원 차단 후에도 보존될 수 있다. 축전기 (131)는 전압 모니터/덤프 매니저 (132) 또는 프로세서 (110)가 레지스터 (111)의 내용을 안전하게 비휘발성 램 (120)에 저장하는 데 걸리는 시간 동안 컴퓨팅 시스템 (100)의 전원 전압을 유지하기 위한 장치이다. 전압 모니터/덤프 매니저 (132)는 하드웨어뿐만 아니라 소프트웨어로도 구현될 수 있다.
도 1의 실시예와 같이 비휘발성 램 (120)이 메모리 전 영역에 대응되는 환경에서는 컴퓨팅 시스템 (100)에서 수행되는 모든 프로그램이 비휘발성 램 (120) 상에서 수행될 수 있으므로 컴퓨팅 시스템 (100)이 레지스터 (111)의 내용을 비휘발성 램 (120)에 저장하면 모든 프로그램에 대한 영속성이 보장된다.In an environment in which the
도 2는 본 발명의 다른 실시예에 따른 컴퓨팅 시스템 (200)을 도시하는 도면이다.2 is a diagram illustrating a
컴퓨팅 시스템 (200)은 프로세서 (210), 비휘발성 램 (220), 보조 전원 (230) 및 휘발성 램 (240)을 포함한다.
도 2의 실시예에서 메모리 영역은 비휘발성 램 (220) 및 휘발성 램 (240)에 의하여 구현되며, 프로세서 (210)가 인식하는 주소 공간은 비휘발성 램 (220) 및 휘발성 램 (240)에 대응한다. 일반적인 퍼스널 컴퓨터, 서버 시스템 등의 어플리케이션에서는 휘발성 램 (240) 및 비휘발성 램 (220)이 혼용되어 이용될 수 있다.In the embodiment of FIG. 2, the memory area is implemented by the
프로세서 (210)에 의하여 수행되는 프로그램은 휘발성 램 (240) 또는 비휘발성 램 (220) 상에서 수행될 수 있다. 프로세서 (210)는 레지스터 (211)에 저장된 내용을 필요에 따라 휘발성 램 (240) 또는 비휘발성 램 (220)에 저장할 수 있다. 휘발성 램 (240)은 전원이 차단되면 저장된 데이터를 유실할 수 있으므로 프로세서 (210)는 데이터 보존 명령 또는 영속성 유지 명령을 설정하고, 데이터 보존 명령 또는 영속성 유지 명령이 선언되면 레지스터 (211)에 저장된 내용을 비휘발성 램 (220)에 저장함으로써 영속성을 도모할 수 있다.The program executed by the
도 2의 실시예에서는 프로세서(210)가 레지스터 (211) 또는 휘발성 램 (240)에 저장된 내용 중 프로그램의 복원에 필요한 내용을 비휘발성 램 (220)에 저장하는 특별 명령을 선언할 수 있다. 본 명세서에서는 이러한 특별 명령을 데이터 보존 명령 또는 영속성 유지 명령이라 명명하기로 한다.In the embodiment of FIG. 2, the
보조 전원 (230)은 축전기 (231) 및 전압 모니터/덤프 매니저 (232)를 포함한다. 축전기 (231)는 전원이 차단되는 이벤트가 감지되는 경우 컴퓨팅 시스템 (200)의 전원 전압을 유지하는 기능을 수행한다. 전압 모니터/덤프 매니저 (232)는 전원 전압을 모니터하며 필요에 따라 데이터 보존 명령 또는 영속성 유지 명령을 생성할 수도 있다.The
도 3은 도 1의 컴퓨팅 시스템 (100)에서 수행되는 컴퓨팅 방법의 일 예를 도시하는 동작 흐름도이다.3 is an operational flow diagram illustrating an example of a computing method performed in the
컴퓨팅 시스템 (100)은 비휘발성 램 (120) 상에서 프로그램을 수행한다 (S310). 프로그램은 비휘발성 램 (120) 상에서 생성되고 수행될 수 있다. 이 때 컴퓨팅 시스템 (100)은 안정적으로 동작한다.The
전압 모니터/덤프 매니저 (132)가 전원 차단을 감지(S320)하면 덤프 매니저 부분을 구동한다 (S330). 이 때 프로그램은 비휘발성 램 (120) 상에서 수행되므로 컴퓨팅 시스템 (100)은 큰 비용 없이 프로그램 상태 정보를 비휘발성 램 (120)에 저장할 수 있다. 축전기 (131)는 레지스터 (111)의 상태 값이 비휘발성 램 (120)에 저장되는 동안 컴퓨팅 시스템 (100)의 전원 전압을 유지할 수 있다. 덤프 매니저는 레지스터 (111)의 내용을 비휘발성 램 (120) 상의 미리 약속된 주소에 저장한다.When the voltage monitor /
이 때 수행될 프로그램에 대한 모든 정보가 비휘발성 램 (120)에 안전하게 저장되어 영속적으로 보존될 수 있다. 컴퓨팅 시스템 (100)의 전원은 축전기 (131)의 전하가 소진되거나 덤프 매니저가 명시적으로 셧다운 명령을 내리면 차단된다.In this case, all the information about the program to be executed may be safely stored in the
전압 모니터가 전원 재공급을 감지 (S340)하면 컴퓨팅 시스템 (100)은 비휘발성 램 (120) 상의 미리 약속된 주소에 저장된 정보를 레지스터 (111)로 호출한다 (S350). 이 때 호출되는 정보는 레지스터 (111)의 값 및 상태 값을 포함할 수 있다.When the voltage monitor detects power resupply (S340), the
컴퓨팅 시스템 (100)은 호출된 값에 기초하여 전원이 차단되기 전의 컴퓨팅 시스템 (100)의 상태를 복원한다 (S360).The
도 4는 도 2의 컴퓨팅 시스템 (200)에서 수행되는 컴퓨팅 방법의 일 예를 도시하는 동작 흐름도이다.4 is a flowchart illustrating an example of a computing method performed in the
컴퓨팅 시스템 (200)은 휘발성 램 (240) 상에서 프로그램을 수행한다 (S410).The
프로세서 (210)의 보존 명령 또는 영속성 유지 명령을 수신(S420)하면 컴퓨 팅 시스템 (210)은 영속성이 지정된 프로그램을 검색한다 (S430).When the preservation command or the persistence command of the
보존 명령은 제한된 것은 아니지만 시스템 호출 등의 명령을 이용하여 구현될 수 있으며, 프로세서(210)뿐만 아니라 전압 모니터/덤프 매니저 (232)에 의하여 생성될 수도 있다.The preservation instructions may be implemented using instructions such as, but not limited to, system calls, and may be generated by the voltage monitor /
컴퓨팅 시스템 (200)은 단계 (S430)에서 영속성이 지정된 프로그램을 검색하고 상기 검색된 프로그램에 대응하는 데이터 및 상태 정보가 저장된 휘발성 램 (240)의 주소를 획득한다.In operation S430, the
컴퓨팅 시스템 (200)은 휘발성 램 (240)의 상기 획득된 주소로부터 프로그램에 대응하는 데이터 및 상태 정보를 읽을 수 있다. 컴퓨팅 시스템 (200) 또는 덤프 매니저 (232)는 상기 읽은 데이터 및 상태 정보를 데이터 보존 명령에 따라 비휘발성 램 (220)에 저장할 수 있다.The
보존 명령은 여러 방법으로 구현될 수 있으나 종래의 fork 시스템 호출과 유사한 형태로 구현될 수도 있다. 영속성 유지 대상으로 지정된 프로그램은 비휘발성 램 (220) 상에 저장되므로 전원이 차단되어도 영속성을 유지할 수 있다.Preservation commands can be implemented in a number of ways, but can also be implemented in a form similar to conventional fork system calls. Since the program designated as the persistence maintenance target is stored on the
컴퓨팅 시스템 (200)은 영속성 유지 대상으로 지정된 프로그램을 비휘발성 램 (220) 상에서 수행한다 (S440).The
이 때 만일 전압 모니터 (232)에 의하여 전원 차단 이벤트가 감지되면 상기 도 3의 단계 (S320) 내지 단계 (S360)와 유사한 과정을 통해 프로그램의 영속성이 유지될 수 있다. 이 때 필요에 따라 레지스터 (211)의 값이 비휘발성 램 (220)에 저장될 수 있다.At this time, if a power off event is detected by the
컴퓨팅 시스템 (200)이 프로그램에 대한 영속성을 유지할 필요가 없다고 판단하면, 컴퓨팅 시스템 (200)은 프로그램에 대한 보존 해제 명령을 내릴 수 있다.If the
보존 해제 명령이 수신되면 (S450) 컴퓨팅 시스템 (200)은 휘발성 램 (240) 상에서 상기 프로그램을 수행할 수 있다. 이 때 컴퓨팅 시스템 (200)은 비휘발성 램 (220)에 저장된 상기 프로그램의 데이터 및 상태 정보를 휘발성 램 (240)에 저장할 수 있다. 또는 컴퓨팅 시스템 (200)은 상기 프로그램의 데이터 및 상태 정보를 비휘발성 램 (220)에 저장하되 프로그램 관리를 위한 데이터 구조에 영속성이 해제되었음을 표시할 수도 있다.When the preservation release command is received (S450), the
본 발명의 일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Method according to an embodiment of the present invention is implemented in the form of program instructions that can be executed by various computer means may be recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains various modifications and variations from such descriptions. This is possible.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the claims below but also by the equivalents of the claims.
도 1은 본 발명의 일 실시예에 따른 컴퓨팅 시스템(100)을 도시하는 도면이다.1 illustrates a
도 2는 본 발명의 다른 실시예에 따른 컴퓨팅 시스템 (200)을 도시하는 도면이다.2 is a diagram illustrating a
도 3은 도 1의 컴퓨팅 시스템 (100)에서 수행되는 컴퓨팅 방법의 일 예를 도시하는 동작 흐름도이다.3 is an operational flow diagram illustrating an example of a computing method performed in the
도 4는 도 2의 컴퓨팅 시스템 (200)에서 수행되는 컴퓨팅 방법의 일 예를 도시하는 동작 흐름도이다.4 is a flowchart illustrating an example of a computing method performed in the
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
110: 프로세서110: processor
120: 비휘발성 램120: nonvolatile RAM
130: 보조 전원130: auxiliary power
Claims (12)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080097581A KR100994609B1 (en) | 2008-10-06 | 2008-10-06 | Method and system for permanent computing using non-volatile random access memory |
PCT/KR2009/005684 WO2010041852A2 (en) | 2008-10-06 | 2009-10-06 | Method and system for perpetual computing using non-volatile random access memory (nvram) |
US13/122,722 US20110197018A1 (en) | 2008-10-06 | 2009-10-06 | Method and system for perpetual computing using non-volatile random access memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080097581A KR100994609B1 (en) | 2008-10-06 | 2008-10-06 | Method and system for permanent computing using non-volatile random access memory |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100038564A true KR20100038564A (en) | 2010-04-15 |
KR100994609B1 KR100994609B1 (en) | 2010-11-15 |
Family
ID=42215254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080097581A KR100994609B1 (en) | 2008-10-06 | 2008-10-06 | Method and system for permanent computing using non-volatile random access memory |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100994609B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101218865B1 (en) * | 2010-05-06 | 2013-01-07 | 주식회사 프롬나이 | Computing system and method |
KR101716866B1 (en) * | 2016-04-29 | 2017-03-15 | 울산과학기술원 | A permanant booting apparatus capable of initializing peripheral devices syntagmatically and method thereof |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5889933A (en) * | 1997-01-30 | 1999-03-30 | Aiwa Co., Ltd. | Adaptive power failure recovery |
JP2001142600A (en) * | 1999-11-15 | 2001-05-25 | Canon Inc | Multi-language display switching device and its switching method |
-
2008
- 2008-10-06 KR KR1020080097581A patent/KR100994609B1/en not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101218865B1 (en) * | 2010-05-06 | 2013-01-07 | 주식회사 프롬나이 | Computing system and method |
KR101716866B1 (en) * | 2016-04-29 | 2017-03-15 | 울산과학기술원 | A permanant booting apparatus capable of initializing peripheral devices syntagmatically and method thereof |
Also Published As
Publication number | Publication date |
---|---|
KR100994609B1 (en) | 2010-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4966965B2 (en) | Flash memory management method resistant to data corruption due to power loss | |
US8028177B2 (en) | Method for changing power states of a computer | |
US9075733B1 (en) | Selective storage of address mapping metadata in a system having multiple memories | |
US20110197018A1 (en) | Method and system for perpetual computing using non-volatile random access memory | |
US8874839B2 (en) | Electronic system and method and apparatus for saving data thereof | |
KR20070047336A (en) | Volatile storage based power loss recovery mechanism | |
KR101846612B1 (en) | Load boot data | |
JP2010186340A (en) | Memory system | |
JP2012508932A (en) | Manage cache data and metadata | |
KR101651204B1 (en) | Apparatus and Method for synchronization of snapshot image | |
CN101963891A (en) | Method and device for data storage and processing, solid-state drive system and data processing system | |
KR20140121233A (en) | Electronic device having a booting function of operating system by bootloader, method of performing the same function and storage medium | |
KR20100065999A (en) | User device comprising auxiliary power supply | |
CN105786544A (en) | Method for booting computer system rapidly and booting system of computer | |
US20140372710A1 (en) | System and method for recovering from an unexpected shutdown in a write-back caching environment | |
US10628168B2 (en) | Management with respect to a basic input/output system policy | |
CN104808765B (en) | A kind of information processing method and electronic equipment | |
US20130332662A1 (en) | Information processing apparatus and method and program | |
KR100994609B1 (en) | Method and system for permanent computing using non-volatile random access memory | |
US7360016B2 (en) | Method of protecting data in cache memory of storage system | |
US10204054B2 (en) | Media cache cleaning | |
KR20100027441A (en) | Data back up method and solid state drive including energy storages | |
US20130073792A1 (en) | Electronic apparatus using nand flash and memory management method thereof | |
JP2008059007A (en) | Semiconductor storage device | |
KR102145358B1 (en) | Method and computer-readable medium emboding program for protecting data integrity of disk in alternate operating system environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20131108 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20141106 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |