ppxscal/embedding_network huggingface dataset:
The CAP project - an interim evaluation
Authors: R. M. Needham
Venue: Proceedings of the sixth ACM symposium on Operating systems principles (1977)

The CAP project has included the design and construction of a computer with an unusual and very detailed structure of memory protection, and subsequently the development of an operating system which fully exploits the protection facilities. The present paper passes the work in review and draws conclusions about good and bad aspects of the system. The basic architecture of the CAP machine is described in [1] and a largely prospective description of the protection system is given in [2]. The project was started as an experiment in hardware memory protection. A computer was to be designed in which operating system development was easy, in which ruggedness was produced by a much more fine-grained network of firewalls than was (or is) usual, and in which the full range of protection facilities was available to the writers of subsystems. Simplicity of mechanism was a very important goal, although some emphasis was placed on flexibility of protection policy.
A developmental model for data translation
Authors: James P. Fry, Randall L. Frank, Ernest A. Hershey,  III
Venue: Proceedings of 1972 ACM-SIGFIDET workshop on Data description, access and control (1972)

A model for generalized data translation is presented. Data translation is defined as &ldquo;the process whereby data stored in a form that can be processed on one computer (the source file) can be translated into a form (target file) which can be used by the same or different processing systems on a possibly different computer.&rdquo; Inputs to the Data Translator are the source data and two descriptive languages which drive the translation process. A description of the source and target data is presented to the data translator in a Stored Data Definition Language (SDDL). This description includes both the logical (data structure) aspects of the data as well as the physical (storage structure) aspects. A Translation Definition Language (TDL) is used to define the source to target translation parameters. The data translation model includes several components - the source and target converters, which deal with the storage structure of the data, and a restructurer component which is concerned with changes in the logical structure of the data. A Normal Form of Data is introduced and used to allow the Restructurer to operate independently of the source and target conversion processes. The Normal Form of data provides a means of representing data which is independent of current data structuring dependencies.
A microprogrammed machine architecture for efficient matrix multiplication
Authors: Robert W. Nowlin, Donald Gustafson
Venue: Proceedings of the 9th annual workshop on Microprogramming (1976)

In the modern world of control and estimation theory, matrix multiplications are ubiquitous. Minicomputers designed as general purpose machines do not have instruction sets designed to efficiently implement these multiplications. A microprogrammable machine may be capable of efficient matrix multiplications if it has the proper architecture. A Hewlett-Packard HP-2100 minicomputer was used to investigate architectural and efficiency problems. Algorithms were developed to calculate execution times for any n, m, and T where n and m refer to the matrix dimensions and T is the basic machine instruction time. The execution times for various size matrix operations indicated savings of up to 80% for microcoded operations.
A vertically integrated VLSI design environment
Authors: Jonathan Rosenberg, David Boyer, John Dallen, Stephen Daniel, Charles Poirier, John Poulton, Durward Rogers, Neil Weste
Venue: Proceedings of the 20th Design Automation Conference (1983)

A VLSI design system called VIVID is the heart of a newly developed, vertically integrated design environment. This environment provides support for all phases of design from high-level system specification through on-site fabrication to construction of prototype systems. Key features already Implemented include: the use of a circuit description language at the level of a silicon assembler; a fast, highly interactive combination floor planner and layout editor; fast interactive timing simulation; and layout made free from design-rule constraints by the use of virtual-grid compaction. Functional specification and verification, automated routing, standard cell layout, and semi-automated layout from schematics are being built upon the foundation formed by VIVID.
Multi-queue scheduling of two tasks
Authors: Jeffrey R. Spirn
Venue: Proceedings of the 1976 ACM SIGMETRICS conference on Computer performance modeling measurement and evaluation (1976)

A class of schedules in the two customer central server queueing model, consisting of a &ldquo;CPU&rdquo; server and m &ldquo;I/O&rdquo; servers, is considered. Optimal (maximal CPU utilization) CPU and I/O schedules are obtained. The best CPU schedule depends on the I/O schedule in effect; and is either Longest or Shortest-Expected-Remaining-Processing-Time-First. However, for certain I/O schedules the CPU schedule is immaterial. The best I/O schedule is always to process the (expected) longer CPU customer first.
Using an extended version of GERT to simulate priority and assignment rules in a labor limited jobshop system
Authors: Michael J. Maggard, William G. Lesso, Gary L. Hogg, Don T. Phillips
Venue: Proceedings of the 6th conference on Winter simulation (1973)

In the literature, prior to 1965, most research on jobshop systems was on machine limited queueing systems. More recently this research has been directed toward labor and machine limited queueing systems. In this direction, the authors have developed and implemented an extended version of GERT called GERTS III QR (a GERTS model able to handle queueing systems with resource limitations). This model is further refined to handle both homogeneous and heterogeneous classes of labor. This paper describes the GERTS III QR model and gives an illustration of its application. The example is a jobshop system with service centers in parallel. Three alternative priority and assignment rules, first-come-first-served, random and shortest operation time are evaluated.
Program slicing
Authors: Mark Weiser
Venue: Proceedings of the 5th international conference on Software engineering (1981)

Program slicing is a method used by experienced computer programmers for abstracting from programs. Starting from a subset of a program's behavior, slicing reduces that program to a minimal form which still produces that behavior. The reduced program, called a &ldquo;slice&rdquo;, is an independent program guaranteed to faithfully represent the original program within the domain of the specified subset of behavior. Finding a slice is in general unsolvable. A dataflow algorithm is presented for approximating slices when the behavior subset is specified as the values of a set of variables at a statement. Experimental evidence is presented that these slices are used by programmers during debugging. Experience with two automatic slicing tools is summarized. New measures of program complexity are suggested based on the organization of a program's slices.
The graphics CAD/CAM industry(Panel Session): Financial perspectives
Authors: Frederick R. Adler, Thomas P. Kurlack, Joseph C. McNay, Margaret A. Reichenbach
Venue: ACM SIGGRAPH Computer Graphics (1982)

Richard N. Spann Companies supplying graphics CAD/CAM components and systems form an important high technology business segment. Panelists representing four financial perspectives will discuss market entry, financing, segment performance and shareholder's expectations. Development of the graphics CAD/CAM industry in the 80's will be the unifying theme.
A first course in discrete structures with applications to computer science
Authors: J. P. Tremblay, R. Manohar
Venue: ACM SIGCSE Bulletin (1974)

This paper describes an introductory course in discrete structures for the undergraduate computer science student that has evolved at the University of Saskatchewan, Saskatoon. The philosophy of such a course and certain problems encountered in preparing and teaching it are discussed.
Changing methodology of User Services at Cuyahoga community college
Authors: Susan J. Bahr
Venue: Proceedings of the 10th annual ACM SIGUCCS conference on User services (1982)

User Services has a different meaning for each computer center at each educational institution. Its foundations seem to be in what User Services is at a research-oriented university. In establishing such services at a community college, one confronts all the differences between universities and community colleges. From 1980-1981, I served as an academic consultant at Temple University in Philadelphia, Pennsylvania and at Trinity University in San Antonio, Texas, both research-oriented universities with Computer Information Science degrees. Among the reasons for User Services at these institutions are aiding computer science students, helping graduate students with SPSS, and helping faculty with research being done using the computer.
Seeking configurational optimization in computer systems
Authors: Swatantra K. Kachhal, Sant R. Arora
Venue: Proceedings of the 1975 annual conference (1975)

This paper develops analytic techniques for achieving macro-level configurational optimization of computer systems. The computer is viewed as a network of queues with the processors, main memory, auxiliary memory and the transfer channels being the servers. The objective function to be minimized is the total system cost divided by the probability of the CPU busy time for a given user benchmark. A queueing model is developed which evaluates this probability. The scope of optimization includes the determination of the parameters related to component selection and the determination of management oriented variables like degree of multiprogramming, main memory space allotted to each program. The optimization algorithm is a modified 'Direct Search Method'.
Conversational systems programming by incremental extension of system configuration
Authors: Rudolph A. Krutar
Venue: Proceedings of the international symposium on Extensible languages (1971)

An engineer needs tools for his trade and a laboratory or toolshop in which to store them, sharpen them, and use them. A software engineer needs programming tools and a software laboratory. Input/output routines, lexical analyzers, lexicons, storage allocators, temporary files (stacks queues, sorting files), debugging aids, etc., all are useful tools in any software factory or research house. To set up a shop one needs a program library (with librarian), a linkage convention, and a set of interface languages. In my shop (1) each program in the library must have a calling sequence; (2) the linkage convention is a peculiar coroutine linkage (with each program issuing standard subroutine calls on up to k0 virtual facilities (currently k0&equil;8)); and (3) the interface languages are very simple and few in number. An execution instance of a program is a 'process' and may be 'active' or 'suspended'. An output stream of one process may be specified as an input stream of another. Those who build systems such as mine (including myself) are often disinterested in providing simple but useful services like formatted output, program libraries, listing controls, etc. Furthermore we must build some facilities which are not really relevant to our goals (e.g. input-output routines, lexical analyzers, recursion mechanisms, storage allocators, syntax recognizers, and so on). If we try to use facilities constructed for other systems, we must steal copies of the source code and modify them extensively ([Ki 69]). Such facilities are almost always superfluous to our goals and should therefore be external to our systems. This externalization is surprisingly easy.
Issues in transnet packetized voice communication
Authors: Danny Cohen
Venue: Proceedings of the fifth symposium on Data communications (1977)

In recent years, very important progress was made in both real-time digital computer communication and real-time digital voice communication, due to the growing importance of geographically distributed computation, the growing need for resource sharing, and the need for secure voice communication. The progress in digital voice communication&mdash;mainly aimed at low data rate and high fidelity speech communication&mdash;has led to various vocoding techniques such as LPC and CVSD. The progress in real-time computer communication&mdash;which is mainly aimed at low delays, high bandwidth and high cost-effectiveness&mdash;led to technologies such as packet switching, packet-radio, and satellite communication, as well as intercomputer communication protocols. It is the natural result of the progress in both areas that the use of packet switching technology be considered for voice communication. In this paper the issues involved in the application of packet-switching networks to real-time voice communication are identified and explained.
A solution to line-routing problems on the continuous plane
Authors: David W. Hightower
Venue: Proceedings of the 6th annual Design Automation Conference (1969)

This paper discusses a new line-routing algorithm. The algorithm has been programmed in FORTRAN II for the IBM 7094 and in FORTRAN IV for the IBM 360/65. It has given good results when applied to many line-routing problems such as mazes, printed circuit boards, substrates, and PERT diagrams. The main advantages of this algorithm, which is based on the continuous plane, over conventional algorithms based on the discrete plane are twofold: 1. Since the algorithm is based on the continuous plane, there is theoretically no limit to the degree of precision used to describe the position of points. In practice, the only factor restricting the precision is the magnitude of the largest (or smallest) number which may be stored in a computer. As a result, the nodes on a printed circuit board, for example, can be input with mil accuracy. If this feat were to be accomplished by existing methods on a 9&times;9 inch board, a matrix of 81,000,000 cells would have to be stored (and searched) in the computer. 2. The algorithm stores only line segments; therefore to find a path, only the segments that are currently defined need be investigated. Usually with conventional methods, every cell that lies on every possible minimal path must be investigated. The net result is that this algorithm is much faster than the conventional method.
Kalman filtering in water quality modeling: Theory vs. practice
Authors: B. P. Schrader, S. F. Moore
Venue: Proceedings of the 9th conference on Winter simulation - Volume 2 (1977)

Kalman filtering is a statistical technique for computing minimum-uncertainty estimates of the states in linear uncertain dynamic systems. Filtering theory is qualitatively described. Potential applications to water quality modeling are discussed for state and parameter estimation, and model identification. Literature is reviewed on filtering applications to modeling receiving water quality. Several characteristics of environmental modeling problems are identified which may limit the filter's applicability. A case study is presented of optimal filtering applied to hydrothermal model development for a coastal power plant discharge. A simple model structure is proposed, for which 33 parameters are estimated using full-information maximum-likelihood methods with filtering. Discrepancies in model performance are highlighted, which typify the difficulties of a filtering approach to water quality model development. The theoretical advantages of filtering, and its practical limitations, are summarized for water quality applications. It is concluded that filtering techniques offer valuable organizing concepts, and are themselves a valuable tool when dynamic quantification of the variance in state estimates is required. Filtering is most applicable when dealing with a low-dimensional system with a well-known model and dense data base, for which highly accurate short-term forecasts are required. However, less accurate models and estimation techniques may provide more cost-effective solutions to many water quality problems.
GPMS, a general purpose memory management system&mdash;user's memory&mdash;that is.
Authors: I. Ganapathy, R. F. Hobson
Venue: Proceedings of the eighth international conference on APL (1976)

GPMS is a keyword based information entry and retrieval system. The data consist of a collection of messages, where a message is an arbitrary quantum of free text. Users supply both keywords and message body. Keywords are hashed into an association file while messages, which receive unique chronological names, reside in a message file. A simple English-like query package is included. GPMS has been used as a community information management system (advertisements, quotations, pleas, comments, descriptions, reminders, remedies, letters, warnings, jokes, etc.). It has also been used for literature research and quotation cataloging. Other possible uses include an APL news centre, a database for 'how' messages, source program storage, library inventory and control, etc.
RAP. 2 - an Associative Processor for data bases
Authors: S. A. Schuster, H. B. Nguyen, E. A. Ozkarahan, K. C. Smith
Venue: Proceedings of the 5th annual symposium on Computer architecture (1978)

RAP - a Relational Associative Processor - is a back-end or peripheral device to augment a general purpose computer for implementing a data base management system (DBMS). Its architecture is based on the fact that data base operations are inherently set-oriented and that data base addressing is best accomplished through associative reference to achieve high data independence. RAP utilizes these characteristics by combining the features of associative and array processors. Previous publications on RAP have dealt separately with the details of the first version of its architecture [1,2,3,4] language interface [5,6] and performance evaluation [7,8,9,]. This paper provides details on a recently evolved, faster, and more flexible architecture for RAP.
Man and machine in medical electronics
Authors: Peter J. Shaw
Venue: ACM SIGGRAPH Computer Graphics (1972)

Advances in computer technology have come a long way in the past twenty years. By far and away, the largest use of the computer is as a data bank for accounting, inventory and other such type business record keeping procedures. Only recently has man begun to channel his vast resources in computer technology towards the field of medicine. And even here, we now find the great preponderance of computers used exclusively for information retrieval and storage. The purpose of this paper will be to try to show how simple, inexpensive, man-to-computer interfaces can successfully be used to greatly improve the efficiency and effectiveness of those involved in the healing arts.
Using attributed grammars to test designs and implementations
Authors: A. G. Duncan, J. S. Hutchison
Venue: Proceedings of the 5th international conference on Software engineering (1981)

We present a method for generating test cases that can be used throughout the entire life cycle of a program. This method uses attributed translation grammars to generate both inputs and outputs, which can then be used either as is, in order to test the specifications, or in conjunction with automatic test drivers to test an implementation against the specifications. The grammar can generate test cases either randomly or systematically. The attributes are used to guide the generation process, thereby avoiding the generation of many superfluous test cases. The grammar itself not only drives the generation of test cases but also serves as a concise documentation of the test plan. In the paper, we describe the test case generator, show how it works in typical examples, compare it with related techniques, and discuss how it can be used in conjunction with various testing heuristics.
Evaluating and comparing software metrics in the software engineering laboratory
Authors: Victor R. Basili, Tsai-Yun Phillips
Venue: Proceedings of the 1981 ACM workshop/symposium on Measurement and evaluation of software quality (1981)

There has appeared in the literature a great number of metrics that attempt to measure the effort or complexity in developing and understanding software(1). There have also been several attempts to independently validate these measures on data from different organizations gathered by different people(2). These metrics have many purposes. They can be used to evaluate the software development process or the software product. They can be used to estimate the cost and quality of the product. They can also be used during development and evolution of the software to monitor the stability and quality of the product. Among the most popular metrics have been the software science metrics of Halstead, and the cyclomatic complexity metric of McCabe. One question is whether these metrics actually measure such things as effort and complexity. One measure of effort may be the time required to produce a product. One measure of complexity might be the number of errors made during the development of a product. A second question is how these metrics compare with standard size measures, such as the number of source lines or the number of executable statements, i.e., do they do a better job of predicting the effort or the number of errors? Lastly, how do these metrics relate to each other?
Earnings per share, debt financing costs and debt composition - a simulation model
Authors: George M. Frankfurter, Bertrand Horwitz
Venue: Proceedings of the 5th conference on Winter simulation (1971)

The advent of the Accounting Principles Board Opinion No. 15, Earnings Per Share has1 generated a good deal of discussion concerning the theoretical underpinning, the complexities of computation and the final results of determining primary and fully diluted earnings per share. Both Opinion No. 15 and the earlier Opinion No. 9, which was modified by Opinion No. 15, reflect the concern of the accounting profession with a single, important statistic. The new ruling required convertible debt be considered as common stock equivalents, and therefore enter to the denominator of the primary EPS statistic, if, and only if, &ldquo;... at the time of issuance, based on market price, it has a cash yield of less than 66 2/3% of the then current bank prime interest rate.&rdquo;2 Otherwise, it is included in the fully diluted EPS, which reflects maximum potential dilution.
Application of fuzzy logic to approximate reasoning using linguistic synthesis
Authors: E. H. Mamdani
Venue: Proceedings of the sixth international symposium on Multiple-valued logic (1976)

This paper describes an application of fuzzy logic in designing controllers for industrial plants. A Fuzzy Logic is used to synthesise linguistic control protocol of a skilled operator. The method has been applied to pilot scale plants as well as in a practical industrial situation. The merits of this method in its usefulness to control engineering are discussed. This work also illustrates the potential for using fuzzy logic in modelling and decision making. An avenue for further work in this area is described where the need is to go beyond a purely descriptive approach and explore means by which a prescriptive system may be implemented.