Results 1 -
5 of
5
Causal Memory Meets the Consistency and Performance Needs of Distributed Applications!
- ACM SIGOPS European Workshop
, 1994
"... In order to provide acceptable performance in large scale distributed systems, shared data must be cached at or close to nodes where it is accessed. Maintaining the consistency of such cached data is an important problem in distributed systems. We claim that causal memory, which defines consistency ..."
Abstract
-
Cited by 9 (1 self)
- Add to MetaCart
(Show Context)
In order to provide acceptable performance in large scale distributed systems, shared data must be cached at or close to nodes where it is accessed. Maintaining the consistency of such cached data is an important problem in distributed systems. We claim that causal memory, which defines consistency of shared data based on causal orderings between data accesses, provides strong enough consistency guarantees to be usable yet it allows efficient and scalable implementations. In this paper, we describe some results of our recent work that support this claim. 1 Introduction Distributed systems differ from other types of systems in the support they provide for sharing state across nodes. Operating systems must provide abstractions that reduce the complexity of state sharing, yet it should be possible to implement these abstractions efficiently. A shared memory abstraction can be provided in distributed systems in software, but due to large latencies and high communication costs, efficient i...
Hive: Implementing a Virtual distributed Shared Memory in Java
- In Proceedings of DAPSYS
, 2000
"... Abstract Hive is a Java library implementing a distributed shared memory on a cluster of workstations. The memory is structured as a set of variable size areas and a user can exploit two consistency models, sequential and release consistency. Hive defines original strategies to implement the consist ..."
Abstract
-
Cited by 5 (1 self)
- Add to MetaCart
Abstract Hive is a Java library implementing a distributed shared memory on a cluster of workstations. The memory is structured as a set of variable size areas and a user can exploit two consistency models, sequential and release consistency. Hive defines original strategies to implement the consistency models and to synchronize concurrent processes. Synchronization is implemented through tokens, i.e. privileges. Preliminary performance figures are discussed.
Appletizing: Running Legacy Java Code Remotely From a Web Browser
- IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE (ICSM
, 2005
"... Adding distributed capabilities to existing programs has come to the forefront of software evolution. As a standard Java distributed technology, applets offer the advantages of being easily deployable over web browsers and requiring little to no explicit distributed programming. Yet applets are infl ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
Adding distributed capabilities to existing programs has come to the forefront of software evolution. As a standard Java distributed technology, applets offer the advantages of being easily deployable over web browsers and requiring little to no explicit distributed programming. Yet applets are inflexible: they download remote code and run it only on the client machine. We present appletizing: a semi-automatic approach to transforming a Java GUI application into a client-server application, in which the client runs as a Java applet that communicates with the server through RMI. To enable appletizing, we have expanded the capabilities of J-Orchestra, our automatic partitioning system that takes as input a Java application in bytecode format and transforms it into a distributed application, running across multiple standard JVMs. We discuss the motivation, benefits, and J-Orchestra support for appletizing, and validate our approach via a set of case studies and associated benchmarks.
A distributed execution environment for shared java objects
- Information and Software Technology
"... This paper discusses the implementation of a distributed execution environment, DJO, which supports the use of shared Java objects for parallel and distributed applications and provides the Java programmer with the illusion of a network-wide shared object space on loosely-coupled distributed systems ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
(Show Context)
This paper discusses the implementation of a distributed execution environment, DJO, which supports the use of shared Java objects for parallel and distributed applications and provides the Java programmer with the illusion of a network-wide shared object space on loosely-coupled distributed systems. DJO supports shared objects through an implementation of multiple reader/single writer write-invalidate DSM protocol in software, providing the shared memory abstraction at object granularity. Object distribution and sharing are implemented through the replication mechanism, transparently to application. The system enforces mutual consistency among replicas of an object. The main benefits of DJO are enhanced availability and performance due to the replicated object model and easier application design, as the underlying software takes care of distribution and memory consistency issues.
DOI 10.1007/s10887-012-9086-5 The farm, the city, and the emergence of social security
, 2012
"... Abstract We study the social, demographic and economic origins of social security. The data for the U.S. and for a cross section of countries suggest that urbanization and industrial-ization are associated with the rise of social insurance. We describe an OLG model in which demographics, technology, ..."
Abstract
- Add to MetaCart
(Show Context)
Abstract We study the social, demographic and economic origins of social security. The data for the U.S. and for a cross section of countries suggest that urbanization and industrial-ization are associated with the rise of social insurance. We describe an OLG model in which demographics, technology, and social security are linked together in a political economy equilibrium. In the model economy, there are two locations (sectors), the farm (agricul-tural) and the city (industrial) and the decision to migrate from rural to urban locations is endogenous and linked to productivity differences between the two locations and survival probabilities. Farmers rely on land inheritance for their old age and do not support a pay-as-you-go social security system. With structural change, people migrate to the city, the land loses its importance and support for social security arises. We show that a calibrated version Electronic supplementary material The online version of this article (doi:10.1007/s10887-012-9086-5) contains supplementary material, which is available to authorized users.