Optimistic (speculative) processing is processing that is started eagerly before it is know to be required. I am developing an operating system which supports optimistic processing at the level of processes and files. In environments which consists of networked workstations, many CPU and memory resources are not used. By using such idle resources for optimistic processing, outward appearance execution times of applications can be shortened.
There are three operations for worlds:
Optimistic processing can be performed by using the parallel world model as follows:
The main application of this system is the speculative make (the UNIX make utility). The speculative make creates worlds and starts processing described in Makefile in the new worlds before the user types "make" into a shell. The speculative make maintains a DAG of worlds which is similar to the DAG of file dependency. The speculative make merges the worlds which contain requested files into the parent mandatory world.
I have proposed an implementation method of the file system for optimistic processing based on the parallel world model. In this method, the name resolution module (namei() in UNIX) is changed. File names in the mandatory world are stored in regular directory files in disks and those in optimistic worlds are stored in a table in the main memory.
Takashi Nerome, Hajime Toma, Yasushi Shinjo, Seiki Kyan, and Kenji Onaga
SWoPP'94, IPSJ SIG Notes, 94-ARC-107-12, Vol.94,No.66, pp.89-96 (Jul. 1994).
Abstract Speculative processing is processing that is started eagerly before it is known to be required. Speculative processing makes it possible to reduce turnaround time by using surplus computer resources. Speculative processing with pre-execution is discussed. The speculative version of the make application of UNIX is designed, and its model of execution is shown. Issues for supporting speculative processing in multiprogramming environments are discussed. In this paper, the idea of "world" is introduced to deal with speculative processing.
Body in Japanese.
Masaya Mizobuchi, Yasushi Shinjo, Hajime Toma, Takashi Nerome, Seiki Kyan and Kenji Onaga
IPSJ SIG Notes, 95-OS-69-18, Vol.95,No.69 (June 1995).
Abstract Speculative processing is processing that is started eagerly before it is known to be required. We are developing an operating system that supports process-level speculative processing. We use the idea of worlds to deal with the speculative processing. A world is a box that contains some processes and files. This paper describes interfaces, attributes, and implementations of world objects and process objects.
Body in Japanese.
Hajime Toma, Yasushi Shinjo, Masaya Mizobuchi, Takashi Nerome, Seiki Kyan and Kenji Onaga
SWoPP'95, IPSJ SIG Notes, 95-OS-70-3, Vol.95,No.70 (Aug 1995).
Abstract Speculative processing is processing that is started eagerly before it is known to be required. We are developing an operating system that supports process-level speculative processing. We introduced the idea of worlds to deal with speculative processing. A world is a container which contains processes and files. This paper describes the interface and implementation of the file system of this operating system. The feature of the interface is that files are identified by their names and worlds. In this implementation, the name subsystem plays the main role.
Body in Japanese.
Takashi Nerome, Yasushi Shinjo, Hajime Toma Masaya Mizobuchi, Seiki Kyan and Kenji Onaga
SWoPP'95, IPSJ SIG Notes, 95-OS-70-4, Vol.95,No.70 (Aug. 1995).
Abstract Speculative processing is processing that is started eagerly before it is known to be required. Speculative processing using surplus computer resources makes it possible to reduce apparent execution time for users. We are implementing an operating system that supports speculative processes. In the operating system, the idea of worlds is introduced. A world is a container of files and processes. Worlds construct a DAG. As an application of the operating system, Speculative Make is being implemented. In this paper, how Speculative Make manipulates worlds is shown. We made a simulation of Speculative Make , we show its result and we estimate performance of Speculative Make.
Body in Japanese.
Jun Sun, Yasushi Shinjo and Kozo Itano
In Proceedings of The Third International Workshop on Advanced Parallel Processing Technologies, Oct.19-21, 1999. (Changsha, China)
The parallel world model allows users to create, delete and merge multiple execution environments of processes called `worlds'. Its applications include optimistic processing and safe update of software packages. This paper presents the implementation of a distributed file system supporting this model. Unlike previous methods, the parallel world model is realized at the level of file body after name resolution. This enables usage of block-level copy-on-write to enhance the performance of the write operation. A lazy method is used to shorten the response times of applications. Experiments have been done to measure the performance of the file system.
Body in English.
[PDF] [PostScript(.ps)] [Gzip-ed PostScript(.ps.gz)]