scispace - formally typeset
Search or ask a question
Author

Robert P Fitzgerald

Other affiliations: Carnegie Mellon University
Bio: Robert P Fitzgerald is an academic researcher from Microsoft. The author has contributed to research in topics: Scheduling (computing) & Formal specification. The author has an hindex of 6, co-authored 10 publications receiving 426 citations. Previous affiliations of Robert P Fitzgerald include Carnegie Mellon University.

Papers
More filters
Patent
30 Nov 1993
TL;DR: In this article, a scalable method and system for easily scheduling data transfer for a video-on-demand server system is provided, where a strategy for locating available bandwidth and allocating available bandwidth to subscribers as needed is provided.
Abstract: A scalable method and system for easily scheduling data transfer for a video-on-demand server system is provided. A strategy for locating available bandwidth and allocating available bandwidth to subscribers as needed is provided. The input/output bandwidth of storage devices that store data for video image sequences is modelled as a series of bandwidth units. Each bandwidth unit has sufficient capacity to service an individual subscriber during a scheduling cycle. Video image sequences or other data sequences are striped across storage devices such that data for a data sequence is forwarded to the subscriber by reading from a sequence of storage devices in consecutive time frames.

167 citations

Journal ArticleDOI
TL;DR: The integration of virtual memory management and interprocess communication in the Accent network operating system kernel is examined and its performance, both on a series of message-oriented benchmarks and in normal operation, is analyzed in detail.
Abstract: The integration of virtual memory management and interprocess communication in the Accent network operating system kernel is examined. The design and implementation of the Accent memory management system is discussed and its performance, both on a series of message-oriented benchmarks and in normal operation, is analyzed in detail.

122 citations

Patent
25 Jul 1994
TL;DR: In this paper, an ATM switch is used to combine blocks of data from multiple data servers into a single continuous data stream, which is especially well adapted for use in a video-on-demand environment.
Abstract: An ATM switch is used to combine blocks of data from multiple data servers into a single continuous data stream. The ATM switch is especially well adapted for use in a video-on-demand environment. Blocks of data may be striped across the data servers so that they are output from respective data servers in sequence. Transmission of data from the data servers to the ATM switch is scheduled so that the blocks of data are output in sequence without undue delay between the transmission of blocks of data from the servers. Synchronizing tokens are provided to the data servers to specify that they are to output data of a given sequence and to direct the sequence to a given virtual channel. As a result, the system of this invention appears to output single continuous data streams from the output ports of the ATM switch.

97 citations

Patent
18 Nov 1994
TL;DR: In this paper, a scalable method and system for easily scheduling data transfer or a video-on-demand server system is provided, where a strategy for locating available bandwidth and allocating available bandwidth to subscribers as needed is provided.
Abstract: A scalable method and system for easily scheduling data transfer or a a video-on-demand server system is provided. A strategy for locating available bandwidth and allocating available bandwidth to subscribers as needed is provided. The input/output bandwidth of storage devices that store data for video image sequences is modelled as a series of bandwidth units. Each bandwidth unit has sufficient capacity to service an individual subscriber during a scheduling cycle. Video image sequences or other data sequences are striped across storage devices such that data for a data sequence is forwarded to the subscriber by reading from a sequence of storage devices in consecutive time frames.

13 citations

ReportDOI
01 Feb 1978
TL;DR: The present report is a complete informal definition of Alphard that both simplifies and unifies the language.
Abstract: : The Alphard language design has four major goals: (1) to support modern programming methodology, (2) to permit practical program verification, (3) to permit extremely efficient object code to be produced, and (4) to permit the programmer to control certain implementation decisions -- such as the representation of data structures. Previous Alphard papers have explored aspects of these issues as they relate to particular language features; to facilitate these explorations these papers used a different syntax for the language. The present report is a complete informal definition of Alphard that both simplifies and unifies the language. (Author)

7 citations


Cited by
More filters
Patent
21 Dec 1998
TL;DR: In this article, the data is divided into segments and each segment is distributed randomly on one of several storage units, independent of the storage units on which other segments of the media data are stored.
Abstract: Multiple applications request data from multiple storage units over a computer network. The data is divided into segments and each segment is distributed randomly on one of several storage units, independent of the storage units on which other segments of the media data are stored. At least one additional copy of each segment also is distributed randomly over the storage units, such that each segment is stored on at least two storage units. This random distribution of multiple copies of segments of data improves both scalability and reliability. When an application requests a selected segment of data, the request is processed by the storage unit with the shortest queue of requests. Random fluctuations in the load applied by multiple applications on multiple storage units are balanced nearly equally over all of the storage units. This combination of techniques results in a system which can transfer multiple, independent high-bandwidth streams of data in a scalable manner in both directions between multiple applications and multiple storage units.

1,427 citations

Book
30 Jan 2009
TL;DR: What constitutes a distributed operating system and how it is distinguished from a computer network are discussed, and several examples of current research projects are examined in some detail.
Abstract: Distributed operating systems have many aspects in common with centralized ones, but they also differ in certain ways This paper is intended as an introduction to distributed operating systems, and especially to current university research about them After a discussion of what constitutes a distributed operating system and how it is distinguished from a computer network, various key design issues are discussed Then several examples of current research projects are examined in some detail, namely, the Cambridge Distributed Computing System, Amoeba, V, and Eden

1,327 citations

Patent
14 May 2002
TL;DR: In this article, the data is divided into segments and each segment is distributed randomly on one of several storage units, independent of the storage units on which other segments of the media data are stored.
Abstract: Multiple applications request data from multiple storage units over a computer network. The data is divided into segments and each segment is distributed randomly on one of several storage units, independent of the storage units on which other segments of the media data are stored. Redundancy information corresponding to each segment also is distributed randomly over the storage units. The redundancy information for a segment may be a copy of the segment, such that each segment is stored on at least two storage units. The redundancy information also may be based on two or more segments. This random distribution of segments of data and corresponding redundancy information improves both scalability and reliability. When a storage unit fails, its load is distributed evenly over to remaining storage units and its lost data may be recovered because of the redundancy information. When an application requests a selected segment of data, the request may be processed by the storage unit with the shortest queue of requests. Random fluctuations in the load applied by multiple applications on multiple storage units are balanced nearly equally over all of the storage units. Small data files also may be stored on storage units that combine small files into larger segments of data using a log structured file system. This combination of techniques results in a system which can transfer both multiple, independent high-bandwidth streams of data and small data files in a scalable manner in both directions between multiple applications and multiple storage units.

1,195 citations

Journal ArticleDOI
TL;DR: Both theoretical and practical results show that the memory coherence problem can indeed be solved efficiently on a loosely coupled multiprocessor.
Abstract: The memory coherence problem in designing and implementing a shared virtual memory on loosely coupled multiprocessors is studied in depth. Two classes of algorithms, centralized and distributed, for solving the problem are presented. A prototype shared virtual memory on an Apollo ring based on these algorithms has been implemented. Both theoretical and practical results show that the memory coherence problem can indeed be solved efficiently on a loosely coupled multiprocessor.

1,139 citations

Patent
02 Dec 1993
TL;DR: In this article, a network controller for use with a digital cable headend capable of monitoring and controlling set top terminals in a television program delivery system is described, which is particularly useful in program delivery systems with hundreds of channels of programming, a menu driven program selection system, and a program control information signal that carries data and identifies available program choices.
Abstract: A novel network controller for use with a digital cable headend capable of monitoring and controlling set top terminals in a television program delivery system is described. The invention relates to methods and apparatus for a network controller that manages a configuration of set top terminals in a program delivery system. The invention is particularly useful in program delivery systems with hundreds of channels of programming, a menu driven program selection system, and a program control information signal that carries data and identifies available program choices. Specifically, the invention modifies a program control information signal at the cable headend before the modified signal is transmitted to each set top terminal. This signal is used with polling methods to receive upstream data from the set top terminals. The invention initiates such upstream data retrieval, gathers all data received and compiles viewer demographics information and programs watched information. The invention processes this data and information to generate packages of advertisements, as well as account and billing reports, targeted towards each set top terminal. The invention uses upstream data reception hardware, databases and processing hardware and software to accomplish these functions.

1,069 citations