ENVS 1800 Lecture Notes - Lecture 10: Data Integrity
ENVS 1800 Tutorial 10 Notes – Process Separation
Introduction
• When segmentation and paging are both provided, there may be two TLB tables, one for
each.
• When both are provided, the translation process performs its mapping in two steps.
• First, the segment table is used to determine the location of the pages that make up the
segment.
• Then, the page table locates the desired frame.
• Since the programmer establishes the segments, segmentation is less invisible to the
programmer than paging, even though during operation it is still invisible.
• This provides a few advantages to the programmer, stemming from the fact that each
segment can be treated independently.
• This means that a particular segment could be shared among different programs, for
example.
• Nonetheless, segmentation is harder to operate and maintain than paging and has
rapidly fallen out of favor as a virtual storage technique.
• The use of virtual storage offers one additional benefit that should be mentioned.
• Under normal program execution without virtual storage, every memory access has the
potential to address a portion of memory that belongs to a different process.
• This would violate system security and data integrity
• For example, a program in a partitioned memory could access data belonging to another
process simply by overflowing an array.
• Prior to virtual storage memory management, this was a difficult problem.
• It was necessary to implement memory access limits for each process in hardware
• There is no way for operating system software to check every attempted memory access
while a program is executing.
• The segment table is used to determine the location of the pages that make up the
segment.
find more resources at oneclass.com
find more resources at oneclass.com