journal article
LitStream Collection
doi: 10.1145/202213.202214pmid: N/A
The goal of this two-day meeting was to foster interaction between active workers in mobile computing, with a view toward cross-fertilization of ideas. Given the youth of the field, such interactions could have substantial impact on its future direction. In keeping with this goal, the conference organizers chose to have a small, informal workshop rather than a larger and more formal conference. The workshop was sponsored by the IEEE Computer Society Technical Committee on Operating Systems, in cooperation with ACM SIGOPS and USENIX.The workshop was held on Thursday and Friday December 8-9 1994 at the Dream Inn in Santa Cruz. The weather was beautiful and the oceanside locale spectacular --- alas, it is not clear whether these helped or hindered the workshop, since many longing looks were evident on the faces of participants as they gazed out of the windows! The General Chair, Darrell Long, had done an excellent job of selecting the workshop site and setting the stage for the workshop. He was assisted in local arrangements by two student volunteers, Jim Cummiskey and Chane Fullmer.What follows is a summary of the discussions that took place during the workshop. It is based on notes taken by four student volunteers (Peter Grillo, C.K. Toh, Adrian Friday, and N. Asokan). They did an excellent job of taking detailed and complete notes. Any errors or omissions in this document are certainly my responsibility, not theirs.This digest is intended to be a supplement to the papers in the proceedings, not a substitute. Rather than producing a verbatim transcript, I've tried to focus on those interactions that seemed most insightful, controversial or evoked most response from the audience. Such a report must, by its very nature, be subjective. I've tried to be as objective as possible, but I'm sure there are places where my personal biases show through. My apologies in advance if you attended the workshop and your favorite comment, question or discussion isn't mentioned here.
doi: 10.1145/202213.202215pmid: N/A
C langer is a powerful, yet simple, command language for the Nemesis operating system. It uses runtime type information to interface directly with operating system components. C langer is a combination of command-line interpreter, scripting language, debugger and prototyping tool. This paper describes why such a language is possible, how it is being implemented, and outlines the language as it currently stands.
doi: 10.1145/202213.202217pmid: N/A
Most operating system implementations contain two fundamental forms of asynchrony; processes (or equivalently, internal threads) and interrupts. Processes (or threads) synchronize using primitives such as mutexes and condition variables, while interrupts are synchronized by preventing their occurrence for a period of time. The latter technique not only is expensive, but it locks out interrupts on the possibility that an interrupt will occur and interfere with the particular critical section of code that was interrupted.In the Solaris 2 implementation of UNIX Eykholt 92 Kleiman 92, these two forms are unified into a single model, threads. Interrupts are converted into threads using a low overhead technique. This allows a single synchronization model to be used throughout the kernel. In addition, it lowers the number of times in which interrupts are locked out, it removes the overhead of masking interrupts, and allows modular code to be oblivious to the interrupt level it is called at.
Klostermeyer, William F.; Srinivas, Kankanahalli
doi: 10.1145/202213.202218pmid: N/A
The problem of minimizing disk power consumption in portable personal computers is studied. Two online algorithms for determining when to stop spinning a disk are presented and analyzed using competitive analysis techniques.
doi: 10.1145/202213.202219pmid: N/A
This paper presents the design of an object-oriented file system which was developed as a part of the "OBJIX Object-Oriented Operating System" project. The file system is a self-contained program system which is decomposed using a standard object-oriented framework concept. A novel approach to object-oriented frameworks, the Class Hierarchy Framework concept recapitulated in this paper, is employed in structuring components of the file system. Further, this paper illustrates on an example how the file system pursues a typical system call.
doi: 10.1145/202213.202221pmid: N/A
Migration is one example of the insufficiently used potentials of distributed systems. Although migration can enhance the efficiency and the reliability of distributed systems, it is still rarely used. Two limitations contained in nearly all existing migration implementations prevent a widespread usage: migration is restricted to processes and the migration mechanism, i.e. the way state is transferred, is not adaptable to changing requirements.In our approach, migration is an operation provided by every object of any type. Triggered by higher level migration policies, the object migrates itself using an object-specific migration mechanism. Changing requirements are handled by higher level migration policies that adapt migration by exchanging the object's mechanisms.Adaptable migration was implemented within the BirliX operating system. Different migration mechanisms are accomplished by different meta objects, which can be attached to other objects. If an object has to be migrated, the meta object does the migration. Changing environmental requirements are handled by exchanging the meta object. As a result, each object has its own migration mechanism. The approach has been examined by implementing a couple of well-known migration mechanisms via meta objects. This paper describes the meta object implementation of the Charlotte migration mechanism.
doi: 10.1145/202213.202222pmid: N/A
Load management in distributed systems is usually focused on balancing process execution and communication load. Stress on storage media and I/O-devices is considered only indirectly or disregarded. For I/O-intensive processes this imposes severe restrictions on balancing algorithms: processes have to be placed relative to fixed allocated resources. Therefore, beyond process migration, there is a need for a migration of all operating system objects, like files, pipes, timers, virtual terminals, and print jobs. In addition to new options for balancing cpu loads, this also makes it possible to balance the loads associated with these objects like storage capacity or I/O-bandwidth.This paper presents a concept for a general migration of nearly all operating system objects of a UNIX environment. The migrations of these objects work all in the same UNIX compliant and transparent manner. Objects can be moved throughout a distributed system independently of each other and at any time, according to a user defined policy. The migration mechanism is implemented as part of the MDX operating system; we present performance measurements. We believe that most of the mechanism can also apply to other message-passing based distributed operating systems.
Esquivel, S.; Leguizamon, G.; Gallard, R.
doi: 10.1145/202213.202224pmid: N/A
This paper shows an approach to find quasi-optimal solutions to the first optimization stage of parallel program tasks allocation problem, in an internet distributed system. The user initiates program execution from an arbitrary node in an arbitrary cluster, the parallel tasks comprising the program migrate to quasi-optimal clusters using an strategy that tries to minimize intercluster traffic of the parallel program execution.Genetic algorithms (GAs) 11 are used to provide a set of timely, quasi-optimal solutions.
Showing 1 to 9 of 9 Articles