KR20080075293A - Apparatus and method for recovery of memory leakage process in portable communication system - Google Patents
Apparatus and method for recovery of memory leakage process in portable communication system Download PDFInfo
- Publication number
- KR20080075293A KR20080075293A KR1020070014253A KR20070014253A KR20080075293A KR 20080075293 A KR20080075293 A KR 20080075293A KR 1020070014253 A KR1020070014253 A KR 1020070014253A KR 20070014253 A KR20070014253 A KR 20070014253A KR 20080075293 A KR20080075293 A KR 20080075293A
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- information
- leak
- memory leak
- occurred
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/073—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3037—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/556—Detecting local intrusion or implementing counter-measures involving covert channels, i.e. data leakage between processes
-
- 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
도 1은 일반적인 이동통신 시스템에서의 메모리 누수를 처리하는 메모리 누수 관리 시스템의 과정을 도시한 도면,1 is a view showing a process of a memory leak management system for processing a memory leak in a general mobile communication system,
도 2는 본 발명의 바람직한 일 실시 예에 따라 이동통신 시스템에서 메모리 누수를 확인하기 위한 메모리 누수 관리부의 구성을 도시한 도면,2 is a block diagram illustrating a memory leak management unit for checking a memory leak in a mobile communication system according to an exemplary embodiment of the present invention;
도 3은 본 발명의 바람직한 일 실시 예에 따른 메모리 누수 관리부에서 메모리 누수가 발생한 프로세스를 처리하기 위한 과정을 도시한 흐름도,3 is a flowchart illustrating a process for processing a process in which a memory leak occurs in the memory leak management unit according to an exemplary embodiment of the present invention;
도 4는 본 발명의 바람직한 일 실시 예에 따른 메모리 누수 관리부에서 메모리 정보를 수집하는 메모리 정보 수집부의 과정을 도시한 흐름도,4 is a flowchart illustrating a process of a memory information collecting unit collecting memory information in a memory leak managing unit according to an exemplary embodiment of the present invention;
도 5는 본 발명의 바람직한 일 실시 예에 따라 메모리 누수가 발생할 수 있는 프로세스의 정보를4 포함하는 메시지의 형태를 나타낸 도면,FIG. 5 is a diagram illustrating the form of a message including information of a process in which a memory leak may occur according to an exemplary embodiment of the present invention.
도 6은 본 발명의 바람직한 일 실시 예에 따른 메모리 누수 관리부에서 메모리 누수 여부를 판단하기 위한 메모리 누수 판단부의 과정을 도시한 흐름도, 6 is a flowchart illustrating a process of a memory leak determining unit for determining whether a memory leak is performed by a memory leak managing unit according to an exemplary embodiment of the present disclosure;
도 7은 메모리 정보 데이터 베이스에 저장되어 있는 정보의 구성을 도시한 도면 및,7 is a diagram showing the configuration of information stored in a memory information database;
도 8은 본 발명의 바람직한 일 실시 예에 따른 메모리 누수 관리부에서 메모리 누수 발생시 프로세스 재시동을 처리하는 메모리 누수 제어부의 과정을 도시한 흐름도.8 is a flowchart illustrating a process of a memory leak controller which processes a process restart when a memory leak occurs in the memory leak manager according to an exemplary embodiment of the present invention.
본 발명은 이동통신 시스템에서 프로세스의 메모리 누수를 방지하기 위한 장치 및 방법에 관한 것으로, 특히 이동통신 시스템의 비정상적인 동작을 방지하기 위하여 메모리 누수가 발생중인 프로세스를 검출하기 위한 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and a method for preventing a memory leak of a process in a mobile communication system, and more particularly, to an apparatus and a method for detecting a process in which a memory leak occurs in order to prevent abnormal operation of the mobile communication system.
도 1은 일반적인 이동통신 시스템에서의 메모리 누수를 처리하는 메모리 누수 관리 시스템의 과정을 도시한 도면이다.1 is a diagram illustrating a process of a memory leak management system for processing a memory leak in a general mobile communication system.
상기 도 1을 참조하면, 상기 메모리 누수 관리 시스템은 메모리 정보 수집부(101)와 메모리 누수 제어부(103)를 포함하여 구성할 수 있다.Referring to FIG. 1, the memory leak management system may include a
상기 메모리 정보 수집부(101)는 실행중인 프로세스의 메모리 사용량을 획득(예 ; 1번 프로세스 메모리 사용량 100MB, 2번 프로세스 메모리 사용량 500MB, 3번 프로세스 메모리 사용량 400MB, 4번 프로세스 메모리 사용량 200MB 등)(105)한 다.The memory
이후, 상기 메모리 정보 수집부(101)는 상기 획득한 프로세스의 메모리 사용량 가운데 최대 메모리를 사용하는 프로세스의 정보를 상기 메모리 누수 제어부(103)로 제공(예 ; 2번 프로세스 메모리 사용량 500MB)(107)한다.Thereafter, the memory
상기 메모리 누수 제어부(103)는 프로세스로 할당할 수 있는 가용 메모리가 부족함을 확인할 경우, 상기 메모리 정보 수집부(101)로부터 수신한 최대 메모리를 사용하는 프로세스의 정보를 이용하여 상기 프로세스의 재시동(109)을 제어한다.When the
즉, 상기와 같은 메모리 누수 관리 시스템은 가용할 메모리가 부족할 경우, 최대 메모리를 사용하는 프로세스 또는 새롭게 메모리를 사용하고자 하는 어플리케이션의 동작을 종료하도록 함으로써, 정상 서비스를 수행하는 기능을 중지할 수 있다는 문제점이 있다.That is, the memory leak management system as described above may stop the function of performing a normal service by terminating the operation of a process that uses the maximum memory or an application that wants to use a new memory when there is not enough memory available. There is this.
상술한 바와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 이동통신 시스템에서 메모리 누수에 따라 비정상적인 시스템으로 천이를 방지하기 위한 장치 및 방법을 제공함에 있다.SUMMARY OF THE INVENTION An object of the present invention is to provide an apparatus and method for preventing a transition to an abnormal system according to a memory leak in a mobile communication system.
본 발명의 다른 목적은 이동통신 시스템에서 메모리 누수가 발생한 프로세스를 검출하기 위한 장치 및 방법을 제공함에 있다.Another object of the present invention is to provide an apparatus and method for detecting a process in which a memory leak occurs in a mobile communication system.
본 발명의 또 다른 목적은 이동통신 시스템에서 동작중인 프로세스의 가중치에 따라 프로세스의 재시작을 처리하기 장치 및 방법을 제공함에 있다.Another object of the present invention is to provide an apparatus and method for processing restart of a process according to a weight of a process running in a mobile communication system.
상술한 목적들을 달성하기 위한 본 발명의 제 1 견지에 따르면, 이동통신 시스템의 메모리 누수 프로세스를 복구하기 위한 시스템은 기 설정되어 있는 시간 간격으로 상기 프로세스의 메모리 사용 정보를 확인하여 메모리 누수 판단부로 제공하는 메모리 정보 수집부와, 상기 메모리 정보 수집부로부터 제공받은 상기 프로세스의 메모리 사용 정보를 이용하여 메모리 누수가 발생한 프로세스를 추출하고, 상기 메모리 누수가 발생한 프로세스들에 대한 정보를 메모리 누수 제어부로 제공하는 상기 메모리 누수 판단부와, 상기 메모리 누수 판단부로부터 제공받은 상기 메모리 누수가 발생한 프로세스의 리스트를 확인하여 상기 메모리 누수가 발생한 프로세스를 재시동하도록 처리하도록 하는 상기 메모리 누수 제어부를 포함하는 것을 특징으로 한다.According to a first aspect of the present invention for achieving the above objects, a system for recovering a memory leak process of a mobile communication system checks the memory usage information of the process at a predetermined time interval and provides it to the memory leak determination unit. Extracting a process in which a memory leak occurs by using a memory information collecting unit and memory usage information of the process provided from the memory information collecting unit, and providing information about processes in which the memory leak has occurred to a memory leak controller; And a memory leak controller which checks a list of processes in which the memory leak has been provided from the memory leak determiner and restarts the process in which the memory leak has occurred.
상술한 목적들을 달성하기 위한 본 발명의 제 2 견지에 따르면, 이동통신 시스템의 메모리 누수 프로세스를 복구하기 위한 방법은 동작중인 프로세스에 대한 메모리 정보를 획득하는 과정과, 상기 획득한 메모리 정보를 이용하여 메모리 누수가 발생한 프로세스의 존재 여부를 확인하는 과정과, 상기 메모리 누수가 발생한 프로세스가 존재함을 확인할 경우, 상기 메모리 누수가 발생한 프로세스를 복구하도록 처리하는 과정을 포함하는 것을 특징으로 한다.According to a second aspect of the present invention for achieving the above object, a method for recovering a memory leak process of a mobile communication system comprises the steps of acquiring memory information for a running process and using the obtained memory information And confirming whether or not the memory leaking process exists, and if the memory leaking process exists, processing to recover the memory leaking process.
이하 첨부된 도면을 참조하여 본 발명의 동작 원리를 상세히 설명한다. 하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명 이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, the operating principle of the present invention will be described in detail with reference to the accompanying drawings. In the following description of the present invention, detailed descriptions of well-known functions or configurations will be omitted when it is determined that the detailed description of the present invention may unnecessarily obscure the subject matter of the present invention. Terms to be described later are terms defined in consideration of functions in the present invention, and may be changed according to intentions or customs of users or operators. Therefore, the definition should be made based on the contents throughout the specification.
이하 설명에서는 이동통신 시스템에서 메모리 누수에 따라 비정상적인 시스템으로의 천이를 방지하기 위한 장치 및 방법에 관하여 설명할 것이다.In the following description, an apparatus and method for preventing a transition to an abnormal system according to a memory leak in a mobile communication system will be described.
또한, 이하 설명에서 정의한 프로세스별 요구 메모리 정보는 상기 프로세스가 정상적으로 동작할 경우에 사용되는 메모리의 양을 나타내는 정보를 말하며, 상기 메모리 누수가 발생하는 이동통신 시스템은 기지국과 서비스를 제공하는 서버를 포함하는 의미이다.In addition, the request memory information for each process defined in the following description refers to information indicating the amount of memory used when the process operates normally, and the mobile communication system in which the memory leak occurs includes a base station and a server providing a service. I mean.
도 2는 본 발명의 바람직한 일 실시 예에 따라 이동통신 시스템에서 메모리 누수를 확인하기 위한 메모리 누수 관리부의 구성을 도시한 도면이다.2 is a block diagram illustrating a memory leak management unit for checking a memory leak in a mobile communication system according to an exemplary embodiment of the present invention.
상기 도 2를 참조하면, 상기 메모리 누수 관리부(200)는 메모리 정보 수집부(201), 메모리 정보 데이터 베이스(203), 메모리 누수 판단부(205) 및, 메모리 누수 제어부(207)를 포함하여 구성할 수 있다.Referring to FIG. 2, the memory leak managing unit 200 includes a memory
상기 메모리 정보 데이터 베이스(203)는 상기 이동통신 시스템에서 동작하는 프로세스별 요구 메모리 정보 및 상기 프로세스별 메모리 사용 정보를 확인하는 주기의 정보를 포함한다.The
상기 메모리 정보 수집부(201)는 상기 메모리 정보 데이터 베이스(203)에 저장되어 있는 주기로 상기 프로세스의 메모리 사용 정보를 획득하여 상기 메모리 누수 판단부(205)로 제공한다.The memory
상기 메모리 누수 판단부(205)는 상기 메모리 정보 수집부(201)로부터 제공받은 상기 프로세스의 메모리 사용 정보와 상기 메모리 정보 데이터 베이스(203)에 기 저장되어 있는 상기 프로세스별 요구 메모리 정보를 비교하여 상기 프로세스의 메모리 누수로 의심되는 프로세스를 구별한다.The memory
이후, 상기 메모리 누수 판단부(205)는 상기 메모리 누수로 의심되는 프로세스를 메모리 누수 의심 리스트에 등록시킨다. 여기에서, 상기 메모리 누수 의심 리스트는 상기 메모리 누수가 의심되는 프로세스들의 항목을 모아 놓은 리스트를 말한다.Thereafter, the memory
즉, 상기 메모리 누수 판단부(205)는 상기 메모리 정보 수집부(201)로부터 수신한 동작중인 프로세스의 메모리 사용 정보와 상기 메모리 정보 데이터 베이스(203)에 기 저장되어 있는 프로세스별 요구 메모리 정보를 비교한다.That is, the memory
상기 비교 결과, 상기 메모리 정보 수집부(201)로부터 수신한 프로세스의 메모리 사용 정보가 상기 프로세스별 요구 메모리 정보보다 클 경우, 상기 메모리 누수 판단부(205)는 상기 프로세스의 메모리 누수가 의심된다고 판단할 수 있다.As a result of the comparison, when the memory usage information of the process received from the memory
또한, 상기 메모리 누수 판단부(205)는 상기 메모리 누수 의심 리스트에 일정 횟수만큼 등록된 프로세스들에 대해 메모리 누수가 발생하였다고 판단하고, 상기 메모리 누수가 발생한 프로세스의 리스트를 생성하여 상기 메모리 누수 제어 부(207)로 제공한다.In addition, the memory
상기 메모리 누수 제어부(207)는 상기 메모리 누수 판단부(205)로부터 제공받은 상기 메모리 누수가 발생한 프로세스의 리스트를 확인하여 상기 메모리 누수가 발생한 프로세스를 재시동하도록 처리한다.The
상기 메모리 정보 데이터 베이스(203), 상기 메모리 정보 수집부(201), 상기 메모리 누수 판단부(205) 및 상기 메모리 누수 제어부(207)의 역할은 상기 메모리 누수 관리부(200)에 의해 수행할 수 있으나, 본 발명에서 이를 별도로 구성하여 도시한 것은 각 기능들을 구별하여 설명하기 위함이다. 따라서, 실제로 제품을 구현하는 경우에 이들 모두를 상기 메모리 누수 관리부(200)에서 처리하도록 구성할 수도 있다.The
이상은 이동통신 시스템에서 메모리 누수에 따라 비 정상적인 시스템으로 천이되는 것을 방지하기 위한 장치에 대하여 설명하였고, 이하 설명에서는 본 발명의 일 실시 예에 따른 장치를 이용하여 이동통신 시스템에서 발생한 메모리 누수를 처리하기 위한 방법에 관하여 설명할 것이다.In the above description, a device for preventing a transition to an abnormal system according to a memory leak in a mobile communication system has been described. In the following description, a memory leak occurring in a mobile communication system using a device according to an embodiment of the present invention is processed. A method for doing so will be described.
도 3은 본 발명의 바람직한 일 실시 예에 따른 메모리 누수 관리부에서 메모리 누수가 발생한 프로세스를 처리하기 위한 과정을 도시한 흐름도이다.3 is a flowchart illustrating a process for processing a process in which a memory leak occurs in the memory leak management unit according to an exemplary embodiment of the present invention.
상기 도 3을 참조하면, 먼저 상기 메모리 누수 관리부(200)는 301단계에서 시스템 동작을 확인한 후, 303단계로 진행하여 상기 동작중인 시스템에서 동작하고 있는 프로세스들에서 사용하는 메모리의 정보(예 ; 사용 메모리의 량)를 획득한다.Referring to FIG. 3, first, the memory leak management unit 200 checks the system operation in
여기에서, 상기 프로세스에서 사용하는 메모리의 정보를 확인하는 과정은 상기 메모리 누수 관리부(200)의 제어를 받은 메모리 정보 수집부(201)에 의해 수행될 수 있으며, 상기 메모리 정보 수집부(201)는 커널로부터 주기적으로 상기 시스템에서 동작하는 모든 프로세스에 대한 메모리 정보를 제공받아 확인할 수 있다.Here, the process of checking the memory information used in the process may be performed by the memory
이후, 상기 메모리 누수 관리부(200)는 305단계로 진행하여 메모리 누수 판단부(205)로 하여금 메모리 누수로 의심되는 프로세스가 존재하는지 검사하도록 지시한다.In
여기에서, 상기 메모리 누수 관리부(200)의 지시를 받은 상기 메모리 누수 판단부(205)의 동작 과정은 하기 도 6에서 상세히 설명할 것이다.Herein, an operation process of the memory
만일, 상기 메모리 누수 판단부(205)로부터 상기 메모리 누수가 의심되는 프로세스가 존재함을 알리는 정보를 수신할 경우, 상기 메모리 누수 관리부(200)는 307단계로 진행하여 메모리 누수 제어부(207)로 하여금 상기 메모리 누수가 발생한 프로세스를 재시동하도록 처리한 후, 본 알고리즘을 종료한다.If the memory
상기 도 3은 상기 메모리 누수 관리부(200)의 전반적인 동작 과정에 대하여 설명한 것이며, 아래 설명에서는 상기 누수 관리부(200)의 세부 기능에 대하여 설명할 것이다.3 is a description of the overall operation of the memory leak management unit 200, and in the following description, detailed functions of the leak management unit 200 will be described.
도 4는 본 발명의 바람직한 일 실시 예에 따른 메모리 누수 관리부에서 동작중인 프로세스들의 메모리 정보를 수집하는 메모리 정보 수집부의 과정을 도시한 흐름도이다. 이하 설명에서 도 5는 메모리 누수가 발생할 수 있는 프로세스의 정보 를 포함하는 메시지의 형태를 나타낸 도면이다.4 is a flowchart illustrating a process of a memory information collecting unit collecting memory information of processes operating in the memory leak managing unit according to an exemplary embodiment of the present invention. In the following description, FIG. 5 illustrates a form of a message including information of a process in which a memory leak may occur.
상기 도 4를 참조하면, 상기 메모리 정보 수집부(201)는 먼저 401단계에서 커널로부터 모든 프로세스에 대한 메모리 정보를 수신한 후, 403단계로 진행하여 상기 수신한 메모리 정보를 이용하여 메모리 사용량이 많은 프로세스의 순서로 정렬한 리스트를 생성한다.Referring to FIG. 4, the memory
이후, 상기 메모리 정보 수집부(201)는 405단계로 진행하여 메모리 누수가 발생할 수 있는 프로세스의 정보를 획득한다. 여기에서, 상기 메모리 누수로 판단될 수 있는 프로세스의 정보는 상기 403단계에서 정렬한 상기 메모리 사용량이 많은 프로세스 가운데 가장 메모리 사용량이 많은 일정 갯 수의 프로세스의 정보를 말한다.In
이후, 상기 메모리 정보 수집부(201)는 407단계로 진행하여 상기 획득한 프로세스 정보를 포함하는 메시지를 메모리 누수 판단부(205)로 전송한다.In
여기에서, 상기 메모리 누수 판단부(205)로 전송하는 메시지는 도 5에 도시한 바와 같이 상기 프로세스 정보를 포함하는 메시지임을 알리는 메시지 헤드(msg head)(501)와 상기 프로세스에 대한 정보를 포함하는 메시지 바디(msg body)(503)로 구성할 수 있다.Here, the message transmitted to the memory
여기에서, 상기 메시지 바디(msg body)(503)는 시스템 프로세서 정보를 나타내는 메시지 타입(Type)(505), 프로세스 아이디(Process ID)(507), 프로세스 사용 메모리 크기를 나타내는 사이즈(Size)(509), 프로세스 이름(Process)(511)으로 구성할 수 있다.Here, the message body msg
상기와 같은 형태의 메시지를 상기 메모리 누수 판단부(205)로 제공할 경우, 상기 메모리 정보 수집부(201)는 본 알고리즘을 종료한다.When the message of the above type is provided to the memory
도 6은 본 발명의 바람직한 일 실시 예에 따른 메모리 누수 관리부에서 메모리 누수 여부를 판단하기 위한 메모리 누수 판단부의 과정을 도시한 흐름도이다. 이하 설명에서 도 7은 메모리 정보 데이터 베이스(203)에 저장되어 있는 정보의 구성을 도시한 도면이다.6 is a flowchart illustrating a process of a memory leak determining unit for determining whether a memory leak is performed in the memory leak managing unit according to an exemplary embodiment of the present invention. In the following description, FIG. 7 is a diagram illustrating a configuration of information stored in the
상기 도 6을 참조하면, 상기 메모리 누수 판단부(205)는 먼저 601단계에서 메모리 정보 수집부(201)로부터 메모리 누수로 판단될 수 있는 프로세스의 정보를 수신한 후, 603단계로 진행하여 메모리 누수로 의심되는 프로세스가 존재하는지 검사한다.Referring to FIG. 6, the memory
여기에서, 상기 메모리 누수로 의심되는 프로세스의 존재 여부는 상기 메모리 정보 수집부(201)로부터 수신한 프로세스 정보와 상기 메모리 누수 관리부(200)의 메모리 정보 데이터 베이스(203)에 기 저장되어 있는 프로세스별 요구 메모리 정보를 비교하여 판단할 수 있다.Here, whether there is a process suspected of leaking memory is determined by process information previously received from the memory
도 7(a)는 상기 메모리 정보 데이터 베이스(203)에 기 저장되어 있는 요구 메모리 정보를 도시한 도면이다.FIG. 7A is a diagram showing required memory information previously stored in the
상기 도 7(a)를 참조하면, 상기 요구 메모리 정보는 상기 프로세스가 정상적으로 동작할 경우에 사용되는 메모리의 양을 나타내는 정보로 프로세스 이름(capsName(key))(701), 프로세스 실행 이름(exeName)(703), 프로세스 로딩시 사 용되는 메모리 량(norm_size)(705), 프로세스의 최대 메모리 사용량(max_size)(707), 프로세스 서비스 중요도(isCritical)(709) 등의 정보를 포함한다.Referring to FIG. 7A, the request memory information is information indicating the amount of memory used when the process operates normally. The process name (capsName (key)) 701 and the process execution name (exeName) are shown. 703, a memory amount (norm_size) 705 used in the process loading, a maximum
도 7(b)는 상기 메모리 정보 데이터 베이스(203)에 저장되어 있는 메모리 누수 여부의 판단에 기준이 되는 임계값의 구조를 나타내는 도면이다.FIG. 7B is a diagram illustrating a structure of a threshold value used as a reference for determining whether a memory leak is stored in the
상기 도 7(b)를 참조하면, 상기 임계값(711)은 메모리 사용량이 증가한 횟수(increaseCount)(713), 메모리 사용량 증가 크기(increaseSize)(715), 메모리 누수 프로세스 재시동 여부를 나타내는 정보(autoRestart)(717)를 포함할 수 있다.Referring to FIG. 7B, the
즉, 상기 메모리 누수 판단부(205)는 상기 메모리 정보 수집부(201)로부터 상기 요구 메모리 정보의 최대 메모리 사용량(max_size)(707)보다 많은 메모리를 사용하는 프로세스의 정보를 수신할 경우, 상기 최대 메모리 사용량을 초과한 크기가 상기 임계값의 메모리 사용량 증가 크기(increaseSize)(715)보다 클 경우, 상기 프로세스에 대해 메모리 누수가 발생하였음으로 판단할 수 있다.That is, when the memory
만일, 상기 603단계에서 메모리 누수로 의심되는 프로세스가 존재함을 확인할 경우, 상기 메모리 누수 판단부(205)는 605단계로 진행하여 상기 메모리 누수로 의심되는 프로세스가 메모리 누수 의심 리스트에 기 등록되어 있는지 검사한다.If it is determined in
만일, 상기 메모리 누수 의심 리스트에 상기 프로세스가 기 등록되어 있지 않음을 확인할 경우, 상기 메모리 누수 판단부(205)는 613단계로 진행하여 상기 리스트에 상기 프로세스를 등록한다.If it is confirmed that the process is not registered in the memory leak suspect list, the memory
한편, 상기 메모리 누수 의심 리스트에 상기 프로세스가 기 등록되어 있음을 확인할 경우, 상기 메모리 누수 판단부(205)는 607단계로 진행하여 상기 메모리 누수 의심 리스트의 등록 횟수를 "1" 증가시킨다.On the other hand, if it is confirmed that the process is already registered in the memory leak suspect list, the
이후, 상기 메모리 누수 판단부(205)는 609단계로 진행하여 상기 기 설정되어 있는 임계값 이상 메모리 누수 의심 리스트에 등록된 프로세스가 존재하는 검사한다.In
만일, 상기 임계값 이상 메모리 누수 의심 리스트에 등록된 프로세스가 존재하지 않을 경우, 상기 메모리 누수 판단부(205)는 상기 601단계의 과정을 재수행한다.If there is no process registered in the memory leak suspicion list greater than or equal to the threshold value, the memory
한편, 상기 임계값 이상 메모리 누수 의심 리스트에 등록된 프로세스가 존재함을 확인할 경우, 상기 메모리 누수 판단부(205)는 611단계로 진행하여 메모리 누수 리스트에 상기 프로세스를 등록한 후, 상기 등록한 리스트를 메모리 누수 제어부(207)로 제공한다.On the other hand, when it is determined that there is a process registered in the memory leak suspicion list having a threshold value or more, the memory
여기에서, 상기 메모리 누수 제어부(207)로 제공하는 리스트는 도 7(c)에 도시한 바와 같이 상기 메모리 누수가 발생한 프로세스의 리스트임을 알리는 메시지 헤드(msg head)(731)와 상기 프로세스에 대한 정보를 포함하는 메시지 바디(msg body)(733)로 구성할 수 있다.Here, the list provided to the memory
여기에서, 상기 메시지 바디(msg body)(731)는 시스템 프로세서 정보를 나타내는 메시지 타입(Type)(735), 상기 프로세스의 의심 리스트 등록 횟수(737), 메모리 누수가 발생한 프로세스 아이디(Process ID)(739), 프로세스 사용 메모리 크기를 나타내는 사이즈(Size)(741), 프로세스 이름(Process)(743)으로 구성할 수 있 다.Here, the message body msg
상기 메모리 누수 판단부(205)는 상기 메모리 누수 제어부(207)로의 리스트의 전달을 완료한 후, 본 알고리즘을 종료한다.The memory
도 8은 본 발명의 바람직한 일 실시 예에 따른 메모리 누수 관리부에서 메모리 누수 발생시 프로세스 재시동을 처리하는 메모리 누수 제어부의 과정을 도시한 흐름도이다.8 is a flowchart illustrating a process of a memory leak controller which processes a process restart when a memory leak occurs in the memory leak manager according to an exemplary embodiment of the present invention.
상기 도 8을 참조하면, 상기 메모리 누수 제어부(207)는 801단계에서 메모리 누수 판단부(205)로부터 메모리 누수 리스트를 수신한다.Referring to FIG. 8, the
이후, 상기 메모리 누수 제어부(207)는 803단계로 진행하여 메모리 누수로 확인된 프로세스의 가중치 메모리를 계산한다.In
여기에서, 상기 가중치 메모리는 동작중인 프로세스의 메모리 사용이 과다할 경우, 재시동을 수행하는 프로세스 선택의 기준이 되는 값으로, 상기 프로세스들의 메모리 과다 사용시 상기 메모리 누수 제어부(207)는 상기 계산한 가중치 메모리 가운데 높은 가중치 메모리의 크기를 가지는 프로세스를 재시동하도록 처리한다.Here, the weighted memory is a value used as a criterion for selection of a process for restarting when the memory of the running process is excessive. The
이후, 상기 메모리 누수 제어부(207)는 805단계로 진행하여 상기 계산한 가중치 메모리 크기를 가중치 메모리 크기가 큰 순서대로 정렬한 후, 807단계로 진행하여 시스템의 가용 메모리가 부족한지 판단한다. 만일, 상기 시스템의 가용 메모리가 부족하지 않음을 확인할 경우, 상기 메모리 누수 제어부(207)는 상기 801단계의 과정을 반복 수행한다.The
한편, 상기 시스템의 가용 메모리의 부족함을 확인할 경우, 상기 메모리 누수 제어부(207)는 809단계로 진행하여 큰 가중치 메모리의 프로세스를 재시동하도록 처리한 후, 본 알고리즘을 종료한다.On the other hand, when it is determined that the available memory of the system is insufficient, the
한편, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.Meanwhile, in the detailed description of the present invention, specific embodiments have been described, but various modifications may be made without departing from the scope of the present invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the scope of the following claims, but also by the equivalents of the claims.
상술한 바와 같이, 본 발명에 따른 메모리 누수를 방지하기 위한 장치 및 방법을 이용함으로써, 기존 이동통신 시스템에서 가용할 메모리가 부족할 경우, 최대 메모리를 사용하는 프로세스 또는 새롭게 메모리를 사용하고자 하는 어플리케이션의 동작을 종료하도록 하여, 정상 서비스를 수행하는 기능을 중지시키는 문제점을 해결할 수 있다.As described above, by using the apparatus and method for preventing the memory leak according to the present invention, when there is not enough memory available in the existing mobile communication system, the operation of the process that uses the maximum memory or the application to use the new memory By ending the problem, the problem of stopping the function of performing a normal service can be solved.
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070014253A KR20080075293A (en) | 2007-02-12 | 2007-02-12 | Apparatus and method for recovery of memory leakage process in portable communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070014253A KR20080075293A (en) | 2007-02-12 | 2007-02-12 | Apparatus and method for recovery of memory leakage process in portable communication system |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20080075293A true KR20080075293A (en) | 2008-08-18 |
Family
ID=39878975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070014253A KR20080075293A (en) | 2007-02-12 | 2007-02-12 | Apparatus and method for recovery of memory leakage process in portable communication system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20080075293A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100936967B1 (en) * | 2009-08-04 | 2010-01-14 | 주식회사 엑셈 | Apparatus for tracing memory leaks of user programs on was environment and method thereof |
KR101323220B1 (en) * | 2012-07-27 | 2013-11-04 | 부산대학교 산학협력단 | Apparatus and method for detecting memory leaks, and computer-readable recording medium with program therefor |
KR20200015000A (en) * | 2018-08-02 | 2020-02-12 | 삼성전자주식회사 | Method for memory leak detection and electronic device thereof |
KR102221436B1 (en) * | 2020-10-26 | 2021-03-03 | 주식회사 동일아이씨티 | method for automatically starting computer program |
US11579927B2 (en) | 2019-08-30 | 2023-02-14 | Samsung Electronics Co., Ltd. | Electronic device for securing usable dynamic memory and operating method thereof |
-
2007
- 2007-02-12 KR KR1020070014253A patent/KR20080075293A/en not_active Application Discontinuation
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100936967B1 (en) * | 2009-08-04 | 2010-01-14 | 주식회사 엑셈 | Apparatus for tracing memory leaks of user programs on was environment and method thereof |
KR101323220B1 (en) * | 2012-07-27 | 2013-11-04 | 부산대학교 산학협력단 | Apparatus and method for detecting memory leaks, and computer-readable recording medium with program therefor |
WO2014017701A1 (en) * | 2012-07-27 | 2014-01-30 | 부산대학교 산학협력단 | Apparatus and method for detecting memory leakage, and computer-readable recording medium |
KR20200015000A (en) * | 2018-08-02 | 2020-02-12 | 삼성전자주식회사 | Method for memory leak detection and electronic device thereof |
US11169866B2 (en) | 2018-08-02 | 2021-11-09 | Samsung Electronics Co., Ltd. | Method for detecting memory leak and electronic device thereof |
US11579927B2 (en) | 2019-08-30 | 2023-02-14 | Samsung Electronics Co., Ltd. | Electronic device for securing usable dynamic memory and operating method thereof |
KR102221436B1 (en) * | 2020-10-26 | 2021-03-03 | 주식회사 동일아이씨티 | method for automatically starting computer program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9537897B2 (en) | Method and apparatus for providing analysis service based on behavior in mobile network environment | |
US20220179682A1 (en) | Task processing method, apparatus, and system based on distributed system | |
US9342426B2 (en) | Distributed system, server computer, distributed management server, and failure prevention method | |
CN105512027B (en) | Process status monitoring method and device | |
CN108039964B (en) | Fault processing method, device and system based on network function virtualization | |
CN106708734B (en) | Software anomaly detection method and device | |
US10121004B2 (en) | Apparatus and method for monitoring virtual machine based on hypervisor | |
US20170060671A1 (en) | Anomaly recovery method for virtual machine in distributed environment | |
KR20080075293A (en) | Apparatus and method for recovery of memory leakage process in portable communication system | |
US8392914B2 (en) | Method and apparatus for recognizing processes in GOS by VMM | |
CN104967630A (en) | Method and apparatus for processing webpage access request | |
CN110795395B (en) | File deployment system and file deployment method | |
CN108306739B (en) | Method for detecting user identity information, server, computer-readable storage medium and computer equipment | |
US20150227412A1 (en) | Server performance correction using remote server actions | |
CN106028309B (en) | Method and device for restoring main card in dual-card dual-standby terminal to data network | |
CN107517110A (en) | Veneer configuration self-recovery method and device in a kind of distributed system | |
WO2014190738A1 (en) | System and method for locating a mobile device | |
CN108958883A (en) | The restoration methods and system of virtual machine in cloud computing cluster | |
US20240152439A1 (en) | Detection Method and Electronic Device | |
CN106874126A (en) | Host process method for detecting abnormality in a kind of software development | |
US10157110B2 (en) | Distributed system, server computer, distributed management server, and failure prevention method | |
CN105389510A (en) | Android mobile device malicious software detection method and system | |
KR20110004935A (en) | Malicious file detection system, malicious file detection apparatus and its method | |
CN106685744A (en) | Fault elimination method, apparatus and system | |
CN113407419B (en) | Memory leak detection method and device, computer equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |