Catálogo de publicaciones - revistas

Compartir en
redes sociales


ACM Computing Surveys (CSUR)

Resumen/Descripción – provisto por la editorial en inglés
A journal of the Association for Computing Machinery (ACM), which publishes surveys, tutorials, and special reports on all areas of computing research. Volumes are published yearly in four issues appearing in March, June, September, and December.
Palabras clave – provistas por la editorial

No disponibles.

Disponibilidad
Institución detectada Período Navegá Descargá Solicitá
No detectada desde mar. 1969 / hasta dic. 2023 ACM Digital Library

Información

Tipo de recurso:

revistas

ISSN impreso

0360-0300

ISSN electrónico

1557-7341

Editor responsable

Association for Computing Machinery (ACM)

País de edición

Estados Unidos

Fecha de publicación

Tabla de contenidos

Self-organizing linear search

J. H. Hester; D. S. Hirschberg

<jats:p>Algorithms that modify the order of linear search lists are surveyed. First the problem, including assumptions and restrictions, is defined. Next a summary of analysis techniques and measurements that apply to these algorithms is given. The main portion of the survey presents algorithms in the literature with absolute analyses when available. The following section gives relative measures that are applied between two or more algorithms. The final section presents open questions.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 295-311

A framework for choosing a database query language

Matthias Jarke; Yannis Vassiliou

<jats:p>This paper presents a systematic approach to matching categories of query language interfaces with the requirements of certain user types. The method is based on a trend model of query language development on the dimensions of functional capabilities and usability. From the trend model the following are derived: a classification scheme for query languages, a criterion hierarchy for query language evaluation, a comprehensive classification scheme of query language users and their requirements, and preliminary recommendations for allocating language classes to user types.</jats:p> <jats:p>The method integrates the results of existing human factors studies and provides a structured framework for future research in this area. Current and expected developments are exemplified by the description of "new generation" database query languages. In a practical query language selection problem, the results of this paper can be used for preselecting suitable query language types; the final selection decision will also depend on organization-specific factors, such as the available database management system, hardware and software strategies, and financial system costs.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 313-340

Consistency in a partitioned network: a survey

Susan B. Davidson; Hector Garcia-Molina; Dale Skeen

<jats:p>Recently, several strategies have been proposed for transaction processing in partitioned distributed database systems with replicated data. These strategies are surveyed in light of the competing goals of maintaining correctness and achieving high availability. Extensions and combinations are then discussed, and guidelines are presented for selecting strategies for particular applications.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 341-370

4.2BSD and 4.3BSD as examples of the UNIX system

John S. Quarterman; Abraham Silberschatz; James L. Peterson

<jats:p>This paper presents an in-depth examination of the 4.2 Berkeley Software Distribution, Virtual VAX-11 Version (4.2BSD), which is a version of the UNIX Time-Sharing System. There are notes throughout on 4.3BSD, the forthcoming system from the University of California at Berkeley. We trace the historical development of the UNIX system from its conception in 1969 until today, and describe the design principles that have guided this development. We then present the internal data structures and algorithms used by the kernel to support the user interface. In particular, we describe process management, memory management, the file system, the I/O system, and communications. These are treated in as much detail as the UNIX licenses will allow. We conclude with a brief description of the user interface and a set of bibliographic notes.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 379-418

Distributed operating systems

Andrew S. Tanenbaum; Robbert Van Renesse

<jats:p>Distributed operating systems have many aspects in common with centralized ones, but they also differ in certain ways. This paper is intended as an introduction to distributed operating systems, and especially to current university research about them. After a discussion of what constitutes a distributed operating system and how it is distinguished from a computer network, various key design issues are discussed. Then several examples of current research projects are examined in some detail, namely, the Cambridge Distributed Computing System, Amoeba, V, and Eden.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 419-470

On understanding types, data abstraction, and polymorphism

Luca Cardelli; Peter Wegner

<jats:p> Our objective is to understand the notion of <jats:italic>type</jats:italic> in programming languages, present a model of typed, polymorphic programming languages that reflects recent research in type theory, and examine the relevance of recent research to the design of practical programming languages. </jats:p> <jats:p>Object-oriented languages provide both a framework and a motivation for exploring the interaction among the concepts of type, data abstraction, and polymorphism, since they extend the notion of type to data abstraction and since type inheritance is an important form of polymorphism. We develop a λ-calculus-based model for type systems that allows us to explore these interactions in a simple setting, unencumbered by complexities of production programming languages.</jats:p> <jats:p>The evolution of languages from untyped universes to monomorphic and then polymorphic type systems is reviewed. Mechanisms for polymorphism such as overloading, coercion, subtyping, and parameterization are examined. A unifying framework for polymorphic type systems is developed in terms of the typed λ-calculus augmented to include binding of types by quantification as well as binding of values by abstraction.</jats:p> <jats:p>The typed λ-calculus is augmented by universal quantification to model generic functions with type parameters, existential quantification and packaging (information hiding) to model abstract data types, and bounded quantification to model subtypes and type inheritance. In this way we obtain a simple and precise characterization of a powerful type system that includes abstract data types, parametric polymorphism, and multiple inheritance in a single consistent framework. The mechanisms for type checking for the augmented λ-calculus are discussed.</jats:p> <jats:p>The augmented typed λ-calculus is used as a programming language for a variety of illustrative examples. We christen this language Fun because fun instead of λ is the functional abstraction keyword and because it is pleasant to deal with.</jats:p> <jats:p>Fun is mathematically simple and can serve as a basis for the design and implementation of real programming languages with type facilities that are more powerful and expressive than those of existing programming languages. In particular, it provides a basis for the design of strongly typed object-oriented languages.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 471-523

Supercomputer languages

R. H. Perrott; A. Zarea-Aliabadi

<jats:p>The high-level languages proposed for supercomputers, such as vector and array processors, have been designed using one of the following two approaches: (1) an existing sequential language is adapted, (2) a new language based on the hardware is developed. Recently, there has emerged a third approach, which does not require the programmer to be aware of the sequential nature of the language or the hardware characteristics.</jats:p> <jats:p>Examples of these language groups are examined to illustrate their main features and what is required of a programmer when using such languages. The study therefore enables a comparison of the different language approaches to be made.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 5-22

Efficient algorithms for finding maximum matching in graphs

Zvi Galil

<jats:p>This paper surveys the techniques used for designing the most efficient algorithms for finding a maximum cardinality or weighted matching in (general or bipartite) graphs. It also lists some open problems concerning possible improvements in existing algorithms and the existence of fast parallel algorithms for these problems.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 23-38

Distributed discrete-event simulation

Jayadev Misra

<jats:p>Traditional discrete-event simulations employ an inherently sequential algorithm. In practice, simulations of large systems are limited by this sequentiality, because only a modest number of events can be simulated. Distributed discrete-event simulation (carried out on a network of processors with asynchronous message-communicating capabilities) is proposed as an alternative; it may provide better performance by partitioning the simulation among the component processors. The basic distributed simulation scheme, which uses time encoding, is described. Its major shortcoming is a possibility of deadlock. Several techniques for deadlock avoidance and deadlock detection are suggested. The focus of this work is on the theory of distributed discrete-event simulation.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 39-65

Model-based recognition in robot vision

Roland T. Chin; Charles R. Dyer

<jats:p>This paper presents a comparative study and survey of model-based object-recognition algorithms for robot vision. The goal of these algorithms is to recognize the identity, position, and orientation of randomly oriented industrial parts. In one form this is commonly referred to as the "bin-picking" problem, in which the parts to be recognized are presented in a jumbled bin. The paper is organized according to 2-D, 2½-D, and 3-D object representations, which are used as the basis for the recognition algorithms. Three central issues common to each category, namely, feature extraction, modeling, and matching, are examined in detail. An evaluation and comparison of existing industrial part-recognition systems and algorithms is given, providing insights for progress toward future robot vision systems.</jats:p>

Palabras clave: General Computer Science; Theoretical Computer Science.

Pp. 67-108