WO2005010854A2 - Method for sharing a graphics display as a resource in an embedded system - Google Patents
Method for sharing a graphics display as a resource in an embedded system Download PDFInfo
- Publication number
- WO2005010854A2 WO2005010854A2 PCT/US2004/023300 US2004023300W WO2005010854A2 WO 2005010854 A2 WO2005010854 A2 WO 2005010854A2 US 2004023300 W US2004023300 W US 2004023300W WO 2005010854 A2 WO2005010854 A2 WO 2005010854A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- application
- screen display
- graphics
- embedded system
- resource manager
- Prior art date
- Legal status (The legal status 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 status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- 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/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/451—Execution arrangements for user interfaces
-
- 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/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
Definitions
- This invention pertains generally to graphics displays, and more particularly to systems for managing application program access to graphics displays.
- a graphics (e.g., video) display device used in an embedded system is an important resource for applications running on the embedded system. Often, two or more application programs in the embedded system compete for access to this resource.
- GUI graphical user interface
- one approach is to include a window management system such as "X window” or "Qt Embedded” from TrollTech Corp. In this approach, the window management system "owns” the screen display as a resource and any application wishing to display a GUI must use the application program interface (API) libraries the window manager provides.
- API application program interface
- a second approach for managing a screen display currently in use includes having one master application, such as a web browser, that has complete control of the screen display.
- all other applications such as an embedded device control application, an e-mail application, etc., are written as "plug-in" software to the web browser.
- the screen display resource is the web browser and all applications are written as browser add-ons. As such, instead of having a set of independent applications, all applications are combined into one large application.
- each application program has full "ownership" of the graphics display device and is not constrained by a predefined Application Program Interface (API).
- API Application Program Interface
- each application program that uses a graphical user interface (GUI) or the like informs the background GRM task that it is finished when it exits or suspends.
- GUI graphical user interface
- an application program is not allowed to invoke another application that would be a separate process that would independently seek to use the frame buffer.
- the information communicated to the GRM task may also include a request for a new application program to be brought up or for any graphics related display to be discontinued until requested again by the user.
- the embedded system includes programming for managing access to the graphics display by the application programs. For example, a first application program can be selected via an on-screen display (OSD) that displays a main menu which provides an interface to the user. When the first application is exited, a message is sent to the GRM that the first application has been exited and the GRM can, again, display the main menu. Thereafter, a second application can be selected using the main menu.
- OSD on-screen display
- the embedded system resides in a television which functions as the graphic display device and multiple applications programs, as well as the GRM, reside within the embedded system.
- the GRM allows access to the graphics display by one and only one application within the embedded system at a time.
- television content can then be displayed.
- the method includes providing an OSD. Multiple applications are provided and access is allowed to the graphics display by one and only one application at a time.
- FIG. 1 is a block diagram of an embodiment of a system for managing a graphics screen display according to the present invention which is incorporated into a television.
- FIG. 2 is a flow chart of a method for managing a graphics screen display according to the present invention.
- FIG. 3 is a second flow chart of a method for managing a graphics screen display according to the present invention. DETAILED DESCRIPTION OF THE INVENTION [0015] Referring more specifically to the drawings, for illustrative purposes the present invention will now be described with reference to the system generally shown in FIG. 1 and the method(s) generally shown in FIG. 2 and FIG. 3.
- FIG. 1 shows an embodiment of a system, generally designated 10, for managing a graphics display according to the present invention.
- the system 10 includes a television 12 which provides the graphics display device.
- the invention is not limited to use in connection with a television but can be used in connection with other video display devices. Use of the invention in connection with a television is intended to illustrate the features and configuration of the invention.
- an embedded system 14 is installed within the television 12.
- FIG. 1 shows a graphics resource manager program (GRM) 16, described in detail below, that would be executable by the embedded system 14 in accordance with the present invention and communicate with the graphics display (e.g., television 12) to provide an on- screen display (OSD) 18 for function selection.
- GMM graphics resource manager program
- OSD on- screen display
- a main menu application or the like creates pixel data used to represent the OSD 18 and the pixel data used to represent OSD 18 is stored in a frame buffer 20 but other means such as a dedicated region of memory may be employed as well.
- the GRM 16 can also communicate with a plurality of application programs, shown here by way of example as a first application program 22, a second application program 24, a third application program 26, and a fourth application program 28 which is the main menu application program.
- application programs 22, 24, 26, 28 can be web browsers, games, programming applications, etc.
- more or less than four application programs can communicate with the GRM 16 within the embedded system 14.
- FIG. 1 further shows a remote control 30 that communicates with the television 12.
- the remote control 30 can be used to access the embedded system 14 within the television 12 and further cause the application programs 22, 24, 26, 28 within the embedded system 14 to be executed serially.
- the GRM 16 can include an interface with to the remote control 30 that can be used when the OSD 18 is "off".
- the GRM 16 is a relatively small background task running within the embedded system 14. The GRM 16 can be used to coordinate between the independently executable application programs 22, 24, 26 according to their selection through the main menu that is presented by main menu application program 28.
- each application program 22, 24, 26, 28 has full "ownership" of the graphics display and is not constrained by a predefined application program interface (API). Moreover, each application program 22, 24, 26, 28 can simply inform the GRM 16 that it is finished with the graphics display when it exits or suspends, so as to release the graphics display for access by another application program.
- FIG. 1 shows the GRM 16 interacting with the OSD 18 and four application programs 22, 24, 26, 28.
- the system 10 runs serially.
- only one application program 22, 24, 26, 28 can access the graphic display device at a time.
- an application program cannot invoke another application that would independently seek to use the graphics display; accordingly, the application programs do not compete with each other for access to the graphics display.
- the information communicated to the GRM 16 can also include a request for a new application to be brought up or for any graphics related display to be discontinued until requested again by the user.
- the OSD 18 can be stored within the frame buffer 20, such as a standard frame buffer provided by Linux.
- the frame buffer 20 can be opened and addressed by a single application program at a time.
- the GRM 16 can be used to coordinate which application has been granted use of the frame buffer 20 at any given time.
- the product domain is an embedded system where all applications are provided by the developer of the embedded system. Given this, the application programs 22, 24, 26, 28 can be tailored to interact as needed with the GRM 16 as it coordinates access to the frame buffer 20.
- the present invention can utilize a frame buffer 20, it can be appreciated that other means can be used.
- a dedicated region of memory for a device display can be used.
- some embedded systems do not use the "frame buffer model" for graphics display; instead, they have an agreed upon region of memory where anything written to that region appears on the display.
- the GRM of the present invention can coordinate which application is assigned to which graphics overlay plane.
- a unique GRM can be provided for each graphics overlay plane. In such a system, a unique subset of applications can be assigned to each GRM. In this way, selecting to view an application such as e-mail would not be ambiguous to the system.
- this invention can also be used to coordinate which application has access to the system audio capabilities.
- the GRM 16 provided by the present invention can be used with set top boxes, GPS handhelds, and other devices that have or interface with a display.
- FIG. 2 an embodiment of the operating logic according to the present invention is shown. It will be appreciated that this logic would be implemented in software and/or firmware using conventional programming techniques, that is executable by the embedded system.
- the logic commences at block 50 with a do loop, wherein when it is selected to display the GUI, such as the main menu, the following steps are performed.
- the main menu application program is started. Once the main menu application program is started, a user has several options.
- a message is sent to the GRM 16 to start the second application program. Thereafter, when the user decides to exit the second application program at block 72, the logic proceeds to block 74, where the second application program is exited. At block 76, the GRM 16 is informed that the second application has been exited. The logic then returns to block 52 and the main menu application program is, again, started. [0029] From block 52, the logic can move to block 78 wherein when the user decides to exit the main menu, the logic moves to block 80 and the main menu application program is exited. At block 82, a message is sent to the GRM 16 to suspend the graphics display, e.g., the main menu. Thereafter, at block 84, TV content can be displayed.
- the applications can be, for example, web browsers, games, etc.
- the applications can be, for example, web browsers, games, etc.
- a user can access a web browser via the main menu and then, once the user quits the web browser the main menu is again presented.
- a user can then access a game via the main menu.
- the GRM 16 prevents the graphics display from being accessed by more than one application program at a time.
- the GRM 16 is in charge of creating application processes as called for and monitoring those processes for error conditions (e.g. abnormal child process termination).
- the GRM 16 can include code that can handle such a situation should it occur.
- the GRM 16 can, if needed, start processes with a given set of parameters or pass information to them as part of their initialization.
- the GRM 16 can also receive information from an application as it exits, such as a user request for a particular action or the initiation of another application.
- the GRM 16 can contain a state table, or some other algorithm, to determine what action to take based on the information returned from an application when it exits. It is to be understood that the GRM 16 would typically not exit, as in end the process, but suspend itself while the applications are running.
- the GRM 16 can be resident in memory and ready to go when the called for application exits.
- one or more selected applications may not exit but release resources and suspend processing until needed again.
- one such process can be the OSD 18 main menu display.
- the user selects to display the GUI using a television remote control at block 100.
- the GRM starts the main menu application program at block 102.
- the user selects for example web browsing on the main menu.
- the main menu application program then exits with a message to the GRM to bring up the web browser, and the GRM brings up the web browser at block 106.
- the web browser informs the GRM that its session has been completed.
- the GRM starts the main menu application program.
- the user selects, for example, playing a game on the main menu.
- the main menu application program then exits with a message to the GRM to bring up the game and the GRM starts the selected game at block 114.
- the game informs the GRM that it has finished.
- the GRM starts the OSD application. If the user is finished with selecting embedded applications, at block 120 the user selects to exit the main menu application program and, for example, resume watching television.
- the main menu application program exits with a message to the GRM to suspend graphics display until requested again by the user.
- the description above contains many details, these should not be construed as limiting the scope of the invention but as merely providing illustrations of some of the presently preferred embodiments of this invention.
- the invention is preferably implemented using software, and that the software can be coded using conventional programming techniques in accordance with the description above.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- User Interface Of Digital Computer (AREA)
- Digital Computer Display Output (AREA)
- Stored Programmes (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
Description
Claims
Priority Applications (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CA2532470A CA2532470C (en) | 2003-07-21 | 2004-07-20 | Method for sharing a graphics display as a resource in an embedded system |
| EP04778680.1A EP1647142B1 (en) | 2003-07-21 | 2004-07-20 | Method for sharing a graphics display as a resource in an embedded system |
| CN2004800266103A CN1853412B (en) | 2003-07-21 | 2004-07-20 | Method for sharing graphic display as resource in embedded system |
| JP2006521186A JP2006528810A (en) | 2003-07-21 | 2004-07-20 | Display management apparatus and management method |
| KR1020067001377A KR101166936B1 (en) | 2003-07-21 | 2004-07-20 | Method for sharing a graphics display as a resource in an embedded system |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US10/624,821 US6947048B2 (en) | 2003-07-21 | 2003-07-21 | Method for sharing a graphics display as a resource in an embedded system |
| US10/624,821 | 2003-07-21 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2005010854A2 true WO2005010854A2 (en) | 2005-02-03 |
| WO2005010854A3 WO2005010854A3 (en) | 2006-01-12 |
Family
ID=34080091
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2004/023300 Ceased WO2005010854A2 (en) | 2003-07-21 | 2004-07-20 | Method for sharing a graphics display as a resource in an embedded system |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US6947048B2 (en) |
| EP (1) | EP1647142B1 (en) |
| JP (1) | JP2006528810A (en) |
| KR (1) | KR101166936B1 (en) |
| CN (1) | CN1853412B (en) |
| CA (1) | CA2532470C (en) |
| WO (1) | WO2005010854A2 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100902982B1 (en) | 2005-06-10 | 2009-06-15 | 엔비디아 코포레이션 | Using a graphics system to enable a multi-user computer system |
| US10026140B2 (en) | 2005-06-10 | 2018-07-17 | Nvidia Corporation | Using a scalable graphics system to enable a general-purpose multi-user computer system |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080098452A1 (en) * | 2006-10-18 | 2008-04-24 | Hardacker Robert L | TV-centric system |
| US20080120682A1 (en) * | 2006-11-17 | 2008-05-22 | Robert Hardacker | TV-centric system |
| US20080229370A1 (en) * | 2007-03-13 | 2008-09-18 | Zustak Frederick J | TV-centric system |
| FR2919084A1 (en) * | 2007-07-17 | 2009-01-23 | Open Plug Sa | METHOD FOR MANAGING SHARED RESOURCES OF A COMPUTER SYSTEM AND SUPERVISOR MODULE FOR IMPLEMENTATION, AND COMPUTER SYSTEM COMPRISING SUCH A MODULE |
| CN102138132A (en) * | 2008-09-01 | 2011-07-27 | 三菱数字电子美国公司 | Systems and methods for enhanced television viewing |
| US10748233B2 (en) * | 2011-06-14 | 2020-08-18 | Intel Corporation | Full screen processing in multi-application environments |
| CN102523488A (en) * | 2011-12-27 | 2012-06-27 | 上海全景数字技术有限公司 | Digital television monitoring system |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2001084824A2 (en) | 2000-05-03 | 2001-11-08 | Worldgate Service, Inc. | Television terminal for processing and controlling memory resources for plural applications |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0786839B2 (en) * | 1990-02-13 | 1995-09-20 | インターナショナル・ビジネス・マシーンズ・コーポレイション | Multitask data processing system |
| US6202212B1 (en) * | 1997-04-01 | 2001-03-13 | Compaq Computer Corporation | System for changing modalities |
| JPH1173290A (en) * | 1997-07-03 | 1999-03-16 | Funai Electric Co Ltd | Menu display device |
| WO2001004743A2 (en) | 1999-07-13 | 2001-01-18 | Sun Microsystems, Inc. | Methods and apparatus for managing an application according to an application lifecycle |
| AU2001253702A1 (en) * | 2000-04-19 | 2001-10-30 | Broadcom Corporation | Apparatus and method for persistent display interface |
| US7058964B2 (en) * | 2002-12-03 | 2006-06-06 | Matsushita Electric Industrial Co., Ltd. | Flexible digital cable network architecture |
-
2003
- 2003-07-21 US US10/624,821 patent/US6947048B2/en not_active Expired - Lifetime
-
2004
- 2004-07-20 WO PCT/US2004/023300 patent/WO2005010854A2/en not_active Ceased
- 2004-07-20 CN CN2004800266103A patent/CN1853412B/en not_active Expired - Lifetime
- 2004-07-20 KR KR1020067001377A patent/KR101166936B1/en not_active Expired - Lifetime
- 2004-07-20 JP JP2006521186A patent/JP2006528810A/en active Pending
- 2004-07-20 EP EP04778680.1A patent/EP1647142B1/en not_active Expired - Lifetime
- 2004-07-20 CA CA2532470A patent/CA2532470C/en not_active Expired - Lifetime
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2001084824A2 (en) | 2000-05-03 | 2001-11-08 | Worldgate Service, Inc. | Television terminal for processing and controlling memory resources for plural applications |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP1647142A4 |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100902982B1 (en) | 2005-06-10 | 2009-06-15 | 엔비디아 코포레이션 | Using a graphics system to enable a multi-user computer system |
| KR100934308B1 (en) * | 2005-06-10 | 2009-12-29 | 엔비디아 코포레이션 | Enabling Multi-User Computer Systems Using Graphic Systems |
| US8893016B2 (en) | 2005-06-10 | 2014-11-18 | Nvidia Corporation | Using a graphics system to enable a multi-user computer system |
| US10026140B2 (en) | 2005-06-10 | 2018-07-17 | Nvidia Corporation | Using a scalable graphics system to enable a general-purpose multi-user computer system |
Also Published As
| Publication number | Publication date |
|---|---|
| CN1853412A (en) | 2006-10-25 |
| EP1647142B1 (en) | 2014-09-03 |
| JP2006528810A (en) | 2006-12-21 |
| EP1647142A4 (en) | 2006-11-15 |
| EP1647142A2 (en) | 2006-04-19 |
| KR101166936B1 (en) | 2012-07-19 |
| CN1853412B (en) | 2010-09-29 |
| CA2532470A1 (en) | 2005-02-03 |
| US6947048B2 (en) | 2005-09-20 |
| US20050018078A1 (en) | 2005-01-27 |
| WO2005010854A3 (en) | 2006-01-12 |
| CA2532470C (en) | 2012-09-11 |
| KR20060063904A (en) | 2006-06-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP3215938B1 (en) | System and method for fast starting an application | |
| AU781357B2 (en) | Methods and apparatus for managing an application according to an application lifecycle | |
| US9696888B2 (en) | Application-launching interface for multiple modes | |
| EP3691255B1 (en) | Method for playing multiple videos on mobile terminal, mobile terminal, and readable storage medium | |
| CN113141529B (en) | Display device and media resource playback method | |
| US20040100504A1 (en) | Item selection systems and methods of displaying the same | |
| CN113507646B (en) | Display equipment and browser multi-label page media resource playing method | |
| CA2532470C (en) | Method for sharing a graphics display as a resource in an embedded system | |
| WO2014178898A1 (en) | Second screen view with multitasking | |
| CN111597021A (en) | Method, device and system for realizing application program operation and related equipment | |
| CN103379385B (en) | The control method of intelligent television and operating system | |
| CN113885946B (en) | Device configuration method, device, electronic device, and machine-readable storage medium | |
| CN113473220B (en) | A sound effect automatic start method and display device | |
| CN117806752A (en) | Terminal operation data display system and method, storage medium and computer equipment | |
| CN112584210A (en) | Display device, video recording method and recorded file display method | |
| CN116233514B (en) | A method for switching display devices and homepage interfaces | |
| CN113378096B (en) | Display equipment and browser residual frame clearing method | |
| CN118317136A (en) | A display device and a display method for an application startup page | |
| CN121865023A (en) | Display apparatus | |
| CN117651190A (en) | Display device, image display control method, and storage medium | |
| CN121728297A (en) | Display device and view control method of display device | |
| CN116614663A (en) | Method for realizing false standby and display device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WWE | Wipo information: entry into national phase |
Ref document number: 200480026610.3 Country of ref document: CN |
|
| AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW |
|
| AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
| ENP | Entry into the national phase |
Ref document number: 2532470 Country of ref document: CA |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2004778680 Country of ref document: EP |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 1020067001377 Country of ref document: KR |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2006521186 Country of ref document: JP |
|
| WWP | Wipo information: published in national office |
Ref document number: 2004778680 Country of ref document: EP |
|
| WWP | Wipo information: published in national office |
Ref document number: 1020067001377 Country of ref document: KR |