Multimedia Synchronization and UNIX

One of the most important emerging developments for improving the user/computer interface has been the addition of multimedia facilities to high-performance workstations. Although the mention of multimedia I/O often conjures up visions of moving images, talking text and electronic music, multimedia I/O is not synonymous with interface bells and whistles. Instead, multimedia should be synonymous with the synchronization of bells and whistles so that application programs can integrate data from a broad spectrum of independent sources (including those with strict timing requirements). This paper considers the role of the operating system (in general) and UNIX (in particular) in supporting multimedia synchronization. The first section reviews the requirements and characteristics that are inherent to the problem of synchronizing a number of otherwise autonomous data sets. We then consider the ability of UNIX to support decentralized data and complex data synchronization requirements. While our conclusions on the viability of UNIX for supporting generalized multimedia are not optimistic, we offer an approach to solving some of the synchronization problems of multimedia I/O without losing the benefits of a standard UNIX environment. The basis of our approach is to integrate a distributed operating system kernel as a multimedia co-processor. This co-processor is a programmable device that can implement synchronization relationships in a manner that decouples I/O management from (user) process support. The principal benefit of this approach is that it integrates the potential of distributed I/O support with the standardization provided by a “real” UNIX kernel.