ABSTRACT
An innovative design for an interactive paint program has been developed based on multiple processes and message passing. Traditional paint programs combine interrupt-driven support of a graphical input device, such as a mouse or tablet, with the coloring of pixels in a raster display. We advocate a different design methodology which is illustrated in our implementation. The multiple processes and message passing primitives provided by some real-time operating systems encourage the design of parallel-program architectures and anthropomorphic programming structures, analogous to artist procedures and the metaphors of Smalltalk.
The Thoth operating system was used to experiment with such an anthropomorphic design. Thoth provides a hospitable environment in which to investigate the distribution of algorithms between software and microprogrammed hardware processes, the performance and responsiveness of a multiple-process interactive program, and experimental user interfaces using an Ikonas 3000 frame buffer.
The paint program consists of processes which handle the graphics tablet, track an iconic cursor, paint a selection of brushes, fill regions of the image, draw lines, and implement the user interface. Some processes have been implemented both in software and microcode.
- 1.Beach, R.J., Beatty, J.C., Booth, K.S., White, A.R., "Documentation Graphics at the University of Waterloo," International Conference on Research and Trends in Document Preparation Systems, Swiss Institute of Technology, Lausanne, 1981.Google Scholar
- 2.Beatty, J.C., Booth, K.S., Matthies, L.H., "Watkins Algorithm Revisited," CMCCS, Waterloo, 1981.Google Scholar
- 3.Booth, K.S., and Gentleman, W.M., "Anthropomorphic Programming," Conference on Issues for Large Scale Computing, Salishan Lodge, Oregon, March 1982.Google Scholar
- 4.Booth, K.S., and MacKay, S.A., "Techniques for Frame Buffer Animation," Graphics Interface '82 Conference Proceedings, Toronto, 1982.Google Scholar
- 5.Cargill, T.A., "A View of Source Text for Diversely Configurable Software," PhD thesis, University of Waterloo, 1979. Google ScholarDigital Library
- 6.Cheriton, D.R., "Multi-process Structuring and the Thoth Operating System," PhD thesis, University of Waterloo, 1979. Google ScholarDigital Library
- 7.Cheriton, D.R., Malcolm, M.A., Melen, L.S., and Sager, G.R., "Thoth, a Portable Real-time Operating System," CACM, Vol 22, No 2, 1979. Google ScholarDigital Library
- 8.Dyment, Doug, "A Corkscrew for the Software Bottleneck," Micros 1:2 (October 1980) pp 21-24.Google Scholar
- 9.Evans, K.B., Tanner, P.P., and Wein, M., "Tablet Based Valuators that Provide One, Two, or Three Degrees of Freedom," Computer Graphics, Vol 15, No 3, Aug. 1981. Google ScholarDigital Library
- 10.Gentleman, W.M., "Message Passing Between Sequential Processes: the Reply Primitive and Administrator Concept," Software-Practice and Experience, Vol 11, pp. 435-466, 1981.Google ScholarCross Ref
- 11.Goldberg, A., and Ingalls, D.H.H., "The Smalltalk-80 System," BYTE, Vol 6, No 8, Aug. 1981.Google Scholar
- 12.Gurd, R.P., "A Tiny C Compiler for a Bit-Sliced Microprocessor," Master's thesis, University of Waterloo (in preparation), 1982.Google Scholar
- 13.Kahn, K, and Hewitt, C., "Dynamic Graphics Using Quasi Parallelism," Computer Graphics, Vol 12, No 3, Aug. 1978. Google ScholarDigital Library
- 14.Kay, A., Goldberg, A., "Personal Dynamic Media," Computer, IEEE, Vol 10, No 3, Mar. 1977.Google Scholar
- 15.Levoy, M., "Computer Animation Tutorial Notes," SIGGRAPH '81, 1981.Google Scholar
- 16.Malcolm, M.A., et al., Zed Reference Manual, Thoth Computer Research Foundation, University of Waterloo, 1980.Google Scholar
- 17.Reynolds, C.W., "Computer Animation with Scripts and Actors," Computer Graphics, this issue. Google ScholarDigital Library
- 18.Smith, A.R,, "Paint," Tech. Memo. No. 7, Computer Graphics Lab, NYIT, Old Westbury, NY, July 1978.Google Scholar
- 19.Smith, A.R., "Tint Fill," Computer Graphics, Vol 13, No 2, Aug. 1979. Google ScholarDigital Library
- 20.Shoup, R.G., "Color Table Animation," Computer Graphics, Vol 13, No 2, Aug. 1979. Google ScholarDigital Library
- 21.Tilbrook, D.M, "A Newspaper Pagination System," M.Sc. thesis, Department of Computer Science, University of Toronto, 1976.Google Scholar
Index Terms
- The message is the medium: Multiprocess structuring of an interactive paint program
Recommendations
The message is the medium: Multiprocess structuring of an interactive paint program
An innovative design for an interactive paint program has been developed based on multiple processes and message passing. Traditional paint programs combine interrupt-driven support of a graphical input device, such as a mouse or tablet, with the ...
A new fast message passing communication system for multiprocessor workstation clusters
Progress in computer researchIn this paper, a fast message passing communication architecture (FMP) is proposed in order to reduce the software overhead of communication, which has been a great impediment to the good performance of workstation clusters. A FMP system is implemented ...
Logically Instantaneous Message Passing in Asynchronous Distributed Systems
Asynchrony (due to unknown message transmission delay) complicates the design of protocols for distributed systems. To simplify the protocol design task therefore, the authors propose an interprocess (point-to-point) communication mechanism that has the ...
Comments