{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

ece475-l23 - ECE 475/CS 416 Computer Architecture Virtual...

Info iconThis preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon
ECE 475/CS 416 Computer Architecture - Virtual Machines and Dynamic Translation Edward Suh C omputer S ystems L aboratory [email protected] ECE 475/CS 416 — Computer Architecture, Fall 2007 Prof. Suh Announcements Final Exam December 11th 9am PH101 Report conflicts by Thursday Course Review http://www.engineering.cornell.edu/CourseEval/
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
ECE 475/CS 416 — Computer Architecture, Fall 2007 Prof. Suh Review Sequential consistency In-order (memory ) instruction execution Cache coherence (atomic loads and stores) Architectural optimizations often violate sequential consistency and result in “relaxed” memory model Store buffers Interleaved memory system Non-blocking caches Register renaming Speculative execution ECE 475/CS 416 — Computer Architecture, Fall 2007 Prof. Suh Software Applications How is a software applications encoded? What are you getting when you buy a software application? What machines will it work on? Who do you blame if it doesn’t work, i.e., what contract(s) were violated?
Background image of page 2
ECE 475/CS 416 — Computer Architecture, Fall 2007 Prof. Suh ISA + Environment = Virtual Machine ISA alone not sufficient to write useful programs, need I/O Direct access to memory mapped I/O via load/store instructions problematic Time-shared systems Portability Operating system responsible for I/O Sharing devices and managing security Hiding different types of hardware (e.g., IDE/ATA vs. SCSI disks) ISA communicates with operating system through some standard mechanism, i.e., syscall instruction ECE 475/CS 416 — Computer Architecture, Fall 2007 Prof. Suh Application Binary Interface (ABI) Programs are usually distributed in a binary format that encode the program text (instructions) and initail values of some data segments Virtual machine specifications include What state is available at process creation
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Image of page 4
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}