KR100636211B1 - AV data reproducing apparatus and method which containing memory management table, and memory management method therein - Google Patents

AV data reproducing apparatus and method which containing memory management table, and memory management method therein Download PDF

Info

Publication number
KR100636211B1
KR100636211B1 KR1020040108405A KR20040108405A KR100636211B1 KR 100636211 B1 KR100636211 B1 KR 100636211B1 KR 1020040108405 A KR1020040108405 A KR 1020040108405A KR 20040108405 A KR20040108405 A KR 20040108405A KR 100636211 B1 KR100636211 B1 KR 100636211B1
Authority
KR
South Korea
Prior art keywords
application
data
management table
memory
memory management
Prior art date
Application number
KR1020040108405A
Other languages
Korean (ko)
Other versions
KR20060069733A (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 KR1020040108405A priority Critical patent/KR100636211B1/en
Publication of KR20060069733A publication Critical patent/KR20060069733A/en
Application granted granted Critical
Publication of KR100636211B1 publication Critical patent/KR100636211B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

애플리케이션 프로그램에서 사용했던 메모리가 애플리케이션 프로그램의 종료후에도 해지되지 않은 경우에 이를 찾아서 해지하기 위한 메모리 관리 테이블을 포함한 AV 데이터 재생장치 및 재생방법, 이에 사용되는 메모리 관리방법이 개시된다. 본 발명에 따라 AV 데이터 및 애플리케이션 데이터를 포함하는 정보저장매체의 재생장치는, 상기 AV 데이터를 재생하는 프리젠테이션 엔진; 및 상기 애플리케이션 데이터를 재생하며, 상기 애플리케이션 데이터의 재생을 위해 사용되는 메모리를 관리하기 위한 메모리 관리 테이블을 포함하는 프로그램 엔진을 포함하고 있는 것을 특징으로 한다. 이에 의해, 애플리케이션이 종료된 후에도 해지되지 않은 메모리를 찾아 해지함으로써 AV 데이터 재생장치의 메모리를 효율적으로 사용할 수 있는 효과가 있다.Disclosed are an AV data reproducing apparatus and a reproducing method including a memory management table for finding and releasing memory when the memory used in the application program is not terminated even after the application program is terminated. According to the present invention, an apparatus for reproducing an information storage medium including AV data and application data comprises: a presentation engine for reproducing the AV data; And a program engine for reproducing the application data and including a memory management table for managing a memory used for reproducing the application data. This makes it possible to efficiently use the memory of the AV data reproducing apparatus by finding and releasing memory that has not been canceled even after the application is terminated.

Description

메모리 관리 테이블을 포함한 AV 데이터 재생장치 및 방법, 이에 사용되는 메모리 관리방법 {AV data reproducing apparatus and method which containing memory management table, and memory management method therein}AV data reproducing apparatus and method, including memory management table, and method for managing memory used therein {AV data reproducing apparatus and method which containing memory management table, and memory management method therein}

도 1은 본 발명에 따른 정보저장매체에 기록된 데이터의 종류를 나타내는 도면,1 is a diagram showing the type of data recorded on an information storage medium according to the present invention;

도 2는 Xlet의 라이프 사이클을 도시한 도면,2 is a diagram illustrating a life cycle of an Xlet;

도 3은 애플리케이션에서 사용하였던 메모리를 해지하는 destroyXlet()을 포함한 애플리케이션 프로그램의 일예를 도시한 도면,3 is a diagram illustrating an example of an application program including destroyXlet () for releasing memory used in an application;

도 4는 본 발명에 따른 HScene 관리 테이블의 예를 도시한 도면,4 is a diagram showing an example of the HScene management table according to the present invention;

도 5는 본 발명에 따른 HScene 관리 테이블을 사용하여 메모리를 해지하는 방법의 흐름도,5 is a flowchart of a method of releasing a memory using the HScene management table according to the present invention;

도 6은 본 발명에 따른 메모리 해지방법을 사용하는 AV 데이터 재생장치의 블록도이다.6 is a block diagram of an AV data reproducing apparatus using the memory release method according to the present invention.

본 발명은 AV 데이터 재생장치의 메모리 관리에 관한 것으로, 보다 상세하게 는 애플리케이션 프로그램에서 사용했던 메모리가 애플리케이션 프로그램의 종료후에도 해지되지 않은 경우에 이를 찾아서 해지하기 위한 메모리 관리 테이블을 포함한 AV 데이터 재생장치 및 재생방법, 이에 사용되는 메모리 관리방법에 관한 것이다.The present invention relates to memory management of an AV data reproducing apparatus, and more particularly, to an AV data reproducing apparatus including a memory management table for finding and releasing a memory used in an application program when the memory used in the application program is not terminated even after the application program is terminated. The present invention relates to a playback method and a memory management method used therefor.

최근, 고화질의 동영상 데이터를 재생하는 재생장치는 비디오 및 오디오 데이터의 재생뿐만 아니라, 여러 가지 멀티미디어 데이터를 수신하여 재생한다. 따라서, DVD와 같은 대용량 저장매체에서도 이러한 비디오 및 오디오 데이터 이외에 여러 가지 데이터를 담고 있으며, 이러한 여러 가지 데이터를 비디오/오디오 데이터와 함께 재생할 수 있는 재생장치의 개발이 진행되고 있다. 한편, 이러한 여러 가지 종류의 데이터는 자바와 같은 프로그래밍 언어를 이용하여 구현된 애플리케이션 프로그램에 의해 읽혀져 사용자에게 보여진다.Recently, a playback apparatus for reproducing high quality video data receives and plays various multimedia data as well as playback of video and audio data. Therefore, a mass storage medium such as a DVD contains various data in addition to the video and audio data, and development of a playback device capable of reproducing such various data together with the video / audio data is being developed. On the other hand, these various types of data are read by an application program implemented using a programming language such as Java and displayed to the user.

그리고, 재생장치는 PC와 달리 가지고 있는 메모리 등의 리소스가 제한적이므로, 애플리케이션 프로그램이 재생장치의 리소스를 사용한 후에는 반드시 해지(release)시켜야 다른 애플리케이션 프로그램이 리소스를 사용할 수 있다. 그러나, 애플리케이션 프로그램이 종료한 후 리소스를 해지하도록 하는 코드가 들어있지 않으면 재생장치의 리소스가 금방 소진되어 버린다.In addition, since the playback apparatus has limited resources such as memory, unlike the PC, after the application program uses the resources of the playback apparatus, it must be released before other application programs can use the resources. However, if there is no code for releasing resources after the application program terminates, the resources of the playback device are quickly exhausted.

따라서, 본 발명이 이루고자 하는 기술적 과제는 애플리케이션의 종료시 해지되지 않은 메모리를 관리하기 위한 테이블을 사용함으로써, 애플리케이션이 종료되면 상기 테이블을 참조하여 남아있는 메모리를 해지하는 AV 데이터 재생장치 및 재생방법과 이에 사용되는 메모리 관리방법을 제공하는 것이다.Accordingly, the technical problem to be achieved by the present invention is to use a table for managing the memory that is not terminated when the application is terminated, and when the application is terminated AV data playback apparatus and playback method for resolving the remaining memory with reference to the table and this It is to provide a memory management method used.

특히, 애플리케이션이 애플리케이션 실행화면을 보여주기 위해 반드시 사용해야 하는 HScene을 상기 테이블을 통해 관리함으로써 메모리 사용의 효율성을 높인 AV 데이터 재생장치 및 재생방법을 제공하는 것이다.In particular, the present invention provides an AV data reproducing apparatus and a reproducing method which increase the efficiency of memory use by managing HScene, which must be used by an application to show an application execution screen, through the table.

상기 기술적 과제는 본 발명에 따라, AV 데이터 및 애플리케이션 데이터를 포함하는 정보저장매체의 재생장치에 있어서, 상기 AV 데이터를 재생하는 프리젠테이션 엔진; 및 상기 애플리케이션 데이터를 재생하며, 상기 애플리케이션 데이터의 재생을 위해 사용되는 메모리를 관리하기 위한 메모리 관리 테이블을 포함하는 프로그램 엔진을 포함하고 있는 것을 특징으로 하는 재생장치에 의해 달성된다.According to an aspect of the present invention, there is provided an apparatus for reproducing an information storage medium including AV data and application data, the apparatus comprising: a presentation engine for reproducing the AV data; And a program engine for reproducing the application data and including a memory management table for managing a memory used for reproducing the application data.

상기 프로그램 엔진은, 상기 애플리케이션 데이터의 재생을 제어하는 애플리케이션 매니저를 더 포함하며, 상기 메모리 관리 테이블을 참조하여 상기 애플리케이션 데이터의 재생 종료 후에도 해지되지 않은 메모리가 남아 있으면 이를 찾아 해지하는 것이 바람직하다.The program engine may further include an application manager for controlling reproduction of the application data, and referring to the memory management table, it is preferable to find and terminate the memory which has not been canceled even after the reproduction of the application data remains.

상기 애플리케이션 데이터는, 자바로 작성된 애플리케이션 프로그램 또는 Xlet으로 구현된 애플리케이션 프로그램인 것이 바람직하며, 상기 메모리 관리 테이블은 상기 애플리케이션 데이터의 재생결과를 화면에 디스플레이 하기 위해 사용되는 HScene 정보를 저장하고 있는 것이 바람직하다.Preferably, the application data is an application program written in Java or an application program implemented in Xlet, and the memory management table preferably stores HScene information used to display a reproduction result of the application data on the screen. .

한편, 본 발명의 다른 분야에 따르면, 상기 기술적 과제는 AV 데이터 및 애플리케이션 데이터를 포함하는 정보저장매체의 재생방법에 있어서, (a) 상기 AV 데 이터를 재생하는 단계; 및 (b) 상기 AV 데이터의 재생과 더불어, 상기 애플리케이션 데이터를 재생하며, 상기 애플리케이션 데이터의 재생을 위해 사용되는 메모리를 관리하기 위한 메모리 관리 테이블에 메모리 관련 정보를 기록하는 단계를 포함하는 것을 특징으로 하는 재생방법에 의해서도 달성된다.On the other hand, according to another aspect of the present invention, the technical problem is a method of reproducing an information storage medium including AV data and application data, (a) reproducing the AV data; And (b) reproducing the application data as well as reproducing the AV data, and recording memory related information in a memory management table for managing a memory used for reproducing the application data. This is also achieved by a regeneration method.

상기 (b) 단계는, 상기 애플리케이션 데이터를 재생하며, 상기 메모리 관리 테이블을 참조하여 상기 애플리케이션 데이터의 재생 종료 후에도 해지되지 않은 메모리가 남아 있으면 이를 찾아 해지하는 것이 바람직하다.In the step (b), it is preferable to replay the application data and find and terminate the memory which has not been canceled even after the reproduction of the application data remains with reference to the memory management table.

또한, 상기 기술적 과제는 AV 데이터 및 애플리케이션 데이터를 포함하는 정보저장매체 재생장치의 메모리 관리방법에 있어서, (a) 상기 애플리케이션 데이터의 재생결과를 디스플레이하는데 사용되는 화면(HScene) 정보를 화면 정보 관리 테이블에 저장하는 단계; 및 (b) 상기 애플리케이션 데이터의 재생 종료후에, 상기 화면 정보 관리 테이블을 참조하여, 상기 화면 정보가 남아있는지 판단하여 이를 삭제하는 단계를 포함하는 것을 특징으로 하는 메모리 관리방법에 의해서도 달성된다.In addition, the technical problem is a memory management method of an information storage medium playback apparatus including AV data and application data, (a) screen information management table (HScene) information used to display the reproduction result of the application data; Storing in; And (b) after the reproduction of the application data ends, referring to the screen information management table, determining whether the screen information remains and deleting the screen information.

상기 화면 정보 관리 테이블은 HScene 관리 테이블인 것이 바람직하고, 상기 애플리케이션 데이터는 자바로 작성된 애플리케이션 프로그램 또는 Xlet 으로 구현된 애플리케이션 프로그램인 것이 바람직하다.Preferably, the screen information management table is an HScene management table, and the application data is preferably an application program written in Java or an application program implemented in Xlet.

상기 (b) 단계는 Xlet의 dispose() 함수를 호출하여 상기 HScene 번호를 삭제하는 것이 바람직하다.In the step (b), it is preferable to delete the HScene number by calling the dispose () function of the Xlet.

이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대해 상세히 설 명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 정보저장매체에 기록된 데이터의 종류를 나타내는 도면이다.1 is a diagram showing the type of data recorded on an information storage medium according to the present invention.

도 1을 참조하면, 본 발명에 따른 정보저장매체(100)는 동영상 데이터(110), 프로그래밍 기능을 위한 애플리케이션 데이터(120)(이하 애플리케이션 데이터라 약칭한다), 및 시스템 데이터(130)를 포함한다.Referring to FIG. 1, an information storage medium 100 according to the present invention includes video data 110, application data 120 (hereinafter abbreviated as application data) for a programming function, and system data 130. .

동영상 데이터(110)는, 동영상의 재생을 위한 재생 모드의 데이터로서, 코어 모드(core mode) 또는 영화 모드 데이터라고도 한다. 동영상 데이터는 압축 부호화된 AV 데이터와, AV 데이터의 재생을 제어하기 위한 네비게이션 데이터를 포함한다. 이에 따라 정보저장매체의 네비게이션 데이터를 참고하여 AV 데이터를 재생할 수 있으며, 사용자는 고화질 영화와 같은 동영상을 시청할 수 있다. The moving image data 110 is data of a reproduction mode for reproducing a moving image, also referred to as core mode or movie mode data. The moving picture data includes compressed coded AV data and navigation data for controlling reproduction of the AV data. Accordingly, the AV data may be reproduced by referring to the navigation data of the information storage medium, and the user may watch a video such as a high definition movie.

한편, 애플리케이션 데이터(120)는, 사용자와의 인터랙티브 기능을 제공하기 위한 프로그램 기능을 가진 데이터로서, 풀 모드(full mode) 데이터 또는 프로그램 모드 데이터라고도 한다. 동영상을 이용한 게임 기능, 동영상의 일부를 재생하면서 디렉터의 코멘트(Director's Commentary)를 표시하는 기능, 동영상의 일부를 재생하면서 기타 부가 정보를 표시하는 기능, 또는 동영상을 재생하면서 채팅을 할 수 있는 기능 등을 제공하는 다양한 애플리케이션이 애플리케이션 데이터로써 기록된다. 또는, 정보저장매체에 기록된 영화와 관련하여 웹페이지 또는 다른 데이터베이스 등에 저장된 영화 배우에 관한 최근 소식, 영화와 관련된 이벤트 개최 소식 또는 업데이트된 서브타이틀 등의 관련된 정보도 애플리케이션에 의해 다운로드되 어 영화와 함께 재생할 수도 있다. On the other hand, the application data 120 is data having a program function for providing an interactive function with a user, also referred to as full mode data or program mode data. Game functions using video, the ability to display Director's Commentary while playing part of a video, the display of other additional information while playing part of a video, or the ability to chat while playing a video Various applications that provide the data are recorded as application data. Alternatively, related information such as the latest news about a movie actor, a news event held about a movie, or an updated subtitle related to a movie recorded on an information storage medium may be downloaded by the application. You can also play together.

또한, 애플리케이션 데이터는 동영상과 함께 애플리케이션 프로그램을 실행하기 위해, 후술하는 동영상 정보를 재생하는 프리젠테이션 엔진에 대한 API(Application Program Interface) 함수를 포함할 수도 있다. 이와 같은 애플리케이션 데이터는 C 또는 자바(JAVA)와 같은 프로그램 언어로 작성되며, 본 발명에서는 특히 Xlet과 같은 JAVA 애플리케이션 위주로 설명한다. Xlet은 디지털 TV 수신기에서 실행되는 자바 애플리케이션을 의미한다.In addition, the application data may include an API (Application Program Interface) function for the presentation engine that reproduces the video information, which will be described later, to execute the application program together with the video. Such application data is written in a programming language such as C or Java (JAVA), and the present invention will be described mainly with a JAVA application such as Xlet. Xlet refers to a Java application running on a digital TV receiver.

한편, 시스템 데이터(130)는, 스타트업 정보, 타이틀 정보를 포함한다. 스타트업 정보는, 정보저장매체가 재생장치에 의해 재생될 때, 최초로 재생될 데이터의 위치 정보를 알려준다. 타이틀 정보는 각 타이틀의 재생 시 동작해야 하는 데이터의 엔트리 및 속성 정보를 나타낸다. On the other hand, the system data 130 includes startup information and title information. The startup information informs the position information of the data to be first reproduced when the information storage medium is reproduced by the reproducing apparatus. Title information represents entry and attribute information of data that should be operated upon reproduction of each title.

따라서, 컨텐츠 제작자는 AV 데이터와 함께 다양한 정보를 제공할 수 있는 애플리케이션 프로그램을 정보저장매체에 담아 제공하고, 이를 재생하는 재생장치는 AV 데이터를 위한 재생 엔진 및 애플리케이션 프로그램을 재생할 수 있는 재생 엔진을 함께 가지고 있다.Therefore, the content producer provides an application program capable of providing various information together with the AV data in an information storage medium, and the playback apparatus for reproducing the content includes a reproduction engine for the AV data and a reproduction engine for reproducing the application program. Have.

상기 애플리케이션 프로그램은 주로 자바로 구현되며, PC와 달리 제한된 메모리와 제한된 리소스를 사용하는 AV 데이터 재생장치에서 자바를 실행할 수 있도록 썬(SUN)사에서는 Xlet을 제공하고 있다. 웹 브라우저에서 실행되는 자바 애플리케이션을 애플릿(applet)이라고 부르는 반면, TV 용 애플리케이션을 Xlet이라고 부른다. 애플릿은 사용자가 애플릿이 포함된 페이지를 방문하면 로드되어 실행되고 다른 페이지로 이동하면 중지되어 사라진다. 마찬가지로 Xlet은 AV 데이터 재생장치의 사용자가 Xlet이 포함된 서비스를 선택하면 로드되어 실행되고, 다른 서비스를 선택하면 중지되어 사라진다. Xlet의 라이프 사이클은 다음 도 2에 도시한 바와 같다.The application program is mainly implemented in Java, and unlike PC, Sun (SUN) provides Xlet to execute Java in AV data player using limited memory and limited resources. Java applications that run in a web browser are called applets, while TV applications are called Xlets. The applet loads and runs when the user visits the page that contains the applet, and stops and disappears when you navigate to another page. Similarly, the Xlet is loaded and executed when the user of the AV data player selects a service including the Xlet, and stops and disappears when another service is selected. The life cycle of the Xlet is as shown in FIG. 2.

도 2는 Xlet의 라이프 사이클을 도시한 도면이다.2 is a diagram illustrating a life cycle of an Xlet.

Xlet은 Loaded(210), Paused(220), Active(230) 및 Destroyed(240)의 4개의 상태로 구성되어 있으며, 각 상태간에는 initXlet(), startXlet(), pauseXlet(), destroyXlet() 인터페이스를 통해 전환된다. Loaded(210)는 Xlet이 로드되고 아직 초기화되지 않은 상태이며, Paused(220)는 Xlet이 초기화되고 정지된 상태이다. Paused(220) 상태에는 어떤 공유 자원을 선점하거나 사용할 수 없다. Active(230) 상태는 Xlet이 일반적인 기능을 하고 있으며 서비스를 제공하는 상태이다. 이 상태는 Paused(220) 상태에서 startXlet() 메쏘드가 정상적으로 리턴된 후 들어온다. Destroyed(240) 상태는 Xlet이 모든 자원을 반납하고 종료된 상태이다.The Xlet consists of four states: Loaded (210), Paused (220), Active (230), and Destroyed (240). Is switched over. Loaded 210 is a state where the Xlet is loaded and not initialized yet, and Paused 220 is a state where the Xlet is initialized and stopped. In the Paused 220 state, no shared resources can be preempted or used. The Active 230 state is a state in which the Xlet has a general function and provides a service. This state comes in after Paused (220) returns the startXlet () method. Destroyed (240) state is the state that the Xlet has returned all resources.

상술한 Xlet 인터페이스는 AV 데이터 재생장치의 애플리케이션 매니저에게 상기 라이프 사이클 상태 변화를 알려준다. initXlet()은 Xlet을 초기화하는 것으로 애플리케이션 매니저가 Xlet에게 Xlet 자신을 초기화하라는 신호를 보낸다. startXlet()의 수행이 끝나면 Xlet은 Active(230) 상태로 전환된다. Xlet은 이 상태에서 서비스를 제공하고 리소스를 획득한다. pauseXlet()은 제공하는 서비스를 중단하라는 신호를 Xlet에 통지한다. destroyXlet()은 Xlet이 더 이상 필요없고 곧 시스템에서 제거될 것이라는 신호를 보낸다. Xlet은 종료되기 전에 destroyXlet() 을 통해, 리소스의 반환, 레퍼런스의 저장, 상태 저장 등과 같은 일을 수행한다.The above-described Xlet interface informs the application manager of the AV data reproducing apparatus of the life cycle state change. initXlet () initializes the Xlet, which signals the application manager to initialize the Xlet itself. After the execution of startXlet (), the Xlet is switched to the Active 230 state. The Xlet provides services and acquires resources in this state. pauseXlet () notifies the Xlet of a signal to stop the providing service. destroyXlet () signals that the Xlet is no longer needed and will soon be removed from the system. Before destroying, the Xlet uses destroyXlet () to do things like return resources, save references, and save state.

도 3은 애플리케이션에서 사용하였던 메모리를 해지하는 destroyXlet()을 포함한 애플리케이션 프로그램의 일예를 도시한 도면이다.3 is a diagram illustrating an example of an application program including destroyXlet () for releasing memory used in an application.

따라서, 컨텐츠 제작자는 각 인터페이스를 구현하고, 재생장치의 재생엔진은 구현된 내용에 따라 애플리케이션을 제어한다. 애플리케이션이 시작할 때 재생 엔진은 애플리케이션에서 사용되는 리소스들을 메모리에 로드하고, 애플리케이션이 종료할 때, 그 애플리케이션에서 사용되었던 메모리를 해지한다. 이와 같은 과정은 컨텐츠 제작자의 Xlet 인터페이스의 프로그래밍에 따라 진행되며, 재생엔진은 단순히 Xlet 인터페이스의 내용에 따라 정해진 동작만을 수행한다.Therefore, the content producer implements each interface, and the playback engine of the playback apparatus controls the application according to the implemented contents. When the application starts, the playback engine loads the resources used by the application into memory and, when the application exits, frees the memory that was used by the application. This process proceeds according to the programming of the content creator's Xlet interface, and the playback engine simply performs operations determined according to the contents of the Xlet interface.

그러나 애플리케이션이 사용하였던 메모리를 해지하는 코드를 프로그래밍하지 않을 경우, 즉 애플리케이션의 종료시 호출되는 destroyXlet() 내에, 사용하였던 메모리를 해지하는 명령코드를 포함하지 않은 경우, 애플리케이션이 종료되었음에도 불구하고, 메모리는 아직도 사용중인 것으로 남아있게 된다. PC와 달리 제한된 메모리만을 가지고 있는 재생장치에서, 메모리가 해지되지 않은 채로 남아있을 경우, 메모리의 부족으로 인해 컨텐츠 제작자가 제공한 다른 애플리케이션을 계속 실행시킬 수 없게 되는 경우가 발생할 수 있다. 재생장치는 단순히 애플리케이션을 실행하기만 하기 때문에, 이러한 문제점을 해결할 수 없다.However, if the application does not program code that frees used memory, i.e. in destroyXlet () that is called at the end of the application, it does not contain instruction code that frees used memory, the memory is It will still remain in use. Unlike a PC, in a playback device having only limited memory, if the memory remains unresolved, there may be a case where the lack of memory makes it impossible to continue executing other applications provided by the content creator. Since the playback apparatus simply executes the application, this problem cannot be solved.

도 4는 본 발명에 따른 HScene 관리 테이블의 예를 도시한 도면이다.4 is a diagram illustrating an example of the HScene management table according to the present invention.

HScene은 애플리케이션이 애플리케이션 실행결과를 화면을 통해 제공하기 위한 것이다. HScene은 dispose()라는 함수를 호출하여, HScene을 위해 사용된 메모 리를 해지(release)한다. 그러나, 컨텐츠 제작자가 도 3에서 도시한 바와 같이 destroyXlet() 인터페이스를 포함하도록 애플리케이션 프로그램을 만들지 않으면, 애플리케이션이 사용했던 HScene의 메모리가 해지되지 않은 상태로 남아있어, 다른 애플리케이션이 메모리의 그 영역을 사용할 수 없게 된다. PC와 달리 재생장치는 제한된 메모리를 가지고 있으므로, 해지되지 않은 HScene의 메모리 영역으로 인해 가용 메모리가 부족하여, 다른 애플리케이션의 실행이 원활하지 못하는 경우가 발생한다. 따라서, 이를 방지하기 위해 재생장치가 애플리케이션의 종료 또는 타이틀이 종료되었을 때, 사용된 HScene의 dispose()가 호출되지 않았으면 그 함수를 호출하여 그 HScene에 사용된 메모리를 해지시킨다.HScene is for the application to provide the application execution results on the screen. HScene calls a function called dispose () to release the memory used for HScene. However, if the content creator does not create an application program to include the destroyXlet () interface as shown in FIG. 3, the HScene's memory used by the application remains unresolved, allowing other applications to use that area of memory. It becomes impossible. Unlike the PC, the playback device has limited memory. Therefore, the memory area of HScene that has not been canceled may cause insufficient memory, and other applications may not run smoothly. Therefore, to prevent this, when the playback device terminates the application or the title is terminated, if the dispose () of the used HScene is not called, the function is called to free the memory used for the HScene.

애플리케이션의 동작을 제어하는 애플리케이션 매니저가 도 4에 도시한 바와 같은 HScene 관리 테이블을 통해, 종료된 애플리케이션에 대응되는 HScene의 메모리를 해지한다. 관리 테이블은 애플리케이션 아이디와 HScene 번호로 구분된다. 상기 HScene 관리 테이블의 사용방법은 다음과 같다.The application manager controlling the operation of the application releases the memory of the HScene corresponding to the terminated application through the HScene management table as shown in FIG. The management table is divided into application ID and HScene number. How to use the HScene management table is as follows.

컨텐츠 제작자가 Xlet을 이용하여 애플리케이션을 만들때, 각 애플리케이션은 자신의 동작 환경을 설정하는 XletContext 오브젝트를 포함한다. XletContext에는 해당 애플리케이션의 애플리케이션 아이디 정보가 포함되어 있다. 애플리케이션이 실행되면, 애플리케이션은 HScene 객체를 생성하는 과정에서 XletContext에 저장된 애플리케이션 아이디와, 생성된 HScene 객체 정보를 HScene 관리 테이블에 저장한다. 이때, HScene 객체 정보는 HScene 객체 아이디 또는 HScene 객체를 나타내는 정해진 식별자를 사용할 수 있다. 애플리케이션이 실행중에 HScene 객체을 종료 하기 위해 dispose()함수를 호출하면, 그 함수 내에서 HScene 관리 테이블에 포함되어 있는 애플리케이션 아이디 정보 및 HScene 정보를 삭제한다.When a content creator creates an application with an Xlet, each application contains an XletContext object that sets its own operating environment. XletContext contains the application ID information of the application. When the application is executed, the application stores the application ID stored in the XletContext and the generated HScene object information in the HScene management table while creating the HScene object. In this case, the HScene object information may use an HScene object ID or a predetermined identifier indicating the HScene object. If an application calls dispose () to terminate an HScene object while it is running, it deletes the application ID and HScene information contained in the HScene management table in that function.

애플리케이션이 종료되면 애플리케이션 매니저는 HScene 관리 테이블을 확인하고, 종료된 애플리케이션의 아이디를 가지고 있는 HScene 객체가 남아있을 경우, dispose() 함수를 호출하여 남아있는 HScene 객체를 제거한다. 상술한 과정을 도 5를 참조하여 정리하면 다음과 같다.When the application is terminated, the application manager checks the HScene management table and, if there is an HScene object with the ID of the terminated application, calls the dispose () function to remove the remaining HScene object. The above process is summarized with reference to FIG. 5 as follows.

도 5는 본 발명에 따른 HScene 관리 테이블을 사용하여 메모리를 해지하는 방법의 흐름도이다.5 is a flowchart of a method of releasing memory using the HScene management table according to the present invention.

애플리케이션이 종료되면 HScene 관리 테이블을 검색한다(S510). 종료된 애플리케이션 ID에 해당하는 HScene이 존재하는지 판단하여(S520), 존재하면 해당 ID의 HScene을 삭제한다(S530).When the application is terminated, the HScene management table is searched for (S510). It is determined whether the HScene corresponding to the terminated application ID exists (S520), and if present, the HScene of the corresponding ID is deleted (S530).

도 6은 본 발명에 따른 메모리 해지방법을 사용하는 AV 데이터 재생장치의 블록도이다.6 is a block diagram of an AV data reproducing apparatus using the memory release method according to the present invention.

도 6을 참조하면, 재생장치는 정보저장매체(600)로부터 데이터를 읽는 독출부(610)와, 읽은 데이터를 일시 저장하는 버퍼부(620 내지 623), 버퍼링된 데이터를 재생하기 위한 엔진인 재생부(625 내지 634)를 포함한다. 재생부는 시스템 데이터를 읽어 초기 실행 및 사용자 선택 혹은 네비게이션의 변경 등으로 생긴 타이틀 변경을 처리하도록 네비게이션 엔진을 제어하는 모듈 매니저(633), 네비게이션 데이터의 내용에 따라 동영상의 재생을 제어하는 네비게이션 엔진(631), 동영상 데이터를 디코딩하여 화면에 출력하는 프리젠테이션 엔진(632) 및 애플리케이션 프로그 램을 실행하기 위한 프로그램 엔진(630)을 포함한다. 애플리케이션의 종류에 따라 복수개의 프로그램 엔진이 사용될 수도 있다. 예를 들어, 자바로 된 애플리케이션과 HTML로 된 애플리케이션을 함께 재생하기 위해서는 자바 애플리케이션을 실행할 수 있는 자바 가상 머신(Java virtual machine)과 HTML로 된 애플리케이션을 실행할 수 있는 브라우저 엔진이 필요하다. 본 발명의 HScene 관리 테이블은 프로그램 엔진(630)에 포함되어 애플리케이션이 종료되면, 그때그때 프로그램 엔진의 메모리를 해지한다.Referring to FIG. 6, the reproducing apparatus is a reproducing unit 610 which reads data from the information storage medium 600, buffer units 620 to 623 which temporarily store the read data, and an engine for reproducing the buffered data. Sections 625 through 634. The playback unit reads the system data, and the module manager 633 controls the navigation engine to handle title changes resulting from initial execution, user selection, or navigation change, and a navigation engine 631 that controls playback of a video according to the contents of the navigation data. ), A presentation engine 632 for decoding the video data and outputting it to a screen, and a program engine 630 for executing an application program. Depending on the type of application, a plurality of program engines may be used. For example, to play Java and HTML applications together, you need a Java virtual machine that can run Java applications and a browser engine that can run applications in HTML. The HScene management table of the present invention is included in the program engine 630, and when the application is terminated, the memory of the program engine is released at that time.

또한, 프로그램 엔진(630)의 애플리케이션의 실행 결과와 프리젠테이션 엔진(632)의 동영상 데이터의 재생 결과가 하나로 오버레이되어 하나의 화면을 구성하도록 블랜더(634)가 더 추가된다. 나아가, 프로그램 엔진(630)에는 프로그램 기능을 제공하기 위하여 애플리케이션 오브젝트를 이용하여 애플리케이션 프로그램의 실행을 제어하는 애플리케이션 매니저(625)가 더 포함되는 것이 바람직하다.In addition, the blender 634 is further added so that the execution result of the application of the program engine 630 and the reproduction result of the video data of the presentation engine 632 are overlayed to form one screen. Furthermore, the program engine 630 preferably further includes an application manager 625 that controls the execution of the application program using the application object to provide a program function.

또한, 본 발명에 따른 재생장치에는 정보저장매체(600)나 외부 데이터베이스(602)로부터 다운로드된 프로그램 애플리케이션을 저장할 로컬 스토리지(601)를 포함한다. 따라서, 모듈 매니저(633)는 정보저장매체(600)에서 읽은 데이터와 로컬 스토리지(601)에서 읽은 데이터를 가지고 도 5를 참조하여 상술한 바에 따라 가상 파일 시스템을 만들어 그에 따라 프로그램 엔진(630) 및 네비게이션 엔진(631)에 재생제어정보를 전달한다.In addition, the playback apparatus according to the present invention includes a local storage 601 to store the program application downloaded from the information storage medium 600 or the external database 602. Accordingly, the module manager 633 creates a virtual file system according to the above description with reference to FIG. 5 with the data read from the information storage medium 600 and the data read from the local storage 601. Accordingly, the program engine 630 and The reproduction control information is transmitted to the navigation engine 631.

한편, 전술한 메모리 해지방법은 컴퓨터 프로그램으로 작성 가능하다. 상기 프로그램을 구성하는 코드들 및 코드 세그먼트들은 당해 분야의 컴퓨터 프로그래머 에 의하여 용이하게 추론될 수 있다. 또한, 상기 프로그램은 컴퓨터가 읽을 수 있는 정보저장매체(computer readable media)에 저장되고, 컴퓨터에 의하여 읽혀지고 실행됨으로써 메모리 해지방법을 구현한다. 상기 정보저장매체는 자기 기록매체, 광 기록매체, 및 캐리어 웨이브 매체를 포함한다.On the other hand, the above-described memory release method can be created by a computer program. Codes and code segments constituting the program can be easily inferred by a computer programmer in the art. In addition, the program is stored in a computer readable media, and read and executed by a computer to implement a memory release method. The information storage medium includes a magnetic recording medium, an optical recording medium, and a carrier wave medium.

이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far I looked at the center of the preferred embodiment for the present invention. Those skilled in the art will appreciate that the present invention can be implemented in a modified form without departing from the essential features of the present invention. Therefore, the disclosed embodiments should be considered in descriptive sense only and not for purposes of limitation. The scope of the present invention is shown in the claims rather than the foregoing description, and all differences within the scope will be construed as being included in the present invention.

전술한 바와 같이 본 발명에 따르면, 애플리케이션이 종료된 후에도 해지되지 않은 메모리를 찾아 해지함으로써 AV 데이터 재생장치의 메모리를 효율적으로 사용할 수 있는 효과가 있다.As described above, according to the present invention, there is an effect that the memory of the AV data reproducing apparatus can be efficiently used by finding and releasing memory that has not been canceled even after the application is terminated.

Claims (15)

AV 데이터 및 애플리케이션 데이터를 포함하는 정보저장매체의 재생장치에 있어서,A playback apparatus of an information storage medium including AV data and application data, 상기 AV 데이터를 재생하는 프리젠테이션 엔진; 및A presentation engine for reproducing the AV data; And 상기 애플리케이션 데이터를 재생하며, 상기 애플리케이션 데이터의 재생을 위해 사용되는 메모리를 관리하기 위한 메모리 관리 테이블을 포함하는 프로그램 엔진을 포함하며,A program engine for reproducing the application data, the program engine including a memory management table for managing a memory used for reproducing the application data; 상기 프로그램 엔진은 상기 메모리 관리 테이블을 참조하여 상기 애플리케이션 데이터의 재생 종료 후에도 해지되지 않은 메모리가 남아 있으면 이를 찾아 해지하는 것을 특징으로 하는 재생장치.And the program engine refers to the memory management table and finds and cancels any memory that has not been canceled even after the reproduction of the application data ends. 삭제delete 제1항에 있어서, 상기 애플리케이션 데이터는The method of claim 1, wherein the application data is 자바로 작성된 애플리케이션 프로그램 또는 Xlet 으로 구현된 애플리케이션 프로그램인 것을 특징으로 하는 재생장치.A playback device characterized in that the application program written in Java or an application program implemented in Xlet. 제1항에 있어서, 상기 메모리 관리 테이블은The memory management table of claim 1, wherein the memory management table comprises: 상기 애플리케이션 데이터의 재생결과를 화면에 디스플레이 하기 위해 사용되는 HScene 정보를 저장하고 있는 것을 특징으로 하는 재생장치.And HScene information used to display a reproduction result of the application data on a screen. 제4항에 있어서, 상기 메모리 관리 테이블은The memory management table of claim 4, wherein the memory management table comprises: 상기 애플리케이션 프로그램을 구분하기 위한 애플리케이션 아이디; 및An application ID for identifying the application program; And 상기 애플리케이션 아이디에 대응되어 마련된 HScene 번호를 포함하는 것을 특징으로 하는 재생장치.And a HScene number provided corresponding to the application ID. AV 데이터 및 애플리케이션 데이터를 포함하는 정보저장매체의 재생방법에 있어서,In a method of reproducing an information storage medium including AV data and application data, (a) 상기 AV 데이터를 재생하는 단계; 및(a) playing the AV data; And (b) 상기 AV 데이터의 재생과 더불어, 상기 애플리케이션 데이터를 재생하며, 상기 애플리케이션 데이터의 재생을 위해 사용되는 메모리를 관리하기 위한 메모리 관리 테이블에 메모리 관련 정보를 기록하는 단계를 포함하며,(b) reproducing the application data, in addition to reproducing the AV data, and recording memory related information in a memory management table for managing a memory used for reproducing the application data; 상기 (b) 단계는 상기 메모리 관리 테이블을 참조하여 상기 애플리케이션 데이터의 재생 종료 후에도 해지되지 않은 메모리가 남아 있으면 이를 찾아 해지하는 것을 특징으로 하는 재생방법.The step (b) of the present invention, characterized in that by retrieving the memory that has not been canceled even after the reproduction of the application data remains, referring to the memory management table. 삭제delete 제6항에 있어서, 상기 애플리케이션 데이터는The method of claim 6, wherein the application data is 자바로 작성된 애플리케이션 프로그램 또는 Xlet 으로 구현된 애플리케이션 프로그램인 것을 특징으로 하는 재생방법.Playback method characterized in that the application program written in Java or an application program implemented in Xlet. 제6항에 있어서, 상기 메모리 관리 테이블은The memory management table of claim 6, wherein the memory management table comprises: 상기 애플리케이션 데이터의 재생결과를 화면에 디스플레이 하기 위해 사용되는 HScene 정보를 저장하고 있는 것을 특징으로 하는 재생방법.And HScene information used for displaying the reproduction result of the application data on the screen. 제9항에 있어서, 상기 메모리 관리 테이블은10. The system of claim 9, wherein the memory management table is 상기 애플리케이션 프로그램을 구분하기 위한 애플리케이션 아이디; 및An application ID for identifying the application program; And 상기 애플리케이션 아이디에 대응되어 마련된 HScene 번호를 포함하는 것을 특징으로 하는 재생방법.And a HScene number provided corresponding to the application ID. AV 데이터 및 애플리케이션 데이터를 포함하는 정보저장매체 재생장치의 메모리 관리방법에 있어서,In the memory management method of the information storage medium playback apparatus including AV data and application data, (a) 상기 애플리케이션 데이터의 재생결과를 디스플레이하는데 사용되는 화면(HScene) 정보를 화면 정보 관리 테이블에 저장하는 단계; 및(a) storing screen information (HScene) used to display a result of reproduction of the application data in a screen information management table; And (b) 상기 애플리케이션 데이터의 재생 종료후에, 상기 화면 정보 관리 테이블을 참조하여, 상기 화면 정보가 남아있는지 판단하여 이를 삭제하는 단계를 포함하는 것을 특징으로 하는 메모리 관리방법.and (b) after the reproduction of the application data is completed, referring to the screen information management table, determining whether the screen information remains and deleting the screen information. 제11항에 있어서,The method of claim 11, 상기 화면 정보 관리 테이블은 HScene 관리 테이블인 것을 특징으로 하는 메모리 관리방법.And the screen information management table is an HScene management table. 제11항에 있어서, 상기 애플리케이션 데이터는The method of claim 11, wherein the application data is 자바로 작성된 애플리케이션 프로그램 또는 Xlet 으로 구현된 애플리케이션 프로그램인 것을 특징으로 하는 메모리 관리방법.Memory management method characterized in that the application program written in Java or an application program implemented in Xlet. 제11항에 있어서, 상기 화면 정보 관리 테이블은The table information management table of claim 11, wherein 상기 애플리케이션 프로그램을 구분하기 위한 애플리케이션 아이디; 및An application ID for identifying the application program; And 상기 애플리케이션 아이디에 대응되어 마련된 HScene 번호를 포함하는 것을 특징으로 하는 메모리 관리방법.And a HScene number provided corresponding to the application ID. 제14항에 있어서,The method of claim 14, 상기 (b) 단계는 Xlet의 dispose() 함수를 호출하여 상기 HScene 번호를 삭제하는 것을 특징으로 하는 메모리 관리방법.In the step (b), the dispose () function of the Xlet is called to delete the HScene number.
KR1020040108405A 2004-12-18 2004-12-18 AV data reproducing apparatus and method which containing memory management table, and memory management method therein KR100636211B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040108405A KR100636211B1 (en) 2004-12-18 2004-12-18 AV data reproducing apparatus and method which containing memory management table, and memory management method therein

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040108405A KR100636211B1 (en) 2004-12-18 2004-12-18 AV data reproducing apparatus and method which containing memory management table, and memory management method therein

Publications (2)

Publication Number Publication Date
KR20060069733A KR20060069733A (en) 2006-06-22
KR100636211B1 true KR100636211B1 (en) 2006-10-19

Family

ID=37163654

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040108405A KR100636211B1 (en) 2004-12-18 2004-12-18 AV data reproducing apparatus and method which containing memory management table, and memory management method therein

Country Status (1)

Country Link
KR (1) KR100636211B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003015892A (en) 2001-06-29 2003-01-17 Casio Comput Co Ltd Information terminal equipment and application management program
JP2004348300A (en) * 2003-05-21 2004-12-09 Nec Corp Memory management device, memory management method for use therewith, and program thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003015892A (en) 2001-06-29 2003-01-17 Casio Comput Co Ltd Information terminal equipment and application management program
JP2004348300A (en) * 2003-05-21 2004-12-09 Nec Corp Memory management device, memory management method for use therewith, and program thereof

Also Published As

Publication number Publication date
KR20060069733A (en) 2006-06-22

Similar Documents

Publication Publication Date Title
KR100601677B1 (en) Method of reproducing along with data recorded on storage medium and downloaded data and apparatus thereof
JP5074188B2 (en) Recording medium recording multimedia data for reproducing and programming function of moving picture, reproducing apparatus and reproducing method thereof
US9002182B2 (en) Storage medium storing program management information, and reproducing method and apparatus
JP5254304B2 (en) Recording medium on which program management information is recorded, method for reproducing the same, and apparatus therefor
KR100561479B1 (en) Information storage medium storing a plurality of titles, reproducing apparatus and method thereof
KR100982517B1 (en) Storage medium recording audio-visual data with event information and reproducing apparatus thereof
JP2007535857A (en) Recording medium recording application having programming function, reproducing apparatus, and reproducing method thereof
JP2006114208A (en) Recording medium recording multimedia data for providing moving image reproduction function and programming function, and apparatus and method for reproducing moving image
KR100965883B1 (en) Storage medium containing audio-visual data including mode information, display playback device and display playback method thereof
KR100636211B1 (en) AV data reproducing apparatus and method which containing memory management table, and memory management method therein
KR20050048416A (en) Storage medium including preloading data, display playback device and display playback method thereof
KR100561404B1 (en) Audio-video data playback device setting up player mode information of which, Storage medium, and display playback method thereof
KR101014665B1 (en) Information storage medium containing preload information, apparatus and method for reproducing therefor
KR100694123B1 (en) Storage medium including audio-visual data and application programs, apparatus and method thereof
KR100561433B1 (en) Storage medium storing program management information, reproducing apparatus for the storage medium, and method therefor
RU2312411C2 (en) Carrier for storage of information which stores a set of headers, device and method for reproduction
KR20080002088A (en) Reproduction control method, reproduction control apparatus and information recording medium
RU2309468C2 (en) Information storage carrier, storing a set of headers, device and method for reproduction
KR100677115B1 (en) Reproducing apparatus reproducing downloaded data via network, reproducing method, and storage medium thereof
KR20060059572A (en) Storage medium including information for playing back playlist automatically and apparatus and method thereof
KR20050052928A (en) Display playback device reproducing audio-visual data and interactive contents and display playback method thereof

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
LAPS Lapse due to unpaid annual fee