KR101392062B1 - Fast speed computer system power-on & power-off method - Google Patents
Fast speed computer system power-on & power-off method Download PDFInfo
- Publication number
- KR101392062B1 KR101392062B1 KR1020100092274A KR20100092274A KR101392062B1 KR 101392062 B1 KR101392062 B1 KR 101392062B1 KR 1020100092274 A KR1020100092274 A KR 1020100092274A KR 20100092274 A KR20100092274 A KR 20100092274A KR 101392062 B1 KR101392062 B1 KR 101392062B1
- Authority
- KR
- South Korea
- Prior art keywords
- computer system
- pages
- power
- memory
- main memory
- 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
- G06F9/22—Microcontrol or microprogram arrangements
- G06F9/24—Loading of the microprogram
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
Abstract
고속 컴퓨터 시스템 파워 온 및 파워 오프 방법은, 주 메모리로부터 2차 저장 디바이스로 전송되고 저장되는 주 메모리의 양을 감소시키는데 사용되어, 하이버네이션 상태로부터 전속도 동작 상태로의 컴퓨터 시스템의 재활성화 속도를 증가시킨다. 상기 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법은 다양한 유형들의 컴퓨터 시스템들에 적용 가능하고, 랜덤 액세스 프로세싱 기술과 공동 동작하여 데이터를 기록하거나 역으로 로딩하는데 사용될 수 있다. 게다가, 상기 방법은 상기 컴퓨터 시스템의 급작스런 전력 공급 중단으로 인한 상기 컴퓨터 시스템의 데이터 손실 및 파손의 정도를 감소시키는데 사용될 수 있다.The high-speed computer system power-on and power-off method is used to reduce the amount of main memory transferred and stored from the main memory to the secondary storage device to increase the rate of reactivation of the computer system from the hibernation state to the full- . The high-speed computer system power-on and power-off methods are applicable to various types of computer systems and may be used in conjunction with random access processing techniques to record or reverse load data. In addition, the method can be used to reduce the degree of data loss and corruption of the computer system due to abrupt power failure of the computer system.
Description
본 발명은 컴퓨터 시스템 파워 온(power-on) 및 파워 오프(power-off) 방법에 관한 것으로서, 특히 컴퓨터 시스템이 절전 모드에 진입할 때 적용 가능한 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법에 관한 것이다.The present invention relates to computer system power-on and power-off methods, and more particularly to a high speed computer system power on and power off method applicable when a computer system enters a power saving mode.
일반적으로, 통상의 컴퓨터 시스템의 동작 상태는 운영 시스템 및 다양한 애플리케이션 프로그램들을 수행하는 정상 모드 외에, 절전 모드를 포함한다. 컴퓨터가 하이버네이션(hibernation)으로 진입하는 목적은 한편으로는 에너지를 절약하는 것이고, 한편으로는 시스템의 소음을 감소시키는 것이다.In general, the operating state of a typical computer system includes a power saving mode, in addition to the normal mode of operating the operating system and various application programs. The purpose of computers to enter hibernation is to save energy on the one hand and reduce the noise of the system on the other.
ACIP(Advanced Configuration and Power Interface)의 설계 분류에 따르면, 컴퓨터 시스템을 위한 두 유형의 하이버네이션이 존재한다: 이들 중 하나는 서스펜드-투-램(Suspend-To-RAM: STR) 상태(또한 S3 상태로 칭해진다)이고, 다른 하나는 스펜드-투-디스크(Spend-To-Disk: STD) 상태(또한 S4 상태로 칭해진다)이다. S3 상태에서, 컴퓨터 시스템은 단지 계속해서 전력을 프레임 버퍼(Frame Buffer)들, 주 메모리(Main Memory) 등을 포함하는 휘발성 메모리의 부분으로 공급하고, 나머지 부분들로의 전력을 차단한다. S3 상태에 대해 2가지의 장점들이 존재한다: 이들 중 하나는 컴퓨터 시스템이 전속력 동작으로 복귀하는 것이 더 빠를 것이라는 점이고; 다른 하나는 사용자가 사적이고 비밀 데이터를 동작하고 있고 이 데이터를 하드 디스크 내에 저장하고자 원하지 않을 때 더 양호한 보안을 위해 S3 상태가 사용된다는 점이다. 다른 유형의 하이버네이션은 스펜드-투-디스크(STD) 상태(또한 S4 상태로 칭해진다)이다. S4 상태에서, 동작 중인 데이터는 모두 저장을 위해 비휘발성 메모리 내에 기록되고나서, 전체 컴퓨터 시스템이 전력이 파워 오프되므로, S4 상태의 장점은 더 나은 전력 절약이다.According to the design classification of the Advanced Configuration and Power Interface (ACIP), there are two types of hibernation for computer systems: one is the Suspend-To-RAM (STR) state And the other is a Spend-To-Disk (STD) state (also referred to as S4 state). In the S3 state, the computer system simply continues to provide power to portions of volatile memory, including frame buffers, main memory, and the like, and to power off the remaining portions. There are two advantages to the S3 state: one is that the computer system will be faster to return to full-speed operation; The other is that the S3 state is used for better security when the user is operating private and secret data and does not want to store this data on the hard disk. Another type of hibernation is a spanned-to-disk (STD) state (also referred to as S4 state). In the S4 state, the advantage of the S4 state is better power savings since all of the operating data is written into nonvolatile memory for storage and then the entire computer system is powered off.
그러나, 하이버네이션의 상술한 상태 S3 및 S4의 효과 및 성능은 아주 만족스럽지 않다. 왜냐하면 컴퓨터 시스템이 S3 상태로 진입하면, 시스템 저장 생태를 유지하기 위해 전력이 계속해서 컴퓨터 시스템 내의 휘발성 메모리에 제공되어야 하기 때문이다. S4 상태가 채용되는 경우, S3 상태보다 전력이 더 절약될지라도, 컴퓨터 시스템이 전속도 동작으로 복귀하는 속도가 S3 상태의 속도보다 훨씬 더 느리다.However, the effects and performance of the above-described states S3 and S4 of hibernation are not very satisfactory. This is because when the computer system enters the S3 state, power must continuously be provided to the volatile memory within the computer system to maintain the system storage ecology. If the S4 state is employed, the speed at which the computer system returns to full speed operation is much slower than the speed of the S3 state, even though power is saved more than S3 state.
종래 기술의 문제점들 및 단점들을 고려하여, 본 발명은 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법을 개시하여, 컴퓨터 시스템이 하이버네이션으로 진입할 때, 사용되는 메모리가 감소하여, 컴퓨터 시스템이 전속도 동작으로 재활성화되는 반응 속도 및 효율을 증가시킬 수 있도록 한다.SUMMARY OF THE INVENTION In view of the problems and disadvantages of the prior art, the present invention discloses a high-speed computer system power-on and power-off method which reduces the memory used when the computer system enters the hibernation, Thereby enabling to increase the reaction rate and efficiency to be reactivated.
본 발명의 주목적은 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법을 제공하여, 컴퓨터 시스템이 하이버네이션으로 진입할 때 시스템에서 사용되는 메모리의 양이 과감하게 감소될 수 있도록 함으로써, 주 메모리에서 2차 저장 디바이스로 전달되는 데이터의 양을 감소시켜서, 전속도 동작으로 복귀하는 컴퓨터 시스템의 속도를 증가시키는 것이다.It is a primary object of the present invention to provide a high speed computer system power on and power off method that allows the amount of memory used in the system to be drastically reduced when the computer system enters the hibernation, Thereby reducing the amount of data transferred, thereby increasing the speed of the computer system returning to full speed operation.
본 발명의 다른 목적은 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법을 제공하여, 컴퓨터 시스템의 임시 전력 공급 중기 동안에 데이터 손실 및 손상의 정도가 감소될 수 있도록 할 수 있는 것이다.Another object of the present invention is to provide a high-speed computer system power-on and power-off method, which can reduce the degree of data loss and damage during a temporary power supply period of a computer system.
본 발명의 부가적인 목적은 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법을 제공하는 것으로서, 여기서 데이터 기록 및 데이터 검색은 랜덤 액세스(random access) 방식으로 수행되어, 컴퓨터 시스템이 하이버네이션으로 진입할 때, 또는 전속도 동작으로 재활성화될 때, 데이터 액세스 속도를 크게 증가시킬 수 있다.It is a further object of the present invention to provide a high speed computer system power on and power off method wherein the data recording and data retrieval are performed in a random access manner so that when the computer system enters the hibernation, The data access speed can be greatly increased.
상술한 목적을 달성하기 위해, 본 발명은 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법을 제공하여, 컴퓨터 시스템이 하이버네이션에 진입할 때, 상기 컴퓨터 시스템 내부에 포함되는 주 메모리의 적어도 일부는 복수의 크린 페이지(clean page)들 및 복수의 더티 페이지(dirty page)들로 분류되고, 상기 크린 페이지들은 스왑 아웃(swap out)되고 버려진 저장소이고, 상기 더티 페이지들은 하이버네이션 파일로 기록되고 적어도 2차 저장 디바이스의 스왑 공간 및 파일 시스템으로 저장된다. 그러므로, 상기 컴퓨터 시스템이 재활성화되면, 이 더티 페이지들은 상기 스왑 공간 및 파일 시스템으로부터 상기 하이버네이션 파일로, 그리고 역으로 상기 주 메모리로 재로딩됨으로써, 상기 컴퓨터 시스템은 상기 2차 저장 디바이스로부터 필요한 데이터를 판독하고나서 이를 역으로 상기 주 메모리로 로딩할 수 있다. 이와 같으므로, 상기 컴퓨터 시스템은 컴퓨터 시스템 재활성 및 최대 동작 속도로의 복귀의 속도를 높이는데 있어서, 전송되는 데이터의 양 및 상기 주 메모리로부터 상기 2차 저장 디바이스로 저장되는 데이터의 양을 감소시킬 수 있다.In order to achieve the above object, the present invention provides a high-speed computer system power-on and power-off method, such that when a computer system enters a hibernation, at least a portion of the main memory contained within the computer system includes a plurality of clean pages clean pages and a plurality of dirty pages, the clean pages being swapped out and abandoned storage, the dirty pages being recorded in a hibernation file and being swapped out of at least a secondary storage device Space and file system. Thus, once the computer system is reactivated, these dirty pages are reloaded from the swap space and file system to the hibernation file and vice versa, so that the computer system can retrieve the necessary data from the secondary storage device And then load it back into the main memory. As such, the computer system is configured to reduce the amount of data to be transferred and the amount of data stored in the secondary storage device from the main memory in order to speed up computer system reactivation and return to maximum operating speed .
본 발명의 부가적인 적용 가능성의 범위는 이후에 제공되는 상세한 설명으로부터 명백해질 것이다. 그러나, 상세한 설명 및 특정한 예들이 본 발명의 바람직한 실시예들을 나타낼지라도, 단지 예를 통하여 제공되는 것임이 이해되어야 하는데, 왜냐하면 본 발명의 정신 및 범위 내에 다양한 변형들 및 수정들이 본 상세한 설명으로부터 당업자에게 명확할 것이기 때문이다.The scope of additional applicability of the present invention will become apparent from the detailed description provided hereinafter. It should be understood, however, that the detailed description and specific examples, while indicating preferred embodiments of the invention, are provided by way of example only, since various changes and modifications within the spirit and scope of the invention will become apparent to those skilled in the art from this detailed description. It will be clear.
상술한 바와 같은 구성으로 인해, 본 발명은, 컴퓨터 시스템이 하이버네이션으로 진입할 때 시스템에서 사용되는 메모리의 양이 과감하게 감소될 수 있도록 하여, 주 메모리에서 2차 저장 디바이스로 전달되는 데이터의 양을 감소시켜서, 전속도 동작으로 복귀하는 컴퓨터 시스템의 속도를 증가시킨다. 또한, 본 발명은 컴퓨터 시스템의 임시 전력 공급 중기 동안에 데이터 손실 및 손상의 정도가 감소될 수 있고, 컴퓨터 시스템이 하이버네이션으로 진입할 때, 또는 전속도 동작으로 재활성화될 때, 데이터 액세스 속도가 증가될 수 있다.Due to the above-described configuration, the present invention enables the amount of memory used in the system to be drastically reduced when the computer system enters the hibernation, so that the amount of data transferred from the main memory to the secondary storage device Thereby increasing the speed of the computer system returning to full speed operation. Furthermore, the present invention can reduce the degree of data loss and corruption during a temporary power supply mid-term of a computer system, and when the computer system enters hibernation, or when it is reactivated at full speed operation, .
이후에 행해지는 본 발명의 상세한 설명과 관련되는 관련 도면들은 다음과 같이 설명된다:
도 1은 본 발명에 따른 고속 컴퓨터 시스템 파워 온 및 파워 오프 디바이스의 개략적인 도면; 및
도 2는 본 발명에 따른 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법의 단계들의 흐름도.BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are to be taken in conjunction with the following detailed description of the invention, are as follows:
1 is a schematic illustration of a high speed computer system power on and power off device in accordance with the present invention; And
2 is a flow diagram of the steps of a high speed computer system power on and power off method in accordance with the present invention.
본 발명의 목적, 구성, 특성들, 기능들 및 장점들은 첨부된 도면들을 참조하여 다음의 상세한 설명들을 통해 더욱 철저하게 인식되고 이해될 수 있다.BRIEF DESCRIPTION OF THE DRAWINGS The objects, features, features, and advantages of the present invention will become more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which: FIG.
본 발명에서, 고속 컴퓨터 파워 온 및 파워 오프 방법이 제안됨으로써, 사용되는 메모리의 양은 컴퓨터 시스템이 하이버네이션에 진입할 때 감소함으로써, 2차 저장 디바이스로 기록되는 데이터의 양을 감소시키고, 하이버네이션으로 진입하는 컴퓨터 시스템의 속도를 증가시키거나, 또는 전속도 동작으로 재활성화되거나 복구된다. 다음에서, 바람직한 실시예들은 본 발명의 기술적인 특징들을 설명하기 위해서 기술된다. 우선, 본 발명의 고속 컴퓨터 시스템 파워 온 및 파워 오프 디바이스의 개략도를 나타내는 도 1 을 참조한다. 도 1에 도시되는 바와 같이, 컴퓨터 시스템(10)은 중앙 처리 장치(CPU)(12), 주 메모리(14), 및 2차 저장 디바이스(16)를 포함한다. 2차 저장 디바이스(16)는 플래시 메모리(flash memory)와 같은 고속 랜덤 액세스 메모리(RAM) 디바이스일 수 있고, 주로, 파일 시스템(18), 스왑 공간(20), 및 하이버네이션 파일(22)에 대해 이용된다.In the present invention, the high-speed computer power-on and power-off method is proposed so that the amount of memory used decreases as the computer system enters the hibernation, thereby reducing the amount of data written to the secondary storage device, Increasing the speed of the computer system, or reactivating or restoring to full speed operation. In the following, preferred embodiments are described to illustrate the technical features of the present invention. First, reference is made to Fig. 1, which shows a schematic diagram of a high speed computer system power on and power off device of the present invention. 1, the
다음으로, 본 발명의 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법의 단계들의 흐름도에 대한 도 2를 참조하고, 한편 도 1을 참조하라. 도 2에 도시되는 바와 같이, 우선, 단계 S30에서 도시되는 것처럼, 컴퓨터 시스템(10)의 운영 시스템(OS)은 하이버네이션 모드로 진입하고, 섹션(section) 또는 페이지를 단위로 사용하여 주 메모리(14)를 크린 페이지들 및 더티 페이지들로 분할한다. 2차 저장 디바이스(16)에 크린 페이지들과 정확히 동일한 내용을 갖는 카피본이 저장되므로, 스왑 아웃된 크린 페이지들은 폐기된 저장소일 수 있다. 그러므로, 커널(kernel) 기능(function)은 주 메모리(14)를 할당하고 크린 페이지들의 스왑 아웃을 제어하는데 사용된다. 상기 커널 기능은 스왑 아웃하는데 필요한 크린 페이지들의 양에 기반하여 주 메모리(14)를 할당할 수 있고 크린 페이지들의 스왑 아웃 이후에 주 메모리를 릴리스(release)할 것이다. 기계 상태에서의 더티 페이지들은 하이버네이션 파일(22) 내에 저장되고나서, 2차 저장 디바이스(16)의 스왑 공간(20) 및 파일 시스템(18) 내에 저장된다. 여기서, 더티 페이지들은 자신의 주소들에 따라 저장될 수 있고, 연속적인 어드레스들의 더티 페이지들은 단일 기록 명령에 병합될 수 있다. 그리고나서, 단계 S32에서, 컴퓨터 시스템(10)이 재활성화되면, 컴퓨터 시스템(10)은 스왑 공간(20) 및 파일 시스템(18)으로부터 하이버네이션 파일(22)을 판독하고 하이버네이션 파일을 주 메모리(14)로 역으로 복구하여 시스템 상태를 복구할 것이다. 마지막으로, S34에 도시된 바와 같이, 컴퓨터 시스템(10)은 2차 저장 디바이스(16)로부터 데이터를 판독하고 이를 주 메모리(14)로 역으로 로딩할 것이다.Reference is now made to Fig. 2 of the flow diagram of the steps of a high speed computer system power on and power off method of the present invention, while referring to Fig. 2, first, as shown in step S30, the operating system (OS) of the
컴퓨터 시스템이 서스펜드-투-플래시(Suspend-To-Flash) 기능(function)을 수행하고 데이터를 플래시 메모리와 같은 2차 저장 디바이스(16)로 송신하는 것을 중단하는 속도는 주로 비휘발성 메모리에 기록될 필요가 있는 데이터의 양에 좌우된다. 스와핑 비포어 하이버레이팅(Swapping-Before-Hibernating)은 내부에 포함되는 기존 메모리 관리 기술을 통한 운영 시스템(OS)에 의해 실행됨으로써 메모리 페이지들의 대부분은 어떤 기록동작을 행하지 않고 직접 폐기되도록 함으로써 이는 서스펜드 속도를 증가시킬 수 있다. 재현 기능(resume function)을 실행하자마자, 데이터는 세 위치들로부터 각각 역으로 검색될 수 있다: 하이버네이션 파일(22), 스왑 공간(20), 및 파일 시스템(18). 커널에 속하는 시스템의 주 데이터 및 코드는 컴퓨터 시스템의 재활성화를 하자마자 즉시 역으로 검색될 것이고, 나머지 데이터는 사용자들이 현재 단계에서 필요로 하는 부분에 대한 페이징 온 디멘드(paging-on-demand) 방식으로 역으로 검색된다. 사용자에 의해 필요한 데이터의 양은 시스템의 서스펜션(suspension) 이전에 주 메모리 내의 모든 데이터 양보다 훨씬 적으므로, 재현 속도가 증가할 수 있다.The rate at which the computer system suspends the Suspend-To-Flash function and stops sending the data to the
일반적으로, 메모리 페이지는 다음과 같이 세 카테고리들로 각각 분류될 수 있다: 프리 페이지(free page), 익명 페이지(anonymous page), 및 명칭이 있는 페이지(named page). 여기서 프리 페이지들은 시스템에 의해 현재 사용되지 않는 메모리이므로 프리 페이지들 내의 내용들은 시스템에 무의미하다. 익명 페이지들은 프로그램의 실행 동안 동적으로 할당되는 메모리이고, 이 메모리의 부분은 주로: 스택(stack) 및 힙(heap)을 포함한다. 명칭이 있는 페이지는 주 메모리(14) 내의 파일의 카피이고, 이의 행동은 2차 저장 디바이스(16)에서의 캐시 메모리(cache memory)의 행동과 유사하다. 명칭이 있는 페이지는: 실행 가능 파일 및 메모리 내의 특정한 위치들에 대응하는 동적-링크 라이브러리(library)를 포함하고, 프로그램은 파일을 메모리로 매핑(mapping)하기l 위해 메모리 매핑 파일을 사용한다. 익명 페이지들 및 명칭이 있는 페이지들은 모두 크린 페이지들 또는 더티 페이지들일 수 있다. 더티 익명 페이지가 스와핑 아웃되면, 이는 스왑 공간(20)으로 기록되어야 하고, 더티 명칭이 있는 페이지는 파일 시스템(18) 내로 스왑 아웃된다. 운영 시스템(OS)은 크린 페이지를 스왑 아웃할 필요가 있는데, 왜냐하면 이 페이지는 2차 저장 디바이스(16)에서와 정확하게 동일한 내용들의 카피를 가져야만 하므로, 운영 시스템(OS)은 이 페이지를 직접 버릴 것이다.In general, a memory page can be classified into three categories as follows: a free page, an anonymous page, and a named page. Since the free pages are memories not currently used by the system, the contents in the free pages are meaningless to the system. Anonymous pages are memory dynamically allocated during execution of a program, and portions of this memory mainly include: a stack and a heap. The page with the name is a copy of the file in the
시스템이 서스펜드-투-플래시를 수행하기 시작할 때, 페이지들의 대부분은 2차 저장 디바이스(16)로 역으로 기록될 필요가 없는데, 이들 페이지들의 대부분이 크린 페이지들이기 때문이다. 상기 페이지들의 일부는 스왑 공간(20) 및 파일 시스템(18)으로 역으로 기록되어야만 하고, 나머지 페이지들은 비 스왑가능(non-swqppable) 메모리이며, 이들 페이지들은 주로 운영 시스템의 커널이거나 페이지들의 일부는 프로그램에 의해 성능 원인들로 인한 비 스왑 가능한 것으로서 설정된다. 최종적으로 비 스왑 가능 메모리는 하이버네이션 파일(22)로 기록될 것이다.When the system starts performing the suspend-to-flash, most of the pages do not need to be back-written to the
컴퓨터 시스템을 재시작하면, 루틴 하드웨어 초기화를 완료하고 OS 로더(loader)에 로딩하자마자, 상기 시스템은 자신이 하이버네이션 상태에서 정상 상태로 복귀할 것인지, 또는 일반적인 파워 온 절차를 수행할 것인지를 결정할 것이다. 전자의 경우, 하이버네이션 파일(22) 내의 데이터는 우선 주 메모리(14) 내에 로딩될 것이다. 이 동작을 마치자마자, OS는 기본 파워 온 절차를 완료하였다. 그리고나서, 사용자 요건에 따라, 컴퓨터 시스템은 파일 시스템(18) 및 스왑 공간(20) 내의 데이터를 역으로 주 메모리(14) 내로 로딩하고 원래 시스템 상태로 복귀한다. 스와핑 비포어 하이버네이팅 기능이 다시 실행될 필요가 있는데, 왜냐하면 이때 더티 페이지들의 일부는 지난번의 스와핑 비포어 하이버레이팅 기능의 수행 동안 스왑 공간(20)에 기록되어 와서 이 페이지들이 크린 페이지들이 되기 때문인데, 그러므로 CPU(12)는 이 페이지들에 대한 기록 동작을 수행하지 않을 것이며, 따라서 이 페이지들은 스왑 공간(20)에 다시 기록될 필요가 없다.Upon restarting the computer system, upon completion of the routine hardware initialization and loading into the OS loader, the system will determine whether it will return from a hibernation state to a normal state, or perform a generic power-on procedure. In the former case, the data in the
2차 저장 디바이스(16) 역할을 하는 플래시 메모리는 최적화 기술을 사용하는 것을 통해 랜덤 액세스에서 연속 액세스에 근접한 성능을 갖질 수 있다. 기록 조합(Writing-Combining) 기능을 통해, 메모리 페이지들의 스왑 아웃 동안에 초래되는 작은 랜덤 기록들은 이들이 실제로 플래시 메모리에 기록되기 전에 큐잉(queueing)되고, 이 페이지들은 우선 자신들의 물리적 주소들에 따라 분류되고나서, 연속 범위 완전 기록들이 이 스왑 아웃된 페이지들에 존재하는지가 인지될 수 있다. 응답이 긍정인 경우, 큰 기록 요청 동작이 사용되어 복수의 작은 기록 요청 동작들을 대체함으로써 스와핑 비포어 하이버네이팅 기능의 속도를 증가시킨다.A flash memory serving as the
스왑 가능 페이지들을 2차 저장 디바이스(16)에 기록하는 프로세스에서, 주 메모리를 할당할 때 OS의 최적화 동작이 실제로 할당되는 메모리의 양에 영향을 미치는 것을 방지하기 위해서, 큰 양의 메모리가 운영 시스템(OS)을 통해 요청될 수 있다. 그러므로, 일단 페이지가 할당되면, 데이터 바이트는 OS가 물리적 메모리를 상기 프로그램에 즉각 할당하도록 함으로써 상기 페이지 내에 기록된다. 이 강제적인 동작을 통해, OS는 메모리의 큰 부분을 스왑 아웃하게 된다. 후속해서, 시스템으로부터 요청되고 획득되는 모든 메모리를 OS로 역으로 복귀시키는데 자유로운 동작들이 수행된다.In order to prevent the optimizing operation of the OS from affecting the amount of memory actually allocated when allocating main memory in the process of writing swap-enabled pages to the
상술한 두 단계들의 구현예들을 통해, 운영 시스템(OS) 내의 대부분의 페이지들은 프리 페이지가 될 것이므로, 이 프리 페이지들은 하이버네이션 파일(22)에 역으로 기록될 필요가 없다.Through the implementation of the two steps described above, most of the pages in the operating system (OS) will be free pages, so that these free pages do not need to be written back to the
게다가, 요청은 메모리를 할당하기 위해 운영 시스템(OS)의 커널에서 직접적으로 행해질 수 있어서, 요청된 페이지들은 커널 기능을 통해 즉각적으로 할당될 수 있으면서도 OS가 실제로 메모리를 할당하도록 하는데 추가적인 기록 동작들을 요구하지 않도록 한다. 메모리의 할당을 완료하자마자, 자유 동작이 즉각 수행되어 상기 시스템이 대량의 프리 페이지들을 발생시킬 것이다. 메모리 할당이 커널 기능을 통해 행해지므로, 추가 기록 동작들이 필요하지 않다. 그러므로, 스왑 아웃된 페이지들의 수는 미리 계산되고 획득될 수 있으므로, 이는 얼마나 많은 메모리가 할당에 필요한지 계산해낼 수 있다.In addition, the request can be made directly in the kernel of the operating system (OS) to allocate memory so that the requested pages can be allocated immediately through the kernel function, while still requiring additional write operations Do not. Upon completion of the allocation of memory, the free operation is immediately performed and the system will generate a large number of free pages. Since memory allocation is done through the kernel function, no additional write operations are required. Therefore, the number of pages swapped out can be calculated and obtained in advance, so that it can be calculated how much memory is required for allocation.
더욱이, 운영 시스템(OS)에서의 스왑퍼 메커니즘은 필요한 메모리를 할당하는데 직접적으로 조작될 수 있다. 이 경우에, 리눅스 운영 시스템(OS)이예로 취용될 수 있고, 이의 커널에는 메모리 관리 기능, 즉, Shrink_All_Memory 기능이 제공된다. 이 기능은 메모리 페이지들을 검색하는데 사용되고, 호출되자마자, 이는 검색될 페이지들의 양으로 로딩될 수 있으므로, 메모리 페이지들은 사용자들에 의해 사용되는 시스템 및 프로그램의 안정성에 영향을 주지 않고도 자유로워지며 해제될 수 있다. Shrink_All_Memory 기능의 메커니즘은 커널 내에 있는 두 최근 최소 사용(LRU(Least-Recently-Used)) 목록들을 통해 실행된다: 활성 목록 및 비활성 목록. 여기서 활성 목록은 가장 최근에 액세스되지 않은 페이지들을 포함하고, 비활성 목록은 특정 시간 주기 동한 액세스되지 않았던 페이지들을 포함한다. 실제 적용에서, Shrink_All_Memory 기능은 우선 비활성 목록으로부터 검색 페이지들을 시작할 것이고, 그 후에 활성 목록으로부터 페이지들을 검색할 것이다. 그러므로, Shrink_All_Memory 기능의 적용을 통해, 페이지들은 사용자들에 의해 사용되는 시스템 및 프로그램들의 커널의 동작에 영향을 미치지 않고 필요한 만큼 스왑될 수 있다.Moreover, the swapper mechanism in the operating system (OS) can be manipulated directly to allocate the required memory. In this case, a Linux operating system (OS) can be employed, and its kernel is provided with a memory management function, i.e., Shrink_All_Memory function. This function is used to retrieve memory pages, and as soon as it is called, it can be loaded with the amount of pages to be retrieved so that the memory pages are freed up without affecting the stability of the system and programs used by users, . The mechanism of the Shrink_All_Memory feature is implemented through two recent least-recently used (LRU) lists within the kernel: the active list and the inactive list. Where the active list includes pages that have not been accessed most recently and the inactive list includes pages that have not been accessed for a particular period of time. In practical application, the Shrink_All_Memory function will first start the search pages from the inactive list, and then search the pages from the active list. Thus, through the application of the Shrink_All_Memory function, pages can be swapped as needed without affecting the operation of the kernel of the systems and programs used by users.
리눅스 운영 시스템(OS)에서의 커널의 관점으로부터, 2차 저장 디바이스(16)는 보통의 입력/출력(Input/Output) 디바이스로 고려되고, 메모리 페이지들이 스왑 공간(20)에서 스왑 아웃될 때 호출되는 Submit_Bio 기능에 의해 수신되는 파라미터들은: 섹터(sector) 수, 판독/기록 명령, 메모리 어드레스, 및 메모리 길이 등을 포함함으로써, 스왑 아웃되는 페이지들이 Submit_Bio 기능을 인터셉트(intercept)함으로써 더 프로세싱될 수 있다.From the perspective of the kernel in the Linux operating system (OS), the
상술한 바와 같이, 스왑 아웃되는 페이지들은 페이지의 사용 상태에 기반하고 주 메모리(14) 내의 자체의 물리적 주소에 기반하지 않음에 따라 Shrink_All_Memory 기능에 의해서 결정된다. 애플리케이션에서, 우선 Shrink_All_Memory 기능에 의해 발생되는 기록 요청들을 큐잉하고나서, 이 페이지들을 물리적 메모리 주소에 따라 분류하여, 입력/출력 액세스 수들을 감소시키고 입력/출력 요청 크기를 증가시킨다. 요청 크기가 클수록, 2차 저장 디바이스(16) 역할을 하는 플래시 메모리의 기록 성능이 양호해진다. 메모리 페이지가 스왑 아웃되면, 커널은 스왑 공간(20) 내의 페이지의 위치를 기록해야만 하므로, 커널은 2차 저장 디바이스(16)로부터 주 메모리(24)로 이 페이지를 재로딩할 수 있다. 기록 결합 기능이 Shrink_All_Memory 기능을 재기록하여 Shrink_All_Memory 기능이 수행한 이후마다, 스왑 공간(20)에서의 각각의 기록 페이지의 위치가 인증되어야 하므로, 이 정보는 페이지 표에서의 스왑 아웃된 페이지 식별자가 된다.As described above, the pages to be swapped out are determined by the Shrink_All_Memory function based on the usage state of the page and not based on its own physical address in the
바람직한 실시예의 상기 상술한 설명은 본 발명의 특징들 및 장점을 더욱 명확하게 설명하도록 의도된다. 그러나, 개시된 바람직한 실시예들은 본 발명의 범위에 어떠한 제한들로 의도되지 않는다. 역으로, 본 발명의 목적은 첨부된 청구항들의 범위 내에 있는 다양한 변화들 및 등가 장치들을 포함하는 것이다.The foregoing description of the preferred embodiments is intended to more clearly illustrate the features and advantages of the present invention. However, the disclosed preferred embodiments are not intended to limit the scope of the present invention. On the contrary, the purpose of the present invention is to cover various modifications and equivalent arrangements within the scope of the appended claims.
Claims (9)
컴퓨터 시스템이 하이버네이션에 진입할 때, 상기 컴퓨터 시스템은 주 메모리를 복수의 크린 페이지들 및 복수의 더티 페이지들로 분리하고, 상기 크린 페이지들은 I/O 액세스 없이 스왑 아웃되고, 상기 더티 페이지들은 하이버네이션 파일 내로 기록되고, 적어도 2차 저장 디바이스의 스왑 공간 및 파일 시스템에 저장되는 단계로서, 상기 2차 저장 디바이스는 고속 랜덤 액세스 메모리 디바이스인 상기 단계;
상기 컴퓨터 시스템이 재활성화되면, 상기 컴퓨터 시스템이 상기 스왑 공간 및 상기 파일 시스템으로부터 상기 하이버네이션 파일을 판독하고, 상기 하이버네이션 파일을 상기 주 메모리로 복구하는 단계; 및
상기 컴퓨터 시스템이 상기 2차 저장 디바이스로부터 데이터를 판독하고, 상기 데이터를 상기 주 메모리로 로딩하는 단계를 포함하는 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법.A high speed computer system power on and power off method comprising:
When the computer system enters the hibernation, the computer system separates the main memory into a plurality of clean pages and a plurality of dirty pages, and the clean pages are swapped out without I / O access, and the dirty pages are stored in a hibernation file And stored in at least a swap space and a file system of the secondary storage device, wherein the secondary storage device is a high speed random access memory device;
Reading the habitation file from the swap space and the file system and restoring the hibernation file to the main memory when the computer system is reactivated; And
The computer system reading data from the secondary storage device and loading the data into the main memory.
상기 컴퓨터 시스템이 상기 하이버네이션으로 진입하는 단계에서, 상기 크린 페이지들이 스왑 아웃되고, 상기 주 메모리가 해제되는 것을 특징으로 하는 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법.The method according to claim 1,
Wherein in the step of the computer system entering the hibernation, the clean pages are swapped out and the main memory is released.
상기 컴퓨터 시스템이 상기 하이버네이션으로 진입하는 단계에서, 상기 주 메모리에는 커널 기능이 제공되고, 상기 커널 기능은 상기 크린 페이지들의 스왑 아웃을 제어하는데 사용되고, 상기 크린 페이지들의 스왑 아웃의 완료 이후에 상기 주 메모리를 해제하는 것을 특징으로 하는 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법.3. The method of claim 2,
Wherein the main memory is provided with a kernel function, wherein the kernel function is used to control swap out of the clean pages, and after completion of the swap out of the clean pages, The high speed computer system power-on and power-off method.
상기 커널 기능은 스왑 아웃될 상기 크린 페이지들의 수를 계산하고, 상기 크린 페이지들의 상기 수에 기반하여 상기 주 메모리를 할당할 수 있는 것을 특징으로 하는 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법.The method of claim 3,
Wherein the kernel function is capable of calculating the number of clean pages to be swapped out and allocating the main memory based on the number of clean pages.
상기 2차 저장 디바이스는 플래시 메모리인 것을 특징으로 하는 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법.The method according to claim 1,
Wherein the secondary storage device is a flash memory.
상기 컴퓨터 시스템이 상기 하이버네이션으로 진입하는 단계에서, 상기 컴퓨터 시스템은 상기 주 메모리를 분할하는데 있어서 섹션을 유닛으로 사용하는 것을 특징으로 하는 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법.The method according to claim 1,
Wherein in the step of the computer system entering the hibernation, the computer system uses a section as a unit in partitioning the main memory.
상기 2차 저장 디바이스에는 상기 크린 페이지의 내용과 동일한 내용을 갖는 카피가 제공되는 것을 특징으로 하는 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법.The method according to claim 1,
Wherein the secondary storage device is provided with a copy having the same contents as the content of the clean page.
상기 컴퓨터 시스템이 상기 하이버네이션으로 진입하는 단계에서, 상기 스왑 아웃된 더티 페이지들은 자신들의 어드레스에 따라 분류되고, 연속 주소들의 상기 더티 페이지는 단일 기록 기능에 통합되고, 상기 2차 저장 디바이스에 기록 콤빙(writing-combing)되는 것을 특징으로 하는 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법.The method according to claim 1,
Wherein the swapped-out dirty pages are sorted according to their addresses, the dirty pages of consecutive addresses are incorporated into a single write function, and the recordable combo writing-combing the high-speed computer system.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW098131936A TWI399637B (en) | 2009-09-22 | 2009-09-22 | Fast switch machine method |
TW98131936 | 2009-09-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110033066A KR20110033066A (en) | 2011-03-30 |
KR101392062B1 true KR101392062B1 (en) | 2014-05-07 |
Family
ID=43937686
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100092274A KR101392062B1 (en) | 2009-09-22 | 2010-09-20 | Fast speed computer system power-on & power-off method |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101392062B1 (en) |
TW (1) | TWI399637B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160113483A (en) * | 2015-03-20 | 2016-09-29 | 한국전자통신연구원 | Apparatus and Method for updating a snapshot image |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799498A (en) * | 2011-05-27 | 2012-11-28 | 鸿富锦精密工业(深圳)有限公司 | Method and system for rapidly switching computer states |
TW201327160A (en) * | 2011-12-21 | 2013-07-01 | Ind Tech Res Inst | Method for hibernation mechanism and computer system therefor |
TWI514278B (en) * | 2012-09-19 | 2015-12-21 | Ind Tech Res Inst | Method for generating a reduced snapshot image for booting, computing apparatus readable recording medium, and computing apparatus |
TWI646463B (en) * | 2013-12-27 | 2019-01-01 | 財團法人工業技術研究院 | Electronic apparatus and method for resuming from hibernation |
TWI610239B (en) * | 2013-12-27 | 2018-01-01 | 財團法人工業技術研究院 | Electronic apparatus and method for resuming from hibernation |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003263366A (en) | 2002-03-12 | 2003-09-19 | Hitachi Ltd | Swapping control method, its execution device and its processing program |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7017037B2 (en) * | 2002-06-27 | 2006-03-21 | Microsoft Corporation | Apparatus and method to decrease boot time and hibernate awaken time of a computer system utilizing disk spin-up-time |
TW591373B (en) * | 2002-11-15 | 2004-06-11 | Acer Inc | Handheld device having sleep function and the operating method thereof |
US20060053325A1 (en) * | 2004-09-03 | 2006-03-09 | Chary Ram V | Storing system information in a low-latency persistent memory device upon transition to a lower-power state |
JP4831418B2 (en) * | 2006-12-28 | 2011-12-07 | ソニー株式会社 | Information processing apparatus and method, and program |
TW200937177A (en) * | 2008-02-29 | 2009-09-01 | Hon Hai Prec Ind Co Ltd | Method for switching work states of a computer |
-
2009
- 2009-09-22 TW TW098131936A patent/TWI399637B/en active
-
2010
- 2010-09-20 KR KR1020100092274A patent/KR101392062B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003263366A (en) | 2002-03-12 | 2003-09-19 | Hitachi Ltd | Swapping control method, its execution device and its processing program |
Non-Patent Citations (1)
Title |
---|
'리눅스 메모리 관리'(http://wiki.kldp.org/Translations/html/The_Linux_Kernel-KLDP/tlk3.html,;1999.11.08.) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160113483A (en) * | 2015-03-20 | 2016-09-29 | 한국전자통신연구원 | Apparatus and Method for updating a snapshot image |
KR102011059B1 (en) * | 2015-03-20 | 2019-08-16 | 한국전자통신연구원 | Apparatus and Method for updating a snapshot image |
Also Published As
Publication number | Publication date |
---|---|
TW201111966A (en) | 2011-04-01 |
TWI399637B (en) | 2013-06-21 |
KR20110033066A (en) | 2011-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5663060B2 (en) | Method and system for facilitating fast startup of a flash memory system | |
KR101713051B1 (en) | Hybrid Memory System and Management Method there-of | |
US9910602B2 (en) | Device and memory system for storing and recovering page table data upon power loss | |
US8930732B2 (en) | Fast speed computer system power-on and power-off method | |
JP5376983B2 (en) | Memory system | |
KR102093523B1 (en) | Working set swapping using a sequentially ordered swap file | |
US7093089B2 (en) | Systems and methods for storing data on computer systems | |
US6857047B2 (en) | Memory compression for computer systems | |
JP5255348B2 (en) | Memory allocation for crash dump | |
US7979631B2 (en) | Method of prefetching data in hard disk drive, recording medium including program to execute the method, and apparatus to perform the method | |
US10248322B2 (en) | Memory system | |
EP3531292B1 (en) | Methods and apparatus for supporting persistent memory | |
KR101392062B1 (en) | Fast speed computer system power-on & power-off method | |
KR102443600B1 (en) | hybrid memory system | |
KR102434170B1 (en) | hybrid memory system | |
US20070294550A1 (en) | Memory Management With Defragmentation In A Computing Device | |
US8583890B2 (en) | Disposition instructions for extended access commands | |
JP2020191055A (en) | Recovery processing method and device from instantaneous interruption, and computer readable storage medium | |
CN111459400B (en) | Method and apparatus for pipeline-based access management in storage servers | |
JP4792065B2 (en) | Data storage method | |
KR101744401B1 (en) | Method for storaging and restoring system status of computing apparatus and computing apparatus | |
JP3526160B2 (en) | Data cache control method | |
Lo et al. | Optimizing swap space for improving process response after system resume | |
Vohra | Comparative Study of Memory Optimization In Android System | |
CN111190543A (en) | Storage method and system for sharing NVDIMM storage resources among threads |
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: 20170411 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20200224 Year of fee payment: 9 |