133 research outputs found

    Synchronization of processes

    Get PDF
    The study of the synchronization of processes is a very interesting field. It-brings together concepts that have originated in the design of operating systems, and of high level programming languages. Also it is becoming clear that the design of algorithms for parallel execution is intimately connected with synchronization problems. Some specialized synchronization problems have arisen in the design of data base systems. Indeed, distributed data bases provide an example of distributed processing that has immense practical significance. To summarize, synchronization of processes is a universal activity whose importance is being felt throughout computer science. The time has therefore come for the synchronization of processes to be studied as a topic in its own right. In this course I am taking such a broad viewpoint, and am trying to integrate some aspects of operating systems, languages, and parallel algorithms. However, this being a first attempt, the integration is not as thorough as I would have wished. Also, in the short time at my disposal, I am not able to discuss several very important topics, such as reliability

    A note on segmentation of computer programs

    Get PDF
    It has been shown that the cycle picture of the directed graph of a computer program can be used to solve the segmentation problem. A simple algorithm for finding the cycle picture is given

    Exceptions in Information Systems

    Get PDF
    The concept of exception has been defined in diverse ways. We relate exceptions to computational transactions and to control constructs. Our view of a transaction is very broad, and we consider transactional exceptions to be instances of undefined function values. By giving different interpretations to undefined we arrive at a classification of transactional exceptions. Our primary interest is in information systems, i.e., in database transactions, and in processes that consist of such transactions. In the database context we show that liberal treatment of exceptions is simpler than total quality management for consistency based on a set of constraints. We refer to control operations that link transactions into processes as actions. Actions tend to be time-related, and time Petri nets provide actions with semantics. The time Petri net representation indicates where exceptions can arise. We also consider high-level monitors for the detection of exceptions. Although our emphasis is on detection of exceptions, their handling is also discussed

    Modularization: a first draft

    Get PDF
    From the very beginning of electronic computation program size has created problems. They have been both conceptual (How am I to understand this fifty page listing ?) and physical (Must recompile 2500 lines of code after every little change?). Software engineering has been our response to these problems. Two primary tools of software engineering are data abstraction and modularizatlon. and our purpose here Is to try and make them consistent with each other

    Trees as data structures

    Get PDF
    In these notes for a series of lectures given at the University of Wollongong in the Winter of 1979 emphasis is on the structural aspects of trees, i.e., there is little concern with properties related to the information content of trees. Hence nothing will be found here on, for example, optimization of weighted trees, B-trees, or decision trees as used in artificial intelligence work. Some of the material is an adaptation of the author\u27s research results. This research was partly supported by the National Science Foundation of the United States under Grants GJ-4l683 and MCS 77-01462

    Formal Specification of Software

    No full text
    ion of domain-specific concepts 1. Mechanics of specification c. Modularization a. Specification teams d. Validation b. The specification development log 3. Specification and design c. Graphical aids and other documentation a. Declarative and operational styles d. An infrastructure for specification b. Design as algorithm selection 2. Validation and verification c. Transformational development of software a. Formal methods II. Formal Specification of Programs b. Walkthroughs 1. Axiomatic specification c. Executable specifications 2. Abstract models 3. Reusability of specifications 3. Set theory 4. Predicate logic 5. Programming languages in specification Annotated Outline 6. Evaluation of the specification methods a. Abstract data types The detailed outline of this module is given in a deb. Data transformers clarative style, i.e., as a description of the various aspects of formal specification of software, rather 7. Examples than as an imperative prescription. a. Data types: Nat0, se..
    corecore