KR20110064832A - Task management apparatus - Google Patents
Task management apparatus Download PDFInfo
- Publication number
- KR20110064832A KR20110064832A KR1020090121577A KR20090121577A KR20110064832A KR 20110064832 A KR20110064832 A KR 20110064832A KR 1020090121577 A KR1020090121577 A KR 1020090121577A KR 20090121577 A KR20090121577 A KR 20090121577A KR 20110064832 A KR20110064832 A KR 20110064832A
- Authority
- KR
- South Korea
- Prior art keywords
- task
- memory
- occupancy
- unit
- current foreground
- 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/44—Arrangements for executing specific programs
-
- 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
-
- 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
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
- G06F9/5088—Techniques for rebalancing the load in a distributed system involving task migration
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
Description
본 발명은 태스크 관리 장치에 관한 것으로서, 더욱 상세하게는 멀티태스킹(multi-tacking)을 지원하는 범용 운영체제에서 포그라운드 태스크(foreground task)로부터 백그라운드(background task)로 전환되는 태스크의 리소스를 조절하는 태스크 관리 장치에 관한 것이다.The present invention relates to an apparatus for managing a task, and more particularly, a task for adjusting a resource of a task switched from a foreground task to a background task in a general-purpose operating system supporting multitasking. It relates to a management device.
본 발명은 지식경제부의 IT성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호 : 2009-S-029-01, 과제명 : 정보 산업기기용 임베디드SW 공통 플랫폼 개발].The present invention is derived from the research conducted as part of the IT growth engine technology development project of the Ministry of Knowledge Economy [Task management number: 2009-S-029-01, Task name: Development of embedded SW common platform for information industrial equipment].
현재 출시되고 있는 소형 화면을 사용하는 단말기(하나의 응용 프로그램이 단말의 화면을 모두 차지하는 단말기)는 기능이 복잡해짐에 따라 운영체제를 탑재하여 사용하는 추세이다. 이 때, 많은 경우에 개발 기간의 단축 등을 이유로 범용 운영체제를 단말기에 맞게 수정하여 사용한다. 현재 범용 운영체제는 대부분 한 순 간에 2개 이상의 응용 프로그램을 실행하는 멀티태스킹을 지원하고 있다. 이 경우 현재 사용자의 입력을 받고 있는 하나의 응용 프로그램을 포그라운드 태스크라 하고, 그 외의 모든 응용 프로그램을 백그라운드 태스크라고 한다. 화면이 큰 퍼스널 컴퓨터 환경의 경우에는 백그라운드 태스크가 화면에서 완전히 배제되지 않는 경우가 대부분이지만 소형 화면을 사용하는 단말기 환경의 경우에는 화면 크기의 이유로 포그라운드 태스크 만이 화면에 나타나고 백그라운드 태스크는 화면에 나타나지 않는 경우가 많다.Terminals using small screens (terminals in which one application program occupies all the screens of the terminal) currently on the market are increasingly used as operating systems as functions become more complicated. In this case, in many cases, the general-purpose operating system is modified to be used for the terminal due to the shortening of the development period. Most general-purpose operating systems now support multitasking to run more than one application at a time. In this case, one application that is currently receiving input from the user is called a foreground task, and all other applications are called background tasks. In the case of a personal computer environment with a large screen, the background task is not completely excluded from the screen. However, in a terminal environment using a small screen, only the foreground task appears on the screen and the background task does not appear on the screen because of the screen size. There are many cases.
종래 기술에 따른 범용 운영체제의 태스크 관리 기능은 사용자 입력을 제외한 모든 자원의 분배를 포그라운드 태스크와 백그라운드 태스크에 동등하게 할당한다. 하지만 소형 화면을 사용하는 단말기 환경에서는 포그라운드 태스크과 백그라운드 태스크의 중요성이 다르기 때문에, 이와 같은 정책을 사용하면 제한된 자원이 효율적으로 분배되지 않는 결과를 가져오는 문제점이 있다.The task management function of the general-purpose operating system according to the prior art equally allocates the distribution of all resources except the user input to the foreground task and the background task. However, since the importance of the foreground task and the background task is different in a terminal environment using a small screen, there is a problem in that the use of such a policy does not efficiently distribute limited resources.
본 발명은 이와 같은 종래 기술의 문제점을 해결하기 위해 제안한 것으로서, 멀티태스킹을 지원하는 범용 운영체제가 탑재된 소형 화면 사용 단말기에서 포그라운드 태스크로부터 백그라운드로 전환되는 태스크의 리소스를 조절함으로써, 제안된 리소스를 효율적으로 배분하여 리소스의 활용도를 높여서 단말기의 성능이 향상되도록 하는 태스크 관리 장치를 제공한다.The present invention has been proposed to solve the problems of the prior art, and by adjusting the resources of the task to switch from the foreground task to the background in a small screen using a terminal equipped with a general-purpose operating system that supports multitasking, It provides a task management device that can be efficiently distributed to increase the utilization of resources to improve the performance of the terminal.
본 발명의 제 1 관점으로서 태스크 관리 장치는, 특정 백그라운드 태스크에 대해 포그라운드 태스크로의 전환을 명령받는 태스크 전환 명령부와, 상기 명령에 대응하여 새로운 백그라운드 태스크로 전환되는 현재의 포그라운드 태스크의 특성을 파악하는 태스크 특성 파악부와, 상기 새로운 백그라운드 태스크로 전환되는 상기 현재의 포그라운드 태스크에 대해 파악한 상기 특성에 따라 리소스의 점유율을 낮추는 리소스 점유율 조절부를 포함할 수 있다.As a first aspect of the present invention, a task management apparatus includes a task switching command unit that is instructed to switch to a foreground task for a specific background task, and characteristics of a current foreground task switched to a new background task in response to the command. And a task occupancy determining unit for determining a resource occupancy rate and a resource occupancy adjusting unit for lowering the occupancy of the resource according to the characteristic identified for the current foreground task switched to the new background task.
여기서, 상기 태스크 특성 파악부는, 상기 현재의 포그라운드 태스크가 동작을 완전히 멈추면 안 되는 무정지 특성을 가졌는지를 파악하며, 상기 리소스 점유율 조절부는, 상기 무정지 특성을 가진 상기 현재의 포그라운드 태스크에 대해 상기 리소스의 점유율을 낮출 수 있다.The task characteristic identifying unit may determine whether the current foreground task has a non-stop characteristic that should not stop the operation completely, and the resource occupancy adjusting unit may be configured to determine the current foreground task having the non-stop characteristic. The share of resources can be lowered.
상기 태스크 특성 파악부는, 기 저장된 무정지 태스크 리스트에 상기 현재의 포그라운드 태스크가 포함되어 있는지를 판단하여 상기 무정지 특성을 파악할 수 있다.The task characteristic identifying unit may determine whether the current foreground task is included in a previously stored non-stop task list to identify the non-stop characteristic.
상기 리소스 점유율 조절부는, 상기 현재의 포그라운드 태스크가 사용하는 메모리를 재구성하여 점유율을 낮출 수 있다.The resource occupancy adjusting unit may lower the occupancy rate by reconfiguring a memory used by the current foreground task.
상기 리소스 점유율 조절부는, 상기 메모리의 에너지 관리 단위를 확인하여 가장 적은 메모리를 사용하는 에너지 관리 단위에서 가장 많은 메모리를 사용하는 에너지 관리 단위로 복사할 수 있다.The resource occupancy adjusting unit may identify the energy management unit of the memory and copy the energy management unit using the least memory from the energy management unit using the least memory.
본 발명의 제 2 관점으로서 태스크 관리 방법은, 특정 백그라운드 태스크에 대해 포그라운드 태스크로의 전환을 명령받는 단계와, 상기 명령에 대응하여 새로운 백그라운드 태스크로 전환되는 현재의 포그라운드 태스크의 특성을 파악하는 단계와, 상기 새로운 백그라운드 태스크로 전환되는 상기 현재의 포그라운드 태스크에 대해 파악한 상기 특성에 따라 리소스의 점유율을 낮추는 단계를 포함할 수 있다.According to a second aspect of the present invention, there is provided a task management method comprising: instructing a particular background task to switch to a foreground task, and identifying characteristics of a current foreground task switched to a new background task in response to the command. And lowering the occupancy of resources according to the characteristics identified for the current foreground task switched to the new background task.
여기서, 상기 특성을 파악하는 단계는, 상기 현재의 포그라운드 태스크가 동작을 완전히 멈추면 안 되는 무정지 특성을 가졌는지를 파악하며, 상기 점유율을 낮추는 단계는, 상기 무정지 특성을 가진 상기 현재의 포그라운드 태스크에 대해 상기 리소스의 점유율을 낮출 수 있다.The determining of the characteristic may include determining whether the current foreground task has a non-stop characteristic that should not be completely stopped. The lowering the occupancy rate may include determining the current foreground task having the non-stop characteristic. It is possible to lower the share of the resource for.
상기 특성을 파악하는 단계는, 기 저장된 무정지 태스크 리스트에 상기 현재의 포그라운드 태스크가 포함되어 있는지를 판단하여 상기 무정지 특성을 파악할 수 있다.The determining of the characteristic may include determining the non-stop characteristic by determining whether the current foreground task is included in a previously stored non-stop task list.
상기 점유율을 낮추는 단계는, 상기 현재의 포그라운드 태스크가 사용하는 메모리를 재구성하여 점유율을 낮출 수 있다.In the lowering of the occupancy rate, the occupancy rate may be lowered by reconfiguring a memory used by the current foreground task.
상기 점유율을 낮추는 단계는, 상기 메모리의 에너지 관리 단위를 확인하여 가장 적은 메모리를 사용하는 에너지 관리 단위에서 가장 많은 메모리를 사용하는 에너지 관리 단위로 복사할 수 있다.In the lowering of the occupancy, the energy management unit of the memory may be identified and copied from the energy management unit using the least memory to the energy management unit using the most memory.
본 발명의 실시예에 의하면 멀티태스킹을 지원하는 범용 운영체제가 탑재된 소형 화면 사용 단말기에서 포그라운드 태스크로부터 백그라운드로 전환되는 태스크의 리소스를 낮추는 조절을 통해 제안된 리소스를 효율적으로 배분할 수 있다. 예컨대, 응용프로그램이 사용하는 메모리의 점유율을 효율적으로 조절할 수 있다.According to an exemplary embodiment of the present invention, the proposed resource may be efficiently distributed by adjusting a resource lowering of a task that is switched from the foreground task to the background in a small screen using terminal equipped with a general-purpose operating system supporting multitasking. For example, it is possible to efficiently control the occupancy of the memory used by the application.
따라서, 리소스의 활용도를 높여서 단말기의 성능이 향상되는 효과가 있다.Therefore, the performance of the terminal is improved by increasing the utilization of resources.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.Advantages and features of the present invention and methods for achieving them will be apparent with reference to the embodiments described below in detail with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but can be implemented in various different forms, and only the embodiments make the disclosure of the present invention complete, and the general knowledge in the art to which the present invention belongs. It is provided to fully inform the person having the scope of the invention, which is defined only by the scope of the claims.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. In describing the embodiments of the present invention, if it is determined that a detailed description of a known function or configuration may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. In addition, terms to be described below are terms defined in consideration of functions in the embodiments of the present invention, which may vary according to intentions or customs of users and operators. Therefore, the definition should be based on the contents throughout this specification.
첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다. Combinations of each block of the accompanying block diagram and each step of the flowchart may be performed by computer program instructions. These computer program instructions may be mounted on a processor of a general purpose computer, special purpose computer, or other programmable data processing equipment such that instructions executed through the processor of the computer or other programmable data processing equipment may not be included in each block or flowchart of the block diagram. It will create means for performing the functions described in each step. These computer program instructions may be stored in a computer usable or computer readable memory that can be directed to a computer or other programmable data processing equipment to implement functionality in a particular manner, and thus the computer usable or computer readable memory. It is also possible for the instructions stored in to produce an article of manufacture containing instruction means for performing the functions described in each block or flow chart step of the block diagram. Computer program instructions may also be mounted on a computer or other programmable data processing equipment, such that a series of operating steps may be performed on the computer or other programmable data processing equipment to create a computer-implemented process to create a computer or other programmable data. Instructions that perform processing equipment may also provide steps for performing the functions described in each block of the block diagram and in each step of the flowchart.
또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언 급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each block or step may represent a portion of a module, segment or code that includes one or more executable instructions for executing a specified logical function (s). It should also be noted that in some alternative embodiments, the functions noted in the blocks or steps may occur out of order. For example, the two blocks or steps shown in succession may in fact be executed substantially concurrently or the blocks or steps may sometimes be performed in the reverse order, depending on the functionality involved.
도 1은 본 발명의 실시예에 따른 태스크 관리 장치의 블록 구성도이며, 멀티태스킹을 지원하는 범용 운영체제가 탑재된 소형 화면 사용 단말기에 적용할 수 있는 실시예를 고려한 것이다.1 is a block diagram of a task management apparatus according to an embodiment of the present invention, and considers an embodiment applicable to a small screen using terminal equipped with a general-purpose operating system that supports multitasking.
이에 나타낸 바와 같이 본 발명의 태스크 관리 장치는, 태스크 전환 명령부(110), 태스크 특성 파악부(120), 리소스 점유율 조절부(130) 등을 포함하여 구성된다.As described above, the task management apparatus of the present invention includes a task
태스크 전환 명령부(110)는 특정 백그라운드 태스크에 대해 포그라운드 태스크로의 전환을 명령받는다. 이는 사용자가 응용 프로그램을 새롭게 실행하거나 백그랑누드 태스크를 다시 포그라운드 태스크로 전환하는 명령을 내리는 경우이다.The task
태스크 특성 파악부(120)는 태스크 전환 명령에 대응하여 새로운 백그라운드 태스크로 전환되는 현재의 포그라운드 태스크의 특성을 파악한다. 현재의 포그라운드 태스크는 자연히 백그라운드 태스크로 전환되는데, 현재의 포그라운드 태스크가 동작을 완전히 멈추면 안 되는 무정지 특성을 가졌는지를 파악한다. 여기서, 기 저장된 무정지 태스크 리스트에 현재의 포그라운드 태스크가 포함되어 있는지를 판단하여 무정지 특성을 파악할 수 있다.The task
리소스 점유율 조절부(130)는 태스크 전환 명령에 대응하여 새로운 백그라운드 태스크로 전환되는 현재의 포그라운드 태스크에 대해 태스크 특성 파악부(120)가 파악한 특성에 따라 리소스의 점유율을 낮춘다. 이를 통해, 무정지 특성을 가진 현재의 포그라운드 태스크에 대해 리소스의 점유율을 낮출 수 있다. 예컨대, 현재의 포그라운드 태스크가 사용하는 메모리를 재구성하여 점유율을 낮출 수 있다. 이를 위해, 메모리의 에너지 관리 단위를 확인하여 가장 적은 메모리를 사용하는 에너지 관리 단위에서 가장 많은 메모리를 사용하는 에너지 관리 단위로 메모리를 복사할 수 있다.The resource occupancy adjusting
도 2는 본 발명의 실시예에 따른 태스크 관리 장치에 의한 태스크 관리 방법을 설명하기 위한 흐름도이며, 도 3은 본 발명의 태스크 관리 방법에 의한 메모리 재구성 기능을 설명하기 위한 흐름도이다.2 is a flowchart illustrating a task management method by the task management apparatus according to an exemplary embodiment of the present invention, and FIG. 3 is a flowchart illustrating a memory reconfiguration function according to the task management method of the present invention.
도 1 내지 도 3을 참조하여 본 발명의 실시예에 따른 태스크 관리 장치에 의한 태스크 관리 과정에 대해 살펴보기로 한다.A task management process by the task management apparatus according to an embodiment of the present invention will be described with reference to FIGS. 1 to 3.
먼저, 사용자가 응용 프로그램을 새롭게 실행하거나 특정 백그라운드 태스크를 다시 포그라운드 태스크로 전환하는 명령을 내릴 경우에 태스크 전환 명령부(110)에 태스크 전환 명령이 입력된다.First, a task switching command is input to the task
그러면, 사용자가 명령을 내린 특정 백그라운드 태스크가 포그라운드 태스크로 전환되어야 하기에 현재의 포그라운드 태스크는 새로운 백그라운드 태스크로 전 환되어야 한다.Then, the current foreground task must be switched to the new background task because the specific background task that the user issued the command must be switched to the foreground task.
이때, 태스크 특성 파악부(120)는 현재의 포그라운드 태스크의 특성(성격)을 파악하여 현재의 포그라운드 태스크가 동작을 완전히 멈추면 안 되는 무정지 특성을 가졌는지를 파악한다(S201). 여기서, 기 저장된 무정지 태스크 리스트에 현재의 포그라운드 태스크가 포함되어 있는지를 판단하여 무정지 특성을 파악할 수 있다. 여기서, 무정지 태스크 리스트는 사용자에 의한 규정에 의해 리스트업 할 수도 있고, 개별 태스크의 작업 내역을 살펴서 리스트업 할 수도 있다. 예컨대, 이동통신단말기의 경우에는 통신 기능이나 장시간의 계산이 필요한 기능이 이에 속한다고 할 수 있다. 이처럼 무정지 특성을 가진다는 것은 메모리에서 제거할 수 없다는 것을 의미하며, 무정지 특성이 없으면 메모리에서 제거할 수 있다는 것을 의미한다(S203).At this time, the task
만약, 현재의 포그라운드 태스크가 무정지 특성이 없어서 메모리에서 제거할 수 있는 경우라면 메모리의 내용을 모두 2차 저장소로 복사하며(S205), 해당 포그라운드 태스크의 동작을 멈추고(S207), 메모리를 해제한다. 이는 물리적 메모에서 완전히 제거됨을 의미하며, 이렇게 전환된 백그라운드 태스크는 완전히 동작을 멈춘다(S209).If the current foreground task can be removed from the memory because there is no non-stop characteristic, the contents of the memory are copied to the secondary storage (S205), and the operation of the corresponding foreground task is stopped (S207), and the memory is released. do. This means that it is completely removed from the physical memo, and the background task thus switched is completely stopped (S209).
그러나, 현재의 포그라운드 태스크가 무정지 특성을 가지는 경우에는 리소스 점유율 조절부(130)가 새로운 백그라운드 태스크로 전환되는 현재의 포그라운드 태스크에 대해 리소스의 점유율을 낮춘다. 예컨대, 메모리를 재구성하여 해당 태스크의 메모리 점유율을 낮춘다. 이는 하드웨어가 제공하는 에너지 관리 기능 중에 메 모리 에너지 관리 기능을 활용하기 위함이다. 즉 메모리 에너지 관리 기능의 에너지 조절 단위를 최대한 적게 사용할 수 있게 태스크의 메모리를 재구성하는 것이다(S211).However, when the current foreground task has a non-stop characteristic, the
이와 같은 메모리의 재구성 기능에 의하면 때로는 흩어진 메모리를 재구성해야 하므로 메모리의 복사가 최소로 일어나는 방향으로 재구성되어야 한다. 이에 대해서는 도 3의 흐름도에 나타내었다.Such a memory reconstruction function sometimes requires reconstruction of the scattered memory, so that the memory copy must be reconfigured in a direction that minimizes copying. This is illustrated in the flowchart of FIG. 3.
먼저, 새로운 백그라운드 태스크로 전환되어야 할 현재의 포그라운드 태스크에 해당하는 응용프로그램이 사용하는 메모리의 에너지 관리 단위를 확인한다(S301).First, the energy management unit of the memory used by the application corresponding to the current foreground task to be switched to the new background task is checked (S301).
이어서, 가장 적은 메모리를 사용하는 에너지 관리 단위(A)를 확인하며(S303), 가장 많은 메모리를 사용하는 에너지 관리 단위(B)를 확인한다(S305).Subsequently, the energy management unit A using the least memory is identified (S303), and the energy management unit B using the most memory is identified (S305).
그리고, 가장 적은 메모리를 사용하는 에너지 관리 단위(A)에서 가장 많은 메모리를 사용하는 에너지 관리 단위(B)로 복사가 가능한가를 판단하며(S307), 복사가 가능한 것으로 판단되면 가장 적은 메모리를 사용하는 에너지 관리 단위(A)에서 가장 많은 메모리를 사용하는 에너지 관리 단위(B)로 메모리를 복사한다(S309).Then, it is determined whether the copy is possible from the energy management unit (A) that uses the least memory to the energy management unit (B) that uses the most memory (S307). The memory is copied to the energy management unit B that uses the most memory in the energy management unit A (S309).
한편, 백그라운드 태스크가 포그라운드 태스크로 전환될 때에는 이전에 백그라운드로 전환될 때의 상태 그대로 복구가 된다. 우선 복구되는 응용프로그램이 사용할 메모리를 확보하며, 그런 다음 2차 저장소에 있던 내용을 메모리로 복구하고 마지막으로 태스크의 동작을 재시작한다.On the other hand, when the background task is switched to the foreground task, the state is restored as it was when the background task was previously switched to the background. First, free the memory for the application to be recovered, then restore the contents of the secondary storage to memory, and finally restart the task.
도 1은 본 발명의 실시예에 따른 태스크 관리 장치의 블록 구성도,1 is a block diagram of a task management device according to an embodiment of the present invention;
도 2는 본 발명의 실시예에 따른 태스크 관리 장치에 의한 태스크 관리 방법을 설명하기 위한 흐름도,2 is a flowchart illustrating a task management method by a task management apparatus according to an embodiment of the present invention;
도 3은 본 발명의 태스크 관리 방법에 의한 메모리 재구성 기능을 설명하기 위한 흐름도.3 is a flowchart illustrating a memory reconfiguration function by a task management method of the present invention.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
110 : 태스크 전환 명령부110: task switch command unit
120 : 태스크 특성 파악부120: task characteristic grasping unit
130 : 리소스 점유율 조절부130: resource share controller
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090121577A KR20110064832A (en) | 2009-12-09 | 2009-12-09 | Task management apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090121577A KR20110064832A (en) | 2009-12-09 | 2009-12-09 | Task management apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20110064832A true KR20110064832A (en) | 2011-06-15 |
Family
ID=44398199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090121577A KR20110064832A (en) | 2009-12-09 | 2009-12-09 | Task management apparatus |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20110064832A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101989249B1 (en) * | 2017-12-14 | 2019-06-13 | 연세대학교 산학협력단 | Method for offloading in mobile device and the mobile device |
CN110083444A (en) * | 2013-12-10 | 2019-08-02 | 华为终端有限公司 | A kind of task management method and equipment |
-
2009
- 2009-12-09 KR KR1020090121577A patent/KR20110064832A/en not_active Application Discontinuation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110083444A (en) * | 2013-12-10 | 2019-08-02 | 华为终端有限公司 | A kind of task management method and equipment |
US11662802B2 (en) | 2013-12-10 | 2023-05-30 | Huawei Device Co., Ltd. | Task management method and device |
KR101989249B1 (en) * | 2017-12-14 | 2019-06-13 | 연세대학교 산학협력단 | Method for offloading in mobile device and the mobile device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108234589B (en) | Method and apparatus for automatic scaling of microservice applications | |
Zhu et al. | Real-time tasks oriented energy-aware scheduling in virtualized clouds | |
US8769519B2 (en) | Personal and pooled virtual machine update | |
Shiraz et al. | Energy efficient computational offloading framework for mobile cloud computing | |
US9396028B2 (en) | Scheduling workloads and making provision decisions of computer resources in a computing environment | |
US20130111035A1 (en) | Cloud optimization using workload analysis | |
US10541858B2 (en) | Thin client system, management server, workplace environment setting method and workplace environment setting program | |
CN104598294B (en) | Efficient and safe virtualization method for mobile equipment and equipment thereof | |
CN104461746B (en) | A kind of memory headroom optimization method and system based on android system | |
KR20130004502A (en) | System and method of executing threads at a processor | |
CN103473142A (en) | Virtual machine transferring method and device under cloud computing operating system | |
CN106776395A (en) | A kind of method for scheduling task and device of shared cluster | |
JP2008108075A (en) | Task switch control method, and computer system | |
JP2021121921A (en) | Method and apparatus for management of artificial intelligence development platform, and medium | |
CN100440153C (en) | Processor | |
US8977752B2 (en) | Event-based dynamic resource provisioning | |
KR101291123B1 (en) | Method and apparatus for controlling management of application in portable device, recordable medium which program for executing method is recorded | |
KR20110064832A (en) | Task management apparatus | |
CN108733536B (en) | Monitoring management system and method | |
US9882787B2 (en) | Service management in appliance-based solutions | |
CN105653348A (en) | Virtual machine clone method and system | |
KR20150089665A (en) | Appratus for workflow job scheduling | |
CN113641476A (en) | Task scheduling method, game engine, equipment and storage medium | |
CN113010290A (en) | Task management method, device, equipment and storage medium | |
WO2016122596A1 (en) | Checkpoint-based scheduling in cluster |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |