Page Replacement with Fixed # of Frames

A reference string is the sequence of page numbers referenced by an executing program during a given time interval. Reference strings are used to compare different page replacement algorithms by counting the number of page faults generated. Since page faults are time consuming, the optimal page replacement algorithm selects the page that will not be referenced for the longest…

Double Linked List

Now one issue that linked lists have is that while it’s really easy to move to the next element in your list, moving backwards to find the previous item is really challenging. You literally have to start back at the beginning and move through every element, until you reach the one before where you just…

Segmentation and Paging

With paging, all components of a program, including code, static data, the stack, and other data structures, are combined into one contiguous address space divided into fixed-size pages. Segmentation addresses the problem by providing multiple logical address spaces for each process, where each segment can have a different size. A segment is a variable-size block of a…

Memory Paging

The main disadvantage of dividing memory into variable partitions is external fragmentation, which requires the searching of memory for holes large enough to satisfy each request. As we’ve mentioned previously, swapping or compaction is necessary when no hole large enough is available. A page is a fixed-size contiguous block of a logical address space identified by the…