22C:116, Lecture 22, Spring 2002

Douglas W. Jones
University of Iowa Department of Computer Science

  1. Multimedia Systems

    Multimedia operating systems are characterized by two key elements:

    Very large files
    The digitized waveforms of a quadraphonic recording of a symphony or the digitized image sequence of a motion picture are huge! Classical file systems that assume modest file sizes cannot accomodate these. In Multics, it was assumed that an open file would be no larger than one segment of the virtual memory. In UNIX, the classic file system assumed that the file size was no greater than what could be addressed by one long-word -- because lseek uses longword to index any byte of the file.

    Hard real-time response requirements
    The human ear is sensitive to very small timing errors in the playback of recorded sound. Given a recording of a periodic train of clicks where one click is offset from its expected time by a few milliseconds, many people will notice! In continuous playback of recorded of sound, a delay of a millisecond in playing a segment of the recording will produce an audible pop. The eye is not as sensitive! Timing errors in display of a movie frame of 20 milliseconds may occasionally pass unnoticed, but this is still far from the 100 millisecond delay that tradition considers acceptable in human-computer interaction.

    Neither of these is unique to multimedia systems. Large database systems frequently have similarly huge files, and real-time control systems frequently have timing constraints that are just as strict. What is new is the simultaneous need for both. Database systems rarely have serious real-time constraints. Most real-time applications have very light computational requirements and very small files, if any. Multimedia systems must incorporate both.

  2. Real-Time Scheduling

    Hard real-time systems are defined as those where a failure to meet a specific timing constraint is considered a failure of the system. Soft real-time systems are those where there are timing constraints but it is permissable for the system to miss some of them some of the time.

    Multimedia systems are soft, in the sense that missing a real-time constraint does not cause any damage. On the other hand, if a customer is looking for a DVD player, and finds one that skips periodically, with flickering display and pops and static in the sound, it won't sell. Therefore, from the manufacturer's point of view, we may as well view multimedia systems as hard real-time systems.