KR20160102842A - 메모리 관리 장치 및 방법 - Google Patents

메모리 관리 장치 및 방법 Download PDF

Info

Publication number
KR20160102842A
KR20160102842A KR1020150025446A KR20150025446A KR20160102842A KR 20160102842 A KR20160102842 A KR 20160102842A KR 1020150025446 A KR1020150025446 A KR 1020150025446A KR 20150025446 A KR20150025446 A KR 20150025446A KR 20160102842 A KR20160102842 A KR 20160102842A
Authority
KR
South Korea
Prior art keywords
index
utility
call
calculating
memory
Prior art date
Application number
KR1020150025446A
Other languages
English (en)
Other versions
KR101661645B1 (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 한남대학교 산학협력단
Priority to KR1020150025446A priority Critical patent/KR101661645B1/ko
Publication of KR20160102842A publication Critical patent/KR20160102842A/ko
Application granted granted Critical
Publication of KR101661645B1 publication Critical patent/KR101661645B1/ko

Links

Images

Classifications

    • 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/14Protection against unauthorised use of memory or access to memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

메모리 관리 장치가 개시된다. 본 발명의 일 실시예에 따른 메모리 관리 장치는 시스템의 메모리에 존재하는 프로세스의 호출 지수를 산출하는 호출 지수 산출부; 상기 프로세스의 시간적 근접성을 나타내는 최근성 지수를 산출하는 최근성 지수 산출부; 상기 호출 지수 및 상기 최근성 지수에 기초하여 상기 프로세스의 효용성에 관한 효용 지수를 산출하는 효용 지수 산출부; 및 상기 효용 지수에 기초하여 상기 프로세스를 상기 메모리에서 삭제하는 프로세스 삭제부를 포함한다.

Description

메모리 관리 장치 및 방법{Memory management apparatus and method}
본 발명의 일 실시예는 시스템에서 사용되는 메모리 관리 장치에 관한 것으로, 사용자의 호출 빈도와 최근성에 기초하여 사용되는 프로세스의 효용 지수를 산출하고, 이를 기초로 메모리를 관리하는 장치 및 방법에 관한 것이다.
안드로이드가 리눅스를 사용하고 있다고 하더라도 메모리 관리는 일부 다르다. 안드로이드는 새로운 LMK(Low Memory Killer) 방법을 추가하여 이용한다. 기존 안드로이드는 앱을 종료할 때 그 프로세스를 바로 kill 하지 않고 시스템 메모리 환경에 따라 프로세스를 보존한다. 이러한 프로세스를 "Empty process" 라고 하고 Activity를 다시 로딩 할 경우 로딩 속도를 높이기 위함이다. 하지만 "Empty process"들이 어느 정도 증가하게 되면 메모리가 부족하게 되고 메모리 공간에서 그 프로세스들을 일부 종료해야 하는 문제가 발생하며 이를 효과적으로 처리하기 위한 방법이 필요하다. 기존 기법들은 사용자의 경험 보다는 프로세스 상태와 단순한 LRU 기반의 알고리즘을 이용하고 있다. 이는 다양한 사용자의 사용 패턴을 알고리즘에 적용한다. 다양한 사용 패턴, 사용 빈도(frequency)와 같은 과거 정보를 recency와 결합하여 효과적으로 메모리를 관리할 수 있을 것이다.
관련 선행기술로는 대한민국 공개특허공보 제10-2014-0146458호(발명의 명칭: 메모리 관리 방법 및 장치, 공개일자: 2014. 12. 26)가 있다.
본 발명의 일 실시예는 사용자 개인의 과거 프로세스 사용 정보 및 프로세스의 최근성을 기초로 하여 메모리를 관리하는 장치 및 방법을 제공하는 것이다.
본 발명의 일 실시예는 프로세스 보호 지수를 산출하고 이를 기초로 화이트리스트 및 블랙리스트로 분류하여 차등적으로 효용지수를 산출하여 메모리를 관리하는 장치 및 방법을 제공하는 것이다.
본 발명의 일 실시예에 따른 메모리 관리 장치는 시스템의 메모리에 존재하는 프로세스의 호출 지수를 산출하는 호출 지수 산출부; 상기 프로세스의 시간적 근접성을 나타내는 최근성 지수를 산출하는 최근성 지수 산출부; 상기 호출 지수 및 상기 최근성 지수에 기초하여 상기 프로세스의 효용성에 관한 효용 지수를 산출하는 효용 지수 산출부; 및 상기 효용 지수에 기초하여 상기 프로세스를 상기 메모리에서 삭제하는 프로세스 삭제부를 포함한다.
상기 호출 지수 산출부는 상기 프로세스의 호출 빈도를 기초로 하여 상기 호출 지수를 산출할 수 있다.
상기 호출 지수 산출부는 상기 프로세스에 대해 미리 설정된 적어도 하나의 필요 조건을 만족하는 경우, 상기 필요 조건에 따라 미리 설정된 호출 값을 부여하고, 상기 호출 값을 더 기초로 하여 상기 호출 지수를 산출할 수 있다.
상기 필요 조건은 상기 프로세스의 최초 호출, 호출된 프로세스의 조작, 상기 호출된 프로세스의 백그라운드 실행, 상기 백그라운드에서 실행되는 프로세스의 재호출, 및 상기 실행 중인 프로세스의 종료 중 적어도 하나의 조건을 포함할 수 있다.
상기 최근성 지수 산출부는 상기 프로세스의 가장 최근의 호출 시간 및 현재 시간에 기초하여 상기 최근성 지수를 산출할 수 있다.
상기 효용 지수 산출부는 상기 호출 지수와 상기 최근성 지수를 곱셈 연산한 결과 값을 상기 효용 지수로서 산출할 수 있다.
상기 효용 지수 산출부는 상기 프로세스의 중요도 및 선호도 중 적어도 하나에 기초하여 상기 프로세스의 보호 필요성에 관한 보호 지수를 산출하는 보호 지수 산출부; 상기 보호 지수에 기초하여 상기 프로세스를 화이트리스트 또는 블랙리스트로 분류하여 저장하는 저장부; 및 상기 프로세스가 상기 화이트리스트로 분류되어 저장된 경우, 상기 호출 지수 또는 상기 최근성 지수에 미리 설정된 가중치를 부여하고, 상기 프로세스가 상기 블랙리스트로 분류되어 저장된 경우, 상기 호출 지수 또는 상기 최근성 지수에 미리 설정된 감산치를 부여하는 지수 보정부를 포함할 수 있다.
상기 저장부는 상기 보호 지수가 미리 설정된 상위 기준치를 초과하는 경우, 상기 프로세스에 대응하는 식별자를 화이트리스트 데이터베이스에 저장하고, 상기 보호 지수가 미리 설정된 하위 기준치 미만인 경우, 상기 식별자를 블랙리스트 데이터베이스에 저장할 수 있다.
상기 프로세스 삭제부는 상기 프로세스의 효용 지수를 적어도 하나의 다른 프로세스의 효용 지수와 비교하여, 상기 효용 지수가 최소값에 해당하는 프로세스를 상기 메모리에서 삭제할 수 있다.
본 발명의 일 실시예에 따른 메모리 관리 방법은 시스템의 메모리에 존재하는 프로세스의 호출 지수를 산출하는 단계; 상기 프로세스의 시간적 근접성을 나타내는 최근성 지수를 산출하는 단계; 상기 호출 지수 및 상기 최근성 지수에 기초하여 상기 프로세스의 효용성에 관한 효용 지수를 산출하는 단계; 및 상기 효용 지수에 기초하여 상기 프로세스를 상기 메모리에서 삭제하는 단계를 포함한다.
본 발명의 일 실시예에 따르면, 각 사용자의 과거 정보 및 최근성을 기초로 하여 각 프로세스의 효용 지수를 산출하고, 이를 기초로 메모리의 프로세스를 관리할 수 있다.
또한, 각 프로세스의 중요도 및 선호도 중 적어도 하나에 기초하여 상기 프로세스의 보호 지수를 산정하여 이를 기초로 화이트리스트와 블랙리스트를 분류하고 효용 지수를 차등적으로 적용할 수 있다.
도 1은 본 발명의 일 실시예에 따른 메모리 관리 장치를 설명하기 위하여 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 호출 지수 산출부를 설명하기 위하여 도시한 블록도이다.
도 3은 본 발명의 다른 실시예에 따른 효용 지수 산출부를 설명하기 위하여 도시한 블록도이다.
도 4는 본 발명의 일 실시예에 따른 메모리 관리 방법을 설명하기 위하여 도시한 흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수개의 관련된 기재된 항목들의 조합 또는 복수개의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수개의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 메모리 관리 장치를 설명하기 위하여 도시한 블록도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 메모리 관리 장치(100)는 호출 지수 산출부(110), 최근성 지수 산출부(120), 효용 지수 산출부(130) 및 프로세스 삭제부(140)를 포함한다.
상기 호출 지수 산출부(110)는 시스템의 메모리에 존재하는 프로세스의 호출 지수를 산출한다.
즉, 상기 호출 지수 산출부(110)는 상기 프로세스의 호출 빈도를 기초로 상기 호출 지수를 산출할 수 있다. 따라서, 자주 호출되는 상기 프로세스는 높은 호출 지수를 가질 수 있고, 자주 호출되지 않는 상기 프로세스는 낮은 호출 지수를 가질 수 있다.
이와 같이, 본 발명의 일 실시예에서는 상기 호출 지수를 이용하여 사용자의 상기 각각의 프로세스에 대한 활용도를 알 수 있기에, 이를 기초로 상기 메모리에 있어 프로세스 관리의 기초로 삼을 수 있다.
다른 실시예로서, 상기 호출 지수 산출부(110)는 상기 프로세스에 대해 미리 설정된 적어도 하나의 필요 조건을 만족하는 경우, 상기 필요 조건에 따라 미리 설정된 호출 값을 부여하고, 상기 호출 값을 더 기초로 하여 상기 호출 지수를 산출할 수 있다.
여기서, 상기 필요 조건은 상기 프로세스의 최초 호출, 호출된 프로세스의 조작, 상기 호출된 프로세스의 백그라운드 실행, 상기 백그라운드에서 실행되는 프로세스의 재호출, 및 상기 실행 중인 프로세스의 종료 중 적어도 하나의 조건을 포함할 수 있다.
즉, 상기 호출 지수 산출부(110)는 상기 필요조건을 만족하는 경우 상기 프로세스에 대한 미리 설정된 호출 값을 부여하되, 상기 미리 설정된 호출 값은 상기 필요 조건에 따라서 차등하여 설정할 수 있다.
예를 들어, 상기 호출 지수 산출부(110)는 상기 프로세스의 최초 호출 시에는 1점을 부여하고, 상기 호출된 프로세스를 조작하는 경우에는 3점, 스마트폰의 홈버튼을 이용하여 상기 호출된 프로세스를 백그라운드에서 실행되도록 하는 경우에는 2점, 상기 백그라운드에서 실행되는 프로세스를 재호출 하는 경우에는 2.5점, 상기 실행 중인 프로세스를 종료하는 경우에는 1점을 부여하는 것과 같이 각각의 필요 조건에 따라 상기 호출 값을 차등적으로 부여할 수 있다.
상기 필요조건에 따라서 호출 값을 차등적으로 부여하는 이유는, 상기 프로세스를 조작하는 다양한 경우에 사용자의 선호 정도가 다르게 나타날 수 있기 때문이다.
예를 들어, 상기 프로세스를 최초 호출하는 경우와 상기 호출된 프로세스를 백그라운드에서 실행되도록 하는 것은, 사용자의 상기 프로세스에 대한 선호도가 다르다고 볼 수 있다.
도 2를 예로 들어 구체적으로 설명하면, 상기 호출 지수 산출부(110)는 스마트폰에서 어플리케이션(APP)을 사용자가 실행시키고 구동된 후, Back 버튼을 눌러 APP을 종료하는 경우 상기 호출 값을 1 증가 시키고, Home 버튼을 눌러 APP을 백그라운드에서 실행되도록 하는 경우 상기 호출 값을 2 증가시킬 수 있다.
참고로, 도 2는 본 발명의 일 실시예에 있어서 호출 값을 차등적으로 부여하는 일례를 도시한 도면이다.
다시 도 1을 참조하면, 상기 최근성 지수 산출부(120)는 상기 프로세스의 시간적 근접성을 나타내는 최근성 지수를 산출한다.
이를 위해, 상기 최근성 지수 산출부(120)는 상기 프로세스의 가장 최근의 호출 시간 및 현재 시간에 기초하여 상기 최근성 지수를 산출할 수 있다. 즉, 상기 최근성 지수 산출부(120)는 하기 수학식 1에 기초하여 상기 최근성 지수를 산출할 수 있다.
[수학식 1]
Figure pat00001
여기서 R은 최근성 지수를 나타내고, L은 상기 프로세스가 실행된 가장 최근의 시간을 나타내고, T는 현재 시간을 나타낸다.
상기 R은 1이하의 값을 갖고, 최근에 실행되었을수록 1에 가까워진다. 즉, 1에 더 가까운 값을 갖는 프로세스가 더 최근에 실행된 프로세스에 해당한다.
상기 효용 지수 산출부(130)는 상기 호출 지수 및 상기 최근성 지수에 기초하여 상기 프로세스의 효용성에 관한 효용 지수를 산출한다.
구체적으로, 상기 효용 지수 산출부(130)는 하기 수학식 2와 같이 상기 호출 지수와 상기 최근성 지수를 곱셈 연산한 결과 값을 상기 효용 지수로서 산출할 수 있다.
[수학식 2]
Figure pat00002
여기서 U는 효용 지수를 나타내고, F는 최근성 지수를 나타낸다.
상기 프로세스 삭제부(140)는 상기 효용 지수에 기초하여 상기 프로세스를 상기 메모리에서 삭제한다.
구체적으로, 상기 프로세스 삭제부(140)는 상기 프로세스의 효용 지수를 적어도 하나의 다른 프로세스의 효용 지수와 비교하여, 상기 효용 지수가 최소값에 해당하는 프로세스를 상기 메모리에서 삭제할 수 있다.
상기 효용 지수가 낮다는 것은 사용자에 의한 활용도가 낮다는 것을 의미하기에, 이에 해당하는 프로세스는 상기 메모리에서 우선 삭제 대상이 될 수 있다.
도 3은 도 1의 효용 지수 산출부(130)의 상세 구성을 도시한 블록도이다.
도 3에서와 같이, 상기 효용 지수 산출부(130)는 상기 시스템에서 사용되는 프로세스를 화이트리스트와 블랙리스트로 나누어 프로세스 삭제로부터 보호해야 할 프로세스와 그렇지 않은 프로세스를 구분하여 관리할 수 있다. 이하에서는 이에 대한 실시예를 설명한다.
도 3을 참조하면, 상기 효용 지수 산출부(130)는 보호 지수 산출부(310), 저장부(320) 및 지수 보정부(330)를 포함할 수 있다.
상기 보호 지수 산출부(310)는 상기 프로세스의 중요도 및 선호도 중 적어도 하나에 기초하여 상기 프로세스의 보호 필요성에 관한 보호 지수를 산출할 수 있다.
상기 보호 지수는 상기 프로세스가 상기 효용 지수가 낮음에도 불구하고 프로세스를 삭제하는 것이 바람직하지 않은 프로세스와 상기 프로세스가 효용 지수에 상관없이 삭제하는 것이 바람직한 프로세스를 분류하여 차등적으로 효용 지수를 다시 산출할 수 있는 지수이다.
상기 프로세스의 중요도 및 선호도는 사용자의 프로세스 사용 패턴, 사용 빈도 등 사용자의 현재 프로세스 활용 정보에 기초하여 산출될 수 있다. 이러한 경우, 상기 프로세스의 중요도 및 선호도는 수시로 변동되는 값을 가질 수 있다.
반면, 상기 프로세스의 중요도 및 선호도는 시스템 사용 전에 미리 결정된 수치로 정해질 수 있다. 이러한 경우, 상기 프로세스의 중요도 및 선호도는 고정된 값을 가질 수 있다.
상기 저장부(320)는 상기 보호 지수에 기초하여 상기 프로세스를 화이트리스트 또는 블랙리스트로 분류하여 저장할 수 있다.
구체적으로, 상기 저장부(320)는 상기 보호 지수가 미리 설정된 상위 기준치를 초과하는 경우, 상기 프로세스에 대응하는 식별자를 화이트리스트 데이터베이스에 저장하고, 상기 보호 지수가 미리 설정된 하위 기준치 미만인 경우, 상기 식별자를 블랙리스트 데이터베이스에 저장할 수 있다.
상기 지수 보정부(330)는 상기 프로세스가 상기 화이트리스트로 분류되어 저장된 경우, 상기 효용 지수에 미리 설정된 가중치를 부여하고, 상기 프로세스가 상기 블랙리스트로 분류되어 저장된 경우, 상기 효용 지수에 미리 설정된 감산치를 부여할 수 있다.
예를 들어, 상기 프로세스가 상기 화이트리스트로 분류되는 경우, 상기 지수 보정부(330)는 앞선 도 1의 효용 지수 산출부(130)에서 산출된 효용 지수에 두 배의 가중치를 부여할 수 있다.
다른 예로, 또 다른 프로세스가 상기 블랙리스트로 분류되는 경우, 상기 지수 보정부(330)는 앞선 도 1의 효용 지수 산출부(130)에서 산출된 효용 지수에 40%의 감산치를 부여할 수 있다.
이와 같이, 본 발명의 일 실시예에 따르면, 해당 프로세스의 분류에 따라 상기 가중치 또는 감산치를 해당 프로세스에 부여하여 상기 효용 지수를 새로 산출하고, 새로 산출된 효용 지수에 기초하여 상기 프로세스의 삭제 여부를 판단할 수 있다.
도 4는 본 발명의 일 실시예에 따른 메모리 관리 방법을 설명하기 위하여 도시한 흐름도이다.
도 1 및 도 4를 참조하면, 단계 410에서는, 상기 메모리 관리 장치(100)가 시스템의 메모리에 존재하는 프로세스의 호출 지수를 산출한다.
이때, 상기 메모리 관리 장치(100)는 상기 프로세스의 호출 빈도를 기초로 상기 호출 지수를 산출할 수 있다.
다음으로, 단계 420에서는, 상기 메모리 관리 장치(100)가 상기 프로세스의 시간적 근접성을 나타내는 최근성 지수를 산출한다.
여기서, 상기 최근성 지수는 상기 프로세스의 가장 최근의 호출 시간 및 현재 시간에 기초하여 산출될 수 있다
다음으로, 단계 430에서는, 상기 메모리 관리 장치(100)가 상기 호출 지수 및 상기 최근성 지수에 기초하여 상기 프로세스의 효용성에 관한 효용 지수를 산출한다.
다음으로, 단계 440에서는, 상기 메모리 관리 장치(100)가 상기 효용 지수에 기초하여 상기 프로세스를 상기 메모리에서 삭제한다.
이를 위해, 상기 메모리 관리 장치(100)는 상기 프로세스의 효용 지수를 적어도 하나의 다른 프로세스의 효용 지수와 비교하여, 상기 효용 지수가 최소값에 해당하는 프로세스를 상기 메모리에서 삭제할 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (10)

  1. 시스템의 메모리에 존재하는 프로세스의 호출 지수를 산출하는 호출 지수 산출부;
    상기 프로세스의 시간적 근접성을 나타내는 최근성 지수를 산출하는 최근성 지수 산출부;
    상기 호출 지수 및 상기 최근성 지수에 기초하여 상기 프로세스의 효용성에 관한 효용 지수를 산출하는 효용 지수 산출부; 및
    상기 효용 지수에 기초하여 상기 프로세스를 상기 메모리에서 삭제하는 프로세스 삭제부를 포함하는 메모리 관리 장치.
  2. 제1항에 있어서,
    상기 호출 지수 산출부는
    상기 프로세스의 호출 빈도를 기초로 하여 상기 호출 지수를 산출하는 것을 특징으로 하는 메모리 관리 장치.
  3. 제2항에 있어서,
    상기 호출 지수 산출부는
    상기 프로세스에 대해 미리 설정된 적어도 하나의 필요 조건을 만족하는 경우, 상기 필요 조건에 따라 미리 설정된 호출 값을 부여하고, 상기 호출 값을 더 기초로 하여 상기 호출 지수를 산출하는 것을 특징으로 하는 메모리 관리 장치.
  4. 제3항에 있어서,
    상기 필요 조건은
    상기 프로세스의 최초 호출, 호출된 프로세스의 조작, 상기 호출된 프로세스의 백그라운드 실행, 상기 백그라운드에서 실행되는 프로세스의 재호출, 및 상기 실행 중인 프로세스의 종료 중 적어도 하나의 조건을 포함하는 것을 특징으로 하는 메모리 관리 장치.
  5. 제1항에 있어서,
    상기 최근성 지수 산출부는
    상기 프로세스의 가장 최근의 호출 시간 및 현재 시간에 기초하여 상기 최근성 지수를 산출하는 것을 특징으로 하는 메모리 관리 장치.
  6. 제1항에 있어서,
    상기 효용 지수 산출부는
    상기 호출 지수와 상기 최근성 지수를 곱셈 연산한 결과 값을 상기 효용 지수로서 산출하는 것을 특징으로 하는 메모리 관리 장치.
  7. 제1항에 있어서,
    상기 효용 지수 산출부는
    상기 프로세스의 중요도 및 선호도 중 적어도 하나에 기초하여 상기 프로세스의 보호 필요성에 관한 보호 지수를 산출하는 보호 지수 산출부;
    상기 보호 지수에 기초하여 상기 프로세스를 화이트리스트 또는 블랙리스트로 분류하여 저장하는 저장부; 및
    상기 프로세스가 상기 화이트리스트로 분류되어 저장된 경우, 상기 효용 지수에 미리 설정된 가중치를 부여하고, 상기 프로세스가 상기 블랙리스트로 분류되어 저장된 경우, 상기 효용 지수에 미리 설정된 감산치를 부여하는 지수 보정부를 포함하는 것을 특징으로 하는 메모리 관리 장치.
  8. 제7항에 있어서,
    상기 저장부는
    상기 보호 지수가 미리 설정된 상위 기준치를 초과하는 경우, 상기 프로세스에 대응하는 식별자를 화이트리스트 데이터베이스에 저장하고, 상기 보호 지수가 미리 설정된 하위 기준치 미만인 경우, 상기 식별자를 블랙리스트 데이터베이스에 저장하는 것을 특징으로 하는 메모리 관리 장치.
  9. 제1항에 있어서,
    상기 프로세스 삭제부는
    상기 프로세스의 효용 지수를 적어도 하나의 다른 프로세스의 효용 지수와 비교하여, 상기 효용 지수가 최소값에 해당하는 프로세스를 상기 메모리에서 삭제하는 것을 특징으로 하는 메모리 관리 장치.
  10. 시스템의 메모리에 존재하는 프로세스의 호출 지수를 산출하는 단계;
    상기 프로세스의 시간적 근접성을 나타내는 최근성 지수를 산출하는 단계;
    상기 호출 지수 및 상기 최근성 지수에 기초하여 상기 프로세스의 효용성에 관한 효용 지수를 산출하는 단계; 및
    상기 효용 지수에 기초하여 상기 프로세스를 상기 메모리에서 삭제하는 단계를 포함하는 메모리 관리 방법.
KR1020150025446A 2015-02-23 2015-02-23 메모리 관리 장치 및 방법 KR101661645B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150025446A KR101661645B1 (ko) 2015-02-23 2015-02-23 메모리 관리 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150025446A KR101661645B1 (ko) 2015-02-23 2015-02-23 메모리 관리 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20160102842A true KR20160102842A (ko) 2016-08-31
KR101661645B1 KR101661645B1 (ko) 2016-09-30

Family

ID=56877381

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150025446A KR101661645B1 (ko) 2015-02-23 2015-02-23 메모리 관리 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101661645B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024029717A1 (ko) * 2022-08-05 2024-02-08 삼성전자주식회사 프로세스 관리 장치 및 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040076313A (ko) * 2003-02-25 2004-09-01 이승룡 버퍼 캐시 분할 관리 방법
KR20140132663A (ko) * 2013-05-08 2014-11-18 삼성전자주식회사 메모리 자원을 관리하는 전자 장치 및 그 제어 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040076313A (ko) * 2003-02-25 2004-09-01 이승룡 버퍼 캐시 분할 관리 방법
KR20140132663A (ko) * 2013-05-08 2014-11-18 삼성전자주식회사 메모리 자원을 관리하는 전자 장치 및 그 제어 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024029717A1 (ko) * 2022-08-05 2024-02-08 삼성전자주식회사 프로세스 관리 장치 및 방법

Also Published As

Publication number Publication date
KR101661645B1 (ko) 2016-09-30

Similar Documents

Publication Publication Date Title
CN110187753B (zh) 应用程序控制方法、装置、终端和计算机可读存储介质
CN105760199B (zh) 一种应用资源加载方法及其设备
CN111309400A (zh) 进程控制方法、装置、存储介质以及电子设备
KR20150104617A (ko) 메모리 클리닝 방법과 장치, 및 단말 장치
CN110780823B (zh) 小对象内存管理方法、装置、电子设备和计算机可读介质
CN114443429B (zh) 一种告警事件的处理方法、装置及计算机可读存储介质
CN110650503A (zh) 网络接入方法、装置、系统和计算机可读存储介质
US20190065368A1 (en) Memory reclaiming method and apparatus
CN105893471B (zh) 一种数据处理方法及电子设备
CN104219561A (zh) 一种离线视频的清理方法和用户设备
CN110806908A (zh) 应用软件预启动方法、终端及计算机可读存储介质
CN109842899A (zh) 一种邻区干扰协调方法及装置
CN104216819A (zh) 一种终端应用管理方法
KR101661645B1 (ko) 메모리 관리 장치 및 방법
CN106959628B (zh) 一种实现发热控制的方法及终端
US10984105B2 (en) Using a machine learning model in quantized steps for malware detection
CN110837647B (zh) 管理访问控制列表的方法及装置
CN109284110B (zh) 终端应用替换方法、终端及计算机可读存储介质
CN106933323B (zh) 一种优化应用程序耗电的方法、装置及电子设备
CN107154971A (zh) 一种应用下载方法及装置
CN115934690A (zh) 数据清除方法和相关设备
CN107292137B (zh) 一种待解锁对象的确定方法及装置
CN110661630A (zh) 网络切片实例的分配方法、装置和系统
CN105677408A (zh) 一种应用的删除方法和装置
CN104869171A (zh) 一种信息处理方法及智能家居设备

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