KR20000032335A - 휴대용 컴퓨터의 디스플레이 성능 향상방법 - Google Patents

휴대용 컴퓨터의 디스플레이 성능 향상방법 Download PDF

Info

Publication number
KR20000032335A
KR20000032335A KR1019980048760A KR19980048760A KR20000032335A KR 20000032335 A KR20000032335 A KR 20000032335A KR 1019980048760 A KR1019980048760 A KR 1019980048760A KR 19980048760 A KR19980048760 A KR 19980048760A KR 20000032335 A KR20000032335 A KR 20000032335A
Authority
KR
South Korea
Prior art keywords
acceleration
emulation
hardware
function
software
Prior art date
Application number
KR1019980048760A
Other languages
English (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 KR1019980048760A priority Critical patent/KR20000032335A/ko
Publication of KR20000032335A publication Critical patent/KR20000032335A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • 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
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

본 발명은 휴대용 컴퓨터의 디스플레이 성능 향상방법에 관한 것으로, 종래에는 오퍼레이션의 종류에 따라 하드웨어 가속이 소프트웨어 에뮬레이션보다 성능이 저하되거나 또는 그래픽 엔진 자체에 결함을 가지는 문제점이 있었다. 따라서, 본 발명은 비엘티 함수 포인터에 단순 에뮬레이션 함수를 대입하는 제 1 단계와; 하드웨어 가속이 가능한 조건인지를 판단하는 제2 단계와; 상기 제2 단계의 판단결과 하드웨어 가속이 가능하지 않으면 리턴하고, 하드웨어 가속이 가능하면 래스터 오퍼레이션 타입을 읽어 해당 처리루틴으로 분기하는 제3 단계와; 해당 오퍼레이션의 하드웨어 가속이 가능한지를 판단하는 제4 단계와; 상기 제4 단계의 판단결과 해당 오퍼레이션의 하드웨어 가속이 가능하지 않으면 리턴하고, 해당 오퍼레이션의 하드웨어 가속이 가능하면 하드웨어 가속의 성능이 소프트웨어 에뮬레이션보다 우수한지를 판단하는 제5 단계와; 상기 제5 단계의 판단결과 하드웨어 가속의 성능이 소프트웨어 에뮬레이션보다 우수하지 않으면 해당 소프트웨어의 에뮬레이션이 가능한지를 판단하는 제6 단계와; 상기 제6 단계의 판단결과 해당 소프트웨어의 에뮬레이션이 가능하면 해당 에뮬레이션함수를 대입한후 리턴하고, 해당 소프트웨어 에뮬레이션이 가능하지 않으면 해당 하드웨어 에뮬레이션이 가능한지를 판단하는 제7 단계와; 상기 제7 단계의 판단결과 해당 하드웨어 에뮬레이션이 가능하지 않으면 리턴하고, 해당 하드웨어 에뮬레이션이 가능하면 해당 가속함수를 대입한후 리턴하는 제 8단계와; 상기 제5 단계의 판단결과 하드웨어 가속의 성능이 소프트웨어 에뮬레이션보다 우수하면 해당 하드웨어 가속이 가능한지를 판단하는 제9 단계와; 상기 제9 단계의 판단결과 해당 하드웨어 가속이 가능하면 해당 가속함수를 대입한후 리턴하는 제10 단계와; 상기 제10 단계의 판단결과 해당 하드웨어 가속이 가능하지 않으면 해당 소프트웨어 가속이 가능한지를 판단하는 제11 단계와; 상기 제11 단계의 판단결과 해당 소프트웨어 가속이 가능하지 않으면 리턴하고, 해당 소프트웨어 가속이 가능하면 해당 에뮬레이션 함수를 대입한후 리턴하는 제12 단계로 수행하여 하드웨어 가속기법과 소프트웨어 기법을 동적으로 선택함으로써 해당 가속기능의 없는 경우, 해당 하드웨어 가속기능을 사용할 수 없는 경우, 해당 하드웨어 가속기능의 성능이 소프트웨어 에뮬레이션보다 나쁜 경우 및 해당 하드웨어 가속 기능에 오류가 있는 경우에는 소프트웨어 에뮬레이션을 선택하게 하여 성능적이 측면을 향상을 도모할 수 있는 효과가 있고, 또한 하드웨어 가속기능이나 소프트웨어 에뮬레이션기능을 적용하지 못하는 모든 예외상황에서 서로 대안으로 제공될 수 있는 가능성을 높임으로써 성능적으로 현격히 낮은 단순 에뮬레이션의 사용을 최소화하여 그 그래픽성능을 향상시킬 수 있는 효과가 있다.

Description

휴대용 컴퓨터의 디스플레이 성능 향상방법
본 발명은 휴대용 컴퓨터의 디스플레이 성능 향상방법에 관한 것으로, 특히 하드웨어(H/W) 가속(Acceleration)기법과 소프트웨어(S/W) 에뮬레이션(Emulation)기법을 동적으로 선택하여 해당 가속(Acceleration)기능이 없을 경우 소프트웨어(S/W) 에뮬레이션(Emulation) 기능을 선택하도록함으로써 그래픽 성능을 향상시킬 수 있도록 한 휴대용 컴퓨터의 디스플레이 성능 향상방법에 관한 것이다.
일반적으로, 핸드헬드(Hand Held) 피씨(PC)등의 모빌 디바이스에는 아직 그래픽 가속(Acceleration)이 널리 이용되고 있는 상황은 아니나, 근래에 와서는 씨피유(CPU)의 컴퓨팅 능력향상과 더불어 그래픽성능 분야에서도 여러 가지의 가속(Acceleration) 기법이 채용되고 있는 상황이며, 이에 따라 그래픽 제어기에도 하드웨어(H/W) 가속(Acceleration) 기능이 내장되고 있는 추세이다.
하드웨어(H/W) 가속(Acceleration)기능은 크게 두가지로 비엘티(Bit Block Transfer:BLT)와 라인 드로잉(Line Drawing)이 있으면 비엘티(BLT)는 10여 가지의 래스터(Raster:브라운관의 주사선으로 구성된 화상) 오퍼레이션(Operation)들로 구성되는데, 이러한 성능 향상 기능들은 소프트웨어(S/W) 에뮬레이션(Emulation) 기법에 의해서도 지원이 되고 있으며, 소프트웨어(S/W) 에뮬레이션(Emulation)은 단순한 기능 에뮬레이션(Emulation)을 넘어서 여러가지 그래픽 처리 알고리즘과 최적화 기법을 도입하여 그 성능이 우수하고 또한 텍스트 에뮬레이션(Emulation)과 같이 하드웨어(H/W) 가속(Acceleration)으로는 일반적으로 지원이 안되는 기능까지 포함하고 있다.
그러나, 일반적으로 하드웨허 가속(Acceleration)이 소프트웨어(S/W) 에뮬레이션(Emulation)보다 탁월한 성능을 보여햐 그 의미가 있으나 저가이면서 소형 디바이스인 핸드헬드 제품에서는 그렇지 못한 경우가 많이 발생하고 있으며 심지어는 오퍼레이션의 종류에 따라 하드웨어(H/W) 가속(Acceleration)이 소프트웨어(S/W) 에뮬레이션(Emulation)보다 오히려 성능이 떨어지는 경우나 그래픽 가속(Accele ra t Ion) 엔진 자체에 결함을 가지고 있는 경우도 있다.
따라서, 이러한 하드웨어(H/W) 가속(Acceleration)기능과 소프트웨어(S/W) 에뮬레이션(Emulation) 기능의 장점만을 추출하여 효과적으로 조합한 형태의 드바이버 운영이 요구된다.
이에 반해 현재까지의 핸드헬드 피씨(PC)는 대부분 소프트웨어(S/W) 기법을 사용하고 있으며 최근에 하드웨어(H/W) 가속(Acceleration)을 채용한 디바이스가 선을 보이고 있는 실정이다.
도1은 종래의 하드웨어(H/W) 가속(Acceleration)방법에 대한 동작흐름도로서, 이에 도시된 바와같이 비엘티(BLT) 포인터에 단순에뮬레이션(Emulation) 함수를 대입한후 하드웨어(H/W) 가속(Acceleration)이 가능한가를 판단하는 제1 단계와; 상기 제1 단계의 판단결과 하드웨어(H/W) 가속(Acceleration)이 가능하지 않으면 리턴하고, 하드웨어(H/W) 가속(Acceleration)이 가능하면 래스터 오퍼레이션 타입(Raster Operation Type)을 읽어 해당 처리루틴으로 분기한후 해당 오퍼레이션의 가속(Acceleration)이 가능한가를 판단하는 제2 단계와; 상기 제2 단계의 판단결과 해당 오퍼레이션의 가속(Acceleration)이 가능하지 않으면 리턴하고, 해당 오퍼레이션의 가속(Acceleration)이 가능하면 비엘티(BLT) 함수 포인터에 해당 가속(Acceleration)함수를 대입한후 리턴하는 제3 단계로 이루어지며, 이와같은 종래기술의 동작을 설명한다.
먼저, 윈도우 계열 인터페이스는 비엘티(BLT) 초기화함수가 가속(Acceleration) 핸들러를 반납받아 이를 호출하는 형태로 되어 있으나 다른 O/S의 경우에도 일반화될 수 있는 형태이다.
비엘티(BLT) 초기화함수가 호출되면 성능향상과는 무관한 단순 에뮬레이션(Emulation) 함수로 가속(Acceleration) 핸들러인 비엘티(BLT)함수 포인터를 초기화한후, 가속(Acceleration)이 가능한 조건인지를 검색하는데, 이 검색과정은 인자로 넘겨받은 파라미터들을 조사하여 판단하는 과정으로 불필요한 더 이상의 코드진행을 최소화하기 위해 행해진다.
상기 판단결과 가속(Acceleration)이 가능하지 않으면 초기화된 단순 에뮬레이션(Emulation)함수를 반환하게 되고, 가속(Acceleration)이 가능하면 파라미터중에서 래스터(Raster) 오퍼레이션 코드를 읽어 해당 래스터(Raster) 오퍼레이션 처리 루틴으로 천이하는데, 여기서는 각 오퍼레이션별로 해당 가속(Acceleration)이 가능한지를 개별적으로 판단하게 된다.
상기 판단결과 가속(Acceleration)이 가능하면 해당 오퍼레이션 코드를 비엘티(BLT) 함수 포인터에 대입하고, 가속(Acceleration)이 불가능하면 그대로 복귀하여 단순 에뮬레이션(Emulation) 함수를 반환하게 된다.
그러나, 상기와 같이 동작하는 종래 기술은 오퍼레이션의 종류에 따라 하드웨어(H/W) 가속(Acceleration)이 소프트웨어(S/W) 에뮬레이션(Emulation)보다 성능이 저하되거나 또는 그래픽 엔진 자체에 결함을 가지는 문제점이 있었다.
따라서, 상기와 같은 문제점을 감안하여 창안한 본 발명은 하드웨어(H/W) 가속(Acceleration)기법과 소프트웨어(S/W) 에뮬레이션(Emulation)기법을 동적으로 선택하여 해당 가속(Acceleration)기능이 없을 경우 소프트웨어(S/W) 에뮬레이션(Emulation)기능을 선택하도록함으로써 그래픽 성능을 향상시킬 수 있도록 한 휴대용 컴퓨터의 디스플레이 성능 향상방법을 제공함에 그 목적이 있다.
도1은 종래 휴대용 컴퓨터의 디스플레이 성능 향상방법에 대한 동작흐름도.
도2는 본 발명 휴대용 컴퓨터의 디스플레이 성능 향상방법에 대한 동작흐름도.
상기와 같은 목적을 달성하기 위한 본 발명은 비엘티(BLT) 함수 포인터에 단순 에뮬레이션(Emulation) 함수를 대입하는 제 1 단계와; 하드웨어(H/W) 가속(Acceleration)이 가능한 조건인지를 판단하는 제2 단계와; 상기 제2 단계의 판단결과 하드웨어(H/W) 가속(Acceleration)이 가능하지 않으면 리턴하고, 하드웨어(H/W) 가속(Acceleration)이 가능하면 래스터(Raster) 오퍼레이션 타입을 읽어 해당 처리루틴으로 분기하는 제3 단계와; 해당 오퍼레이션의 하드웨어(H/W) 가속(Acceleration)이 가능한지를 판단하는 제4 단계와; 상기 제4 단계의 판단결과 해당 오퍼레이션의 하드웨어(H/W) 가속(Acceleration)이 가능하지 않으면 리턴하고, 해당 오퍼레이션의 하드웨어(H/W) 가속(Acceleration)이 가능하면 하드웨어(H/W) 가속(Acceleration)의 성능이 소프트웨어(S/W) 에뮬레이션(Emulation)보다 우수한지를 판단하는 제5 단계와; 상기 제5 단계의 판단결과 하드웨어(H/W) 가속(Acceleration)의 성능이 소프트웨어(S/W) 에뮬레이션(Emulation)보다 우수하지 않으면 해당 소프트웨어(S/W)의 에뮬레이션(Emulation)이 가능한지를 판단하는 제6 단계와; 상기 제6 단계의 판단결과 해당 소프트웨어(S/W)의 에뮬레이션(Emulation)이 가능하면 해당 에뮬레이션(Emulation)함수를 대입한후 리턴하고, 해당 소프트웨어(S/W) 에뮬레이션(Emulation)이 가능하지 않으면 해당 하드웨어(H/W) 에뮬레이션(Emulation)이 가능한지를 판단하는 제7 단계와; 상기 제7 단계의 판단결과 해당 하드웨어(H/W) 에뮬레이션(Emulation)이 가능하지 않으면 리턴하고, 해당 하드웨어(H/W) 에뮬레이션(Emulation)이 가능하면 해당 가속(Acceleration)함수를 대입한후 리턴하는 제 8단계와; 상기 제5 단계의 판단결과 하드웨어(H/W) 가속(Acceleration)의 성능이 소프트웨어(S/W) 에뮬레이션(Emulation)보다 우수하면 해당 하드웨어(H/W) 가속(Acceleration)이 가능한지를 판단하는 제9 단계와; 상기 제9 단계의 판단결과 해당 하드웨어(H/W) 가속(Acceleration)이 가능하면 해당 가속(Acceleration)함수를 대입한후 리턴하는 제10 단계와; 상기 제10 단계의 판단결과 해당 하드웨어(H/W) 가속(Acceleration)이 가능하지 않으면 해당 소프트웨어(S/W) 가속(Acceleration)이 가능한지를 판단하는 제11 단계와; 상기 제11 단계의 판단결과 해당 소프트웨어(S/W) 가속(Acceleration)이 가능하지 않으면 리턴하고, 해당 소프트웨어(S/W) 가속(Acceleration)이 가능하면 해당 에뮬레이션(Emulation) 함수를 대입한후 리턴하는 제12 단계로 수행함을 특징으로 한다.
이하, 본 발명에 의한 포터블 컴퓨터의 디스플레이 성능향상방법에 대한 작용 및 효과를 첨부한 도면을 참조하여 상세히 설명한다.
도2는 본 발명 포터블 컴퓨터의 디스플레이 성능향상방법에 대한 동작흐름도로서, 이에 도시한 바와같이 비엘티(BLT) 함수 포인터에 단순 에뮬레이션(Emulation) 함수를 대입하는 제 1 단계와; 하드웨어(H/W) 가속(Acceleration)이 가능한 조건인지를 판단하는 제2 단계와; 상기 제2 단계의 판단결과 하드웨어(H/W) 가속(Acceleration)이 가능하지 않으면 리턴하고, 하드웨어(H/W) 가속(Acceleration)이 가능하면 래스터(Raster) 오퍼레이션 타입을 읽어 해당 처리루틴으로 분기하는 제3 단계와; 해당 오퍼레이션의 하드웨어(H/W) 가속(Acceleration)이 가능한지를 판단하는 제4 단계와; 상기 제4 단계의 판단결과 해당 오퍼레이션의 하드웨어(H/W) 가속(Acceleration)이 가능하지 않으면 리턴하고, 해당 오퍼레이션의 하드웨어(H/W) 가속(Acceleration)이 가능하면 하드웨어(H/W) 가속(Acceleration)의 성능이 소프트웨어(S/W) 에뮬레이션(Emulation)보다 우수한지를 판단하는 제5 단계와; 상기 제5 단계의 판단결과 하드웨어(H/W) 가속(Acceleration)의 성능이 소프트웨어(S/W) 에뮬레이션(Emulation)보다 우수하지 않으면 해당 소프트웨어(S/W)의 에뮬레이션(Emulation)이 가능한지를 판단하는 제6 단계와; 상기 제6 단계의 판단결과 해당 소프트웨어(S/W)의 에뮬레이션(Emulation)이 가능하면 해당 에뮬레이션(Emulation)함수를 대입한후 리턴하고, 해당 소프트웨어(S/W) 에뮬레이션(Emulation)이 가능하지 않으면 해당 하드웨어(H/W) 에뮬레이션(Emulation)이 가능한지를 판단하는 제7 단계와; 상기 제7 단계의 판단결과 해당 하드웨어(H/W) 에뮬레이션(Emulation)이 가능하지 않으면 리턴하고, 해당 하드웨어(H/W) 에뮬레이션(Emulation)이 가능하면 해당 가속(Acceleration)함수를 대입한후 리턴하는 제 8단계와; 상기 제5 단계의 판단결과 하드웨어(H/W) 가속(Acceleration)의 성능이 소프트웨어(S/W) 에뮬레이션(Emulation)보다 우수하면 해당 하드웨어(H/W) 가속(Acceleration)이 가능한지를 판단하는 제9 단계와; 상기 제9 단계의 판단결과 해당 하드웨어(H/W) 가속(Acceleration)이 가능하면 해당 가속(Acceleration)함수를 대입한후 리턴하는 제10 단계와; 상기 제10 단계의 판단결과 해당 하드웨어(H/W) 가속(Acceleration)이 가능하지 않으면 해당 소프트웨어(S/W) 가속(Acceleration)이 가능한지를 판단하는 제11 단계와; 상기 제11 단계의 판단결과 해당 소프트웨어(S/W) 가속(Acceleration)이 가능하지 않으면 리턴하고, 해당 소프트웨어(S/W) 가속(Acceleration)이 가능하면 해당 에뮬레이션(Emulation) 함수를 대입한후 리턴하는 제12 단계로 수행하도록 이루어지며, 이와같이 구성한 본 발명의 동작을 설명한다.
먼저, 본 발명은 운영체제와 무관하게 사용될 수 있으나 설명의 편의상 윈도즈의 인터페이스를 예를 들며, 상기 윈도즈의 그래픽 처리부는 디스플레이 드라이버에게 래스터(Raster) 오퍼레이션등을 지시할 때 우선, 비엘티(BLT)함수를 호출하여 해당 오퍼레이션 함수의 포인터를 반납받아 이 함수를 직접 호출한 뒤 비엘티(BLT) 처리함수를 호출하여 사후 처리를 하는 형태로 정형화되어 있는데, 이를 도3을 참조하여 설명한다.
먼저, 비엘티(BLT) 초기화함수가 호출되면 디스플레이 디바이스 드라이버는 언제나 조건없이 사용이 가능한 단순 에뮬레이션(Emulation) 함수를 비엘티(BLT) 함수 포인터에 대입하여 초기화되는데, 이 단순 에뮬레이션(Emulation) 함수는 에뮬레이션(Emulation) 기능만이 강조된 함수로 성능면에서는 대단히 저조하다.
그 다음, 인수로 넘겨받은 내용을 조사하여 래스터(Raster) 오퍼레이션들이 공통적으로 갖고 있는 특성을 기반으로 가속(Acceleration)이 가능한지를 전체적으로 검색한다.
만약, 가속(Acceleration)이 불가하면 단순 에뮬레이션(Emulation) 코드를 반환하고 복귀한다.
반면에, 가속(Acceleration)이 가능한 경우에는 래스터(Raster) 오퍼레이션코드를 읽어 해당 래스터(Raster) 오퍼레이션 처리 루틴으로 천이하여 각 오퍼레이션별로 해당 가속(Acceleration)이 가능한지를 개별적으로 판단하게 되는데, 즉 하드웨어(H/W) 가속(Acceleration)과 소프트웨어(S/W) 에뮬레이션(Emulation)의 사용가능성을 모두 타진하게 된다.
상기 판단결과 해당 오퍼레이션을 가속(Acceleration)할 수 없으면 단순 에뮬레이션(Emulation) 함수를 반환하고 복귀하며 반대로 가속(Acceleration)이 가능한 경우에는 하드웨어(H/W) 가속(Acceleration)을 사용할 것이지 소프트웨어(S/W) 에뮬레이션(Emulation)을 사용할 것인지를 판단하게 된다.
만약, 실제적으로 해당 오퍼레이션의 하드웨어(H/W) 가속(Acceleration)이 지원되면서 소프트웨어(S/W) 에뮬레이션(Emulation) 보다 성능이 좋고 또한 해당 하드웨어(H/W) 가속(Acceleration)에 오류가 없는 경우에 넘겨받은 인자를 점검하여 해당 하드웨어(H/W) 가속(Acceleration)이 가능한지를 판단하여 가능한 경우 넘겨받은 인자를 점검한후 해당 하드웨어(H/W) 가속(Acceleration)을 구현한 함수의 포인터를 반환하고 복귀하며, 만일 하드웨어(H/W) 가속(Acceleration)이 불가하면 소프트웨어(S/W) 에뮬레이션(Emulation)으로 대체할 수 있는 지를 역시 넘겨 받은 인자를 토대로 판단한다.
여기서, 소프트웨어(S/W) 에뮬레이션(Emulation)이 가능한 경우에는 해당 에뮬레이션(Emulation) 함수를 반환하여 복귀하고, 소프트웨어(S/W) 에뮬레이션(Emulation)이 가능하지 않은 경우에는 초기값인 단순 에뮬레이션(Emulation) 함수를 반환하여 복귀한다.
반대로, 소프트웨어(S/W) 에뮬레이션(Emulation)을 우선 적용해야 하는 경우에는 해당 오퍼레이션에 대한 소프트웨어(S/W) 에뮬레이션(Emulation)과 하드웨어(H/W) 가속(Acceleration)의 가능성을 넘겨 받은 인자를 토대로 위와 같은 방법으로 차례로 검토하여 소프트웨어(S/W) 에뮬레이션(Emulation) 함수를 반환할 것인지 하드웨어(H/W) 가속(Acceleration) 함수를 반환할 것인지 아니면 단순 에뮬레이션(Emulation) 함수를 반환할 것인지를 결정한 뒤 선택된 함수를 반환하고 나서 복귀한다.
물론, 특정 오퍼레이션에 대하여 하드웨어(H/W) 가속(Acceleration)의 성능과 소프트웨어(S/W) 에뮬레이션(Emulation)의 성능비교는 해당 시스템에 따라서 실험적으로 결정하여 판단하는데, 이를 위해서는 그래픽 조작의 소스가 되는 그래픽 표면을 기본적으로 프레임 버퍼 메모리로 할당을 하거나 또는 메인 메모리로 할당을 하는 메커니즘을 취한다.
그리고, 라인 드로잉(Line Drawing)은 오퍼레이션 코드가 따로 없으므로 라인 형태 및 그 페이스에 따라서 하드웨어(H/W)기능을 사용할 것인지 소프트웨어(S/W)기능을 사용할 것인지를 결정하고, 텍스트 에뮬레이션(Emulation)의 경우에는 대부분의 그래픽제어기가 하드웨어(H/W) 기능을 제공하지 않기 때문에 소프트웨어(S/W) 에뮬레이션(Emulation)을 바로 선택한다.
만약, 하드웨어(H/W) 가속(Acceleration) 기능과 소프트웨어(S/W) 에뮬레이션(Emulation)을 혼용하는 경우에 일반적으로 사용되는 폴링(Polling)구조는 하드웨어(H/W) 가속(Acceleration)코드를 구현한 함수에서만 고려해 주면 되는데, 그래픽 처리기에 해당 인자들을 라이트하여 오퍼레이션을 수행시킨후 그 그래픽처리기가 요구하는 구조를 폴링(Polling)하면 된다.
이상에서 상세히 설명한 바와같이 본 발명은 하드웨어(H/W) 가속(Acceleration)기법과 소프트웨어(S/W) 기법을 동적으로 선택함으로써 해당 가속(Acceleration) 기능의 없는 경우 또는 해당 하드웨어(H/W) 가속(Acceleration)기능을 사용할 수 없는 경우 또는 해당 하드웨어(H/W) 가속(Acceleration)기능의 성능이 소프트웨어(S/W) 에뮬레이션(Emulation)보다 나쁜 경우 또는 해당 하드웨어(H/W) 가속(Acceleration) 기능에 오류가 있는 경우에는 소프트웨어(S/W) 에뮬레이션(Emulation)을 선택하게 하여 성능적이 측면을 향상을 도모할 수 있는 효과가 있고, 아울러 하드웨어(H/W) 가속(Acceleration) 기능이나 소프트웨어(S/W) 에뮬레이션(Emulation) 기능을 적용하지 못하는 모든 예외 상황에서 서로 대안으로 제공될 수 있는 가능성을 높임으로써 성능적으로 현격히 낮은 단순 에뮬레이션(Emulation)의 사용을 최소화하여 그 그래픽성능을 향상시킬 수 있는 효과가 있다.

Claims (1)

  1. 비엘티(BLT) 함수 포인터에 단순 에뮬레이션(Emulation) 함수를 대입하는 제 1 단계와; 하드웨어(H/W) 가속(Acceleration)이 가능한 조건인지를 판단하는 제2 단계와; 상기 제2 단계의 판단결과 하드웨어(H/W) 가속(Acceleration)이 가능하지 않으면 리턴하고, 하드웨어(H/W) 가속(Acceleration)이 가능하면 래스터(Raster) 오퍼레이션 타입을 읽어 해당 처리루틴으로 분기하는 제3 단계와; 해당 오퍼레이션의 하드웨어(H/W) 가속(Acceleration)이 가능한지를 판단하는 제4 단계와; 상기 제4 단계의 판단결과 해당 오퍼레이션의 하드웨어(H/W) 가속(Acceleration)이 가능하지 않으면 리턴하고, 해당 오퍼레이션의 하드웨어(H/W) 가속(Acceleration)이 가능하면 하드웨어(H/W) 가속(Acceleration)의 성능이 소프트웨어(S/W) 에뮬레이션(Emulation)보다 우수한지를 판단하는 제5 단계와; 상기 제5 단계의 판단결과 하드웨어(H/W) 가속(Acceleration)의 성능이 소프트웨어(S/W) 에뮬레이션(Emulation)보다 우수하지 않으면 해당 소프트웨어(S/W)의 에뮬레이션(Emulation)이 가능한지를 판단하는 제6 단계와; 상기 제6 단계의 판단결과 해당 소프트웨어(S/W)의 에뮬레이션(Emulation)이 가능하면 해당 에뮬레이션(Emulation)함수를 대입한후 리턴하고, 해당 소프트웨어(S/W) 에뮬레이션(Emulation)이 가능하지 않으면 해당 하드웨어(H/W) 에뮬레이션(Emulation)이 가능한지를 판단하는 제7 단계와; 상기 제7 단계의 판단결과 해당 하드웨어(H/W) 에뮬레이션(Emulation)이 가능하지 않으면 리턴하고, 해당 하드웨어(H/W) 에뮬레이션(Emulation)이 가능하면 해당 가속(Acceleration)함수를 대입한후 리턴하는 제 8단계와; 상기 제5 단계의 판단결과 하드웨어(H/W) 가속(Acceleration)의 성능이 소프트웨어(S/W) 에뮬레이션(Emulation)보다 우수하면 해당 하드웨어(H/W) 가속(Acceleration)이 가능한지를 판단하는 제9 단계와; 상기 제9 단계의 판단결과 해당 하드웨어(H/W) 가속(Acceleration)이 가능하면 해당 가속(Acceleration)함수를 대입한후 리턴하는 제10 단계와; 상기 제10 단계의 판단결과 해당 하드웨어(H/W) 가속(Acceleration)이 가능하지 않으면 해당 소프트웨어(S/W) 가속(Acceleration)이 가능한지를 판단하는 제11 단계와; 상기 제11 단계의 판단결과 해당 소프트웨어(S/W) 가속(Acceleration)이 가능하지 않으면 리턴하고, 해당 소프트웨어(S/W) 가속(Acceleration)이 가능하면 해당 에뮬레이션(Emulation) 함수를 대입한후 리턴하는 제12 단계로 수행함을 특징으로 하는 휴대용 컴퓨터의 디스플레이 성능 향상방법.
KR1019980048760A 1998-11-13 1998-11-13 휴대용 컴퓨터의 디스플레이 성능 향상방법 KR20000032335A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980048760A KR20000032335A (ko) 1998-11-13 1998-11-13 휴대용 컴퓨터의 디스플레이 성능 향상방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980048760A KR20000032335A (ko) 1998-11-13 1998-11-13 휴대용 컴퓨터의 디스플레이 성능 향상방법

Publications (1)

Publication Number Publication Date
KR20000032335A true KR20000032335A (ko) 2000-06-15

Family

ID=19558270

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980048760A KR20000032335A (ko) 1998-11-13 1998-11-13 휴대용 컴퓨터의 디스플레이 성능 향상방법

Country Status (1)

Country Link
KR (1) KR20000032335A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100660295B1 (ko) * 2005-02-03 2006-12-20 에스케이 텔레콤주식회사 이동통신 단말기에 있어서의 폰트 가속 시스템 및 그 방법
US9223581B2 (en) 2011-08-30 2015-12-29 Samsung Electronics Co., Ltd. Data processing system and method for switching between heterogeneous accelerators

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100660295B1 (ko) * 2005-02-03 2006-12-20 에스케이 텔레콤주식회사 이동통신 단말기에 있어서의 폰트 가속 시스템 및 그 방법
US9223581B2 (en) 2011-08-30 2015-12-29 Samsung Electronics Co., Ltd. Data processing system and method for switching between heterogeneous accelerators

Similar Documents

Publication Publication Date Title
US6990662B2 (en) Method and system for offloading execution and resources for resource-constrained networked devices
JP2590267B2 (ja) 仮想計算機における表示制御方式
KR100733852B1 (ko) 계산기 시스템
US8261064B2 (en) Integrated secure and non-secure display for a handheld communications device
US10255088B2 (en) Modification of write-protected memory using code patching
US5600790A (en) Method and system for loading and confirming correct operation of an application program in a target system
US5757925A (en) Secure platform independent cross-platform remote execution computer system and method
US5812864A (en) Personal computer/host emulation system for handling host data with personal computer application programs at personal computers
US6351779B1 (en) Extension library to standard visa library for support of complex I/O functions
JPH08502841A (ja) 分散適用業務処理ネットワーク
US7966467B1 (en) Secure memory access system and method
US20040254979A1 (en) Mechanism for supporting browser navigation while preserving important application return states
EP1667019A2 (en) Improving operating system performance
KR20000032335A (ko) 휴대용 컴퓨터의 디스플레이 성능 향상방법
US6292866B1 (en) Processor
US6831660B1 (en) Method and apparatus for graphics window clipping management in a data processing system
US6601122B1 (en) Exceptions and interrupts with dynamic priority and vector routing
US5958022A (en) System and method for I/O access mode selection
US20040135785A1 (en) Data processing path selection method and graphics processing system utilizing the same
US20240111369A1 (en) Information handling system and kvm display automated configuration
KR100465913B1 (ko) 보조프로세서를 이용한 멀티미디어 처리를 위한 가속장치
US7039798B2 (en) Method and apparatus to enable cross platform configuration
KR100216075B1 (ko) 클라이언트-서버 환경에서 lbx 프로토콜을 이용한 지리정보 처리 방법
KR20030030469A (ko) 유에스비 장치 구동 방법 및 이 구동 방법을 사용하는내장형 시스템
Mao et al. Architecture of the simplified Chinese embedded system STARTH

Legal Events

Date Code Title Description
N231 Notification of change of applicant
WITN Withdrawal due to no request for examination