Abstract
The study of structured programming has shown that through data abstraction, program reliability and maintainability can be improved. At the same time, vertical migration has been shown to be an effective way to improve the performance of programs. Contemporary techniques, however, tend to address the needs of only certain classes of programs and therefore may overlook or even preclude certain optimization opportunities. Dynamic microprogramming can overcome the problem of applicability of a particular vertical migration by allowing the migration to be tailored for each particular application. This paper describes a project which is exploring the interactions of these three concepts of dynamic microprogramming, vertical migration, and data abstraction and how they can be integrated to form a coherent facility which provides automated redefinition of computer architecture for each application model.
- D. L. Parnas, "On the Criteria to be Used in Decomposing Systems into Modules," Communications of the ACM Vol. 15(12), pp.1053--1058 (December 1972). Google ScholarDigital Library
- E. W. Dijkstra, A Discipline of Programming, Prentice-Hall, Englewood Cliffs, New Jersey (1976). Google ScholarDigital Library
- N. Wirth, Algorithms + Data Structures = Programs, Prentice-Hall, Englewood Cliffs, New Jersey (1976). Google ScholarDigital Library
- J. J. Horning, "Some Desirable Properties of Data Abstraction Facilities," ACM SIGPLAN Notices Vol. 8(2), pp.60--63, Proceedings of Conference on Data: Abstraction, Definition, and Structure (March 1976). Google ScholarDigital Library
- J. A. Stankovic, "The Types and Interactions of Vertical Migrations of Functions In A Multilevel Interpretive System," IEEE Transactions on Computers Vol. C-30(7), pp.505--513 (July 1981).Google ScholarDigital Library
- J. A. Stankovic, Structured Systems and Their Performance Improvement through Vertical Migration, UMI Research Press (1982).Google Scholar
- J. A. Stankovic, "Good System Structure Features: Their Complexity and Execution Time Cost," IEEE Transactions on Software Engineering Vol. SE-8(4), pp. 306--318 (July 1982).Google ScholarDigital Library
- J. Stockenberg and A. van Dam, "Vertical Migration for Performance Enhancement in Layered Hardware/Firmware/Software Systems," IEEE Computer Vol. 11(5), pp.35--50 (May 1978).Google ScholarDigital Library
- A. B. Tucker and M. J. Flynn, "Dynamic Microprogramming: Processor Organization and Programming," Communications of the ACM Vol. 14(4), pp.240--250 (April 1971). Google ScholarDigital Library
- P. F. Wilk and G. M. Bull, "A Strategy, Method, and Set of Tools For A User, Dynamic Microprogramming Environment," pp. 54--61 in Systems Architecture: Proceedings of the Sixth ACM European Regional Conference, Westbury House, Surrey, England (1981).Google Scholar
- W. A. Wulf, "Reliable Hardware-Software Architecture," ACM SIGPLAN Notices Vol. 10(6), pp.122--130, Proceedings International Conference on Reliable Software (June 1975). Google ScholarDigital Library
- H. G. Baker and C. Parker, "High Level Language Programs Run Ten Times Faster in Microstore," ACM SIGMICRO Newsletter Vol. 11(3&4), pp.171--173, MICRO-13 Proceedings Thirteenth Annual Workshop on Microprogramming (September-December 1980). Google Scholar
- T. G. Rauscher and A. K. Agrawala, "Dynamic Problem-Oriented Redefinition of Computer Architecture via Microprogramming," IEEE Transactions on Computers Vol. C-27(11), pp.1006--1014 (November 1978).Google ScholarDigital Library
- G. Chroust and J. R. Muhlbacher, Firmware, Microprogramming, and Restructurable Hardware, Elsevier North-Holland, New-York, New York (May 1980). Google ScholarDigital Library
- B. Holtkamp and H. Kaestner, "A Firmware Monitor To Support Vertical Migration Decisions In the Unix Operating System," ACM SIGMICRO Newsletter Vol. 13(4), pp.153--162, MICRO-15 Proceedings Fifteenth Annual Workshop on Microprogramming (December 1982). Google Scholar
- A. M. Abd-Alla and D. C. Karlgaard, "Heuristic Synthesis of Microprogrammed Computer Architecture," IEEE Transactions on Computers Vol. C-23, pp.802--807 (1974).Google ScholarDigital Library
- K. A. El-Ayat and J. A. Howard, "Algoritms for a Self-tuning Microprogrammed Computer," ACM SIGMI-CRO Newsletter Vol. 8(3), pp.85--91, MICRO-10 Proceedings Tenth Annual Workshop On Microprogramming. Google ScholarCross Ref
- R. Kurki-Suonio and J. Heinanen, "A Data Abstraction Language Based on Microprogramming," ACM SIGMICRO Newsletter Vol. 11(3&4), pp.154--161, MICRO-13 Proceedings Thirteenth Annual Workshop on Microprogramming (September-December 1980). Google Scholar
- V. D. Gligor, "Architectural Implications of Abstract Data Type Implementation," ACM SIGARCH Computer Architecture News Vol. 7(6), pp.20--30, Proceedings Sixth Annual Symposium on Computer Architecture (1979). Google ScholarDigital Library
- B. Liskov, et. al., CLU Reference Manual, Springer-Verlag, Berlin (1981). Computer Science Lecture Series No. 114 Google ScholarDigital Library
- M. Shaw, ALPHARD: Form and Content, Springer-Verlag, New York, New York (1981).Google Scholar
- M. Ohlin, The CLASS and Pointer Concepts in SIMULA, Swedish Research Institute of National Defense, Stockholm Sweden (31 July 1975). C10045--M3(E5)Google Scholar
- J. Ichbiah, "Rationale for the Design of the Ada Programming Language," ACM SIGPLAN Notices Vol. 14(6) (June 1979). Google ScholarDigital Library
- B. Stroustrup, "Classes: An Abstract Data Type Facility for the C Language," ACM SIGPLAN Notices Vol. 17(1), pp.42--51 (January 1982). Google ScholarDigital Library
- N. Wirth, "Modula: A Language for Modular Multiprogramming," Software - Practice and Experience Vol. 7(1), pp. 3--35 (January 1977).Google ScholarCross Ref
- N. Wirth, Modula-2, Institut fur Informatik ETH, Zurich, Switzerland (December 1980). Nr. 36Google Scholar
- C. M. Geschke, et. al., "Early Experience with Mesa," Communications of the ACM Vol. 20(8), pp.540--552 (August 1977). Google ScholarDigital Library
- J. Gannon, et. al., "Data-Abstraction Implementation, Specification, and Testing," ACM Transactions on Programming Languages and Systems Vol. 3(3), pp.211--223 (July 1981). Google ScholarDigital Library
- J. W. Thatcher, et. al., "Data Type Specification: Parameterization and the Power of Specification Techniques.," ACM Transactions on Programming Languages and Systems Vol. 4(4), pp.711--732 (October 1982). Google ScholarDigital Library
- A. K. Jones and B. H. Liskov, "A Language Extension for Controlling Access to Shared Data," IEEE Transactions on Software Engineering Vol. SE-2(4), pp.277--285 (December 1976).Google ScholarDigital Library
- M. Herlihy and B. Liskov, "A Value Transmission Method for Abstract Data Types," ACM Transactions on Programming Languages and Systems Vol. 4(4), pp.527--551 (October 1982). Google ScholarDigital Library
- M. Maekawa, et. al., "Firmware Structure and Architectural Support for Monitors, Vertical Migration and User Microprogramming," ACM SIGARCH Computer Architecture News Vol. 10(2), Proceedings Symposium on Architectural Support for Programming Languages and Operating Systems. Google ScholarDigital Library
- N. Kambiyashi, et. al., "Heart: An Operating System Nucleus Machine Implemented by Firmware," ACM SIGARCH Computer Architecture News Vol. 10(2), pp.194--204, Proceedings Symposium on Architectural Support for Programming Languages and Operating Systems (March 1982). Google ScholarDigital Library
- J. E. Roskos and R. I. Winner, "Toward User Sharing of the Microprogramming Level Under UNIX on the Perkin-Elmer 3220," ACM SIGMICRO Newsletter Vol. 12(4), pp.67--73, MICRO-14 Proceedings Fourteenth Annual Workshop on Microprogramming (December 1981). Google Scholar
- R. I. Winner and L. B. Reed, An Overview of Sharing the Control Store Under UNIX, Submitted to SOFTWARE: Practice and Experience, August 1983.Google Scholar
- A. G. Olbert, "Crossing the Machine Interface," ACM SIGMICRO Newsletter Vol. 13(4), pp.163--170, MICRO-15 Proceedings Fifteenth Annual Workshop on Microprogramming (December 1982). Google Scholar
- A. Nicolau and J. Fisher, "Using an Oracle to Measure Potential Parallelism in Single Instruction Stream Programs," ACM SIGMICRO Newsletter Vol. 12(4), pp. 171--182, MICRO-14 Proceedings Fourteenth Annual Workshop on Microprogramming (December 1981). Google Scholar
- J. F. Martinez-Carballido and V. M. Powers, "General Microprogram Width Reduction Using Generator Sets," ACM SIGMICRO Newsletter Vol. 12(4), pp.144--153, MICRO-14 Proceedings Fourteenth Annual Workshop on Microprogramming (December 1981). Google Scholar
- D. A. Patterson and D. R. Ditzel, "The Case for the Reduced Instruction Set Computer," ACM SIGARCH Computer Architecture News Vol. 8(6), pp.25--33 (October, 1980). Google ScholarDigital Library
- D. W. Clark and W. D. Strecker, "Comments on 'The Case for the Reduced Instruction Set Computer'," ACM SIGARCH Computer Architecture News Vol. 8(6), pp.34--38 (October, 1980). Google ScholarDigital Library
- R. I. Winner, "Adaptive Instruction Sets and Instruction Set Locality Phenomena," in Proceedings of IEEE International Workshop on Computer Systems Organization (March 1983).Google Scholar
Recommendations
Toward dependency-aware live virtual machine migration
VTDC '09: Proceedings of the 3rd international workshop on Virtualization technologies in distributed computingThe most powerful characteristic of any machine virtualization technology is its ability to adapt to both its underlying infrastructure and the applications it supports. Possibly the most dynamic feature of machine virtualization is the ability to ...
Correlation-based virtual machine migration in dynamic cloud environments
Virtual machine (VM) migration enables flexible and efficient resource management in modern data centers. Although various VM migration algorithms have been proposed to improve the utilization of physical resources in data centers, they generally focus ...
Comments