|M.Sc Student||Yaron Weinsberg|
|Subject||A Programming Model and System Support for Disconnected-|
Aware Applications on Resource-Constrained Devices
|Department||Department of Electrical Engineering||Supervisor||Mr. Ben-Shaul Z.|
The emergence of networked
lightweight portable computing devices can potentially enable accessibility to
a vast array of remote applications and data. In order to cope with shortage of
local resources such as memory, CPU and bandwidth, such applications are
typically designed as thin-client thick-server applications.
However, another highly desirable requirement is to support disconnected operation, i.e., a mode of operation that enables a client to continue execution of a distributed application in spite of network disconnection and/or connection deterioration.
Disconnected operation is important due to the low quality and high cost of on-line connectivity, but it conflicts with the thin-client approach since it requires functionality that is sufficient for local only operation.
We present a novel programming model and a runtime infrastructure that addresses these conflicting requirements by automatically reconfiguring the application to operate in disconnected mode of operation, when voluntary disconnection is requested, and automatically resorting to normal distributed operation, upon reconnection. The programming model enables developers to design disconnected-aware applications by providing a set of component reference annotations with special disconnection and reconnection semantics. Using these annotations, designers can identify critical components, priorities, dependencies, local (e.g., low-end) component alternatives, and state merging policies. The runtime infrastructure carries out dis- and re-connection semantics using component mobility and dynamic application layout. The disconnected operation framework, FarGo-DA is an extension of FarGo, a mobile component framework for distributed applications.