Font Size: a A A

A universally configurable architecture for taskflow-oriented design of a distributed collaborative computing environment

Posted on:2002-01-16Degree:Ph.DType:Thesis
University:North Carolina State UniversityCandidate:Lavana, HemangFull Text:PDF
GTID:2468390011496943Subject:Computer Science
Abstract/Summary:
The major goal of this thesis is to create a powerful distributed computing environment and render it collaborative. A distributed computing environment supports four structures that create a program as a hierarchy of tasks: (1) task sequencing, (2) decisions, allowing data to control the task sequence, (3) iterations, repeating the same task sequence multiple times, (4) encapsulation, replacing a group of tasks with a name that denotes the group. In addition, the environment is rendered asynchronously collaborative by (1) ownership and locking of data, (2) ownership and authorized execution of tasks, and synchronously collaborative by (1) negotiated sharing of task sequencing, (2) coordinated execution of the entire sequence of tasks.; The distributed computing environment is implemented by way of a user configurable universal client (OmniFlow). The key to user configurability of the client is the simplicity of the underlying taskflow model that relies on user-defined compositions of two component types only: a blackbox component and a whitebox component, each encapsulated with an autonomous FSMD, (finite-state-machine with a datapath), with the blackbox/whitebox component representing an extension of the datapath itself. A task instance layer of such a component is formed by always accessing the encapsulated layer through a ControlJoin and ControlFork primitive. The interconnection of such task instances forms a taskflow or a whitebox component. A taskflow is an intersection of a task graph and data graph where the task graph is a directed acyclic graph, with two distinguished vertices, a source and a sink, where the source represents the first task (BeginFork), and the sink represents the last task (EndJoin). The task graph is thus a polar DAG of interacting asynchronous FSMDs with built-in synchronizing primitives that can be executed concurrently and readily synchronized, just as would any DAG of well-designed and well-matched hardware components. Encapsulated tasks and task instances are specified using XML schema and a collaborative distributed task mark-up language (cdtML).; We propose a new approach, based on a hybrid architecture, to render any single-user Tcl application collaborative. This approach consists of a centralized synchronous group server (SGS) and a distributed synchronous group client (SGC), both are written in Tcl. (Abstract shortened by UMI.)...
Keywords/Search Tags:Distributed, Computing environment, Task, Collaborative, /italic
Related items