KR100738419B1 - Smartphone Equipped with Memory Manager For Multi Application Based WIPI - Google Patents

Smartphone Equipped with Memory Manager For Multi Application Based WIPI Download PDF

Info

Publication number
KR100738419B1
KR100738419B1 KR1020050100288A KR20050100288A KR100738419B1 KR 100738419 B1 KR100738419 B1 KR 100738419B1 KR 1020050100288 A KR1020050100288 A KR 1020050100288A KR 20050100288 A KR20050100288 A KR 20050100288A KR 100738419 B1 KR100738419 B1 KR 100738419B1
Authority
KR
South Korea
Prior art keywords
application
memory
operating system
heap
memory manager
Prior art date
Application number
KR1020050100288A
Other languages
Korean (ko)
Other versions
KR20070044229A (en
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 KR1020050100288A priority Critical patent/KR100738419B1/en
Publication of KR20070044229A publication Critical patent/KR20070044229A/en
Application granted granted Critical
Publication of KR100738419B1 publication Critical patent/KR100738419B1/en

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
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches

Abstract

본 발명은 위피 기반의 멀티 어플리케이션 실행을 위한 메모리 관리자가 구비된 스마트 폰에 관한 것으로, 스마트폰의 운영체제에 올려진 위피를 기반으로 하여 실행되는 각 어플리케이션이 메모리 상의 시스템 힙 영역을 서로 공유해 사용하도록 하고 어플리케이션 힙 영역을 독립적으로 사용하도록 하는, 위피 기반의 멀티 어플리케이션 실행을 위한 메모리 관리자가 구비된 스마트 폰을 제공한다.The present invention relates to a smart phone equipped with a memory manager for executing a Wi-Fi-based multi-application, each application running based on Wi-Fi loaded on the operating system of the smart phone to share the system heap area on the memory Provided is a smart phone equipped with a memory manager for executing the Wi-Fi-based multi-application to use the application heap area independently.

스마트폰, 운영체제, 위피, 멀티 어플리케이션, 메모리 관리, 시스템 힙 영역, 어플리케이션 힙 영역 Smartphone, Operating System, Wifi, Multi-Application, Memory Management, System Heap Area, Application Heap Area

Description

위피 기반의 멀티 어플리케이션 실행을 위한 메모리 관리자가 구비된 스마트 폰{Smartphone Equipped with Memory Manager For Multi Application Based WIPI}Smartphone Equipped with Memory Manager For Multi Application Based WIPI

도 1은 종래 방식에 따른 스마트폰에 대한 개략적인 계층도.1 is a schematic hierarchical view of a smartphone according to the prior art;

도 2는 본 발명에서 제시하는 스마트폰에 대한 개략적인 계층도.Figure 2 is a schematic hierarchical view of the smartphone proposed in the present invention.

도 3은 본 발명에 따른 위피 기반의 멀티 어플리케이션 실행을 위한 메모리 관리자에 대한 일실시예 계층도.3 is a hierarchical diagram of an embodiment of a memory manager for executing a Wi-Fi based multi-application according to the present invention;

* 도면의 주요 부분에 대한 부호 설명* Explanation of symbols on the main parts of the drawing

10 : WindowsCE OS 20 : Nate Intro Applicaion10: Windows CE OS 20: Nate Intro Applicaion

21 : NGB Application 22 : WAM Downloader Application21: NGB Application 22: WAM Downloader Application

41 : System Heap Area 42 : Application Heap Area41: System Heap Area 42: Application Heap Area

50 : Memory Manager50: Memory Manager

본 발명은 위피 기반의 멀티 어플리케이션 실행을 위한 메모리 관리자가 구비된 스마트 폰에 관한 것으로, 더욱 상세하게는 스마트폰의 운영체제에 올려진 위피를 기반으로 하여 실행되는 각 어플리케이션이 메모리 상의 시스템 힙 영역을 서로 공유해 사용하도록 하고 어플리케이션 힙 영역을 독립적으로 사용하도록 하는, 위피 기반의 멀티 어플리케이션 실행을 위한 메모리 관리자가 구비된 스마트 폰에 관한 것이다.The present invention relates to a smart phone equipped with a memory manager for executing a Wi-Fi-based multi-application, and more particularly, each application to be executed based on the Wi-Fi loaded on the operating system of the smart phone system heap area on each other The present invention relates to a smart phone equipped with a memory manager for executing a Wi-Fi-based multi-application that allows sharing and using the application heap area independently.

최근에 휴대 전화기의 기능과 PDA의 기능을 결합시킨 스마트폰(smartphone)이 각광받고 있다. 이러한 스마트폰에는 기존 휴대 전화기에 비해 대용량의 메모리와 고성능 CPU가 실장되며, 다양한 어플리케이션 실행, 음성/데이터 통신 및 PC 연동 등을 지원하기 위한 운영체제(OS)가 탑재된다. 스마트폰의 운영체제로는 영국의 심비안사가 개발한 "symbian OS"와 미국의 마이크로소프트사가 개발한 "WindowsCE OS"가 대표적이다.Recently, smart phones that combine the functions of a mobile phone and a PDA have been in the spotlight. These smartphones are equipped with a larger memory and a higher performance CPU than conventional mobile phones, and are equipped with an operating system (OS) to support various application execution, voice / data communication, and PC interworking. Smartphone operating systems include the "symbian OS" developed by the British Symbian company and the "WindowsCE OS" developed by the Microsoft company of the United States.

한편, 대한민국에서는 위피(WIPI: Wireless Internet Platform for Interoperability)를 휴대 전화기의 무선 인터넷 플랫폼 표준으로 채택하였다. 이에, 각 이동통신사 및 각 단말 제조업체에서는 휴대 전화기의 운영체제(예; REX 등) 계층과 어플리케이션 계층 중간에 위피를 탑재(포팅, porting)하고 있다.Meanwhile, South Korea has adopted Wireless Internet Platform for Interoperability (WIPI) as the wireless Internet platform standard for mobile phones. Accordingly, each mobile communication company and each terminal manufacturer has installed (porting) portie in the middle of the operating system (eg, REX) layer and the application layer of the mobile phone.

앞서 언급한 바와 같이, 기존 휴대 전화기에는 REX와 같은 기존 운영체제에 위피가 탑재되어 있는 반면에 최근에 출시되고 있는 스마트폰에는 위피가 탑재되어 있지 않은 바, 여러 업체에서 위피를 기반으로 하여 실행되는 각 어플리케이션(예; 브라우저, 무선 인터넷 메뉴, 콘텐츠, 벨소리, 동영상, 문서 작성 프로그램 등)이 스마트폰 상에서 원활하게 실행될 수 있도록 스마폰에 위피를 탑재시키는 개발을 진행하고 있다.As mentioned earlier, while existing mobile phones are equipped with Wi-Fi in existing operating systems such as REX, recent smartphones do not have Wi-Fi. We are working on developing Wi-Fi on smartphones so that applications (eg, browsers, wireless Internet menus, content, ringtones, videos, document creation programs, etc.) can run smoothly on smartphones.

위와 같이 스마트폰에 위피를 탑재하기 위해서는 symbian OS 또는 WindowsCE OS의 스펙을 고려하여 위피의 일부 스펙을 추가/변경하여 스마트폰의 운영체제에 위피를 올려야만 된다. 특히, 이러한 고려 사항 중 하나가 바로 스마트폰의 운용체제가 위피를 어떻게 취급하느냐이다. 이를 도 1을 참조하여 설명하면 다음과 같다.In order to install Wi-Fi on the smartphone as above, it is necessary to add / change some specifications of Wi-Fi in consideration of the specifications of symbian OS or Windows CE OS and upload Wi-Fi on the operating system of the smartphone. In particular, one of these considerations is how the operating system of smartphones treats Wiffy. This will be described with reference to FIG. 1.

도 1은 종래 방식에 따른 스마트폰에 대한 개략적인 계층도이다.1 is a schematic hierarchical view of a smart phone according to a conventional scheme.

스마트폰의 운영체제(예; "WindowsCE OS")(10) 위에 각종 어플리케이션, 예컨대 위피를 기반으로 하여 실행되는 각종 어플리케이션("네이트 인트로", "NGB 브라우저" 및 "왐 다운로더")(21, 22, 23)이 탑재되며, 각 어플리케이션은 단말에서 실행되는데 있어 필요한 각종 데이터 등을 운영체제(10)로부터 할당받은 각각의 힙 영역[주; 이 힙 영역은 메모리 상에 구현되어 있음](31, 32, 33)에 읽고/쓰고/삭제하고 있다.Various applications ("Nate Intro", "NGB Browser" and "Shock Downloader") executed on the smartphone's operating system (e.g., "WindowsCE OS") 10 based on various applications, such as Wi-Fi, 21, 22, 23) is mounted, each of the heap area [Note; This heap area is implemented in memory] (31, 32, 33).

도 1에 도시된 바와 같이, 스마트폰의 운영체제(10)는 위피를 단지 하나의 어플리케이션으로 취급하며, 그에 따라 이 위피를 기반으로 하여 실행되는 각종 어플리케이션 역시 각각 하나의 어플리케이션으로 취급해서 여러 개의 어플리케이션이 멀티로 실행될 수 있다. 이와 같이 스마트폰에서 멀티 어플리케이션이 실행될 수 있기에 사용자는 보다 많은 어플리케이션을 통해 각종 작업[예; 왑 사이트 브라우징, 콘텐츠 다운로드, 멀티미디어 메시지(MMS) 작성 등]을 동시에 행할 수가 있다.As shown in FIG. 1, the operating system 10 of the smartphone treats the Wi-Fi as only one application. Accordingly, various applications executed based on the Wi-Fi are also treated as a single application. Can be executed in multiples. As such, since the multi-application can be executed in the smart phone, the user can perform various tasks through more applications [eg; Browsing the swap site, downloading content, creating a multimedia message (MMS), etc.] at the same time.

그런데, 스마트폰의 운영체제(10)가 각 어플리케이션(21, 22, 23)을 하나의 인스턴스(instance)로 취급해서 각각의 어플리케이션에 대해 각각의 힙 영역(31, 32, 33)을 메모리에 할당하기 때문에 각 어플리케이션별로 사용되지 않는 힙 영역의 메모리가 낭비되는 문제점이 있다. 즉, 위와 같은 각 어플리케이션(21, 22, 23)은 위피를 기반으로 하여 실행됨에도 불구하고 운영체제(10)에 의해 메모리 힙 영역을 할당받기 때문에 스마트폰에서 실행되는 위피 기반의 어플리케이션 수가 많아질수록 메모리의 낭비가 더욱 심각해지고 있는 형편이다.However, the operating system 10 of the smartphone treats each application 21, 22, 23 as an instance and allocates each heap area 31, 32, 33 to each memory for each application. Therefore, there is a problem in that the memory of the heap area not used for each application is wasted. That is, although each of the above applications 21, 22, and 23 are executed on the basis of Wi-Fi, since the memory heap area is allocated by the operating system 10, as the number of Wi-Fi-based applications executed on the smartphone increases, Waste is getting worse.

본 발명은 상기와 같은 문제점을 해결하고 상기와 같은 요구에 부응하기 위하여 제안된 것으로, 스마트폰의 운영체제에 올려진 위피를 기반으로 하여 실행되는 각 어플리케이션이 메모리 상의 시스템 힙 영역을 서로 공유해 사용하도록 하고 어플리케이션 힙 영역을 독립적으로 사용하도록 하는, 위피 기반의 멀티 어플리케이션 실행을 위한 메모리 관리자가 구비된 스마트 폰을 제공하는데 그 목적이 있다.The present invention has been proposed to solve the above problems and to meet the above requirements, and each application to be executed based on the Wiki loaded on the operating system of the smartphone to share the system heap area in the memory and use each other An object of the present invention is to provide a smart phone equipped with a memory manager for executing the Wi-Fi based multi-application, which allows the application heap area to be used independently.

상기의 목적을 달성하기 위한 본 발명은, 운영체제 위에는 위피가 탑재되어 있고, 상기 위피 내에는 위피를 기반으로 하여 실행되는 어플리케이션에 대한 메모리 힙 영역 할당/해제를 수행하는 메모리 관리자가 탑재되어 있는 스마트폰에 있어서,
상기 스마트폰의 하드웨어 관련 리소스 정보 저장 및 상기 위피를 포함한 스태틱 어플리케이션 관련 정보 저장을 위한 시스템 힙 영역을 메모리에 할당하고, 상기 위피 기반의 어플리케이션 관련 정보 저장을 위한 어플리케이션 힙 영역을 메모리에 할당하는 상기 운영체제; 및
상기 위피 실행 시에 상기 운영체제에게 시스템 힙 영역 중 공유 버퍼를 제외한 나머지 영역[위피 사용 영역]에 대해서는 유동적으로 메모리를 할당해 달라고 요청하고, 상기 위피 기반의 어플리케이션 실행 시에 상기 운영체제에게 해당 어플리케이션 관련 정보 저장을 위한 개별 어플리케이션 힙 영역을 메모리에 할당해 달라고 요청하는 상기 메모리 관리자를 포함하는 것을 특징으로 하는 위피 기반의 멀티 어플리케이션 실행을 위한 메모리 관리자가 구비된 스마트 폰을 제공한다.
In order to achieve the above object, the present invention provides a smartphone on which an operating system is mounted on the operating system, and a memory manager that allocates / releases a memory heap area for an application executed based on the operating system. To
The operating system for allocating a system heap region for storing the hardware-related resource information of the smartphone and the storage of static application-related information including the Wi-Fi to the memory, and an application heap region for storing the Wi-Fi-based application-related information in the memory ; And
When the Wi-Fi is executed, the operating system is requested to allocate memory for the remaining area (Wifi-use area) except the shared buffer among the system heap areas, and when the Wi-Fi based application is executed, the operating system-related information Provided is a smart phone equipped with a memory manager for executing a Wi-Fi-based multi-application, characterized in that it comprises the memory manager for requesting the allocation of a separate application heap area for storage to the memory.

이하 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명한다. 하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, exemplary embodiments 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 if 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.

도 2는 본 발명에서 제시하는 스마트폰에 대한 개략적인 계층도이다.2 is a schematic hierarchical view of a smart phone according to the present invention.

일반적으로, 스마트폰의 운영체제(예; "WindowsCE OS")(10) 위에 각종 어플리케이션, 예컨대 위피를 기반으로 하여 실행되는 각종 어플리케이션("네이트 인트로", "NGB 브라우저" 및 "왐 다운로더")(21, 22, 23)이 탑재된 상태에서 멀티로 실 행될 수 있는데, 본 발명에서는 각 어플리케이션(21, 22, 23)이 메모리 상의 힙 영역(30)을 서로 공유하여 사용할 수 있도록 한다.Generally, various applications ("Nate Intro", "NGB Browser" and "Shock Downloader") executed on the smartphone's operating system (e.g., "WindowsCE OS") 10 based on various applications, such as Wifi, 21 , 22, and 23 may be executed in a multi-mounted state. In the present invention, each application 21, 22, and 23 may share and use the heap regions 30 in the memory.

이를 위해, 본 발명에서는 스마트폰의 운영체제 계층과 어플리케이션 계층 사이, 바람직하게는 위피 상에 메모리 관리자(Memory Manager)를 구현하고, 이 메모리 관리자에 의해 메모리 상에 시스템 힙 영역(system heap area)과 어플리케이션 힙 영역(application heap area)을 구분 짓고서, 각 어플리케이션에 대한 공유 데이터 등을 시스템 힙 영역에 저장시키고 각 어플리케이션에 대한 개별 데이터 등을 어플리케이션 힙 영역의 각자 영역에 저장시킨다. 이하, 도 3을 참조하여 본 발명의 메모리 관리자에 대해 보다 상세히 설명하기로 한다.To this end, in the present invention, a memory manager is implemented between the operating system layer and the application layer of the smartphone, preferably on a Wi-Fi, and the system heap area and the application are stored on the memory by the memory manager. The heap is divided into application heap areas, and shared data for each application is stored in the system heap area, and individual data for each application is stored in each area of the application heap area. Hereinafter, the memory manager of the present invention will be described in more detail with reference to FIG. 3.

도 3은 본 발명에 따른 위피 기반의 멀티 어플리케이션 실행을 위한 메모리 관리자에 대한 일실시예 계층도이다.3 is a hierarchical diagram of a memory manager for executing a Wi-Fi based multi-application according to the present invention.

도 3에 도시된 바와 같이, 본 발명에 따른 스마트폰에는, 최하위 계층에 각종 하드웨어(예; 메모리, CPU, I/O 디바이스, 네트워크 장치 등)이 탑재되고, 운영체제 계층에 WindowsCE OS(10)가 탑재되고, 플랫폼[미들웨어] 계층에 위피 및 이 위피에 머지(merge)된 메모리 관리자(50)가 탑재되고, 어플리케이션 계층에 위피를 기반으로 실행되는 각종 어플리케이션(20, 21, 22)이 탑재된다. 한편, 이하 본 발명의 실시예로 WindowsCE OS가 스마트폰의 기본 OS로 탑재된 것을 예로 들어 설명하겠으나, symbian OS 등과 같은 여타 스마트폰의 운영체제에도 본 발명이 적용됨을 당업자라면 쉽게 이해할 수 있을 것이다.As shown in FIG. 3, the smart phone according to the present invention includes various hardware (eg, memory, CPU, I / O device, network device, etc.) in the lowermost layer, and the WindowsCE OS 10 in the operating system layer. The WIPI and the memory manager 50 merged with the WIPI are mounted on the platform [middleware] layer, and the various applications 20, 21, and 22 running on the WIPI are mounted on the application layer. On the other hand, in the following embodiment of the present invention will be described as an example that the Windows CE OS is mounted as a basic OS of the smartphone, it will be readily understood by those skilled in the art that the present invention is applied to the operating system of other smartphones, such as symbian OS.

본 발명에서 상기 스마트폰의 메모리 상에는 시스템 힙 영역(41)과 어플리케이션 힙 영역(42)이 구분지어 지는데, 이 시스템 힙 영역(41)은 WindowsCE OS(10)에 의해 그 크기가 유동적으로 할당되고, 이 어플리케이션 힙 영역(42)은 각 어플리케이션(20, 21, 22)의 실행 여부에 따라 메모리 관리자(50)에 의해 어플리케이션 힙 영역(42)에 해당되는 어플리케이션 영역의 크기가 개별적으로 할당된다.In the present invention, the system heap area 41 and the application heap area 42 are divided on the memory of the smart phone, and the system heap area 41 is dynamically allocated in size by the Windows CE OS 10, The application heap area 42 is individually allocated the size of the application area corresponding to the application heap area 42 by the memory manager 50 according to whether each application 20, 21, 22 is executed.

즉, 상기 WindowsCE OS(10)는 그 구동 시에 스마트폰에 탑재된 하드웨어에 관련된 리소스 정보와 운영체제 초기화 시에 실행되는 각종 소프트웨어, 바람직하게는 스태틱 어플리케이션(static application)에 관련된 정보를 메모리 상에 올리기 위해서 공지의 windowsCE 메모리 맵 파일[일명 Native OS의 공유 메모리 매커니즘]에 정의된 사항을 토대로 시스템 힙 영역(41)의 크기를 결정하여 메모리 상에 할당한다.That is, the Windows CE OS 10 loads resource information related to hardware mounted on the smartphone at the time of its operation and information related to various software executed at the time of operating system initialization, preferably a static application, onto a memory. In order to determine the size of the system heap area 41 based on the contents defined in the known windowsCE memory map file (also known as the shared memory mechanism of the native OS), it allocates the memory.

위와 같이 시스템 힙 영역(41)에 로딩되는 하드웨어 리소스 정보와 스태틱 어플리케이션 관련 정보는 WindowsCE OS(10) 상에서 실행되는 모든 어플리케이션, 바람직하게는 위피 및 이 위피를 기반으로 하여 실행되는 각종 어플리케이션(20, 21, 22)이 서로 공유하는 데이터이다. 예컨대, 하드웨어 리소스 정보는 WindowsCE OS에서 통상적으로 "공유 버퍼[Shared Buffer]"에 저장되는 데이터로서, 스마트폰에서 실행 가능한 어플리케이션 종류 및 그 수에 대한 링킹 정보, 트리 정보 등과, I/O 디바이스 사용 정보, 네트워크 장치 접근 정보, 네트워크 파라미터 관련 정보 등을 들 수 있다. 그리고, 스태틱 어플리케이션 관련 정보는 각 어플리케이션(20, 21, 22)이 스마트폰에서 실행되는데 필요한 플랫폼 정보, 즉 위피 코어 관련 정보, 위피 글로벌 테이블 등과 같이 위피가 각 어플리케이션(20, 21, 22)을 WindowsCE OS(10) 상에서 실행시키는데 필요한 제반 데이터이다.As described above, the hardware resource information loaded in the system heap area 41 and the static application related information are all applications executed on the Windows CE OS 10, preferably Wiki and various applications executed on the basis of the Wiki. , 22) are data shared with each other. For example, the hardware resource information is data that is typically stored in the "Shared Buffer" in the WindowsCE OS. The hardware resource information includes linking information, tree information, etc. on the type and number of applications that can be executed in the smartphone, and I / O device usage information. , Network device access information, network parameter related information, and the like. In addition, the static application-related information includes the platform information required for each application 20, 21, and 22 to be executed in the smartphone, that is, the Wi-Fi has the respective applications 20, 21, 22 such as Wi-Fi core-related information, Wi-Fi global table, and the like. All the data necessary to run on the OS 10.

부연 설명하면, 기존 휴대 전화기에서는 단말 운영체제(일명 "OEM"이라 칭함)가 위피 및 이 위피를 기반으로 실행되는 각종 어플리케이션을 위해 메모리에 고정적인 힙 영역(예; 6 MB 정도)을 할당한 상태에서 메모리를 관리하였으나, 이러한 경우에 어플리케이션 미실행 시에 사용되지 않는 메모리 낭비가 발생되고, 어플리케이션 과다 실행 시에 메모리 부족으로 인해 단말 재부팅 등을 해야만 했다.In other words, in a conventional mobile phone, a terminal operating system (also called "OEM") allocates a fixed heap area (e.g., about 6 MB) to memory for WiPi and various applications that are executed based on the WiPi. Although memory was managed, in this case, unused memory was wasted when the application was not executed, and the terminal had to be rebooted due to insufficient memory when the application was excessively executed.

그러나, 본 발명에서는 위와 같은 스마트폰의 WindowsCE OS(10)의 Native OS의 공유 메모리 매커니즘을 통해 운영체제에서 하나의 어플리케이션으로 취급받는 위피 및 이 위피를 기반으로 하여 실행되는 각종 어플리케이션을 위한 메모리를 가용 범위 내에서 유동적[flexible]으로 시스템 힙 영역을 할당한다.However, in the present invention, the Wiki is treated as one application in the operating system through the shared memory mechanism of the native OS of the WindowsCE OS 10 of the smart phone and the memory for various applications executed based on the WiFi is available. Allocate a system heap area in a flexible manner.

바람직하게는, 본 발명에서는 WindowsCE OS(10)의 기본 매커니즘인 "Shared Buffer"를 제외한 나머지 시스템 힙 영역(41)에 대해서만 WindowsCE OS(10)로부터 직접 메모리를 할당받는다. 이러한 WindowsCE OS(10)의 공유 메모리 매커니즘을 위피에서 사용하기 위해서 본 메모리 관리자(50)는 위피 실행 시에 WindowsCE OS(10)에게 위피가 사용할 수 있는 범위[시스템 힙 영역 중 Shared Buffer를 제외한 나머지 영역]에 대해서는 유동적 메모리를 할당해 달라고 요청한다.Preferably, in the present invention, memory is allocated directly from the Windows CE OS 10 only to the system heap area 41 except for the "Shared Buffer" which is the basic mechanism of the Windows CE OS 10. In order to use the shared memory mechanism of the WindowsCE OS 10 in Wippi, the memory manager 50 uses the space available to the WindowsCE OS 10 when the Wippi is running. ] Asks you to allocate fluid memory.

다음의 [표 1]은 메모리 상에 할당된 시스템 힙 영역(41)을 보여주는 것이다.Table 1 below shows the system heap area 41 allocated on memory.

THeapDesc* s_pSysHeapDesc = NULL; // heap 시작 위치 DWORD s_dwHeapPoolSize = 0; // heap size PCHUNK_T s_pHeapFirstChunk = 0; // first free list PCHUNK_T s_pHeapLastChunk = 0; // last free listTHeapDesc * s_pSysHeapDesc = NULL; // heap start position DWORD s_dwHeapPoolSize = 0; // heap size PCHUNK_T s_pHeapFirstChunk = 0; // first free list PCHUNK_T s_pHeapLastChunk = 0; // last free list

한편, 위피를 기반으로 실행되는 상기 각 어플리케이션(20, 21, 22)은 실행 시에 위피에게 각자의 메모리를 할당해 달라고 요청하는데, 본 발명에서는 위피에 머지된 본 메모리 관리자(50)가 특정 어플리케이션으로부터 메모리 할당 요청을 받아서 위피 코어(WIPI CORE) 및 단말 적응 계층(HAL; Handset Adaptation Layer)에 정의된 메모리 관련 API를 사용하여 WindowsCE OS(10)를 통해 해당되는 어플리케이션 힙 영역(42)을 할당한다.Meanwhile, each of the applications 20, 21, and 22 executed on the basis of Wippi requests the Wifi to allocate its own memory at the time of execution. In the present invention, the memory manager 50 merged into Wiwi is a specific application. Receives a memory allocation request from the memory allocation API and allocates the corresponding application heap area 42 through the Windows CE OS 10 using a memory related API defined in the WIPI CORE and the Handset Adaptation Layer (HAL). .

즉, 상기 메모리 관리자(50)는 특정 어플리케이션으로부터 메모리 할당 요청[예; WIPI HEAP Alloc AP(MC_knlAlloc())]을 받으면 이 어플리케이션을 이루고 있는 RO Code 및 RW Data를 확인하고서 이 어플리케이션 실행에 필요한 데이터 용량을 고려하여 WindowsCE OS(10)를 통해 메모리 상에 어플케이션 힙 영역(42)을 할당한다. 이러한 어플리케이션 힙 영역(42)은 각 어플리케이션별로 독립적인 힙 영역을 갖으며, 각 어플리케이션들은 각자의 메모리 핸들러를 사용하여 메모리 상의 자신의 힙 영역에 접근한다.That is, the memory manager 50 requests memory allocation from a specific application [eg; When receiving WIPI HEAP Alloc AP (MC_knlAlloc ())], check the RO Code and RW Data that make up this application and consider the data capacity required to run this application. 42). The application heap area 42 has an independent heap area for each application, and each application uses its own memory handler to access its own heap area in memory.

부연 설명하면, 어플리케이션을 이루는 RO Code란 읽기만 가능한 코드(Read Only Code)를 말하는 것으로서 "for", "if/else", "void" 등과 같은 프로그래밍 코드와 변경되지 않는 속성을 갖는 컨스턴트(constant) 등을 들 수 있으며, RW Data란 읽기/쓰기가 가능한 데이터 영역(Read/Write Data Area)을 말하는 것으로서 실질적인 어플리케이션 데이터(예; 이미지/사운드 데이터 등)과 변경되는 속성을 갖는 글로벌 변수(variable) 등을 들 수 있다.In other words, the RO code constituting the application refers to a read only code, which is a constant having properties that are not changed from programming code such as "for", "if / else", and "void". RW Data refers to a read / write data area that can be read and written, such as actual application data (eg, image / sound data, etc.) and global variables having changed properties. Can be mentioned.

이와 같이, 본 발명의 메모리 관리자(50)는 어플리케이션을 이루는 헤더, Ro Code, RW Data 및 메모리 핸들러 정보 등을 각 어플리케이션별로 어플리케이션 힙 영역(42)에 저장되도록 하는데, 특히 Ro Code와 RW Data를 보고서 어플리케이션 초기 실행에 필요한 데이터 및 향후 예상되는 데이터 용량을 고려하여 어플리케이션 힙 영역(42)의 크기를 결정한다.As such, the memory manager 50 of the present invention stores the header, Ro Code, RW Data, and memory handler information, which constitute an application, in the application heap area 42 for each application, and in particular, reports the Ro Code and the RW Data. The size of the application heap area 42 is determined in consideration of data required for initial execution of the application and expected data capacity in the future.

다음의 [표 2]는 메모리 상에 할당된 어플리케이션 힙 영역(42)에 저장되는 데이터의 일부를 나타낸 것이다.[Table 2] below shows a part of the data stored in the application heap area 42 allocated on the memory.

DAF,DLF Header, Code, Data //다운로드 형태의 어플리케이션 실행파일, 라이브러리 MAF,MLF Header, Code, Data //임베디드 형태의 어플리케이션 실행파일, 라이브러리 Application memory handle //각 어플리케이션이 사용하는 메모리 핸들러 정보DAF, DLF Header, Code, Data // Download application executable file, library MAF, MLF Header, Code, Data // Embedded application executable file, library Application memory handle // Memory handler information used by each application

전술한 바와 같이, 위피를 기반으로 실행되는 각 어플리케이션(20, 21, 22)은 각자 독립적인 어플리케이션 힙 영역(42)에 자신의 인스턴스 등을 보관하면서 각자의 고유 프로세스를 수행하고, 네트워크 디바이스 접근 또는 위피 관련 리소스 사용 시에는 각 어플리케이션(20, 21, 22)은 시스템 힙 영역(41)에 보관된 스마트폰 리소스 접근 또는 위피 관련 데이터를 사용하여 그 프로세스를 수행하게 된다.As described above, each application 20, 21, and 22 executed on the basis of Wi-Fi performs its own process while keeping its own instance, etc. in its own application heap area 42, and accesses network devices or When using the Wi-Fi-related resources, each application 20, 21, 22 performs the process using the smartphone resource access or Wi-Fi-related data stored in the system heap area 41.

한편, 상기 WindowsCE OS(10)는 스태틱 어플리케이션 실행 종료[예컨대 위피 실행 종료], 하드웨어 제거[예를 들어 네트워크 장치 제거] 등이 이루어지는 경우에 상기 시스템 힙 영역(41)에 저장된 해당 데이터 등을 삭제[힙 영역 할당 해제]하며, 상기 메모리 관리자(50)는 위피를 기반으로 실행되는 특정 어플리케이션이 실행 종료되는 경우에 상기 어플리케이션 힙 영역(42)에 저장된 해당 데이터 등을 삭제[힙 영역 할당 해제]한다. 부가적으로, 통상적으로 메모리를 실질적으로 접근해 제어하는 것은 WindowsCE OS(10)이므로, 본 발명에서도 메모리 관리자(50)는 메모리 할당/해제 시에 위피에 정의된 메모리 관련 API를 사용해 WindowsCE OS(10)에게 메모리 할당/해제를 요청해 이에 대한 처리 결과를 반환받는다.On the other hand, the Windows CE OS 10 deletes the corresponding data stored in the system heap area 41 when the static application execution ends (e.g., Wifi execution ends), hardware removal (e.g., network device removal), or the like. Heap area de-allocation], and the memory manager 50 deletes (heap area de-allocation) corresponding data stored in the application heap area 42 when the execution of a specific application executed on the basis of Wi-Fi is terminated. In addition, since it is conventionally WindowsCE OS 10 to actually access and control the memory, the memory manager 50 uses the memory-related API defined in Wi-Fi at the time of memory allocation / release. ) Requests memory allocation / release and returns the processing result.

이상 본 발명의 내용이 실시예를 들어 설명되었으나, 본 발명의 실시예는 본 발명의 예시에 불과하며 본 발명의 범위를 제한하는 것으로 해석되어서는 안 된다. 본 발명이 속하는 분야의 기술자는 본원의 특허청구범위에 기재된 원리 및 범위 내에서 본 발명을 여러 가지 형태로 변형 또는 변경할 수 있다.While the content of the present invention has been described by way of examples, the embodiments of the present invention are merely illustrative of the present invention and should not be construed as limiting the scope of the present invention. Those skilled in the art to which the present invention pertains may modify or alter the present invention in various forms within the principles and scope described in the claims herein.

상기와 같은 본 발명은 스마트폰에서 위피 기반의 멀티 어플리케이션을 실행하는데 있어 메모리가 낭비되는 것을 방지하는 효과가 있다.The present invention as described above has the effect of preventing the memory is wasted in running the Wi-Fi-based multi-application in the smartphone.

Claims (3)

운영체제 위에는 위피가 탑재되어 있고, 상기 위피 내에는 위피를 기반으로 하여 실행되는 어플리케이션에 대한 메모리 힙 영역 할당/해제를 수행하는 메모리 관리자가 탑재되어 있는 스마트폰에 있어서,In the smartphone equipped with Wi-Fi on the operating system, and in the Wi-Fi is equipped with a memory manager for allocating / freeing the memory heap area for the application running based on the Wi-Fi, 상기 스마트폰의 하드웨어 관련 리소스 정보 저장 및 상기 위피를 포함한 스태틱 어플리케이션 관련 정보 저장을 위한 시스템 힙 영역을 메모리에 할당하고, 상기 위피 기반의 어플리케이션 관련 정보 저장을 위한 어플리케이션 힙 영역을 메모리에 할당하는 상기 운영체제; 및The operating system for allocating a system heap region for storing the hardware-related resource information of the smartphone and the storage of static application-related information including the Wi-Fi to the memory, and an application heap region for storing the Wi-Fi-based application-related information in the memory ; And 상기 위피 실행 시에 상기 운영체제에게 시스템 힙 영역 중 공유 버퍼를 제외한 나머지 영역[위피 사용 영역]에 대해서는 유동적으로 메모리를 할당해 달라고 요청하고, 상기 위피 기반의 어플리케이션 실행 시에 상기 운영체제에게 해당 어플리케이션 관련 정보 저장을 위한 개별 어플리케이션 힙 영역을 메모리에 할당해 달라고 요청하는 상기 메모리 관리자를 포함하는 것을 특징으로 하는 위피 기반의 멀티 어플리케이션 실행을 위한 메모리 관리자가 구비된 스마트 폰.When the Wi-Fi is executed, the operating system is requested to allocate memory for the remaining area (Wifi-use area) except the shared buffer among the system heap areas, and when the Wi-Fi based application is executed, the operating system-related information And a memory manager for requesting to allocate an individual application heap area to a memory for storage. 제 1 항에 있어서,The method of claim 1, 상기 메모리 관리자는,The memory manager, 상기 위피 기반의 특정 어플리케이션으로부터 메모리 할당 요청을 받으면 이 특정 어플리케이션을 이루고 있는 RO Code 및 RW Data를 확인하고서, 이 어플리케이션 실행에 필요한 데이터 용량을 고려하여 운영체제에게 해당 크기만큼의 개별 어플리케이션 힙 영역을 메모리에 할당해 달라고 요청하는 것을 특징으로 하는 위피 기반의 멀티 어플리케이션 실행을 위한 메모리 관리자가 구비된 스마트 폰.When the memory allocation request is received from the specific application based on the Wi-Fi, the RO Code and the RW data forming the specific application are checked, and the individual application heap area corresponding to the size is allocated to the operating system in consideration of the data capacity required to execute the application. Smart phone equipped with a memory manager for executing a Wi-Fi-based multi-application, characterized in that requesting the assignment. 제 1 항 또는 제 2 항에 있어서,The method according to claim 1 or 2, 상기 각 어플리케이션 힙 영역에는 각각의 어플리케이션을 이루는 헤더, Ro Code, RW Data 및 메모리 핸들러 정보가 저장되는 것을 특징으로 하는 위피 기반의 멀티 어플리케이션 실행을 위한 메모리 관리자가 구비된 스마트 폰.Each of the application heap region is a smart phone equipped with a memory manager for executing a Wi-Fi-based multi-application, characterized in that the header, Ro Code, RW Data and memory handler information forming each application is stored.
KR1020050100288A 2005-10-24 2005-10-24 Smartphone Equipped with Memory Manager For Multi Application Based WIPI KR100738419B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050100288A KR100738419B1 (en) 2005-10-24 2005-10-24 Smartphone Equipped with Memory Manager For Multi Application Based WIPI

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050100288A KR100738419B1 (en) 2005-10-24 2005-10-24 Smartphone Equipped with Memory Manager For Multi Application Based WIPI

Publications (2)

Publication Number Publication Date
KR20070044229A KR20070044229A (en) 2007-04-27
KR100738419B1 true KR100738419B1 (en) 2007-07-11

Family

ID=38178262

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050100288A KR100738419B1 (en) 2005-10-24 2005-10-24 Smartphone Equipped with Memory Manager For Multi Application Based WIPI

Country Status (1)

Country Link
KR (1) KR100738419B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101063667B1 (en) 2008-08-22 2011-09-07 인터내셔널 비지네스 머신즈 코포레이션 Provisioning based on tiered capacity in a distributed environment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050043021A (en) * 2003-11-04 2005-05-11 텔코웨어 주식회사 Mobile terminal having session initiation protocol/instant messaging and presence service dynamic linking library on wireless internet platform

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050043021A (en) * 2003-11-04 2005-05-11 텔코웨어 주식회사 Mobile terminal having session initiation protocol/instant messaging and presence service dynamic linking library on wireless internet platform

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
논문

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101063667B1 (en) 2008-08-22 2011-09-07 인터내셔널 비지네스 머신즈 코포레이션 Provisioning based on tiered capacity in a distributed environment

Also Published As

Publication number Publication date
KR20070044229A (en) 2007-04-27

Similar Documents

Publication Publication Date Title
US8775737B2 (en) Efficient cache management
US10846215B2 (en) Persistent content in nonvolatile memory
US10713091B2 (en) Streaming program execution method of intelligent terminal
US10552337B2 (en) Memory management and device
US7805582B2 (en) Method of managing memory in multiprocessor system on chip
KR101468824B1 (en) Extended utilization area for a memory device
TWI574202B (en) Memory management model and interface for new applications
KR100958303B1 (en) A System and A Method for Dynamic Loading and Execution of Module Devices using Inter-Core-Communication Channel in Multicore system environment
CN111008155B (en) Method of managing memory of computer device, medium
JP2007026094A (en) Execution device and application program
CN102667714B (en) Support the method and system that the function provided by the resource outside operating system environment is provided
US10489204B2 (en) Flexible in-order and out-of-order resource allocation
CA2441121A1 (en) Method for loading and executing an application in an embedded environment
CN114270315A (en) Hydration of applications
US8423730B2 (en) Method and apparatus for supporting diverse memory access schemes
CN104714792A (en) Multi-process shared data processing method and device
KR100738419B1 (en) Smartphone Equipped with Memory Manager For Multi Application Based WIPI
US10901883B2 (en) Embedded memory management scheme for real-time applications
KR101420798B1 (en) Method of Demand Paging for codes which requires real time response and Terminal
US7681009B2 (en) Dynamically updateable and moveable memory zones
CN109783145B (en) Method for creating multi-image-based multifunctional embedded system
CN111831451A (en) Cloud host memory allocation method, cloud host, cloud device and storage medium
CN103761118A (en) Intelligent card and method for deploying applications in same
KR20070014724A (en) Memory controlling method for mobile communicationn terminal
CN108052536B (en) File system of IoT (Internet of things) equipment

Legal Events

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

Payment date: 20130704

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140707

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee