make money online Multimedia: Demands of Multimedia Applications on Processor Scheduling

Friday, January 8, 2010

Demands of Multimedia Applications on Processor Scheduling

To understand the requirements imposed by multimedia applications on processor scheduling, we first describe the salient features of these applications and their special demands that distinguish them from the conventional (nonreal- time) applications that current operating systems are designed for:

—Soft real-time constraints.

Real-time applications have application-specific timing requirements that need to be met [Northcutt 1987]. For example in the case of video, time constraints arise due to the need to display video in a smooth and synchronized way, often synchronized with audio. Time constraints may be periodic or aperiodic in nature. Unlike conventional applications,
tardy results are often of little value; it is often preferable to skip a computation than to execute it late. Unlike hard real-time environments, missing a deadline only diminishes the quality of the results and does not lead to catastrophic failures.

—High resource demands and frequent overload.

Multimedia applications can present very high demands for resources. Today, video applications are often limited to simple VCR-like functions as opposed to delivering richer video processing functionality, and video playback windows are often tiny at full display rate because of computing resources insufficient to keep up with high fidelity resolution. Since applications such as real-time video are highly resource intensive and can consume the resources of an entire machine, resources are commonly overloaded, with resource demand often exceeding its
availability.

—Dynamically adaptive applications.

When resources are overloaded and not all time constraints can be met, multimedia applications are often able to adapt and degrade gracefully by offering a different quality of service
. For example, a video application may choose to skip some frames or display at a lower image quality when not all frames can be processed in time. Because not all multimedia applications
are written with adaptive capabilities, adaptive and non-adaptive multimedia applications must be able to co-exist.

—Co-existence with conventional computations.

Real-time applications must share the desktop with already existing conventional applications, such as word processors, compilers, and so on. Real-time tasks should not always be
allowed to run in preference to all other tasks because they may starve out important conventional activities, such as those required to keep the system running. Moreover, users would like to be able to combine real-time and conventional computations in new applications, such as multimedia documents, which mix text and graphics as well as audio and video. In no way should the capabilities of a multiprogrammed workstation be reduced to a single function
commodity television set in order to meet the demands of multimedia applications.

—Dynamic environment.

Unlike static embedded real-time environments, workstation users run an often changing mix of applications, resulting in dynamically varying loads.

—User preferences.

Different users may have different preferences, for example, in regard to trading off the speed of a compilation versus the display quality of a video, depending on whether the video is part of an important teleconferencing session or just a television show being watched while waiting for an important computational application to complete.