bluuebunny/crossref_metadata_2025 huggingface dataset:
Authentication in distributed systems
Authors: Lampson Butler , Abadi Martín , Burrows Michael , Wobber Edward
Published: October 2004

We describe a theory of authentication and a system that implements it. Our theory is based on the notion of principal and a "speaks for" relation between principals. A simple principal either has a name or is a communication channel; a compound principal can express an adopted role or delegation of authority. The theory explains how to reason about a principal's authority by deducing the other principals that it can speak for; authenticating a channel is one important application. We use the theory to explain many existing and proposed mechanisms for security. In particular, we describe the system we have built. It passes principals efficiently as arguments or results of remote procedure calls, and it handles public and shared key encryption, name lookup in a large name space, groups of principals, loading programs, delegation, access control, and revocation.
Replication in the harp file system
Authors: Liskov Barbara , Ghemawat Sanjay , Gruber Robert , Johnson Paul , Shrira Liuba , Williams Michael
Published: October 2004

This paper describes the design and implementation of the Harp file system. Harp is a replicated Unix file system accessible via the VFS interface. It provides highly available and reliable storage for files and guarantees that file operations are executed atomically in spite of concurrency and failures. It uses a novel variation of the primary copy replication technique that provides good performance because it allows us to trade disk accesses for network communication. Harp is intended to be used within a file service in a distributed network; in our current implementation, it is accessed via NFS. Preliminary performance results indicate that Harp provides equal or better response time and system capacity than an unreplicated implementation of NFS that uses Unix files directly.
Experience with transactions in QuickSilver
Authors: Schmuck Frank , Wylie Jim
Published: October 2004

All programs in the QuickSilver distributed system behave atomically with respect to their updates to permanent data. Operating system support for
transactions
provides the framework required to support this, as well as a mechanism that unifies reclamation of resources after failures or normal process termination. This paper evaluates the use of transactions for these purposes in a general purpose operating system and presents some of the lessons learned from our experience with a complete running system based on transactions. Examples of how transactions are used in QuickSilver and measurements of their use demonstrate that the transaction mechanism provides an efficient and powerful means for solving many of the problems introduced by operating system extensibility and distribution.
A high performance multi-structured file system design
Authors: Muller Keith , Pasquale Joseph
Published: October 2004

File system I/O is increasingly becoming a performance bottleneck in large distributed computer systems. This is due to the increased file I/O demands of new applications, the inability of any single storage structure to respond to these demands, and the slow decline of, disk access times (latency and seek) relative to the rapid increase in CPU speeds, memory size, and network bandwidth.We present a
multi-structured file system
designed for high bandwidth I/O and fast response. Our design is based on combining disk caching with three different file storage structures, each implemented on an independent and isolated disk array. Each storage structure is designed to optimize a different set of file system access characteristics such as cache writes, directory searches, file attribute requests or large sequential reads/writes.As part of our study, we analyze the performance of an existing file system using trace data from UNIX disk I/O-intensive workloads. Using trace driven simulations, we show how performance is improved by using separate storage structures as implemented by a multi-structured file system.
First-class user-level threads
Authors: Marsh Brian D. , Scott Michael L. , LeBlanc Thomas J. , Markatos Evangelos P.
Published: October 2004

It is often desirable, for reasons of clarity, portability, and efficiency, to write parallel programs in which the number of processes is independent of the number of available processors. Several modern operating systems support more than one process in an address space, but the overhead of creating and synchronizing kernel processes can be high. Many runtime environments implement lightweight processes (threads) in user space, but this approach usually results in second-class status for threads, making it difficult or impossible to perform scheduling operations at appropriate times (e.g. when the current thread blocks in the kernel). In addition, a lack of common assumptions may also make it difficult for parallel programs or library routines that use dissimilar thread packages to communicate with each other, or to synchronize access to shared data.We describe a set of kernel mechanisms and conventions designed to accord
first-class status
to user-level threads, allowing them to be used in any reasonable way that traditional kernel-provided processes can be used, while leaving the details of their implementation to user-level code. The key features of our approach are (1) shared memory for asynchronous communication between the kernel and the user, (2) software interrupts for events that might require action on the part of a user-level scheduler, and (3) a scheduler interface convention that facilitates interactions in user space between dissimilar kinds of threads. We have incorporated these mechanisms in the Psyche parallel operating system, and have used them to implement several different kinds of user-level threads. We argue for our approach in terms of both flexibility and performance.
An overview of real-time issues and Ada
Authors: Lee Pen-Nan , Nehman William
Published: October 2004

The Ada programming language (ANSI/MIL-STD-1815A) is the result of a design competition by the United States Department of Defense in response to the realization that billions of dollars was being spent annually on military' software, with the largest portion being spent for the maintenance of real-time and embedded systems. This paper provides an overview of several issues concerning real-time programming in general, and how they are addressed in Ada. These issues are: Scheduling, Interaction with Hardware, Concurrency, Dealing with Time, Priority Inversion, and Asynchronous Transfer of Control.
Structured analysis and object-oriented design are compatible
Authors: Shumate Ken
Published: October 2004

Some form or other of object-oriented design has become common, even standard, for the design of Ada programs. Some form or other of structured analysis is and has long been standard for the specification of software requirements. Recent discussions in the software development community advocate object-oriented analysis as being preferable to structured analysis, especially for Ada software development; such discussions further assert that structured analysis and object-oriented design are incompatible. Others have argued for the effectiveness of combined use of the two methods. The topic has become controversial.It is the thesis of this paper that structured analysis is a desirable way to specify software requirements, and that structured analysis and object-oriented design are compatible and work effectively together.
Ada, an analyst and a metaphysician
Authors: Toole Betty Alexandra
Published: October 2004

Is Ada a fitting name for the software language named after her?Today, words, symbols and language are so manipulated that what Darell Huff proclaimed for numbers, "Statistics Don't Lie, But Liars use Statistics", certainly applies to words. Mario Pei, in
Words in Sheep's Clothing
, states that words have come to mean either the opposite of what they originally meant, or something so remote and confusing that one hesitates to use them.This article will give you a glimmer of the fascinating human story of Ada. Hopefully that glimmer, or biopsy, will not distort but enrich the information available about her life. Human beings are inconsistent, that is both their weakness and their strength. To fashion data about a human being into a consistency, in order to prove a point often makes me suspicious. However, the more I know about Ada, the software language, the more appropriate. I believe the name Ada is for the software language. You, as users of Ada, are a better judge of that and I would certainly appreciate your reaction and observations.The information that I have selected for this article are from the thousands of letters in the Lovelace-Byron Collection at Oxford University, the British Library, and Ada's Notes. The emphasis is on how Ada approached information, mathematics, science and technology. Perhaps, this glimpse of Ada's life and the way she thought, might prompt you to see a connection between Ada's story and the history, structure and implementation of Ada, the software language.
HP/TELEGEN2 ENCAPSULATION
Authors: Mattini Max
Published: October 2004

This paper describes the 'HP/Telegen2 Encapsulation' Project (HTEP) currently being undertaken by BHP Aerospace & Electronics (BHP A&E).The project aims at integrating the Telegen2 Ada environment within the HP SoftBench CASE tool. The project is currently in an advanced development stage, with a demonstration planned for the CASE-Ada exposition to be held in Canberra on 30th October 1990.
Reuse_system software repository tool concepts
Authors: Gicca Greg
Published: October 2004

This paper discusses a software tool called the Reuse_System. The tool was developed using the Ada language to promote software reuse. It automates concepts designed to aid in both the storage and retrieval of existing software. Its own design emphasizes end user activities in finding and then extracting software for reuse.
The risk of destructive run-time errors
Authors: Delrio Piergiorgio , Mazzanti Franco
Published: October 2004

We introduce the class of destructive run-time errors as those errors after which the execution status of the program can be so damaged that it is usually impossible to perform any kind of program-driven recovery. Programming errors causing this destructive events are analysed, with particular attention to those cases not related to the use of explicitly "dangerous" low level constructs. It is shown how the risk of these errors can be easily underestimated.
Evolutionary steps toward a distributed operating system
Authors: Mull Allison J. , Maginnis P. Tobin
Published: October 2004

Generally speaking, distributed operating system (DOS) designers seem more concerned with resource sharing, global file system transparency, and implementation methodology. We feel that a DOS may provide the platform for linear speedup of applications if performance considerations are given highest priority in the design of the DOS. Work has been underway to test the implementation of such a DOS design in the MINIX environment.
The desk area network
Authors: Hayter Mark , McAuley Derek
Published: October 2004

A novel architecture for use within an end computing system is described. This attempts to extend the concepts used in modern high speed networks into computer system design. A multimedia workstation is being built based on this concept to evaluate the approach.
XINIX time-sharing operating system
Authors: Chávez Jorge Buenabadd
Published: October 2004

The availability of the source code of a running real operating system is essential for teaching a practical course on Operating Systems. This, and the wide-spread use of PC-XT computers were the main reasons for transporting the XINU operating system to these computers. This paper describes the features, additions and constraints of this transportation, named XINIX.
A flexible system call interface for interprocessor communication in a distributed memory multicomputer
Authors: Maggio Maria D. , Krumme David W.
Published: October 2004

The Multifaceted Communication System for the distributed memory NCUBE is an interprocessor communication system that supports many features useful for application programs: asynchronous, partially and fully synchronous calls in blocking and non-blocking modes, buffered and unbuffered transmissions, gather and scatter operations, broadcasting, a general pipe mechanism, and file operations. A major achievement of this design is the use of a single, consistent user interface. This paper describes the main features of that interface and the semantics of the operations it embodies.
A simple taxonomy for distributed mutual exclusion algorithms
Authors: Raynal Michel
Published: October 2004

This short paper examines the two basic principles from which distributed mutual exclusion algorithms are designed : permission-based and token-based principles. This presentation is done in a pedagogical way and is illustrated by references to existing algorithms.
Content-dependent access control
Authors: Moffett Jonathan D. , Sloman Morris S.
Published: October 2004

Content-dependent access control, where the access decisions depend upon the value of an attribute of the object itself, is required in many applications. However problems arise in an object-based environment, because obtaining the value of an object's attribute requires an operation upon the object. We discuss the conceptual and performance implications of introducing content-dependent access control, and suggest how the problems can be avoided in some cases by using a domain-based approach to access control.
Stimulus-response machines
Authors: Cherry George W.
Published: October 2004

This paper describes Stimulus-Response (S-R) Machines, a new visual formalism based on the semantics of Ada. S-R Machines are SCOOP-3's [2] main medium for specifying and implementing critical units of behavior. They have the same motivation as Harel's Statecharts [3]: to manage the
unstructured
explosion of blobs and arrows that occur on complex State Transition Diagrams. S-R Machines add to Ada's semantics a named off-page abstraction mechanism called "boxes." Boxes are used to decompose S-R Machines into hierarchies of states (goals, steps, conditions, or modes), each of which can be easily verified. S-R Machines are similar to Harlan Mills' Box-Structured Systems [4]: our interfaces are identical to his black boxes; our bodies are similar to his state and clear boxes. Because S-R Machines combine the familiar features of dataflow diagrams, object-message diagrams, and structured flowcharts, its notation is easy to learn. S-R Machines are useful when developing state-rich safety-critical systems or whenever understanding or communication are problematical or critical (e.g., educational settings and software inspections).
The ANSI binding of SQL to ADA
Authors: Moore James W.
Published: October 2004

This paper describes the binding of the Ada programming language and the SQL database language which is specified in ANSI standard X3.168-1989. Background information is provided on the SQL standard and its language bindings followed by information regarding the history of the Ada binding and the specific goals and values realized by that binding. The procedural binding is described in detail and an overview is provided of the embedded binding. Related efforts to build more abstract bindings are described followed by a brief status of standardization and implementation.
Traffic phase effects in packet-switched gateways
Authors: Floyd Sally , Jacobson Van
Published: October 2004

Much of the traffic in existing packet networks is highly periodic, either because of periodic sources (e.g., real time speech or video, rate control) or because window flow control protocols have a periodic cycle equal to the connection roundtrip time (e.g., a network-bandwidth limited TCP bulk data transfer). Control theory suggests that this periodicity can resonate (i.e., have a strong, non-linear interaction) with deterministic estimation or control algorithms in network gateways.
1
In this paper we define the notion of
traffic phase
in a packet-switched network and describe how phase differences between competing traffic streams can be the dominant factor in relative throughput. Drop Tail gateways in a TCP/IP network with strongly periodic traffic can result in systematic discrimination against some connections. We demonstrate this behavior with both simulations and theoretical analysis. This discrimination can be eliminated with the addition of appropriate randomization to the network. In particular, analysis suggests that simply coding a gateway to drop a random packet from its queue (rather than the tail) on overflow is often sufficient.We do not claim that Random Drop gateways solve all of the problems of Drop Tail gateways. Biases against bursty traffic and long roundtrip time connections are shared by both Drop Tail and Random Drop gateways. Correcting the bursty traffic bias has led us to investigate a different kind of randomized gateway algorithm that operates on the traffic stream, rather than on the queue. Preliminary results show that the Random Early Detection gateway, a newly developed gateway congestion avoidance algorithm, corrects this bias against bursty traffic. The roundtrip time bias (at least in TCP/IP networks) results from the TCP window increase algorithm, not from the gateway dropping policy, and we briefly discuss changes to the window increase algorithm that could eliminate this bias.
A carrier sensed multiple access protocol high data rate ring networks
Authors: Foudriat E. C. , Maly K. , Overstreet C. M. , Khanna S. , Paterra F.
Published: October 2004

This paper presents a significant extension of the CSMA network access protocol. The protocol is based on the facts that, at high data rates, networks can contain multiple messages simultaneously over their span, and that in a ring, nodes needs only to detect the presence of a message arriving from the immediate up stream neighbor. When an incoming signal is detected, the node truncates the message it is presently sending instead of aborting it. The system has been named Carrier Sensed Multiple Access Ring Network, CSMA/RN.Analytical studies using three performance factors, wait or access time, service time and response or end-to-end travel time are presented. The service time is basically a function of the network rate; it changes by a factor of 4 between no load and full load. Wait time, which is zero for no load, remains small for load factors up to 70% of full load. Response time, which adds travel time while on the network to wait and service time, is mainly a function of network length, especially for longer distance networks.Simulation results are shown for CSMA/RN where messages are removed at the destination. Destination removal on an average increases network load capacity by a factor of 2, i.e., a 1 Gbps network can handle a 2 Gbps load. A wide range of local and metropolitan area network parameters including variations in message size, network length and node count are studied. In all cases performance is excellent, and message fracture usually remains less than a factor of 4. Throughput, even at overload conditions, remains high for the protocol. The nominal network rate is 1 Gbps; however, performance remains good for data rates as low as 200 Mbps. Finally, a scaling factor based upon the ratio of message to network length demonstrates that the results of this paper, and hence, the CSMA/RN protocol, are applicable to wide area networks.
Getting the most for your Megabit
Authors: Comer Michael H. , Condry Michael W. , Cattanach Scott , Campbell Roy
Published: October 2004

The Gigabit Study Group at the University of Illinois is developing a tool that will permit analysis of the network from the application point of view, providing input into the network engineering process and predicting application performance. Phases in this development include the measurement of existing networks, the profiling of application input/output activity, and the integration of the information derived from these into a simulation tool.Maximum throughput ratings on networks continue to rise but our measurements show that the throughput realized by an application is closely tied to the sizes of data (
buffer sizes
) used by the application over the network and the number of buffers that are sent consecutively. Our preliminary study indicates that, while there are applications are specifically designed to take advantage of large network packets, most interactive TCP/IP applications use small (4 bytes to 8k bytes) buffers and do not send large numbers of buffers in a row. For this type of traffic, a 1 Gbps UltraNet provides about the same performance as a 10 Mbps Ethernet. For large volume traffic (32k bytes to 256k bytes), either generated by large packets or sequences of small packets, the UltraNet provides quite satisfactory throughput to the application. The study described herein examines the throughput of four networks as a function of buffer size for sequences of 4 buffers and 128 buffers.Because the maximum rated throughput of a network can be a poor indicator of the throughput that network provides to an application, we believe that a tool that takes into account the characteristics of the application set is needed.
Performance analysis of indoor multipath interfered packet radios at the presence of capture effect
Authors: Tang Michael T. , Wen Jyh-Horng
Published: October 2004

In this paper, the effect of indoor multipath interference on the performance of a random access technique, viz., slotted ALOHA is studied. Key performance measures channel throughput and mean packet delay are derived via minislot approximation. These results turn out to be very accurate and have been verified by means of computer simulations. Signal capture effect is taken into consideration in evaluating the successful packet reception probability for the purpose of practical application. Examples are also given to demonstrate the actual effect of the technique.
Ring-connected ring (RCR) topology for high-speed networking
Authors: De Aloknath , Prithviraj N.
Published: October 2004

The paper discusses the problems associated with the conventional ring topology and suggests a ring-connected-ring (RCR) topology to tackle some of these problems. Implementation details as well as the analysis of this topology are provided in the article.
On the chronometry and metrology of computer network timescales and their application to the network time protocol
Authors: Mills David L.
Published: October 2004

This paper summarizes issues in computer network timekeeping with respect to the Network Time Protocol, which is used to synchronize time in many of the hosts and gateways of the Internet. It describes the methods used to coordinate and disseminate international time services and how they are incorporated into NTP time servers. It discusses the hazards on reckoning NTP dates with the conventional civil calendar and a standard method for numbering the days. Finally, the paper describes the NTP timescale, its mapping to conventional civil time and date and its interpretation of leap seconds.
Bridge channel access algorithms for integrated services ethernets
Authors: Ng Jim M. , Chan Edward
Published: October 2004

To provide integrated data/voice services on an inter-connected CSMA/CD type network, a proper channel access algorithm must be used by the bridge in order to minimize the end-to-end delay. Two algorithms, a static aggressive mechanism and a load adaptive dynamic mechanism, are presented and compared with the algorithm specified in the IEEE 802.3 standard. The performance of each algorithm is analyzed, and its suitability for the integrated service environment is evaluated.
Intelligent I/O rule-based input/output processing for operating systems
Authors: Broner Garbriel , Powell Patrick
Published: October 2004

IntelligentI/O is a rule based general model for performing "intelligent" processing of Input/Output operations in an Operating System. In a new interface layer between the applications and the kernel I/O functions, rules determine actions to be performed at I/O time which in turn invoke programs in user space. IntelligentI/O permits complete implementation in user space applications that would normally require ad-hoc kernel modifications such as a Network File System. It also serves to implement features that would normally have to be embedded in an application, such as Automatic Format Conversion or Revision Tracking. We later present SuperFile, a simple yet powerful existing implementation of the IntelligentI/O model, together with a number of applications developed using SuperFile.
Experiencing minix as a didactical aid for operating systems courses
Authors: Aguirre G. , Errecalde M. , Guerrero R. , Kavka C. , Leguizamon G. , Printista M. , Gallard R.
Published: October 2004

Minix is a Unix clone Operating Systems to be run on IBM PCs and compatibles, designed by Tanembaum [10] for courses in the area.Accepting the Tanembaum's proposal, this document describes the results of some extensions on the internal work of Minix as an exercise on Operating Systems Design and Implementation that attempts to transfer that experience to other groups of interest.The paper intends to be interpreted as a report remarking what kind of work was done having at our disposal an extensively documented copy of the source code of an operating system, taking into account that the developers are undergraduates in Computer Science.Further details on implementations will be available in future publications [1], [4], [6].
Process name resolution in fault-intolerant csp programs
Authors: Zhang Du , Lu Meiliu
Published: October 2004

Process Name resolution is an important problem in fault-tolerant CSP programs. This paper gives a solution to the naming problem of reconfigured CSP program. The solution is discussed in the context of super process scheme and is based on a proposed implementation of CSP language. The advantages of the solution are two-fold: first, it does not change the communication conventions of CSP; second, it does not impose any extra overhead on the underlying operating system.
Byzantine clock synchronization
Authors: Lamport Leslie , Smith P M Melliar
Published: October 2004

An informal description is given of three fault-tolerant clock-synchronization algorithms. These algorithms work in the presence of arbitrary kinds of failure, including "two-faced" clocks. Two of the algorithms are derived from Byzantine Generals solutions.
Comparing how atomicity mechanisms support replication
Authors: Herlihy Maurice
Published: October 2004

Most pessimistic mechanisms for implementing atomicity in distributed systems fall into three broad categories: two-phase locking schemes, timestamping schemes, and hybrid schemes employing both locking and timestamps. This paper proposes a new criterion for evaluating these mechanisms: the constraints they impose on the availability of replicated data.A replicated data item is a typed object that provides a set of operations to its clients. A quorum for an operation is any set of sites whose co-operation suffices to execute that operation, and a quorum assignment associates a set of quorums with each operation. Constraints on quorum assignment determine the range of availability properties realizable by a replication method.This paper compares the constraints on quorum assignment necessary to maximize concurrency under generalized locking, timestamping, and hybrid concurrency control mechanisms. This comparison shows that hybrid schemes impose weaker constraints on availability than timestamping schemes, and locking schemes impose constraints incomparable to those of the others. Because hybrid schemes permit more concurrency than locking schemes, these results suggest that hybrid schemes are preferable to the others for ensuring atomicity in highly available and highly concurrent distributed systems.This research was sponsored by the Defense Advanced Research Projects Agecy (DOD), ARPA Order No. 3597, monitored by the Air Force Avionics Laboratory Under Contract F33615-81-K-1539.The views and conclusions contained in this document are those of the authords and should not be interpreted as representing the official policies, either expressed or implied, of the Defense Advanced Research Projects Agency or the US Government.
Towards a universal directory service
Authors: Lantz Keith A , Edighoffer Judy L , Hitson Bruce L
Published: October 2004

Directory services and name servers have been discussed and implemented for a number of distributed systems. Most have been tightly interwoven with the particular distributed systems of which they are a part: a few are more general in nature. In this paper we survey recent work in this area and discuss the advantages and disadvantages of a number of approaches. From this, we are able to extract some fundamental requirements of a naming system capable of handling a wide variety of object types in a heterogeneous environment. We outline how these requirements can be met in a
universal directory service.
A single model for files an processes
Authors: Singleton P , Bennett K H , Brereton O P
Published: October 2004

In conventional operating systems, the concepts of files and processes are typically quite distinct, both in the job control language and at the internal "system call" interface. In this paper, the elimination of this dichotomy is explored, and a concept termed the "extrafile" is described which provides a single model for both processes and files (in their most common usage). The generalisation of extrafiles to include data abstraction facilities is discussed, and it is argued that an extrafile containing dependency prescriptions can provide a useful tool. An implementation of extrafiles in UNIX is described.
The glass ceiling
Authors: Angier Natalie
Published: October 2004

[I]n extensive interviews with women at all stages of their scientific careers and in a broad variety of disciplines, the researchers insisted that in fact some of the difficulties they encountered were peculiar to their trade, and that certain characteristics of the scientific culture were likelier to impede women's progress than to propel it.Among those characteristics is the extreme insularity of science, and the need to be at the center of the rumor mill if one is to hear of vital new results before competitors do ...They also said they were given far fewer chances to present their findings and ideas to powerful audiences of their peers, a key method of winning converts and scientific influence ...[M]any female scientists believe that when conference organizers put together their roster of speakers, deciding who are the most respected elders, or the hottest young turks, women seem to come to mind rarely...Despite the greater opportunities in the lower ranks, women remain poorly represented in the upper echelons...'Women appear invisible to men,' said Dr. Margaret Davis ... 'If you ask men for the names of seminar or symposium speakers, the names you get back are almost invariably male. If you ask women, you get both male and female names.' ...'We've got lots of women on the panel,' [Dr. Darrell S. Rigel] said. But on checking the exact number, he laughed nervously. 'Oh, wait a minute. Only 2 out of 28. Hmm. It never occurred to me. I just don't choose people on the basis of gender. But this does raise my consciousness.'...
The Heisenberg uncertainty principle and the halting problem
Authors: Laplante P. A.
Published: October 2004

In this paper it is suggested that the Heisenberg Uncertainty Principle, normally applied to physical systems, can be applied directly to show that the Halting Problem is unsolvable. Although the Heisenberg Uncertainty Principle has appeared in the context of software engineering before [3] it is used in analogy there. As far as the author can determine, this would be the first direct application of the Uncertainty Principle to the solution of a problem in computer science.
Can parallel algorithms enhance serial implementation
Authors: Vishkin Uzi
Published: October 2004

Consider the serial emulation of a parallel algorithm. The
thesis
presented in this informal paper is rather broad. It suggests that such a serial emulation has the potential advantage of running on a serial machine faster than a standard serial algorithm for the same problem.The main concrete observation is very simple:
just before the serial emulation of a round of the parallel algorithm begins, the whole list of memory addresses needed during this round is readily available; and, we can start fetching these addresses from secondary memories
.This enables to prefetch the data that will be needed in the next "time window", perhaps by means of pipelining and have them ready at the fast memories when requested by the CPU. Thereby, utilization of commonly used memory management systems will be theoretically enhanced. Another (considerably less orthodox) implementation approach will result in
abandoning locality of references
, in favor of a drastically different approach:
distribute memory addresses at random
over memory modules, as has been proposed in the context of implementing the parallel-random-access machine (PRAM) design space.It is too early to reach conclusions regarding the significance of the thesis of this paper. Serious attempts to follow it up are needed to determine its usefulness. Parts of this paper are intentionally written in an informal way, suppressing issues that will have to be resolved in the context of a concrete implementation. My general intention is to encourage colleagues to: (i) suggest other specific approaches, and (ii) explore opportunities for taking advantage of the fine structure of parallel programs well beyond concrete suggestions made in the paper.
The full paper is available as UMIACS TR 91-145, from the Institute for Advanced Computer Studies, University of Maryland, College Park, Maryland 20742--3251
.
Software piracy and software security in business schools: an ethical perspective
Authors: Im Jin H. , Van Epps Pamela D.
Published: October 2004

Many business schools have become heavily dependent on microcomputers for educational purposes. That exposes them to a new type of ethical issue---the ramifications involved with unauthorized software copying by faculty, staff, and students. This article presents the results of a field survey on software piracy and software security in 241 member schools of the American Assembly of Collegiate Schools of Business (AACSB). The authors discuss some important findings concerning software security procedures and policies to reduce legal responsibilities for copyright infringements by faculty, staff and students. The article concludes with some recommendations for creating and sustaining an environment where conditions contributing to software piracy and security issues are minimized.
A contingency approach to the application software generations
Authors: Clarke Roger
Published: October 2004

The current environment in which software development is undertaken includes a mix a languages at varying levels of abstraction. The goal of this paper is threefold. First, the range of application software technologies is reviewed from a historical perspective. Second, a model based on levels of abstraction summarizes the key differences between these technologies. Third, a contingency model is proposed to guide the selection of the appropriate level of abstraction.It is argued that the selection of the appropriate level of abstraction should be based on economic criteria mediated by political factors. The level should be chosen not once for the entire application, but for each component within an application. The search should be commenced at the level of abstraction at which the requirements are stated, and the highest level of abstraction chosen at which the particular component can, in the given environments of development and use, be practically implemented.To support this contingency approach, an application development product must comprise a family of compatible languages and tools, such that developers have the freedom to choose at which level of abstraction they will express their solutions, problems, domain-models or domain empirical data.
Telecommunication research in information systems: an investigation of the literature
Authors: Adams Dennis A. , Lacity Mary C. , Mullins James R.
Published: October 2004

Telecommunications management is becoming a top priority of IS executives. Executive's concerns range from network establishment and getting connectivity to using IS for competitive advantage. In a rapidly changing environment, these executives search for guidance and insights. Unfortunately, they might find limited help from IS research. An extensive literature review of more than 9,800 articles covering over eleven years of MIS research showed that academicians have not placed the same emphasis as practitioners on telecommunications management. Furthermore, the majority of telecommunications research focuses on lower level management issues, such as installing a network, rather than using IS for competitive advantage. More research in telecommunications is needed to provide IS executives with insights on how to management the telecommunications function.
Counterexamples to a one writer multireader atomic variable construction of Burns and Peterson
Authors: Halder S. , Vidyasankar K.
Published: October 2004

Two counterexamples are given to the one writer multireader multivalued atomic variable construction of Burns and Peterson [1]. The first counterexample is applicable even if the control variables in their construction are made atomic.
Designing for reuse: a case study
Authors: Wade David M.
Published: October 2004

After considerable analysis of the many problems associated with software reuse, and a critical review of the benefits to be gained, the Federal Aviation Administration (FAA) Advanced Automation System (AAS) decided to proceed with a strong, unified reuse effort across the project. In June 1989 a Reuse Working Group (RWG) was formed. This group defined project wide reuse procedures and oversaw their compliance. Initial feedback from the effort has been encouraging, but there are many obstacles yet to overcome. This paper provides some insight into the AAS reuse process by following the progress of a key reusable software component. It also highlights the side benefits the project garnered as the component's design solidified. The component being examined is the Airspace Volumes Subsystem, which defines an abstraction of an Airspace Volume and provides operations which control interactions between Airspace Volumes and other airspace objects, such as aircraft.
Knowledge of command usage in a spreadsheet program
Authors: Napier H. Albert , Batsell Richard R. , Lane David M. , Guadagno Norman S.
Published: October 2004

Knowledge of how software is actually used by people can assist software developers and internal MIS application development personnel to improve the user-interface of existing software, in creating new user interface styles for existing software packages, and to improve the training for personnel using software packages. This article reports results from a study that examined the use of a popular spreadsheet software by 40 experienced users in their work environment. Of the 505 commands that could be used, 18 (3.6%) accounted for over 80% of the usage. More than 50% of the available commands were never used. Most of the command usage was related to creating, maintaining, and printing spreadsheets.
Interpersonal skills for cooperative user-analyst relationships
Authors: Joshi Kailash
Published: October 2004

Organizational behavior researchers recognize that an individual's effectiveness in an organization is likely to depend significantly upon his/her ability to influence or persuade others in order to accomplish assigned tasks. The ability to influence or persuade users to cooperate or comply with requests is likely to be important for systems developers as well. Based on organizational behavior literature, this article proposes assertiveness, reason, appeal to higher authority, coalition, bargaining, and friendliness as the relevent persuasion strategies in the user-analyst context.
Toward a diagnostic instrument for assessing the quality of expert systems
Authors: Conrath David W. , Sharma Ravi S.
Published: October 2004

In this article we discuss the problem of evaluating the quality of expert systems. The solution we propose is a diagnostic instrument that assesses the relative strengths and weaknesses of an operational expert system. Such a tool is designed to identify the characteristics and features that determine the system's quality (or lack of it) as a means of supporting the knowledge engineering process. Our approach is based on underlying concepts form socio-technical theory. It is also empirically subjected to a rigorous validation methodology.
Artificial neural networks
Authors: Yoon Youngohc , Peterson Lynn
Published: October 2004

The artificial neural network is at the heart of an emerging technique, which many academicians and practitioners are using very productively due to its high performance in addressing complex problems. Although the ANN has not yet reached its full potential, the technique has demonstrated the capability of enhancing performance in a broad range of problems. This article presents an overview of the artificial neural network, a taxonomy of its learning paradigm, and its application areas.
Analysis of shortest-path routing algorithms in a dynamic network environment
Authors: Wang Zheng , Crowcroft Jon
Published: October 2004

In a dynamic network environment under heavy traffic load, shortest-path routing algorithms, particularly those that attempt to adapt to traffic changes, frequently exhibit oscillatory behaviors and cause performance degradation. In this paper we first examine the problems from the perspective of control theory and decision making, and then analyze the behaviors of the shortest-path routing algorithms in details.
A survey of asynchronous remote procedure calls
Authors: Ananda A. L. , Tay B. H. , Koh E. K.
Published: October 2004

Remote Procedure Call (RPC) is a popular paradigm for interprocess communication in distributed systems. It is simple, flexible and powerful. However, most of the RPC systems today are synchronous in nature, and hence fail to exploit fully the parallelism inherent in distributed applications. In view of this, various asynchronous RPC systems have been designed and implemented to achieve higher parallelism while retaining the familiarity and simplicity of synchronous RPC. Asynchronous RPC calls do not block the caller (client) and the replies can be received as and when they are needed, thus allowing the client execution to proceed locally in parallel with the callee (server) invocation. Asynchronous RPC calls can be classified into two types depending on whether the calls return a value. Most asynchronous RPC systems only support calls that do not return a value, and few support both classes. In this paper, an analysis and comparison of various asynchronous RPC systems are presented.
Sources of unbounded priority inversions in real-time systems and a comparative study of possible solutions
Authors: Davari Sadegh , Sha Lui
Published: October 2004

In the design of real-time systems, tasks are often assigned priorities. Preemptive priority driven schedulers are used to schedule tasks to meet the timing requirements. Priority inversion is the term used to describe the situation when a higher priority task's execution is delayed by lower priority tasks. Priority inversion can occur when there is contention for resources among tasks of different priorities. The duration of priority inversion could be long enough to cause tasks to miss their deadlines. Priority inversion cannot be completely eliminated. However, it is important to identify sources of priority inversion and minimize the duration of priority inversion. IN the paper we present a comprehensive review of the problem of and solutions to unbounded priority inversion.
Software architecture of DiCE
Authors: Chen Mon-Song , Barzilai Tsipora , Vin Harrick M.
Published: October 2004

Recent advances in network technology has significantly increased the network bandwidth as well as enriched the set of network functions, enabling a rich set of computer assisted collaborations.
DiCE (Di
stributed
C
ollaborative
E
nvironment) is a multimedia collaboration environment that is being developed at the IBM T. J. Watson Research Center. The challenge of DiCE is to explore the advanced functionalities enabled by high speed networking and multimedia computing technologies to develop effective computer assisted systems that will significantly increase the productivity of collaborations. The main objectives of DiCE are, first, to design an efficient multimedia collaboration environment, and then to prototype the design as the base for the development of a workstation based, hub-free (fully distributed) multimedia conferencing system.
An abstract model of rollback recovery control in distributed systems
Authors: Cao Jiannong , Wang K. C.
Published: October 2004

This paper develops an abstract model which presents a method of uniform description of different rollback recovery control algorithms for distributed systems. We first developed a general definition of the distributed rollback recovery control problem. The concept of a distributed recovery control system (
DRC system
), consisting of distributed recovery control units (
DRC units
), is proposed to model recovery with various control granularities. Then, we developed a graph model, called
dependency graph
, for distributed rollback recovery control algorithms. An
atomic subgraph
is defined as a subgraph induced by a set of nodes which has no outgoing arcs to other nodes in the graph. Committing and aborting atomic actions can be modeled as identifying atomic subgraphs. Next, we defined two kinds of dependency graphs:
checkpoint graphs
and
unit graphs
, based on the dependency relation defined by rollback propagation. We have shown that various types of distributed recovery control algorithms can be classified based on the identifications of atomic subgraphs in these two graphs. Therefore, using the model may allow us to describe existing algorithms in a uniform way and, more importantly, to find new algorithms.
A new way to design causally and totally ordered multicast protocols
Authors: Toinard G. Florin C.
Published: October 2004

Multicast protocols must often provide a given property on the order in which messages are delivered. This delivery order may be consistent with local dependences between messages or with causal dependences. A local delivery is defined according to the emitting order observed at the same process source. A causal delivery is defined according to the causal relations observed between different emitting events. If an arbitrary delivery order is applied (when there are no particular dependences) the multicast is said to be totally ordered. In this paper we study totally and causally ordered multicast protocols i.e. multicast protocols that guarantee a total order conforming with the causal dependences. We propose a new method that begins to build a total order to obtain a causal and total multicast, when all current methods propose to build first a causal order then a total order (developed using the services of this causal layer).This new approach results from a formal study of ordering properties. In the first main result we show that a broadcast that guarantees a local and total order also provides a causal broadcast. Then we show that a multicast protocol that guarantees a local and a total order with additional constraints is also a causal and total multicast. This result makes no assumption about structure of overlapping groups. We finally develop the scheme of a multicast protocol using a centralized server of order. This solution is efficient in terms of messages and delay for a small number of sites. It allows all types of messages (unicast, multicast, broadcast) to mix while getting a causal and total ordering.