The Essentials of Computer Organization and Architecture
Linda Null and Julia Lobur
Jones and Bartlett Publishers, 2003Chapter 6 Instructor's Manual
http://74.125.47.132/...sieh.idv.tw%2Forganization972%2FIM-Ch6.PDF+s
...
The Essentials of Computer Organization and Architecture
Linda Null and Julia Lobur
Jones and Bartlett Publishers, 2003Chapter 6 Instructor's Manual
http://74.125.47.132/...sieh.idv.tw%2Forganization972%2FIM-Ch6.PDF+site%3Awww.hmhsieh.idv.tw+instructor&hl=en&gl=us[2/12/2010 9:49:57 AM]
Page 1
Last Updated: November 2003
performance capabilities of a modern computer is the memory hierarchy. The goal of this
section is understanding how system memory (registers, cache, and main memory), online
memory (hard disk), near line memory (optical disk), and offline memory (tapes and floppy
disks) work together to provide acceptable performance at a minimal cost. Locality of
reference (or the clustering of memory references) is integral in understanding how a
memory hierarchy works.
• Cache memory. The purpose of cache is to speed up memory accesses by storing recently
used data closer to the CPU (in a memory that requires less access time). It is important to
discuss where this data is stored in cache, so direct mapping, fully associative cache, and
set associative cache are covered. The effective access time is a good way to measure the
performance of cache.
• Virtual memory. Virtual memory is a method used to increase the available address space
for a process by using the hard disk as an extension of RAM. Both paging and
segmentation (including advantages and disadvantages) are covered. In addition TLBs are
introduced as a method for improving performance of paging systems.
• Real-world examples of memory management. The chapter concepts are studied in the
context of the Pentium memory hierarchy.
Page 2
Required Lecture Time
The important concepts in Chapter 6 can typically be covered in 5 lecture hours. However, if a
teacher wants the students to have a mastery of all topics in Chapter 6, 9 lecture hours are
more reasonable. If lecture time is limited, we suggest that the focus be on the memory
hierarchy and cache memory. Virtual memory is often covered in an operating systems course,
but we provide coverage in this textbook because we feel it is important that students see the
hierarchy in its entirety.
Lecture Tips
Students often have difficulty understanding why the memory hierarchy works. In particular,
many miss the concept of bringing in an entire block when a "miss" occurs (thus using the
principle of locality). Instructors should focus on several small examples to make sure
students understand the concept of locality. This will also help with the section on paging.
Although the cache mapping schemes are relatively straight forward, students have a tendency
to miss why the schemes are necessary. (For example, many can work examples involving the
various mapping schemes, but they aren't sure exactly what they are doing and why they are
doing it.) It is important to stress not only how the main memory address is mapped to a cacheChapter 6 Instructor's Manual
http://74.125.47.132/...sieh.idv.tw%2Forganization972%2FIM-Ch6.PDF+site%3Awww.hmhsieh.idv.tw+instructor&hl=en&gl=us[2/12/2010 9:49:57 AM]
Page 2
Last Updated: November 2003
location but why.
For the various cache mapping schemes, we have found that working out small examples in
detail is a good way to approach these concepts. Examples showing blocks of memory actually
put into a small cache, and then that cache getting full (or several blocks mapping to the same
location in cache) are very helpful for motivating the need for the tag in cache.
If students are comfortable with cache mapping, paging is much easier for them to deal with,
as many concepts are similar. However, these similarities can cause confusion for the
students, as some tend to mix up cache and paging. Covering examples using both cache and
paging helps to clear up this confusion.
Answers to Exercises
[Show More]