Browse Prior Art Database

STRUCTURING COMPLEX PROCESSES

IP.com Disclosure Number: IPCOM000148453D
Original Publication Date: 1969-May-02
Included in the Prior Art Database: 2007-Mar-30
Document File: 36 page(s) / 2M

Publishing Venue

Software Patent Institute

Related People

Horning, J.J.: AUTHOR [+3]

Abstract

J. J. Horning Stanford University B. Randell*

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 5% of the total text.

Page 1 of 36

STRUCTURING COMPLEX PROCESSES

J. J. Horning Stanford University
B. Randell*

   Research Division Yorktown Heights, New York

ABSTRACT: The general concept of a "process" has become increas- ingly used both as a tool for gaining an understanding of complex computer systems, and as a basis for organizing their design, This has occurred despite a lack of general agreement on even an informal definition of the concept.

     The present paper is an attempt to remedy this situation, by providing a logical framework which facilitates the definition and extended discussions of concepts such as "process", "program", "pro- cessor", "interpreter", and "co-routine''

               . In particular the paper concentrates on techniques for the structuring out of simple sequen- tial processes, of processes which mirror the behavior of complex computer systems.

*Present add~ess: The Compllting Laboratory, University of Newcastle upon Tyne, England.

RC 2459 (# 11912)
May 2, 1969
Systems organization

[This page contains 1 picture or other non-text object]

Page 2 of 36

i I * .

n .!!? c
2, ..r! x g . 5

b ~ r . ~

," g.2-

- s

a, '.-a 3

22 L Q

.- 9)

j j t w 2

g,.,

.n (U c 3

crrz 0 a,

25.5%

b a , z w r

        0
5 - +

a, -U

t=z,

2 3 $
.2 -a t

      b = a 3 0

I- 2 sz

I .Z c

W,"S
g p p

P 3 ;&?

 L';r z, a,.??

05$",

5 a, Uz

+

3

-

zr.-

3

&,no

v, $02

I- 3 %

0%
c4-

0 -2 2

r4p,

H -5 'E -2

-I-

$5

[This page contains 1 picture or other non-text object]

Page 3 of 36

TABLE OF CONTENTS

INTRODUCTION
SEQUENTIAL PROCESSES
EQUIVALENCE OF PROCESSES
THE COMBINATION OF PROCESSES
4.1 Elementary Forms of Combination
4.2 Co-existing Processes
4.3 Parallelism
4.4 Co-operation of Asynchronous Processes
4.5 Process Switching
MULTI-LEVEL PROCESSES
5.1 Defining One Process by Another
5.2 Programmable Processors
5.3 Description of Processes
5.4 Creation of Processes
THE USES OF STRUCTURE
6.1 Design Methodology
6.2 Improved Systems
CONCLUSIONS
ACKNOWLEDGEMENTS
REFERENCES

APPENDIX: FORMAL DEFINITIONS

i.

[This page contains 1 picture or other non-text object]

Page 4 of 36

[This page contains 1 picture or other non-text object]

Page 5 of 36

1. INTRODUCTION block diagram. "

and as a 'process' in Simula 173:

     The complexity of current large-scale computer systems, incorporating sophisticated operating systems, is reflected
in the difficulties that have been experienced in their design ana construction. In fact even the problems of gaining an understanding of the behavior of an existing complex computer system can be immense.

    One of our best methods of coping with complexity is 'divide and conquer'. The important question is: what units of decomposition are most appropriate for understanding, and designing, complex computer systems? The standard unit of decomposition for the program text of an operating system, as for any other large program, is the subroutine. However, when one is concerned with the dynamic behavior of an e...