in physical memory space each of these programs will be located. The
programmers don’t have to worry that some additional code they write in their
programs might overwrite some of the code that was written by another
programmer. The operating system will place all of the code in available memory
space and place appropriate translation mappings in the MMU to ensure that when
the logical address for one of the programs (tasks) is present in the program
counter, the appropriate physical address will appear on the bus to access the
desired physical memory location.
Your HP emulator/analyzer can give you partial support for a non-paged, dynamic
system. When the MMU has been set up to manage memory during execution of
one of the above tasks, you can update the deMMUer to translate addresses for that
task. When that task is executing, the analyzer will be able to make trace
measurements and provide correct results. When any of the other tasks are
executing, trace measurement results will be invalid because the other tasks will
depend on different translation tables in the MMU and there is no way to
automatically update the deMMUer when execution switches from one task to
another.
Paged dynamic system example
Assume you have developed a program that occupies 10 megabytes of logical
address space. Perhaps you have only 2 megabytes of physical address space in
your system. Still, you want to be able to run the entire program. You set up a
specification in the MMU translation control register to divide the address space
into pages (the 68040 lets you divide the memory space into one of two page sizes:
either 4 Kbytes or 8 Kbytes). Assume you set up the MMU to divide the memory
into 4-Kbyte pages. Your program will occupy 2,500 pages of code, and 500 of
these pages can be contained within your physical memory space at any given time.
As your program executes, the operating system moves pages of your program code
into address space in physical memory. When execution goes beyond the addresses
contained on the presently active page, the MMU checks to see if the next logical
address is on a page that has already been placed in physical memory. If it is, the
MMU performs the appropriate translation for the next logical address, placing the
appropriate physical address on the bus, and execution continues. If it is not, the
operating system moves the page that has the next address to be executed up from
an external storage device to physical memory space, overwriting one of the pages
that had occupied physical space before. The operating system updates the
translation tables to identify the new logical address space that now occupies that 4
Kbyte of physical memory, and program execution continues.
Chapter 10: Using Memory Management
Understanding Emulation and Analysis Of The Memory Management Unit
372
Summary of Contents for 64783A
Page 30: ...xxx ...
Page 31: ...Part 1 Quick Start Guide 1 ...
Page 33: ...1 Getting Started 3 ...
Page 70: ...40 ...
Page 75: ...Part 2 Using The Emulator 45 ...
Page 140: ...110 ...
Page 141: ...4 Using the Emulator How to control the processor and view system resources 111 ...
Page 227: ...5 Using the Emulation Bus Analyzer How to record program execution in real time 197 ...
Page 290: ...260 ...
Page 331: ...8 Configuring the Emulator 301 ...
Page 382: ...352 ...
Page 383: ...9 Solving Problems What to do when the emulator doesn t behave as expected 353 ...
Page 397: ...Part 3 Reference 367 ...
Page 399: ...10 Using Memory Management Understanding logical and physical emulation and analysis 369 ...
Page 429: ...11 Emulator Commands The command syntax reference for the emulator softkey interface 399 ...
Page 443: ...copy Chapter 11 Emulator Commands copy 413 ...
Page 451: ...display Chapter 11 Emulator Commands display 421 ...
Page 457: ...DISPLAY MEMORY Chapter 11 Emulator Commands DISPLAY MEMORY 427 ...
Page 461: ...DISPLAY MMU Chapter 11 Emulator Commands DISPLAY MMU 431 ...
Page 464: ...DISPLAY TRACE Chapter 11 Emulator Commands DISPLAY TRACE 434 ...
Page 480: ...modify Chapter 11 Emulator Commands modify 450 ...
Page 501: ...set Chapter 11 Emulator Commands set 471 ...
Page 514: ... SYMB Chapter 11 Emulator Commands SYMB 484 ...
Page 582: ...552 ...
Page 583: ...13 Setting X Resources 553 ...
Page 598: ...568 ...
Page 606: ...576 ...
Page 613: ...16 Specifications and Characteristics 583 ...
Page 627: ...Part 4 Concept Guide 597 ...
Page 629: ...17 X Resources and the Graphical User Interface 599 ...
Page 639: ...Part 5 Installation and Service Guide 609 ...
Page 697: ...19 Installation and Service 667 ...
Page 746: ...Chapter 19 Installation and Service Verifying the Installation 716 ...
Page 755: ...20 Installing Updating Emulator Firmware 725 ...
Page 762: ...732 ...
Page 778: ...748 ...
Page 810: ...X server 554 604 X Window System 54 Index 780 ...