Please use this identifier to cite or link to this item: https://scholarbank.nus.edu.sg/handle/10635/181936
Title: DESIGN AND IMPLEMENTATION OF A NEW COMPOSITIONAL FACILITY FOR CONCURRENT PROCESSES
Authors: CHEN YANPING
Issue Date: 1995
Citation: CHEN YANPING (1995). DESIGN AND IMPLEMENTATION OF A NEW COMPOSITIONAL FACILITY FOR CONCURRENT PROCESSES. ScholarBank@NUS Repository.
Abstract: After examining the world using object-oriented analysis, we come to the conclusion that objects are inherently active, concurrent, and distributed, rather than passive, sequential, and centralized. So the language system discussed in this thesis will emphasize on dynamic behavior abstraction, and represent a major point of departure from many existing languages which only provide the abstraction for data and static objects. Supporting, plug-compatible software components is also one of main objectives for designing the new language. The three main concepts in the language is "channel", "process" and "component". The process is used to represent the most element active entity, and slate model to formalize its dynamic behavior. Each process is a state transition machine which performs the transformations and sends output events according to the input events and its internal states. Communication is based on synchronous message passing- channel. It is used to carry input and output events. Together with PAR and ALT structures which send and receive messages parallel or non-deterministrically, channel forms a mechanism to implement concurrent state machines. Channel is also viewed as a high-level protocol which encapsulates the communication details and becomes a unit to construct more complicated protocol interface. So there is concurrency inside the process besides outside one. Based on above two concepts, the unique language clement to declare active entities is component. It has two aspects: to outside, it is a process creation and identity facility with types and parameters and has a interface for others to interact with it; inside, it describes the implementation of a group of processes, and establishes its own interface and the relationship between processes. As a compositional facility to group a set of concurrent processes, component also provides the separation between the interface and implementation, becomes a powerful vehicle for building resilient architecture and reusable systems. With this language model, we examine several examples in real-time embedded systems, client-server interactions and massive computing problems, and analyze the thread of control in these systems. Client-server interactions are deeply studied, and we use interface routines and temporary dynamic channels to construct the two-way flow protocols. The programming method om language system advocates is: decomposing a system into subsystems, building interface for each subsystem first and then writing internal event-driven codes to respond the outside events. The implementation provides a stub-code generator which generate C code from component code and supporting libraries for parallelism, distribution, synchronization and communication in symmetrical multiprocessors and loosely-coupled multicomputer environments.
URI: https://scholarbank.nus.edu.sg/handle/10635/181936
Appears in Collections:Master's Theses (Restricted)

Show full item record
Files in This Item:
File Description SizeFormatAccess SettingsVersion 
B20884011.PDF2.91 MBAdobe PDF

RESTRICTED

NoneLog In

Google ScholarTM

Check


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.