Operating Systems Mechanisms For Continuous Media

Ramesh Govindan

EECS Department
University of California, Berkeley
Technical Report No. UCB/CSD-92-697
July 1992

http://www2.eecs.berkeley.edu/Pubs/TechRpts/1992/CSD-92-697.pdf

Support for digital audio and video (continuous media) as part of the human/computer interface is an important direction for computer systems research. There are various ways to incorporate continuous media (CM) in computer systems; in the integrated approach, CM data is handled by user-level programs on general-purpose operating systems such as Unix or Mach.

Integrated CM applications handle data at high rates, with strict timing requirements and often in small "chunks". Conventional operating systems support for program execution and local communication may be non-optimal for such applications. In particular, conventional mechanisms for process scheduling and inter address space communication can add significant overhead for some CM programs. User/kernel interactions, by which user-level programs invoke system functions, are partly responsible for this overhead.

We describe new mechanisms for process scheduling and CM stream communication between virtual address spaces. These mechanisms, split-level scheduling and memory-mapped streams, reduce or eliminate user/kernel interactions by using user/kernel shared memory for exchanging scheduling and communication information. We demonstrate that, compared with conventional mechanisms for process scheduling and stream communication, these new mechanisms can reduce overhead by up to a factor of four.

Advisor: David A. Anderson


BibTeX citation:

@phdthesis{Govindan:CSD-92-697,
    Author = {Govindan, Ramesh},
    Title = {Operating Systems Mechanisms For Continuous Media},
    School = {EECS Department, University of California, Berkeley},
    Year = {1992},
    Month = {Jul},
    URL = {http://www2.eecs.berkeley.edu/Pubs/TechRpts/1992/6249.html},
    Number = {UCB/CSD-92-697},
    Abstract = {Support for digital audio and video (continuous media) as part of the human/computer interface is an important direction for computer systems research. There are various ways to incorporate continuous media (CM) in computer systems; in the integrated approach, CM data is handled by user-level programs on general-purpose operating systems such as Unix or Mach. <p>Integrated CM applications handle data at high rates, with strict timing requirements and often in small "chunks". Conventional operating systems support for program execution and local communication may be non-optimal for such applications. In particular, conventional mechanisms for process scheduling and inter address space communication can add significant overhead for some CM programs. User/kernel interactions, by which user-level programs invoke system functions, are partly responsible for this overhead. <p>We describe new mechanisms for process scheduling and CM stream communication between virtual address spaces. These mechanisms, split-level scheduling and memory-mapped streams, reduce or eliminate user/kernel interactions by using user/kernel shared memory for exchanging scheduling and communication information. We demonstrate that, compared with conventional mechanisms for process scheduling and stream communication, these new mechanisms can reduce overhead by up to a factor of four.}
}

EndNote citation:

%0 Thesis
%A Govindan, Ramesh
%T Operating Systems Mechanisms For Continuous Media
%I EECS Department, University of California, Berkeley
%D 1992
%@ UCB/CSD-92-697
%U http://www2.eecs.berkeley.edu/Pubs/TechRpts/1992/6249.html
%F Govindan:CSD-92-697