KR20110138887A - 방송수신장치 및 그의 스케줄링 방법 - Google Patents
방송수신장치 및 그의 스케줄링 방법 Download PDFInfo
- Publication number
- KR20110138887A KR20110138887A KR1020100059034A KR20100059034A KR20110138887A KR 20110138887 A KR20110138887 A KR 20110138887A KR 1020100059034 A KR1020100059034 A KR 1020100059034A KR 20100059034 A KR20100059034 A KR 20100059034A KR 20110138887 A KR20110138887 A KR 20110138887A
- Authority
- KR
- South Korea
- Prior art keywords
- input
- operating system
- output
- event
- priority
- 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
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
-
- 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
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/44—Receiver circuitry for the reception of television signals according to analogue transmission standards
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
방송수신장치가 개시된다. 본 방송수신장치는, 복수의 운영체제의 입출력 이벤트 요청에 대응하여 방송수신장치의 입출력을 수행하는 통신 인터페이스부, 및, 입출력 이벤트를 요청한 운영체제에 부여된 우선 순위에 따라 요청된 입출력 이벤트를 처리하는 제어부를 포함한다.
Description
본 발명은 방송수신장치 및 그의 스케줄링 방법에 관한 것으로, 더욱 상세하게는 방송수신장치의 재생 성능을 향상시킬 수 있는 방송수신장치 및 그의 스케줄링 방법에 관한 것이다.
방송수신장치는 디지털 위성방송을 수신하는 장치로, 방송국에서 전송되는 디지털방송 또는 아날로그방송 및 각종 외부기기(Video Player, DVD Player Blue-ray Disc Player 등)로부터 입력된 영상 및 음성신호를 TS 신호로 변환하여 표시하거나, 외부의 디스플레이장치에 전송하는 장치이다. 이러한, 방송수신장치의 대표적 예로는 디지털 TV, VOD(Video On Demand) 등의 IPTV(Internet Protocol Television) 및 셋탑 박스(Set Top Box)를 들 수 있다.
최근 들어, 방송수신장치는 급속도로 발전하고 있으며, PC에 준하는 성능을 갖게 되었다. 때문에 현재 PC에서 제공되는 수많은 서비스가 방송수신장치에서도 적용되고 있다.
하지만, 방송수신장치는 PC와 다르게 부족한 자원을 최대한 활용해야 하고, 고유의 기능이 다른 서비스 제공에 의하여 방해받지 않아야 하다는 점에서, PC 상의 서비스를 그대로 옮겨 오는 것은 사용자에게 보안과 안정성에 있어 심각한 문제를 초래할 수 있다.
이러한 점을 해결하기 위해 최근의 방송수신장치는 디지털 TV와 같은 기본서비스와 PC와 유사한 부가서비스를 구분하고, 구분된 서비스들을 다른 운영체제를 이용하여 제공하였다.
그러나, 종래에는 입출력 스케줄링을 수행하는데 있어서, 주 운영체제가 부 운영체제의 입출력을 대신 처리해주었다. 이러한 점에서, 부 운영체제의 입출력 작업이 자주 발생하면, 주 운영체제가 이를 대신 처리하기 위하여 주 운영체제의 입출력 동작은 제한된다는 문제점이 있었다.
따라서, 본 발명의 목적은 방송수신장치의 재생 성능을 향상시킬 수 있는 방송수신장치 및 그의 스케줄링 방법을 제공하는 데 있다.
상술한 목적을 달성하기 위한 본 발명의 일 실시예에 따른 방송수신장치의 스케줄링 방법은, 상기 복수의 운영체제 중 적어도 하나의 운영체제로부터 입출력 이벤트를 요청받는 단계, 및, 상기 입출력 이벤트를 요청한 운영체제에 부여된 우선 순위에 따라 상기 입출력 이벤트를 처리하는 단계를 포함한다.
이 경우, 상기 입출력 이벤트를 처리하는 단계는, 상기 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 높은 우선 순위를 가지면, 상기 입출력 이벤트 요청에 대응하여 상기 방송 수신장치의 입출력을 수행하는 것이 바람직하다.
한편, 상기 입출력 이벤트를 처리하는 단계는, 상기 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 낮은 우선 순위를 가지면, 현재 입출력을 수행하는 운영체제의 입출력 동작을 유지하는 것이 바람직하다.
한편, 상기 입출력 이벤트를 처리하는 단계는, 상기 요청된 입출력 이벤트가 가장 빨리 만료되는 작업에 대응되는 이벤트이면, 상기 입출력 이벤트를 요청한 운영체제에 부여된 우선 순위를 상향하여 처리하는 것이 바람직하다.
한편, 상기 복수의 운영체제들 각각은 다른 운영체제의 입출력을 가상화하여 처리하는 것이 바람직하다.
한편, 상기 복수의 운영체제는, 제1 운영체제 및 제2 운영체제를 포함하고, 상기 제1 운영체제는 상기 방송수신장치의 기본서비스를 제공하기 위해 이용되고, 상기 제2 운영체제는 상기 방송수신장치에서 제공되는 부가서비스를 제공하기 위해 이용되는 것이 바람직하다.
이 경우, 상기 제1 운영체제의 우선 순위는 상기 제2 운영체제의 우선 순위보다 높은 것이 바람직하다.
한편, 본 실시예에 따른 방송수신장치는, 상기 복수의 운영체제의 입출력 이벤트 요청에 대응하여 상기 방송수신장치의 입출력을 수행하는 통신 인터페이스부, 및 입출력 이벤트를 요청한 운영체제에 부여된 우선 순위에 따라 상기 요청된 입출력 이벤트를 처리하는 제어부를 포함한다.
이 경우, 상기 제어부는, 상기 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 높은 우선 순위를 가지면, 상기 입출력 이벤트 요청에 대응하여 상기 방송 수신장치의 입출력을 수행하도록 상기 통신 인터페이스부를 제어하는 것이 바람직하다.
한편, 상기 제어부는, 상기 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 낮은 우선 순위를 가지면, 현재 입출력을 수행하는 운영체제의 입출력 동작을 유지하도록 상기 통신 인터페이스부를 제어하는 것이 바람직하다.
한편, 상기 제어부는, 상기 요청된 입출력 이벤트가 가장 빨리 만료되는 작업에 대응되는 이벤트이면, 상기 입출력 이벤트를 요청한 운영체제에 부여된 우선 순위를 상향하여 처리하는 것이 바람직하다.
한편, 상기 복수의 운영체제들 각각은 다른 운영체제의 입출력을 가상화하여 처리하는 것이 바람직하다.
한편, 상기 복수의 운영체제는, 제1 운영체제 및 제2 운영체제를 포함하고, 상기 제1 운영체제는 상기 방송수신장치의 기본서비스를 제공하기 위해 이용되고, 상기 제2 운영체제는 상기 방송수신장치에서 제공되는 부가서비스를 제공하기 위해 이용되는 것이 바람직하다.
이 경우, 상기 제1 운영체제의 우선 순위는 상기 제2 운영체제의 우선 순위보다 높은 것이 바람직하다.
도 1은 본 발명의 일 실시 예에 따른 방송수신장치의 구성을 나타내는 블럭도,
도 2는 도 1의 제어부의 구체적인 구성을 도시한 도면,
도 3 내지 도 5는 다양한 조건에 따른 방송수신장치의 동작 성능을 나타내는 도면, 그리고,
도 6은 본 실시예에 따른 방송수신장치의 스케줄링 방법을 설명하기 위한 흐름도이다.
도 2는 도 1의 제어부의 구체적인 구성을 도시한 도면,
도 3 내지 도 5는 다양한 조건에 따른 방송수신장치의 동작 성능을 나타내는 도면, 그리고,
도 6은 본 실시예에 따른 방송수신장치의 스케줄링 방법을 설명하기 위한 흐름도이다.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 방송수신장치의 구성을 나타낸 블럭도이다. 본 실시 예에서는 설명의 편의를 위해 방송수신장치(100)에서 사용되는 운영체제(또는 가상 머신, 이하에서는 '운영체제'로 지칭한다)를 제1 운영체제(또는 주 운영체제)와 제2 운영체제(부 운영체제)로 한정하여 설명하기로 한다.
여기서, 제1 운영체제는 방송수신장치(100)의 기본서비스를 제공하기 위해 사용되는 운영체제이고, 제2 운영체제는 부가서비스를 제공하기 위해 사용되는 운영체제이다. 여기서 각각의 운영체제는 서로 다른 우선 순위를 가지며, 복수의 운영체제는 다른 운영체제의 입출력을 가상화하여 처리할 수 있다. 구체적으로, 제1 운영체제는 제2 운영체제보다 높은 우선 순위를 가지며, 제1 운영체제는 다른 제2운영체제의 입출력을 가상화하여 처리할 수 있다.
그리고 기본서비스는, 방송수신장치(100)의 본연의 기능인 선국된 채널에 대응되는 방송신호 혹은 선택된 영상에 대응되는 영상신호를 재생하는 서비스 또는 방송수신장치(100)의 제조사가 최초에 방송수신장치(100)에 탑재한 서비스를 나타낸다. 부가서비스는 방송수신장치(100)에서 제공하는 인터넷 접속, 게임 등의 부가적인 서비스 또는 사용자가 방송수신장치(100)에 설치함으로써 제공하는 서비스를 나타낸다.
도 1을 참조하면, 본 실시예에 따른 방송수신장치(100)는, 방송 수신부(110), 신호 분리부(120), A/V 처리부(130), 오디오 출력부(140), GUI 생성부(150), 디스플레이(160), 저장부(170), 조작부(180), 통신 인터페이스부(185) 및 제어부(190)를 포함한다.
방송 수신부(110)는 방송국 또는 위성으로부터 유선 또는 무선으로 방송을 수신하여 복조한다.
신호 분리부(120)는 방송신호를 영상신호, 오디오신호, 부가정보 신호로 분리한다. 그리고 신호 분리부(120)는 영상신호 및 오디오신호를 A/V 처리부(130)로 전송한다.
A/V 처리부(130)는 방송 수신부(110) 및 저장부(170)로부터 입력된 영상신호 및 오디오신호에 대해 비디오 디코딩, 비디오 스케일링, 오디오 디코딩 등의 신호처리를 수행한다. 그리고 A/V 처리부(130)는 영상신호를 GUI 생성부(150)로 출력하고, 오디오신호를 오디오 출력부(140)로 출력한다.
반면, 수신된 영상 및 오디오신호를 저장부(170)에 저장하는 경우, A/V 처리부(130)는 영상과 오디오를 압축된 형태로 저장부(170)에 출력할 수 있다.
오디오 출력부(140)는 A/V 처리부(130)에서 출력되는 오디오신호를 사운드로 변환하여 스피커(미도시)를 통해 출력시키거나, 외부 출력단자(미도시)를 통해 연결된 외부기기로 출력한다.
GUI 생성부(150)는 사용자에게 제공하기 위한 GUI(Graphic User Interface)를 생성한다. 그리고 GUI 생성부(150)는 생성된 GUI를 A/V 처리부(130)에서 출력된 영상에 부가한다. 그리고 디스플레이(160)는 GUI가 부가된 영상을 표시한다.
그리고, 저장부(170)는 영상 컨텐츠를 저장할 수 있다. 구체적으로, 저장부(170)는 A/V 처리부(130)로부터 영상과 오디오가 압축된 영상 컨텐츠를 제공받아 저장할 수 있으며, 제어부(190)의 제어에 따라 저장된 영상 컨텐츠를 A/V 처리부(130)에 출력할 수 있다. 한편, 저장부(170)는 하드디스크, 비휘발성 메모리, 휘발성 메모리 등으로 구현될 수 있다.
조작부(180)는 터치스크린, 터치패드, 키 버튼, 키패드 등으로 구현되어, 방송수신장치의 사용자 조작을 제공한다. 구체적으로, 사용자는 조작부(180)를 이용하여 방송수신장치(100)에서 기본서비스를 제공할지, 부가서비스를 제공할지, 또는 기본서비스 및 부가서비스를 함께 제공할지를 선택하고, 조작부(180)는 사용자 선택에 대응되는 기본서비스 수행명령 혹은 부가서비스 수행명령을 후술할 제어부(190)로 전송한다.
여기서 기본서비스의 일 예로는, 방송수신장치(100)의 본연의 기능인 방송신호 또는 영상신호를 재생하는 서비스일 수 있으며, 부가서비스의 일 예로는 게임, 웹브라우저와 같은 3rd Party 어플리케이션이 제공하는 서비스일 수 있다.
통신 인터페이스부(185)는 방송수신장치(100)를 외부 장치(미도시)와 연결하기 위해 형성되며, 외부 장치와 근거리 통신망(LAN: Local Area Network) 및 인터넷망을 통해 접속되는 형태뿐만 아니라, USB(Universal Serial Bus) 포트를 통하여 접속되는 형태도 가능하다.
그리고, 통신 인터페이스부(185)는 입출력 이벤트에 대응한 입출력 동작을 수행한다. 구체적으로, 통신 인터페이스부(185)는 제어부(190)로부터 입출력 제어 명령을 수신하고, 수신된 입출력 제어 명령에 대응하는 입출력 동작을 수행할 수 있다.
제어부(190)는 방송수신장치(100)의 전반적인 동작을 제어하고, 복수의 운영 체제 중 적어도 하나의 운영체제로부터 입출력 이벤트를 요청받는다. 구체적으로, 제어부(190)는 제1 운영체제로부터는 직접적인 입출력 이벤트 요청을 수신하며, 제2 운영체제로부터는 제1 운영체제를 경유하는 입출력 이벤트 요청을 수신할 수 있다. 도시된 예에서는 제1 운영체제가 제2 운영체제의 입출력을 가상화하여 처리하는 예에 대해서만 설명하였지만, 제2 운영체제가 제1 운영체제의 입출력을 가상화하여 처리하는 형태로 구현될 수 있다.
그리고, 제어부(190)는 요청받은 입출력 이벤트에 대응하여, 입출력 이벤트를 처리할 수 있다. 구체적으로, 제어부(190)는 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 높은 우선 순위를 가지면, 요청된 입출력에 대응하여 입출력이 수행되도록 통신 인터페이스부(185)를 제어할 수 있다. 예를 들어, 입출력 이벤트를 요청한 운영체제가 제1 운영체제이고, 현재 입출력을 수행하고 있는 운영체제가 제2 운영체제인 경우, 제어부(190)는 제1 운영체제의 입출력 요청에 대응한 입출력 동작을 수행할 수 있다.
한편, 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 낮은 우선 순위를 가지면, 제어부(190)는 현재 입출력을 수행하는 운영체제의 입출력 동작을 유지할 수 있다. 예를 들어, 입출력 이벤트를 요청한 운영체제가 제2 운영체제이고, 현재 입출력을 수행하고 있는 운영체제가 제1 운영체제인 경우, 요청된 제2 운영체제의 입출력을 보류할 수 있다.
한편, 제어부(190)는 요청된 입출력 이벤트가 가장 빨리 만료되는 작업에 대응되는 이벤트이면, 입출력 이벤트를 요청한 운영체제에 부여된 우선 순위를 상향하여 처리할 수 있다.
일반적으로 운영체제는 두 가지 타이머를 제공한다. 첫 번째는 운영체계에 실행 가능한 작업들이 존재할 때 시간 관련 처리를 하는 '주기적인 타이머'이다. 그리고 두 번째는 운영체제에 실행 가능한 작업이 없을 때 가장 빨리 만료될 예정인 작업을 위해, 즉, 유휴 상태로 전환하기 위한 '단발적인 타이머'이다. 주기적인 타이머는 이벤트에 의해 깨어날 작업의 유무에 상관없이 요청되지만, 단발적인 타이머는 깨어날 작업에 따라 설정이 된다.
따라서, 단발적인 타이머 설정에 의한 타이머 이벤트가 도착했을 때, 그 이벤트를 요청한 운영체제의 우선 순위를 증가시킴으로써 해당 운영체제에서 깨어날 작업의 응답 속도를 향상시킬 수 있다.
따라서, 본 실시 예에서는 단발적인 타이머 이벤트가 수신된 경우, 해당 타이머 이벤트를 요청한 운영체제의 우선 순위를 일시적으로 증가한다. 이와 같이 단발적인 타이머 이벤트에 대한 우선 처리를 수행함으로써, 이벤트 전달의 정확성에 의존하는 주 운영체제의 동영상 프레임 재생의 끊김을 방지할 수 있게 된다.
또한, 본 실시예에 따른 방송수신장치는 운영체제별로 우선 순위를 다르게 하여 입출력 스케줄링을 제어하는바, 제1 운영체제의 실행이 제2 운영체제의 실행에 의해 선점되지 않는다. 즉, 제1 운영체제에서 동영상 재생 시 제2 운영체제의 과도한 입출력 요청에 의한 동영상 끊김을 최소화할 수 있다.
도 2는 도 1의 제어부의 구체적인 구성을 도시한 도면이다.
도 2를 참고하면, 제어부(200)는 가상화 머신 모니터(VMM: Virtual machine monitor, 210) 및 복수의 운영체제(220, 230)를 포함한다.
복수의 운영체제(220, 230)는 방송수신장치의 서비스를 수행하는 운영체제이다. 구체적으로, 제1 운영체제(220)는 방송수신장치(100)의 기본서비스를 제공하기 위해 사용되는 운영체제로, '가상화 머신 모니터'(VMM, 210)와 직접적으로 입출력을 수행하며, 제2 운영체제(230)의 입출력을 가상화 머신 모니터(210)에 전달할 수 있다.
그리고, 제2 운영체제(230)는 부가서비스를 제공하는데 사용되는 운영체제로, 제1 운영체제(220)를 통하여 가상화 머신 모니터(210)와 입출력을 수행할 수 있다.
가상화 머신 모니터(210)는 복수의 운영체제에 대한 가상화를 처리하며, 복수의 운영체제의 입출력에 대한 입출력 처리를 수행한다. 가상화 머신 모니터(210)는 입출력 스케줄러(211), CPU 스케줄러(212), 메모리 분배부(213)를 포함할 수 있다.
입출력 스케줄러(211)는 요청받은 입출력 이벤트에 대응하여, 입출력 이벤트에 대한 스케줄링을 수행한다. 구체적으로, 입출력 스케줄러(211)는 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 높은 우선 순위를 가지면, 현재 요청된 입출력에 대응한 입출력이 수행되도록 통신 인터페이스부(185)를 제어할 수 있다. 반대로, 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 낮은 우선 순위를 가지면, 입출력 스케줄러(211)는 수행하고 있는 현재의 입출력 동작을 유지할 수 있다. 여기서 스케줄링은 컨텍스 스위칭(Context Switch)하여 다수의 운영체제가 동시에 실행되는 것을 의미한다.
한편, 입출력 스케줄러(211)는 요청된 입출력 이벤트가 가장 빨리 만료되는 작업에 대응되는 이벤트이면, 입출력 이벤트를 요청한 운영체제에 부여된 우선 순위를 상향하여 처리할 수 있다. 이와 같은 동작에 대해서는 앞서 설명하였는바, 중복 설명은 생략한다.
CPU 스케줄러(212)는 복수의 운영체제의 이벤트를 스케줄링한다. 구체적으로, CPU 스케줄러(212)는 입출력 이벤트 이외의 이벤트를 처리할 수 있다. 그리고 메모리 분배부(213)는 복수의 운영체제 각각에 대한 메모리 영역을 할당한다.
도 3 내지 도 5는 다양한 조건에 따른 방송수신장치의 동작 성능을 나타내는 도면이다.
여기서 'Score'는 스케줄러의 성능 평가를 위하여 사용한 멀티미디어 워크로드의 공식으로 계산한 결과 값으로, 프레임 드롭(frame drop)과 한번에 드롭되는 정도를 수치화하여 표시한 것이다.
그리고, 도 3 내지 도 5의 하단에 기재된 항목은 제2 운영체제에서의 동작을 기재한 것으로, 'Idle'은 아무런 동작을 수행하지 않은 것이고, 'CPU'는 CPU를 사용하는 경우, 'Net'는 네트워크를 이용하는 동작을 수행하는 경우, 'Disk'는 저장매체를 이용하는 경우, 'CPU+NET'은 CPU와 네트워크를 함께 사용하는 경우, 'Browser'는 인터넷 검색을 수행하는 경우, 'Download'는 네트워크를 통하여 자료를 다운받는 경우의 동작이다.
도 3을 참고하면, 종래의 스케줄링 알고리즘(Credit, Boost Credit)을 이용하는 경우, 제2 운영체제에서 CPU와 네트워크를 동시에 사용하거나 다운로드를 수행할 때, 제1 운영체제의 동작, 즉 동영상 재생이 많이 끊기는 것을 확인할 수 있다.
도 4를 참고하면, 본 실시예에 따라 운영체제별로 우선 순위를 부여하여 스케줄링을 수행하는 경우(Credit-D0PD)의 동영상 재생 동작의 성능이 기존의 스케줄링 알고리즘에 비하여 개선됨을 확인할 수 있다. 특히, 'Download'시에 동영상 끊김이 개선되는 것을 확인할 수 있다.
도 5를 참고하면, 본 실시예에 따라 운영체제별로 우선 순위를 부여하고, 단발적 타이머에 의한 우선 순위를 상향하는 스케줄링을 수행하는 경우(Credit-DoPD-TB)의 동영상 재생 동작의 성능이 기존의 스케줄링 알고리즘에 비하여 개선됨을 확인할 수 있다. 특히, 모든 상태에서 제1 운영체제의 동영상 끊김이 방지되는 것을 확인할 수 있다.
도 6은 본 실시예에 따른 스케줄링 방법을 설명하기 위한 흐름도이다.
도 6을 참고하면, 먼저 입출력 이벤트가 요청되면(S610), 요청된 입출력 이벤트가 가장 빨리 완료되는 작업 이벤트인지 판단한다(S620). 구체적으로, 복수의 운영체제 중 적어도 하나의 운영체제로부터 입출력 이벤트를 요청받으며, 해당 입출력 이벤트가 가장 빨리 완료되는 작업 이벤트인지를 판단할 수 있다.
만약, 요청된 입출력 이벤트가 가장 빨리 만료되는 작업에 대응되는 이벤트이면, 입출력 이벤트를 요청한 운영체제에 부여된 우선 순위를 상향할 수 있다(S630). 반면에, 요청된 입출력 이벤트가 가장 빨리 만료되는 작업에 대응되는 이벤트가 아니면, 별도의 우선 순위 조정 없이 다음 동작을 수행할 수 있다.
그 다음, 입출력 이벤트를 요청한 운영체제에 부여된 우선 순위에 따라 입출력 이벤트를 처리한다. 구체적으로, 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 높은 우선 순위를 가지면(S640 -> Y), 입출력 이벤트 요청에 대응한 입출력 동작을 수행할 수 있다(S650). 예를 들어, 입출력 이벤트를 요청한 운영체제가 제1 운영체제이고, 현재 입출력을 수행하고 있는 운영체제가 제2 운영체제인 경우, 요청된 제1 운영체제의 입출력을 우선적으로 수행할 수 있다.
반면에, 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 낮은 우선 순위를 가지면(S640 -> N), 현재 입출력을 수행하는 운영체제의 입출력 동작을 유지하고(S660), 현재 입출력을 수행하는 운영체제의 입출력 동작이 완료되면 입출력 이벤트를 요청한 운영체제의 입출력 동작을 수행할 수 있다(S670). 예를 들어, 입출력 이벤트를 요청한 운영체제가 제2 운영체제이고, 현재 입출력을 수행하고 있는 운영체제가 제1 운영체제인 경우, 요청된 제2 운영체제의 입출력을 보류할 수 있다.
따라서, 본 실시예에 따른 스케줄링 방법은 운영체제별로 우선 순위를 부여하고, 우선 순위가 높은 운영체제의 입출력을 선행하여 처리하는바, 제1 운영체제의 실행이 제2 운영체제의 의해 선점되지 않는다. 즉, 제1 운영체제에서 동영상 재생 시 제2 운영체제의 과도한 입출력 요청에 의한 동영상 끊김을 최소화할 수 있다. 도 6과 같은 스케줄링 방법은, 도 1의 구성을 가지는 방송수신장치상에서 실행될 수 있으며, 그 밖의 다른 구성을 가지는 방송수신장치상에서도 실행될 수 있다.
이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
100 : 방송수신장치 110 : 방송 수신부
120 : 신호 분리부 130 : A/V 처리부
140 : 오디오 출력부 150 : GUI 생성부
160 : 디스플레이 170 : 저장부
180 : 조작부 185 : 통신 인터페이스부
190 : 제어부
120 : 신호 분리부 130 : A/V 처리부
140 : 오디오 출력부 150 : GUI 생성부
160 : 디스플레이 170 : 저장부
180 : 조작부 185 : 통신 인터페이스부
190 : 제어부
Claims (14)
- 복수의 운영체제를 사용하는 방송수신장치의 스케줄링 방법에 있어서,
상기 복수의 운영체제 중 적어도 하나의 운영체제로부터 입출력 이벤트를 요청받는 단계; 및
상기 입출력 이벤트를 요청한 운영체제에 부여된 우선 순위에 따라 상기 입출력 이벤트를 처리하는 단계;를 포함하는 스케줄링 방법. - 제1항에 있어서,
상기 입출력 이벤트를 처리하는 단계는,
상기 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 높은 우선 순위를 가지면, 상기 입출력 이벤트 요청에 대응하여 상기 방송 수신장치의 입출력을 수행하는 것을 특징으로 하는 스케줄링 방법. - 제1항에 있어서,
상기 입출력 이벤트를 처리하는 단계는,
상기 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 낮은 우선 순위를 가지면, 현재 입출력을 수행하는 운영체제의 입출력 동작을 유지하는 것을 특징으로 하는 스케줄링 방법. - 제1항에 있어서,
상기 입출력 이벤트를 처리하는 단계는,
상기 요청된 입출력 이벤트가 가장 빨리 만료되는 작업에 대응되는 이벤트이면, 상기 입출력 이벤트를 요청한 운영체제에 부여된 우선 순위를 상향하여 처리하는 것을 특징으로 하는 스케줄링 방법. - 제1항에 있어서,
상기 복수의 운영체제들 각각은 다른 운영체제의 입출력을 가상화하여 처리하는 것을 특징으로 하는 스케줄링 방법. - 제1항에 있어서,
상기 복수의 운영체제는, 제1 운영체제 및 제2 운영체제를 포함하고,
상기 제1 운영체제는 상기 방송수신장치의 기본서비스를 제공하기 위해 이용되고, 상기 제2 운영체제는 상기 방송수신장치에서 제공되는 부가서비스를 제공하기 위해 이용되는 것을 특징으로 하는 스케줄링 방법. - 제6항에 있어서,
상기 제1 운영체제의 우선 순위는 상기 제2 운영체제의 우선 순위보다 높은 것을 특징으로 하는 스케줄링 방법. - 복수의 운영체제를 사용하는 방송수신장치에 있어서,
상기 복수의 운영체제의 입출력 이벤트 요청에 대응하여 상기 방송수신장치의 입출력을 수행하는 통신 인터페이스부; 및
상기 입출력 이벤트를 요청한 운영체제에 부여된 우선 순위에 따라 상기 요청된 입출력 이벤트를 처리하는 제어부;를 포함하는 방송수신장치. - 제8항에 있어서,
상기 제어부는,
상기 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 높은 우선 순위를 가지면, 상기 입출력 이벤트 요청에 대응하여 상기 방송 수신장치의 입출력을 수행하도록 상기 통신 인터페이스부를 제어하는 것을 특징으로 하는 방송수신장치. - 제8항에 있어서,
상기 제어부는,
상기 입출력 이벤트를 요청한 운영체제의 우선 순위가 현재 입출력을 수행하고 있는 운영체제보다 낮은 우선 순위를 가지면, 현재 입출력을 수행하는 운영체제의 입출력 동작을 유지하도록 상기 통신 인터페이스부를 제어하는 것을 특징으로 하는 방송수신장치. - 제8항에 있어서,
상기 제어부는,
상기 요청된 입출력 이벤트가 가장 빨리 만료되는 작업에 대응되는 이벤트이면, 상기 입출력 이벤트를 요청한 운영체제에 부여된 우선 순위를 상향하여 처리하는 것을 특징으로 하는 방송수신장치. - 제8항에 있어서,
상기 복수의 운영체제들 각각은 다른 운영체제의 입출력을 가상화하여 처리하는 것을 특징으로 하는 방송수신장치. - 제8항에 있어서,
상기 복수의 운영체제는, 제1 운영체제 및 제2 운영체제를 포함하고,
상기 제1 운영체제는 상기 방송수신장치의 기본서비스를 제공하기 위해 이용되고, 상기 제2 운영체제는 상기 방송수신장치에서 제공되는 부가서비스를 제공하기 위해 이용되는 것을 특징으로 하는 방송수신장치. - 제13항에 있어서,
상기 제1 운영체제의 우선 순위는 상기 제2 운영체제의 우선 순위보다 높은 것을 특징으로 하는 방송수신장치.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100059034A KR101719559B1 (ko) | 2010-06-22 | 2010-06-22 | 방송수신장치 및 그의 스케줄링 방법 |
US13/102,330 US8813084B2 (en) | 2010-06-22 | 2011-05-06 | Broadcast receiving apparatus and scheduling method thereof |
EP11170399A EP2400739A1 (en) | 2010-06-22 | 2011-06-17 | Broadcast receiving apparatus and scheduling method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100059034A KR101719559B1 (ko) | 2010-06-22 | 2010-06-22 | 방송수신장치 및 그의 스케줄링 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110138887A true KR20110138887A (ko) | 2011-12-28 |
KR101719559B1 KR101719559B1 (ko) | 2017-03-24 |
Family
ID=44508720
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100059034A KR101719559B1 (ko) | 2010-06-22 | 2010-06-22 | 방송수신장치 및 그의 스케줄링 방법 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8813084B2 (ko) |
EP (1) | EP2400739A1 (ko) |
KR (1) | KR101719559B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022163983A1 (ko) * | 2021-02-01 | 2022-08-04 | 주식회사 드림에이스 | 차량 가상화 구조 기반의 디바이스 제어 방법 및 장치 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8621473B2 (en) * | 2011-08-01 | 2013-12-31 | Honeywell International Inc. | Constrained rate monotonic analysis and scheduling |
US9207977B2 (en) | 2012-02-06 | 2015-12-08 | Honeywell International Inc. | Systems and methods for task grouping on multi-processors |
CN102831909B (zh) * | 2012-08-24 | 2014-11-26 | 小米科技有限责任公司 | 一种线控消息的处理方法及装置 |
TWI458315B (zh) * | 2012-09-12 | 2014-10-21 | Wistron Corp | 於網路環境中提供數位內容之方法及系統 |
US9612868B2 (en) | 2012-10-31 | 2017-04-04 | Honeywell International Inc. | Systems and methods generating inter-group and intra-group execution schedules for instruction entity allocation and scheduling on multi-processors |
FR2997811B1 (fr) * | 2012-11-05 | 2015-01-02 | Viaccess Sa | Dispositif de traitement de contenus multimedia mettant en oeuvre une pluralite de machines virtuelles. |
CN104574043B (zh) * | 2015-01-20 | 2019-01-11 | 宇龙计算机通信科技(深圳)有限公司 | 一种日程提醒方法及装置 |
CN105338368B (zh) * | 2015-11-02 | 2019-03-15 | 腾讯科技(北京)有限公司 | 一种视频的直播流转点播数据的方法、装置及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000347883A (ja) * | 1999-06-03 | 2000-12-15 | Matsushita Electric Ind Co Ltd | 仮想計算機装置 |
KR20070083569A (ko) * | 2004-08-18 | 2007-08-24 | 쟈루나 에스에이 | 운영체제 |
KR20080066721A (ko) * | 2005-09-26 | 2008-07-16 | 네탁 테크놀로지 컴퍼니 리미티드 | 미디어 재생기들상에서 다중 작업을 위한 방법 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7055165B2 (en) * | 2001-06-15 | 2006-05-30 | Intel Corporation | Method and apparatus for periodically delivering an optimal batch broadcast schedule based on distributed client feedback |
EP1892625B1 (en) * | 2006-08-09 | 2018-07-11 | Red Bend Software | Finer grained operating system scheduling |
KR101109768B1 (ko) | 2008-11-25 | 2012-02-15 | 유일시스템 주식회사 | 그라인더 유니트 |
-
2010
- 2010-06-22 KR KR1020100059034A patent/KR101719559B1/ko active IP Right Grant
-
2011
- 2011-05-06 US US13/102,330 patent/US8813084B2/en not_active Expired - Fee Related
- 2011-06-17 EP EP11170399A patent/EP2400739A1/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000347883A (ja) * | 1999-06-03 | 2000-12-15 | Matsushita Electric Ind Co Ltd | 仮想計算機装置 |
KR20070083569A (ko) * | 2004-08-18 | 2007-08-24 | 쟈루나 에스에이 | 운영체제 |
KR20080066721A (ko) * | 2005-09-26 | 2008-07-16 | 네탁 테크놀로지 컴퍼니 리미티드 | 미디어 재생기들상에서 다중 작업을 위한 방법 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022163983A1 (ko) * | 2021-02-01 | 2022-08-04 | 주식회사 드림에이스 | 차량 가상화 구조 기반의 디바이스 제어 방법 및 장치 |
KR20220111035A (ko) * | 2021-02-01 | 2022-08-09 | 주식회사 드림에이스 | 차량 가상화 구조 기반의 디바이스 제어 방법 및 장치 |
US11977619B2 (en) | 2021-02-01 | 2024-05-07 | Drimaes, Inc. | Method and device for controlling device based on vehicle virtual structure |
Also Published As
Publication number | Publication date |
---|---|
KR101719559B1 (ko) | 2017-03-24 |
EP2400739A1 (en) | 2011-12-28 |
US20110314476A1 (en) | 2011-12-22 |
US8813084B2 (en) | 2014-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101719559B1 (ko) | 방송수신장치 및 그의 스케줄링 방법 | |
US11438394B2 (en) | Systems, methods, and media for controlling delivery of content | |
CN110032357B (zh) | 应用程序的音频数据的输出方法及显示设备 | |
RU2534977C2 (ru) | Устройство обработки информации, способ управления данными и программа | |
WO2015176452A1 (zh) | 多模机顶盒及其模式管理方法和计算机存储介质 | |
JP2012518328A (ja) | メディアコンテンツ表示のためのリソース管理方法 | |
CN112188279A (zh) | 一种频道切换方法和显示设备 | |
JP2012170053A (ja) | インターネットテレビの制御システム及びその制御方法 | |
CN112040309B (zh) | 一种频道切换方法及显示设备 | |
CN110602540B (zh) | 显示设备音量控制方法及显示设备 | |
KR20110138888A (ko) | 방송수신장치 및 그의 메모리 관리방법 | |
KR101137802B1 (ko) | Pip 제어 가능한 iptv용 셋톱박스 및 그 제어방법 | |
WO2021166817A1 (ja) | 情報通信端末装置及び該装置における表示制御方法 | |
JPWO2009011017A1 (ja) | 情報配信システム、及び方法、情報配信装置、並びに受信装置 | |
JP3966343B2 (ja) | 配信管理方法、配信管理装置、及び配信管理システム | |
CN111263223A (zh) | 一种媒体音量调节方法及显示设备 | |
KR101727569B1 (ko) | 스마트폰과 연계한 심리스 hdmi 자동 변환 기능을 내장한 하이브리드 미디어 서비스 방법 및 장치 | |
CN111327932A (zh) | 电视盒子、电视节目处理方法、装置和存储介质 | |
WO2021145421A1 (ja) | 情報通信端末装置及び該装置における表示制御方法 | |
WO2023185954A9 (zh) | 一种显示设备及用于显示设备的处理方法 | |
KR20100047764A (ko) | 텔레비전의 피벗 기능을 이용한 주화면 및 부화면 출력 제어 장치 및 방법 | |
US8881211B2 (en) | Video player system with transmission device for transmitting content to content player device for content playback based consumption resource information | |
JP2010041220A (ja) | データ処理装置、データ処理方法、及びプログラム | |
KR20090098578A (ko) | 소프트웨어 업그레이드 방법 | |
JP2015076791A (ja) | コンテンツ収集配信システムおよび映像表示装置 |
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 |