KR100289627B1 - 멀티태스킹 기능을 가지는 정보처리시스템을 위한 자원관리방법 및 그 장치 - Google Patents

멀티태스킹 기능을 가지는 정보처리시스템을 위한 자원관리방법 및 그 장치 Download PDF

Info

Publication number
KR100289627B1
KR100289627B1 KR1019970003123A KR19970003123A KR100289627B1 KR 100289627 B1 KR100289627 B1 KR 100289627B1 KR 1019970003123 A KR1019970003123 A KR 1019970003123A KR 19970003123 A KR19970003123 A KR 19970003123A KR 100289627 B1 KR100289627 B1 KR 100289627B1
Authority
KR
South Korea
Prior art keywords
main memory
amount
free
page
file
Prior art date
Application number
KR1019970003123A
Other languages
English (en)
Other versions
KR970059941A (ko
Inventor
유타카 누마지리
히로시 사카이
Original Assignee
니시무로 타이죠
가부시끼가이샤 도시바
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 니시무로 타이죠, 가부시끼가이샤 도시바 filed Critical 니시무로 타이죠
Publication of KR970059941A publication Critical patent/KR970059941A/ko
Application granted granted Critical
Publication of KR100289627B1 publication Critical patent/KR100289627B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/123Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list
    • G06F12/124Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list being minimized, e.g. non MRU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/126Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning
    • G06F12/127Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning using additional replacement algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F2003/0697Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/40Specific encoding of data in memory or cache
    • G06F2212/401Compressed data
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99956File allocation
    • Y10S707/99957Garbage collection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

본 발명은 가상메모리 컴퓨터 시스템에서 사용되는 주메모리 공간 해방 장치에 관한 것이다. 이 장치에 있어서, 페이지아웃 데몬 프로세스가 주메모리의 페이지 프레임을 주기적으로 조사하여 최근에 접근이 없었던 주메모리 페이지를 해방한다. 운영시스템은 빈 주메모리의 양을 취득하는 유닛과, 페이지아웃 데몬 프로세스가 빈 주메모리의 양에 따라 페이지 프레임을 조사할 때의 속도를 제어하는 유닛을 포함한다.

Description

멀티태스킹 기능의 정보처리시스템을 위한 자원관리방법 및 그 장치
본 발명은 멀티태스킹 기능의 정보처리시스템을 위한 자원관리방법 및 그 장치에 관한 것으로서, 보다 상세하게는 자원이 부족한 때의 자원 해방 방법 및 그 장치에 관한 것이다.
최근들어 컴퓨터 시스템 내의 프로세스 수와 크기가 증가함에 따라 자원 관리는 더욱 중요해지게 되었다.
예컨대, 종래에 있어서, 한 프로세스가 주메모리의 어떤 크기를 요구하고 있는데 그 요구된 크기보다 적은 양의 빈 주메모리만이 있는 경우에는, 상기 프로세스는 메모리 할당 실패라는 결과를 수신하거나 또는 필요한 메모리 분량이 할당가능하게 될 때까지 대기상태로 된다. 특히, 빈 주메모리의 분량이 프로세스 생성시에 부족한 경우에는 상기 프로세스는 종료하게 된다.
이와 유사하게, 한 프로세스가 디스크상의 파일영역의 어떤 크기를 요구하고 있는데 그 요구된 크기보다 적은 양의 파일영역만이 있는 경우에는, 상기 프로세스는 파일영역 할당 실패라는 결과를 수신하거나 또는 필요한 파일영역이 할당가능하게 될 때까지 대기상태로 된다.
따라서, 종래 기술에 있어서의 문제들을 요약하면 다음과 같다.
주메모리 자원 관리에 있어서는, 한 프로세스가 주메모리의 할당을 요구하고 있는데 그 요구된 크기보다 적은 양의 빈 주메모리만이 있는 경우에는, 상기 프로세스는 메모리 할당 실패라는 결과를 수신하거나 또는 필요한 메모리 분량이 할당가능하게 될 때까지 대기상태로 된다. 그러므로, 종종 주메모리의 초과부분을 낮은 우선권을 가진 프로세스가 사용하고 있는 이유로 더 높은 우선권을 가진 프로세스의 메모리 할당요구가 오랜 시간동안 저지되는 경우가 발생한다. 종래의 컴퓨터 시스템에서 사용된 주메모리공간 해방방법은 위와 같은 경우에 대하여 적절하게 대처하고 있지 않다.
디스크 공간 자원 관리에 있어서는, 한 프로세스가 디스크상의 파일영역 할당을 요구하고 있는데 그 요구된 크기보다 적은 양의 빈 영역만이 있는 경우에는, 상기 프로세스는 파일영역 할당 실패라는 결과를 수신하거나 또는 필요한 양이 할당가능하게 될 때까지 대기상태로 된다. 그러므로, 종종 디스크 용량 부족이라는 이유로 더 높은 우선권을 가진 프로세스의 파일 할당요구가 오랜 시간동안 저지되거나 종료되는 경우가 발생한다. 종래의 컴퓨터 시스템에서 사용된 디스크공간 해방방법은 위와 같은 경우에 대하여 적절하게 대처하고 있지 않다.
따라서, 본 발명의 목적은 각 컴퓨터 시스템에 조화될 수 있는 자원 해방 방법 및 그 장치를 제공하는데 있다.
가상메모리 컴퓨터 시스템내의 주메모리공간 해방방법에 있어서,
본 발명의 첫 번째 양태에 따르면, 페이지아웃 데몬 프로세스가 주메모리 페이지를 해방하기 위하여 주메모리의 페이지 프레임을 주기적으로 조사하고, 상기 페이지 프레임은 페이지 프레임 테이블에 저장되는 가상메모리 컴퓨터 시스템 내에서 주메모리공간 해방방법이 제공되는데, 상기 방법은 빈 주메모리의 양을 취득하는 단계와; 빈 주메모리 양에 따라 페이지아웃 데몬 프로세스가 상기 페이지 프레임 테이블 내의 페이지 프레임을 조사하는 속도를 결정하는 단계를 포함한다.
일반적으로, 가상메모리 시스템에는 각각의 물리적인 주메모리를 관리하는 페이지 프레임, 페이지아웃 데몬 프로세스, 및 프로세스의 가상메모리 지지 메카니즘을 채용하고 있다. 각각의 물리적인 주메모리 페이지에 할당되는 페이지 프레임에는, 다른 정보뿐만 아니라 참조비트가 포함된다. 프로세서가 물리적인 주메모리 페이지로의 접근을 시도하는 때에, 상기 프로세서의 가상메모리 지지 메카니즘이 해당 페이지 프레임의 참조비트를 설정한다.
페이지아웃 데몬 프로세스는, 디스패치된 경우, 페이지 프레임의 일부를 조사한다. 그 참조비트가 설정되어 있는 페이지 프레임에 대해서 페이지아웃 데몬 프로세스는 그 참조비트를 소거한다. 그 참조비트가 소거되어 있는 페이지 프레임에 대해서는, 페이지아웃 데몬 프로세스는 해당 주메모리 페이지를 해방한다. 페이지아웃 데몬 프로세스가 마지막 페이지 프레임에 도달하면 다시 처음 페이지 프레임으로 돌아간다.
본 발명에 따르면, 빈 주메모리의 양이 작은 경우에는 페이지 프레임은 짧은 간격으로 조사된다. 그러므로, 페이지아웃 데몬이 페이지 프레임을 그 다음에 조사하는 때에 참조비트는 소거된 채 남아있기가 쉬우며, 따라서 더 많은 주메모리 페이지를 해방하게 한다.
다른 한편, 빈 주메모리의 양이 큰 경우에는 페이지 프레임은 더 긴 간격으로 조사된다. 그러므로, 페이지아웃 데몬이 페이지 프레임을 그 다음에 조사하는 때에 참조비트는 설정된 채 남아있기가 쉽다. 주메모리 페이지가 과도하게 해방되는 것을 방지하는 것에 의해, 컴퓨터 시스템은 더 좋은 수행능력을 보인다.
본 발명의 두 번째 양태에 따르면, 컴퓨터 시스템내에서 사용되는 주메모리 공간 해방방법이 제공되는데, 상기 방법은 그 물리적 메모리 페이지가 해방될 프로세스를 선택하는 선택수법의 순열을 결정하는 단계와; 임계값을 결정하는 단계와; 빈 주메모리의 양을 취득하는 단계와; 빈 주메모리의 양이 상기 임계값보다 더 낮게 될 때, 상기 선택수법의 순열에 기초하여 주메모리를 사용하는 프로세스들 가운데서 한 프로세스를 선택하는 단계; 및 선택된 프로세스에 할당된 주메모리를 해방하는 단계를 포함한다.
주메모리공간 해방방법에 따르면, 선택수법의 순열 및 임계값은 각 컴퓨터 시스템에 따라 바람직하게 결정된다. 빈 주메모리의 양이 상기 임계값보다 낮게 되는 경우에, 주메모리의 일부를 사용하는 프로세스가 선택수법의 순열에 기초하여 선택되고 선택된 프로세스에 할당된 주메모리가 해방된다. 여기서, 선택수법의 순열의 의미는 다음과 같다. 만약 하나 이상의 수법이 존재하는 경우에는 각 수법들 사이에는 선형적인 순서 관계가 존재한다. 첫 번째 수법이 프로세스를 찾기 위해 적용된다. 첫 번째 수법과 일치하는 프로세스가 존재하는 경우에는 그 프로세스가 선택된다. 그렇지 않는 경우에는 두 번째 수법이 다음으로 적용되고 이런 식으로 계속된다.
수법의 순열이 적절하게 결정됨으로써, 대단히 많은 컴퓨터 시스템의 종류에 있어서 좋은 수행능력이 성취된다. 예컨대, 적은 수의 갱신된 주메모리 페이지를 가지는 프로세스를 선택하는 것이 일반적으로 바람직하다.
컴퓨터 시스템의 형태에 따라 임계값을 결정하는 것도 또한 중요하다. 메모리 할당이 오랜 시간동안 방해되는 위험이 그리 심각하지 않는 경우에는, 임계값은 작은 양수값인 것이 바람직하다. 만약 방해되는 간격이 어떤 시간 이내이어야 할 경우라면 임계값은 메모리 할당요구의 최대크기와 동일한 것이 바람직하다.
더 나아가서, 주메모리공간 해방방법은 운영시스템상의 특권모드로 실행되는 프로세스로서 구현될 수 있다. 주메모리 공간 해방 프로세스는, 그 실행의 시작에서, 시스템 관리자에 의하여 수법의 순열 및 임계값 또는 시스템 관리자에 의하여 준비된 파라미터 파일이 주어진다. 그 다음엔 주메모리 공간 해방 프로세스는 대기상태로 들어간다. 주메모리 공간 해방 프로세스는 빈 주메모리의 양이 임계값보다 낮게 되는 때에 활성화된다. 주메모리 공간 해방 프로세스는 운영시스템 내의 프로세스 테이블을 참조하여 한 프로세스를 선택하며 선택된 프로세스에 할당된 주메모리를 해방한다. 주메모리공간 해방방법을 하나의 프로세스로서 구현하는 방식에는 시스템 관리자가 프로세스를 선택하는 수법을 최적화할 수 있으며 심지어 소스 프로그램을 편집, 컴파일함으로써 새로운 수법을 추가할 수도 있다는 장점이 있다.
본 발명의 세 번째 양태에 따르면, 디스크 용량을 가지고 있는 컴퓨터 시스템에서 사용되는 디스크 용량의 디스크공간 해방 방법을 제공하는데, 상기 방법은 그 데이터가 압축될 디스크 용량 내에서 한 파일을 선택하는 선택수법의의 순열을 결정하는 단계와; 첫 번째 임계값을 결정하는 단계와; 디스크 용량의 빈 영역의 양을 취득하는 단계와; 디스크 용량의 빈 영역의 양이 상기 첫 번째 임계값보다 낮게 되는 때에, 상기 선택수법의 순열에 따라서 디스크 용량 내에 존재하는 파일들 중에서 하나의 파일을 선택하는 단계와; 선택된 파일을 압축하는 단계; 및 압축에 의하여 생성된 나머지 영역을 해방하는 단계를 포함한다.
디스크공간 해방방법에 따르면, 선택수법의 순열 및 임계값은 개별 컴퓨터 시스템에 따라 바람직하게 결정된다. 디스크 용량의 빈 영역의 양이 상기 임계값보다 낮게 되는 경우, 디스크 용량 내에 존재하는 한 파일이 수법의 순열에 기초하여 선택되고, 선택된 파일은 압축되며, 압축에 의하여 생성된 나머지 영역이 해방된다.
수법의 순열을 적절하게 결정함으로써, 광범위한 컴퓨터 시스템에서 좋은 수행능력이 달성될 수 있다. 예컨대, 이는 최근에 억세스된 적이 없는 파일을 선택하는 것이 일반적으로 바람직하다.
컴퓨터 시스템의 형태에 따라 임계값을 결정하는 것도 또한 중요하다. 파일할당이 오랜 시간동안 방해되는 위험이 그리 심각하지 않는 경우에는, 임계값은 영 또는 작은 양수값인 것이 바람직하다. 만약 방해되는 간격이 어떤 시간 이내이어야 할 경우라면 임계값은 파일 할당요구의 최대크기와 동일한 것이 바람직하다.
또한, 디스크공간 해방방법은 특권적인 파일접근허락을 받은 프로세스로서 구현될 수 있다. 디스크 공간 해방 프로세스는, 그 실행의 시작에서, 시스템 관리자에 의하여 수법의 순열 및 임계값이 주어지거나 시스템 관리자에 의하여 준비된 파라미터 파일이 주어진다. 그 다음엔 디스크 공간 해방 프로세스는 대기상태로 들어간다. 디스크 공간 해방 프로세스는 디스크 용량의 빈 영역의 양이 임계값보다 낮게 되는 때에 활성화된다. 디스크 공간 해방 프로세스는 디스크 용량 내의 한 파일을 선택하며 선택된 파일을 압축하고, 압축에 의하여 생성된 나머지 영역을 해방한다. 디스크공간 해방방법을 하나의 프로세스로서 구현하는 방식에는 시스템 관리자가 파일을 선택하는 수법을 최적화할 수 있으며 심지어 소스 프로그램을 편집, 컴파일함으로써 새로운 수법을 추가할 수도 있다는 장점이 있다.
본 발명의 추가되는 목적 및 장점은 다음에 서술되는 바에 의하여 진술될 것이고, 부분적으로는 상기 서술에 의하여 명백해질 것이고, 또는 본 발명의 실시에 의하여 자명해질 수 있다. 본 발명의 목적 및 장점은 첨부되어 있는 청구항에서 특히 지적되어 있는 기술구성 및 조합에 의하여 실제화되며 획득될 수 있다.
도 1은 본 발명의 첫 번째 실시예에 따른 주메모리 공간 해방 장치의 도시적인 구성을 보여주는 기능 블럭도.
도 2는 본 발명의 두 번째 실시예에 따른 주메모리 공간 해방 장치의 도식적인 구성을 보여주는 기능 블럭도.
도 3은 두 번째 실시예에 따른 주메모리 공간 해방 장치의 작동 순서를 예시하는 순서도.
도 4A 및 4B는 두 번째 실시예에 따른 시스템 관리자가 수법들을 선택하도록 하기 위하여 모니터 스크린상에 그 예들이 디스플레이된 모습.
도 5는 두 번째 실시예에 따른 주메모리 공간 해방 장치의 작동원리를 예시하는 개념도.
도 6은 본 발명의 세 번째 실시예에 따른 디스크 공간 해방 장치의 도식적인 구성을 보여주는 기능 블럭도.
도 7은 세 번째 실시예에 따른 디스크 공간 해방 장치의 작동 순서를 예시하는 순서도.
도 8은 세 번째 실시예에 따른 디스크 공간 해방 장치의 작동원리를 예시하는 개념도.
도 9는 세 번째 실시예에 따른 디스크 공간 해방 장치의 작동원리를 예시하는 개념도.
도 10A 및 10B는 세 번째 실시예에 따른 디스크 공간 해방 장치의 작동 순서를 예시하는 순서도.
도 11은 본 발명의 네 번째 실시예에 따른 디스크 공간 해방 장치의 도식적인 구성을 보여주는 기능 블럭도.
본 발명의 양호한 실시예를 예시하고 있는 첨부된 도면을 참조하여, 본 발명의 실시예를 상세히 설명하면 다음과 같다.
(첫 번째 실시예)
도 1은 본 발명의 첫 번째 실시예에 따른 주메모리 공간 해방 장치의 도식적인 구성을 보여주는 기능 블럭도이다.
본 실시예에 따른 주메모리 공간 해방 장치에 있어서, 전체적인 제어동작은 운영시스템(10)에 의하여 이루어지며, 운영시스템(10) 내에서 간격타이머(11)가 소정 간격마다 인터럽트 신호를 발생시킨다. 이 인터럽트 신호에 대한 반응으로, 클록 인터럽트 핸들러(16)가 페이지아웃 데몬 프로세스(20)를 디스패치한다.
디스패치되는 경우에, 페이지아웃 데몬 프로세스(20)는 어떤 갯수의 페이지 프레임들(29)을 조사(페이지 프레임들을 순환적으로 조사)하며, 각각의 페이지 프레임의 참조비트를 검사하고 참조비트가 (";1";로) 설정되어 있는 경우에는 참조비트를 (";0";으로) 소거한다.
프로세스가 참조비트에 해당하는 페이지에 접근하는 경우에 참조비트가 설정된다. 그러므로, 소거된 참조비트가 의미하는 것은 이전의 조사때부터 프로세스가 해당 페이지에 접근한 적이 없다는 것이다. 그러므로, 이 경우, 페이지아웃 데몬 프로세스(20)는 이 메모리 페이지를 해방한다.
이 실시예에 있어서 주메모리 관리모듈(12)은 주메모리 관리 테이블(14)안에 주메모리내의 사용가능한 페이지 수를 유지한다. 페이지아웃 데몬 프로세스(20)는 조사될 페이지 프레임의 수를 결정한다. 상기 페이지 프레임 수를 조사한 후, 페이지아웃 데몬 프로세스(20)는 간격타이머(11)에 의하여 다음 인터럽트 신호가 생성될 때까지 동작을 멈춘다. 다른 방식으로는, 주메모리 관리모듈(12)이 페이지아웃 데몬 프로세스(20)에 페이지 프레임 수를 결정하여 제공하도록 구성될 수 있다.
빈 주메모리의 양이 작은 경우에는, 페이지아웃 데몬 프로세스(20)의 각 디스패치중 조사될 페이지 프레임의 수는 페이지 프레임의 조사 속도를 가속할 수 있도록 더 큰 값이어야만 한다.
빈 주메모리의 양이 충분히 큰 경우에는, 페이지아웃 데몬 프로세스(20)의 각 디스패치중 조사될 페이지 프레임의 수를 사용되고 있는 주메모리 페이지가 과도하게 해방되는 것을 방지할 수 있도록 더 작은 값으로 설정함으로써 전체 시스템 성능이 좋은 조건을 유지할 수 있게 된다.
이렇게 하여, 빈 주메모리의 양에 따라 적절하고 효과적인 주메모리 공간 해방이 이루어질 수 있다. 페이지아웃 데몬 프로세스(20)의 각 디스패치중 조사될 페이지 프레임의 수를 변화시키는 것 대신, 동일한 효과를 얻을 수 있도록 클록 인터럽트 핸들러(16)가 페이지아웃 데몬 프로세스(20)를 디스패치하는 주파수를 변화시키는 것도 가능하다.
(두 번째 실시예)
다음에는 본 발명의 두 번째 실시예에 대하여 도 2 내지 5를 참조하여 설명한다.
도 2는 본 발명의 두 번째 실시예에 따른 주메모리 공간 해방 장치의 도식적인 구성을 보여주는 기능 블럭도이다.
본 실시예에 따른 주메모리 공간 해방 장치에 있어서, 전체적인 제어동작은 운영시스템(10)에 의하여 이루어지며, 운영시스템(10)은 메모리관리 테이블(13)과 프로세스관리 테이블(14)을 관리한다. 메모리관리 테이블(13)상의 빈 주메모리의 양이 소정값보다 더 작아지는 경우 운영시스템(10)은 주메모리 해방 프로세스(40)을 디스패치한다.
주메모리 해방 프로세스(40)는 메모리관리 테이블(13)과 프로세스관리 테이블(14)을 참조하여 작동한다.
도 2에 도시되어 있는 바와 같이, 주메모리 해방 프로세스(40)는 단계(41)를 수행한다. 단계(41)에서, 사용 가능한 영역이 부족한 경우를 기다리기 위하여 시스템콜(10a)이 호출된다.
이제 주메모리(30)의 일부가 프로세스들 중 하나에 새롭게 할당되었다고 가정하면, 결과적으로, 사용가능한 메모리의 양이 임계값보다 낮아진다. 그러면, 운영시스템(10)이 주메모리 해방 프로세스(40)를 디스패치한다.
그런후, 단계(42)에서, 주메모리 해방 프로세스(40)가 예컨대 프로세스 관리 테이블(14)을 참조하여, 우선권 수준이 가장 낮은 프로세스를 선택한다. 단계(43)에서는, 선택된 프로세스에 할당되었던 페이지들이 해방된다. 해방 실행 방법으로써 프로세스의 종료 또는 스왑아웃이 고려된다. 해방실행에 의하여 메모리 부족이 해결된다.
결과적으로, 예컨대 낮은 우선권을 가진 프로세스의 존재 때문에 높은 우선권을 가진 프로세스가 오랜 시간동안 실행되지 못하는 문제는 발생되지 않으며, 적절한 주메모리 공간 해방이 성취될 수 있다.
규칙적인 간격으로 실행되는 프로세스들이 존재하는 경우에는, 우선권 대신에 다음 계획된 시간에 기초하여 프로세스를 선택하는 것이 효과적일 것이다. 다른 경우에는, 종료시간이 특정되지 않은 배치 프로세스를 선택하는 것, 또는 요구된 메모리 해방시간을 고려함으로써 갱신된 메모리의 수를 적게 가지는 프로세스를 선택하는 것이 효과적이다. 이 선택은 프로세스관리 테이블(14)의 사용에 의하여 달성될 수 있다. 또한, 주메모리 해방 프로세스(40) 자신에게 할당된 메모리를 해방하는 것이 종종 효과적일 때도 있다.
주메모리 해방 프로세스(40)가 디스패치되는 경우는 빈 주메모리의 양이 소정값보다 작게 되는 경우뿐이므로, 빈 주메모리의 양이 충분히 큰 경우에는 불필요한 오버헤드가 발생하지 않게 되어 있다. 또한, 이는 운영시스템(10)의 제어하의 특권모드로 작동되는 프로세스로서 구성되기 때문에, 주메모리(30)의 주메모리 공간 해방 규칙이 프로그램 소스코드를 재작성 및 컴파일함에 의하여 쉽게 추가되거나 수정될 수 있고 유연성이 얻어질 수 있다.
도 3은 본 실시예의 주메모리 공간 해방 프로세스의 작동 순서를 보여준다.
본 실시예의 주메모리 공간 해방 프로세스에 있어서는, 시스템 관리자가 원하는 수법을 선택할 수 있도록 하기 위하여 도 4A에 도시되어 있는 바와 같이 프로세스 선택수법의 메뉴가 디스플레이된다(A1 단계). 그런 다음, 시스템 관리자는 필드(51)에 원하는 수법에 해당하는 번호를 입력한다(A2 단계).
도 4B에 시스템 관리자에 의한 선택결과가 보여지고 있는데, 이 경우에는 수법 2, 수법 1 및 수법 4가 차례로 선택되었다.
이런 방식으로 프로세스를 선택하기 위한 수법들의 순열이 결정된다. 계속해서, 임계값이 결정된다(A3 단계).
그런후, 주메모리 해방 프로세스(40)는 사용가능한 영역이 부족되는 경우를 기다린다(A4 단계). 빈 주메모리의 양이 임계값보다 적게 되는 때에, 주메모리 해방 프로세스(40)는 디스패치되고 목적 프로세스를 선택하며(A5 단계), 선택된 프로세스에 할당되었던 주메모리(30)를 해방한다(A6 단계). 그런 후, 운영시스템(10)으로부터 주메모리 해방 프로세스(40)의 종료지시가 내려질 때까지 A4 내지 A6 단계의 작동이 반복적으로 이루어진다.
A5 단계에서, 도 4B의 필드(51)에 특정되었던 우선순위에 따라 수법들은 하나하나 적용된다. 즉, 도 4B에 도시되어 있는 필드(51)에서는 숫자 2, 1, 4가 차례로 특정되어 있다. 특히, 수법 ";2";에 해당하는 프로세스가 존재하는 경우는 그 프로세스가 선택된다. 그렇지 않은 경우에는, 수법 ";1";에 해당하는 프로세스가 존재하는지 아닌지가 결정된다. 만약 수법 ";1";에 해당하는 프로세스가 존재하면 그 프로세스가 선택된다. 아닌 경우에는, 수법 ";4";에 해당하는 프로세스가 존재하는지 아닌지가 결정된다.
다음으로, 도 5를 참조하여 주메모리 공간 해방 프로세스의 작동 원리를 설명한다.
이제 도 5의 왼쪽에 도시되어 있는 바와 같이 주메모리(30)가 할당되어 있다고 가정하자. 만약 응용프로세스 A가 빈 주메모리의 양보다 더 큰 메모리량을 요구하는 경우에는, 주메모리 해방 프로세스(40)가 가장 낮은 우선권의 응용프로세스 B에 의하여 사용되는 메모리를 강제적으로 해방한다. 그런 다음, 해방된 메모리 영역은 응용프로세스 A에 대하여 할당되고 높은 우선권을 가지는 응용프로세스 A는 도 5의 오른쪽에 도시된 바와 같이 계속 실행될 수 있다.
만약 응용프로세스 A가 상기 메모리해방에 의해서도 유지될 수 없는 경우에는, 소정 임계값은 충분히 높아야만 한다. 그런 다음 메모리 해방은 더욱 진행될 수 있을 것이다.
결과적으로, 적절한 주메모리 공간 해방이 성취될 수 있다.
(세 번째 실시예)
다음에는, 본 발명의 세 번째 실시예를 도 6 내지 10을 참조하여 설명한다.
도 6은 본 발명의 세 번째 실시예에 따른 디스크 공간 해방 장치의 도식적인 구성을 보여주는 기능 블럭도이다.
본 실시예의 디스크 공간 해방 장치에 있어서는, 전체적인 제어동작은 운영시스템(10)에 의하여 이루어지며, 운영시스템(10)은 파일관리 테이블(15)을 관리한다. 디스크(70)의 빈 영역의 양이 소정값보다 더 작아지는 경우 운영시스템(10)은 파일압축 프로세스(60)을 디스패치한다.
파일압축 프로세스(60)는 운영시스템(10)이 관리하는 파일관리 테이블(15)을 참조하여 작동한다. 도 6에 도시되어 있는 바와 같이, 파일압축 프로세스(60)는 사용가능한 영역이 부족한 경우를 기다리는 단계(61)와, 파일선택 단계(62), 그리고 파일압축 단계(63)으로 이루어진다. 먼저, 제1단계(61)에서는, 파일압축 프로세스(60)가 운영시스템(10)을 호출하고 디스크(70)의 빈 영역이 불충분해질 때까지 작동을 멈춘다.
이제 파일의 연장 또는 생성에 대한 요구가 새로이 일어났다고 가정하면, 결과적으로, 남아있는 빈 영역의 크기가 소정값보다 낮아지는데, 즉 디스크(70)의 빈 영역의 양이 불충분해진다. 그러면, 운영시스템(10)이 파일압축 프로세스(60)를 디스패치한다. 파일압축 프로세스(60)는 단계(62)에서 파일관리 테이블(15)을 참조하여 예컨대 가장 오래된 날짜를 가지고 있는 파일을 선택한다. 단계(63)에서는 그 파일이 압축되며, 여분의 영역이 미래의 할당을 위하여 해방된다.
예를 들면, 백업파일으로써 사용된 파일을 선택하는 것이 또한 효과적이다. 또한, 압축된 후 파일의 크기를 추정하고, 압축 후 추정된 크기에 기초하여 파일을 선택하여 요구된 크기가 해방되는 것도 효과적이다.
예를 들면, MPEG 또는 JPEG 형식의 그림파일보다도 텍스트파일이 더 압축될 수 있다는 사실이 고려될 수 있다.
파일압축 프로세스(60)가 디스패치되는 경우는 디스크(70)이 빈 파일영역의 양이 소정값보다 작게 되는 경우뿐이므로, 디스크(70)의 빈 영역의 양이 충분히 큰 경우에는 불필요한 오버헤드가 발생하지 않게 되어 있다. 또한, 그것은 운영시스템(10)의 제어하에 작동되는 프로세스로서 구성되기 때문에, 쉽게 소스코드를 재작성하므로써 디스크(70)의 디스크 공간 재생 규칙을 추가하고 수정할 수 있고 이에 관한 유연성이 얻어질 수 있다.
도 7은 본 실시예의 디스크 공간 해방 프로세스의 작동 순서를 보여준다.
본 실시예의 디스크 공간 해방 프로세스에 있어서는, 시스템 관리자가 원하는 수법을 선택할 수 있도록 하기 위하여 도 4A에 도시되어 있는 바와 같이 파일 선택수법의 메뉴가 디스플레이된다(B1 단계). 그런 다음, 시스템 관리자는 필드에 원하는 수법에 해당하는 번호를 입력한다(B2 단계).
이런 방식으로 파일을 선택하기 위한 수법들의 순열이 결정된다. 계속해서, 임계값이 결정된다(B3 단계).
그런후, 파일압축 프로세스(60)는 빈 디스크 용량 영역이 부족되는 경우를 기다린다(B4 단계). 디스크(70)의 빈 파일영역의 양이 임계값보다 적게 되는 때에, 파일압축 프로세스(60)는 디스패치되고 하나의 파일을 선택하며(B5 단계), 그 파일을 압축하고 남아있는 디스크 공간을 해방한다(B6 단계). 그런 후, 운영시스템(10)으로부터 파일압축 프로세스(60)의 종료지시가 내려질 때까지 B4 내지 B6 단계의 작동이 반복적으로 이루어진다.
B5 단계에서, 두 번째 실시예에서와 같이, 그 우선순위에 따라 수법들은 하나하나 적용된다. 이 실시예에 있어서의 예시적인 수법으로는, 우선적으로 가장 적게 최근에 갱신되었었던 파일을 선택하거나, 또는 백업파일을 선택하는 것이 바람직하다.
도 8를 참조하여 본 실시예의 작동 원리를 설명한다.
이제 도 8의 왼쪽에 도시되어 있는 바와 같이 디스크(70)가 할당되어 있다고 가정하자. 만약 한 프로세스가 디스크(70)의 현존하는 빈 파일영역의 양보다 더 큰 빈 파일영역을 새롭게 요구하는 경우에는, 파일압축 프로세스(60)가 수법의 순열에 따라 파일 B를 선택하고 압축한다. 압축의 결과로서 해방된 파일영역은 요구에 대응하여 할당된다.
만약 프로세스가 상기 압축에 의해서도 유지될 수 없는 경우에는, 소정 임계값은 충분히 높아야만 한다. 그런 다음 파일압축은 더욱 진행될 수 있을 것이다.
결과적으로, 적절한 디스크 공간 해방이 성취될 수 있다.
또한, 도 9에 의하여 도시되어 있는 바와 같이, 예컨대 만약 백업파일(파일 명칭 확장자에 ";.bak";가 붙여지는 파일)로서 제공되는 한 파일이 존재하면, 우선적으로 이 파일을 선택함으로써 더욱 적절한 디스크 공간 해방이 성취될 수 있다.
상기한 바 있는 도 7의 순서도에서는, 선택 및 압축은 빈 파일영역의 양이 소정값(임계값 L1)보다 작게 되는 경우에 실행된다. 이 경우에 있어서는, 선택 및 압축은 빈 파일영역의 양이 제2 소정값(임계값 L2)보다 크게 되는 경우에도 또한 실행될 수 있다. 이러한 경우의 작동은 도 10A 및 10B를 참조하여 설명하면 다음과 같다. 도 10A는 압축 프로세스와 관련되는 반면, 도 10B는 전개 프로세스에 관련되어 있다.
먼저, 압축 프로세스를 설명하면 다음과 같다.
디스크(70)의 빈 파일영역의 양은 운영시스템(10)에 의하여 감시된다(C1 단계). 운영시스템(10)은 빈 파일영역의 양이 임계값(L1)보다 더 작은지 아닌지를 결정한다(C2 단계). 긍정인 경우, 운영시스템(10)은 파일압축 프로세스(60)를 디스패치한다. 따라서, 앞서 설명했던 방식으로 특정된 수법들의 순열에 따라 파일압축 프로세스(60)가 한 파일을 선택한다(C3 단계). 그런다음, 선택된 파일은 압축된다(C4 단계).
다음으로, 전개 프로세스를 설명하면 다음과 같다.
위의 경우와 유사하게, 디스크(70)의 빈 파일영역의 양은 운영시스템(10)에 의하여 감시된다(D1 단계). 운영시스템(10)은 빈 파일영역의 양이 임계값(L2)보다 더 큰지 아닌지를 결정한다(D2 단계). 긍정인 경우, 운영시스템(10)은 파일전개 프로세스(미도시됨)를 디스패치한다. 따라서, 파일전개 프로세스가 한 파일을 선택한다(D3 단계). 그런다음, 선택된 파일은 전개(확장)된다(D4 단계).
상기한 바와 같이, 전개 프로세스를 사용함으로써 빈 파일영역의 양이 충분히 크게 되는 경우에도 어떠한 실행 오버헤드도 없이 파일에 억세스하는 것이 가능하다.
(네 번째 실시예)
다음에, 도 11을 참조하여 본 발명의 네 번째 실시예를 설명한다.
도 11은 본 발명의 네 번째 실시예에 따른 디스크 공간 해방 장치의 도식적인 구성을 보여주는 기능 블럭도이다.
본 실시예의 디스크 공간 해방 장치에 있어서는, 파일압축 프로세스(60)에는 상기 세 번째 실시예에 링크 생성 단계(64)와 파일 이동 단계(65)가 추가로 포함된다.
예컨대, 본 실시예의 파일압축 프로세스(60)에 있어서, 파일선택 단계(62)에서 선택된 디스크(70a)의 파일이 파일압축 단계(63)에서 압축되면, 파일이동 단계(65)에서는 디스크(70a)에서 압축된 파일을 보조 디스크(70b)로 이동시키고 링크 생성 단계(64)에서는 디스크(70a)내의 본래의 위치에 링크 정보를 생성한다.
결과적으로, 주디스크인 디스크(70a)에 대하여, 더욱 적절한 디스크 공간 해방이 성취될 수 있다.
상기한 바와 같이, 본 발명에 따르면, 컴퓨터 시스템의 매우 다양한 종류에 있어서 효과적이고 유연한 자원관리가 성취될 수 있다.
추가적인 장점 및 변형은 본 기술분야의 통상적인 기술자라면 쉽게 알 수 있을 것이다. 그러므로, 본 발명의 넓은 범위는 여기에 도시되고 기술된 특정한 설명과, 대표적인 장치 그리고 예시된 예들에 의하여 제한되는 것이 아니다. 따라서, 첨부된 청구항 및 그 동일성의 범위에 의하여 한정되는 바와 같은 일반적인 발명 사상의 정신 및 영역으로부터 멀리 떨어지지 않고도 수많은 변형이 만들어질 수 있다. 예를 들면, 주메모리 공간 해방장치 또는 디스크 공간 해방장치 중 어느 하나안에 포함되는 프로세스와 유닛이 컴퓨터 프로그램의 형태로 저장매체내에 미리 저장되어 있을 수 있으며, 필요한 경우에 프로세서에 의하여 판독되고 실행될 수 있다.

Claims (10)

  1. 페이지아웃 데몬 프로세스가 주메모리 페이지를 해방하기 위하여 주메모리의 페이지 프레임을 주기적으로 조사하고, 상기 페이지 프레임은 페이지 프레임 테이블에 저장되는 가상메모리 컴퓨터 시스템내의 주메모리공간 해방방법에 있어서, 상기 방법은,
    빈 주메모리의 양을 취득하는 단계; 및
    빈 주메모리 양에 따라 페이지아웃 데몬 프로세스가 상기 페이지 프레임 테이블내의 상기 페이지 프레임을 조사하는 속도를 결정하는 단계; 를 포함하는 것을 특징으로 하는 주메모리공간 해방방법.
  2. 제1항에 있어서, 속도를 결정하는 단계에는,
    페이지아웃 데몬 프로세스가, 디스패치된 경우에, 빈 주메모리의 양이 감소될 때는 더 많은 페이지 프레임을 조사하도록 하는 단계; 및
    페이지아웃 데몬 프로세스가, 디스패치된 경우에, 빈 주메모리의 양이 증가될 때는 더 적은 페이지 프레임을 조사하도록 하는 단계; 가 포함되는 것을 특징으로 하는 방법.
  3. 제1항에 있어서, 속도를 결정하는 단계에는,
    빈 주메모리의 양이 감소될 때는 더 자주 페이지아웃 데몬 프로세스를 디스패치하는 단계; 및
    빈 주메모리의 양이 증가될 때는 덜 자주 페이지아웃 데몬 프로세스를 디스패치하는 단계; 가 포함되는 것을 특징으로 하는 방법.
  4. 컴퓨터 시스템내에서 사용되는 주메모리공간 해방방법에 있어서, 상기 방법은,
    그 물리적 메모리 페이지가 해방될 프로세스를 선택하는 선택수법의 순열을 결정하는 단계;
    임계값을 결정하는 단계;
    빈 주메모리의 양을 취득하는 단계;
    빈 주메모리의 양이 상기 임계값보다 더 낮게 될 때, 상기 선택수법의 순열에 기초하여 주메모리를 사용하는 프로세스들 가운데서 한 프로세스를 선택하는 단계; 및
    선택된 프로세스에 할당되었던 주메모리를 해방하는 단계; 를 포함하는 것을 특징으로 하는 주메모리공간 해방방법.
  5. 제4항에 있어서, 상기 수법들의 순열에는, 낮은 우선권을 가지는 한 프로세스를 선택하는 수법이 포함되는 것을 특징으로 하는 방법.
  6. 제4항에 있어서, 상기 수법들의 순열에는, 작은 수의 갱신된 주메모리 페이지를 가지는 한 프로세스를 선택하는 수법이 포함되는 것을 특징으로 하는 방법.
  7. 제4항에 있어서, 상기 방법은 특권모드로 운용되는 프로세스로서 구현되며 상기 수법들의 순열과 상기 임계값은 그 프로세스의 초기에 결정되는 것을 특징으로 하는 방법.
  8. 제4항에 있어서, 상기 방법은 특권모드로 운용되는 프로세스로서 구현되며 상기 수법들의 순열과 상기 주메모리 해방단계를 실현하는 프로세스를 선택하는 수법이 포함되는 것을 특징으로 하는 방법.
  9. 가상메모리 컴퓨터 시스템에서 사용되는 주메모리공간 해방장치에 있어서, 상기 장치는,
    주메모리의 페이지 프레임을 주기적으로 조사하고 최근에 억세스된 적이 없는 주메모리 페이지를 해방하고, 상기 페이지 프레임은 페이지 프레임 테이블에 저장되는 페이지아웃 데몬 프로세스;
    빈 주메모리의 양을 취득하는 수단; 및
    빈 주메모리 양에 따라 페이지아웃 데몬 프로세스가상기 페이지 프레임 테이블내의 상기 페이지 프레임을 조사하는 속도를 제어하는 수단을 포함하는 것을 특징으로 하는 주메모리공간 해방장치.
  10. 컴퓨터 시스템내에서 사용되는 주메모리공간 해방장치에 있어서, 상기 장치는,
    물리적 메모리 페이지가 해방될 프로세스를 선택하는 선택수법의 순열을 결정하는 수단;
    임계값을 결정하는 수단;
    빈 주메모리의 양을 취득하는 수단;
    상기 선택수법의 순열에 기초하여 주메모리를 사용하는 프로세스들 가운데서 한 프로세스를 선택하고 선택된 프로세스에 할당되었던 주메모리를 해방하는 해방 프로세스; 및
    빈 주메모리의 양이 상기 임계값보다 낮아지는 때에, 상기 해방 프로세스를 디스패치하는 디스패치수단; 을 포함하는 것을 특징으로 하는 주메모리공간 해방장치.
KR1019970003123A 1996-01-31 1997-01-31 멀티태스킹 기능을 가지는 정보처리시스템을 위한 자원관리방법 및 그 장치 KR100289627B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP1566196 1996-01-31
JP8-015661 1996-01-31

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020000035424A Division KR100289628B1 (ko) 1996-01-31 2000-06-26 멀티태스킹 기능의 정보처리시스템을 위한 자원관리방법및 그 장치

Publications (2)

Publication Number Publication Date
KR970059941A KR970059941A (ko) 1997-08-12
KR100289627B1 true KR100289627B1 (ko) 2001-05-02

Family

ID=11894935

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1019970003123A KR100289627B1 (ko) 1996-01-31 1997-01-31 멀티태스킹 기능을 가지는 정보처리시스템을 위한 자원관리방법 및 그 장치
KR1020000035424A KR100289628B1 (ko) 1996-01-31 2000-06-26 멀티태스킹 기능의 정보처리시스템을 위한 자원관리방법및 그 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020000035424A KR100289628B1 (ko) 1996-01-31 2000-06-26 멀티태스킹 기능의 정보처리시스템을 위한 자원관리방법및 그 장치

Country Status (6)

Country Link
US (1) US6038571A (ko)
EP (2) EP0788053B1 (ko)
JP (1) JP2000215099A (ko)
KR (2) KR100289627B1 (ko)
CN (1) CN1154928C (ko)
DE (1) DE69722979T2 (ko)

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6928653B1 (en) * 1997-11-06 2005-08-09 United Video Properties, Inc. Interactive electronic television program guide with database configurability
US7024512B1 (en) * 1998-02-10 2006-04-04 International Business Machines Corporation Compression store free-space management
JP3218007B2 (ja) * 1998-03-20 2001-10-15 富士通株式会社 インデックスの管理装置,更新方法及び管理方法並びにコンピュータ読取可能な記憶媒体
EP1116094B1 (de) * 1998-09-01 2002-08-07 Siemens Aktiengesellschaft Verfahren zum speichern von daten auf einem speichermedium mit begrenzter speicherkapazitaet
US6910210B1 (en) * 1998-11-24 2005-06-21 Microsoft Corp. System and method for terminating applications
US6967680B1 (en) * 1999-05-28 2005-11-22 Microsoft Corporation Method and apparatus for capturing images
FR2795196B1 (fr) * 1999-06-21 2001-08-10 Bull Sa Processus de liberation de pages physiques pour mecanisme d'adressage virtuel
US7111297B1 (en) * 2000-05-02 2006-09-19 Microsoft Corporation Methods and architectures for resource management
GB0015891D0 (en) 2000-06-28 2000-08-23 Royal College Of Art Improved in or relating to snowboards
KR20020063459A (ko) * 2001-01-29 2002-08-03 팜팜테크 주식회사 내장형 리눅스 운영체제를 위한 비사용 메모리 회수기법
US7349930B2 (en) 2002-02-05 2008-03-25 Quantum Corporation Emulated backup tape drive using data compression
KR100591117B1 (ko) * 2002-03-20 2006-06-19 리서치 인 모션 리미티드 이동 장치에서의 안전 가비지 수집 시스템 및 방법
US6857046B1 (en) * 2002-03-28 2005-02-15 Cisco Technology, Inc. Caching for context switching applications
JP4085695B2 (ja) * 2002-05-24 2008-05-14 日本電気株式会社 バックアップ装置及びバックアップ方法並びにバックアップ評価プログラム
US6775751B2 (en) * 2002-08-06 2004-08-10 International Business Machines Corporation System and method for using a compressed main memory based on degree of compressibility
US7296043B2 (en) * 2003-05-30 2007-11-13 Microsoft Corporation Memory file size adjustment
AU2003295260A1 (en) * 2003-12-16 2005-07-05 Real Enterprise Solutions Development B.V. Memory management in a computer system using different swapping criteria
KR100608606B1 (ko) * 2004-01-28 2006-08-03 삼성전자주식회사 적응형 가비지 컬렉션 방법 및 상기 방법을 수행하는 장치
JP2005301801A (ja) * 2004-04-14 2005-10-27 Nec Corp 情報処理装置、メモリ管理装置、およびプログラム
US20050246762A1 (en) * 2004-04-29 2005-11-03 International Business Machines Corporation Changing access permission based on usage of a computer resource
US7418560B2 (en) 2004-09-23 2008-08-26 Sap Ag Centralized cache storage for runtime systems
US7590803B2 (en) * 2004-09-23 2009-09-15 Sap Ag Cache eviction
US20060112155A1 (en) * 2004-11-24 2006-05-25 Agami Systems, Inc. System and method for managing quality of service for a storage system
US7552303B2 (en) * 2004-12-14 2009-06-23 International Business Machines Corporation Memory pacing
US7580915B2 (en) 2004-12-14 2009-08-25 Sap Ag Socket-like communication API for C
US7600217B2 (en) * 2004-12-14 2009-10-06 Sap Ag Socket-like communication API for Java
US20060143398A1 (en) * 2004-12-23 2006-06-29 Stefan Rau Method and apparatus for least recently used (LRU) software cache
US7971001B2 (en) * 2004-12-28 2011-06-28 Sap Ag Least recently used eviction implementation
US7552153B2 (en) 2004-12-28 2009-06-23 Sap Ag Virtual machine monitoring using shared memory
US7552284B2 (en) * 2004-12-28 2009-06-23 Sap Ag Least frequently used eviction implementation
US20060143256A1 (en) * 2004-12-28 2006-06-29 Galin Galchev Cache region concept
US20060143389A1 (en) * 2004-12-28 2006-06-29 Frank Kilian Main concept for common cache management
US7451275B2 (en) * 2004-12-28 2008-11-11 Sap Ag Programming models for storage plug-ins
US8204931B2 (en) 2004-12-28 2012-06-19 Sap Ag Session management within a multi-tiered enterprise network
US7694065B2 (en) * 2004-12-28 2010-04-06 Sap Ag Distributed cache architecture
US7523263B2 (en) * 2004-12-28 2009-04-21 Michael Wintergerst Storage plug-in based on shared closures
US7539821B2 (en) * 2004-12-28 2009-05-26 Sap Ag First in first out eviction implementation
US7581066B2 (en) * 2005-04-29 2009-08-25 Sap Ag Cache isolation model
US7831634B2 (en) 2005-04-29 2010-11-09 Sap Ag Initializing a cache region using a generated cache region configuration structure
JP2006333338A (ja) * 2005-05-30 2006-12-07 Kyocera Corp 通信要求報知方法及び携帯端末装置並びにコンピュータプログラム
JP4352028B2 (ja) * 2005-06-29 2009-10-28 富士通株式会社 運用ポリシー評価システムおよび運用ポリシー評価プログラム
US7966412B2 (en) * 2005-07-19 2011-06-21 Sap Ag System and method for a pluggable protocol handler
US7409489B2 (en) * 2005-08-03 2008-08-05 Sandisk Corporation Scheduling of reclaim operations in non-volatile memory
US7543123B2 (en) * 2005-11-07 2009-06-02 International Business Machines Corporation Multistage virtual memory paging system
US20080010421A1 (en) * 2006-07-10 2008-01-10 Inventec Corporation Snapshot expansion system and method thereof
KR100900439B1 (ko) 2006-12-05 2009-06-01 한국전자통신연구원 임베디드 시스템을 위한 메모리 부족상황 관리 방법 및장치
JP4942179B2 (ja) * 2006-12-11 2012-05-30 キヤノン株式会社 印刷制御装置及びその制御方法及びデバイスドライバ
US8321546B2 (en) 2007-01-10 2012-11-27 Ricoh Company, Ltd. Integrating discovery functionality within a device and facility manager
US20080163063A1 (en) * 2006-12-29 2008-07-03 Sap Ag Graphical user interface system and method for presenting information related to session and cache objects
US8239876B2 (en) * 2007-06-12 2012-08-07 Ricoh Company, Ltd. Efficient web services application status self-control system on image-forming device
US8453164B2 (en) 2007-09-27 2013-05-28 Ricoh Company, Ltd. Method and apparatus for reduction of event notification within a web service application of a multi-functional peripheral
US8838928B2 (en) 2008-02-08 2014-09-16 Freescale Semiconductor, Inc. Memory management and method for allocation using free-list
CN101430670B (zh) * 2008-12-16 2010-06-23 中国科学院计算技术研究所 一种在虚拟化环境中i/o设备重构的方法及系统
CN102473136B (zh) * 2010-05-31 2014-12-31 松下电器(美国)知识产权公司 存储器管理装置、存储器管理方法以及集成电路
JP2012190064A (ja) * 2011-03-08 2012-10-04 Nec Corp 情報処理装置、メモリ管理方法、およびメモリ管理プログラム
JP2012221217A (ja) * 2011-04-08 2012-11-12 Sony Corp メモリ管理装置、メモリ管理方法、および、制御プログラム
US9195581B2 (en) * 2011-07-01 2015-11-24 Apple Inc. Techniques for moving data between memory types
US8918579B2 (en) * 2012-02-06 2014-12-23 Sandisk Technologies Inc. Storage device and method for selective data compression
JP6183034B2 (ja) 2013-07-30 2017-08-23 富士通株式会社 アクセス制御プログラム、アクセス制御方法およびシステム
CN103593298B (zh) * 2013-10-16 2016-08-31 北京航空航天大学 内存回收方法和装置
CN103777871B (zh) * 2014-02-14 2017-10-10 北京猎豹移动科技有限公司 一种锁屏状态下启动应用的方法及装置
CN105487984B (zh) * 2014-09-17 2020-04-03 中兴通讯股份有限公司 一种主机系统对虚拟机磁盘数据的动态压缩方法及装置
US10572460B2 (en) * 2016-02-11 2020-02-25 Pure Storage, Inc. Compressing data in dependence upon characteristics of a storage system
US20170371593A1 (en) * 2016-06-23 2017-12-28 Qualcomm Incorporated Selective flash memory compression/decompression using a storage usage collar
US20180336131A1 (en) * 2017-05-22 2018-11-22 Dell Products L.P. Optimizing Memory/Caching Relative to Application Profile
US10613972B2 (en) * 2017-12-29 2020-04-07 Intel Corporation Dynamic configuration of caches in a multi-context supported graphics processor
CN110928635B (zh) * 2018-09-19 2023-05-02 阿里巴巴集团控股有限公司 工作集划分方法和系统
CN111488316B (zh) * 2020-04-12 2023-09-22 杭州迪普科技股份有限公司 文件缓存回收方法及装置
CN111984374B (zh) * 2020-08-20 2021-07-23 海光信息技术股份有限公司 用于管理安全内存的方法及其系统、装置和存储介质
KR20220101847A (ko) * 2021-01-12 2022-07-19 삼성전자주식회사 전자 장치 및 전자 장치의 스토리지 운영 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0567421A1 (en) * 1992-04-22 1993-10-27 International Business Machines Corporation Method and apparatus for increasing efficiency of ager

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5065141A (ko) * 1973-10-11 1975-06-02
JPS6063678A (ja) * 1983-09-16 1985-04-12 Toshiba Corp 画像処理装置
JPS6145345A (ja) * 1984-08-09 1986-03-05 Nec Corp スワツピング制御方式
JPH0340150A (ja) * 1989-07-07 1991-02-20 Nec Corp ジョブのプライオリティに応じたスワップ領域確保制御方式
JPH03127149A (ja) * 1989-10-13 1991-05-30 Hitachi Ltd 主記憶管理方法
JPH04167152A (ja) * 1990-10-31 1992-06-15 Nec Corp 空きメモリ管理方式
JP3208160B2 (ja) * 1991-10-24 2001-09-10 シャープ株式会社 コンピュータにおける記憶管理方式
US5432917A (en) * 1992-04-22 1995-07-11 International Business Machines Corporation Tabulation of multi-bit vector history
US5392415A (en) * 1992-12-15 1995-02-21 International Business Machines Corporation System for grouping non-contiguous pages belonging to a storage object for page out
AU1514795A (en) * 1993-12-30 1995-08-01 Connectix Corporation Lossless data compression system and method
US5463776A (en) * 1994-09-22 1995-10-31 Hewlett-Packard Company Storage management system for concurrent generation and fair allocation of disk space among competing requests

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0567421A1 (en) * 1992-04-22 1993-10-27 International Business Machines Corporation Method and apparatus for increasing efficiency of ager

Also Published As

Publication number Publication date
US6038571A (en) 2000-03-14
EP1164491A3 (en) 2002-01-02
DE69722979D1 (de) 2003-07-31
EP0788053B1 (en) 2003-06-25
EP1164491A2 (en) 2001-12-19
DE69722979T2 (de) 2004-05-19
EP0788053A3 (en) 1998-09-09
CN1162786A (zh) 1997-10-22
CN1154928C (zh) 2004-06-23
EP0788053A2 (en) 1997-08-06
KR100289628B1 (ko) 2001-05-02
KR970059941A (ko) 1997-08-12
JP2000215099A (ja) 2000-08-04

Similar Documents

Publication Publication Date Title
KR100289627B1 (ko) 멀티태스킹 기능을 가지는 정보처리시스템을 위한 자원관리방법 및 그 장치
US6539415B1 (en) Method and apparatus for the allocation of audio/video tasks in a network system
US5559978A (en) Method for increasing the efficiency of a virtual memory system by selective compression of RAM memory contents
US6857047B2 (en) Memory compression for computer systems
JP3676827B2 (ja) マルチプロセッサシステム用のスケジューリング方法
US7962707B2 (en) Apparatus and method for deterministic garbage collection of a heap memory
US5463776A (en) Storage management system for concurrent generation and fair allocation of disk space among competing requests
KR100404555B1 (ko) 데이터 프로세서 제어형 데이터 저장 시스템, 동적 재동기화 방법, 및 컴퓨터 프로그램을 포함하는 컴퓨터 판독 가능한 기록 매체
EP1376354A2 (en) Method of and apparatus for providing deferred memory allocation
GB2348306A (en) Batch processing of tasks in data processing systems
US6804761B1 (en) Memory allocation system and method
JP2006351004A (ja) 携帯端末機のメモリ管理方法
US7650370B2 (en) System and method for regeneration of methods and garbage collection of unused methods
JP2006513493A (ja) フリーバッファプールを使用することによるメモリの管理
US5678024A (en) Method and system for dynamic performance resource management within a computer based system
US7058786B1 (en) Operating system data communication method and system
EP0694831A2 (en) Computer system having storage unit provided with data compression function andmethod of management of storage area thereof
US20010011335A1 (en) Data processing system having a network and method for managing memory by storing discardable pages in a local paging device
US20050027954A1 (en) Method and apparatus to support the maintenance and reduction of FLASH utilization as it pertains to unused or infrequently referenced FLASH data
JPH10312297A (ja) マルチタスク機能を有する情報処理システムにおける資源管理方法、資源管理装置及び記録媒体
JP3023316B2 (ja) 情報処理装置の資源管理装置、及び情報処理システムにおける資源管理方法
US20060101469A1 (en) Method, controller, program product and services for managing resource element queues
KR20060108740A (ko) 전용 캐시 메모리
JPH06266619A (ja) ページ退避/復元装置
CN111752851B (zh) 一种内存回收方法及装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20060131

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee