ABSTRACT
This paper presents a virtual machine simulator with a memory trace facility having two unique features. First, the machine is designed to illustrate the translation from C/C++ to assembly language and from thence to machine language. Instead of the more common memory dump labeled by address, the tracer displays a graphic representation of the cell labeled by its symbol. Second, the simulator displays in real time the growth of the run-time stack on function activation, detects and displays the boundaries of the activation record, and displays all the cells on the run-time stack labeled by symbol. The paper includes download information for the open-source application.
- Gamma, E., Helm, R., Johnson, R., and Vlissides, J. Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley Publishing Company, Reading, MA, 1995. Google ScholarDigital Library
- Ghezzi, C. and Jazayeri, M. Programming Language Concepts, third ed. John Wiley & Sons, Inc., New York, NY, 1998. Google ScholarDigital Library
- Knuth, D. E. The Art of Computer Programming. Addison-Wesley, Reading, MA, 1997. Google ScholarDigital Library
- Lindholm, T. and Yellin, F. The Java(TM) Virtual Machine Specification. Sun Microsystems, Inc., Palo Alto, CA, 1999. Google ScholarDigital Library
- MARS, http://courses.missouristate.edu/KenVollmar/MARS/Google Scholar
- Null, L, and Lobur, J. Computer Organization and Architecture, second ed. Jones and Bartlett, Publishers, Inc. Sudbury, MA 2006. Google ScholarDigital Library
- Patt, Y. N., and Patel, S. J. Introduction to Computing Systems, second ed. McGraw-Hill, New York, 2004. Google ScholarDigital Library
- Patterson, D. A. and Hennessy, J. L. Computer Organization and Design. Morgan Kaufmann Publishers, San Francisco, CA, 2005. Google ScholarDigital Library
- Qt, http://qt.nokia.com/Google Scholar
- Rosenblum, M. The Reincarnation of Virtual Machines, ACM Queue, vol. 2, no. 5, July/August, 2004. Google ScholarDigital Library
- SPIM, http://pages.cs.wisc.edu/~larus/spim.htmlGoogle Scholar
- Tanenbaum, A. S. Structured Computer Organization. Pearson Prentice Hall, Upper Saddle River, NJ, 2006. Google ScholarDigital Library
- Warford, J. S. Computer Systems. Jones and Bartlett Publishers, Inc. Sudbury, MA, 2010. Google ScholarDigital Library
- Yurcik, W., ed. Special Issue on Specialized Computer Architecture Simulators, Journal on Educational Resources in Computing, vol. 2, no. 1, March 2002. Google ScholarDigital Library
Index Terms
- The pep/8 memory tracer: visualizing activation records on the run-time stack
Recommendations
A Memory Model for Symbolic Execution
IFCSTA '09: Proceedings of the 2009 International Forum on Computer Science-Technology and Applications - Volume 01Symbolic execution plays an important role in the area of software testing and program verification. However, there are several difficulties facing symbolic execution, one of which is how to abstract various data types in source codes. This paper ...
The intelligent memory allocator selector
Memory fragmentation is a serious obstacle preventing efficient memory usage. Garbage collectors may solve the problem; however, they cause serious performance impact, memory and energy consumption. Therefore, various memory allocators have been ...
An abstract stack based approach to verified compositional compilation to machine code
A key ingredient contributing to the success of CompCert, the state-of-the-art verified compiler for C, is its block-based memory model, which is used uniformly for all of its languages and their verified compilation. However, CompCert's memory model ...
Comments