Sinclair, Craig2024-08-152024-08-1519901990https://hdl.handle.net/1828/19705The method for exchanging data among processes, when developing programs for parallel execution, has a crucial impact on the design of the programs. In tightly cou­pled systems programs can directly reference common data through shared memory, whereas in loosely coupled systems programs typically exchange data through mes­sage passing. Architectures have recently emerged which integrate the shared variable and message passing paradigms. The most recent addition is the shared data-object model proposed by Bal and Tanenbaum. This thesis presents an objected-oriented model for distributed programming based on the framework of the shared data-object model. Our model provides data repli­cation through shared data-objects and process management through process objects. Sequential programs are partitioned automatically by means of a preprocessor into a set of program blocks that can be executed in parallel. Shared data-objects provide distributed flow control by blocking accesses that violate the ordering specified by the sequential program. A divide-and-conquer algorithm and a ray tracing rendering program are used to illustrate our methodology for distributed programming.122 pagesAvailable to the World Wide WebAutomatic parallelization of C programs using shared data-objectsThesis