X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=doc%2Fvm.texi;h=260f9d99c751fce1a3c211e04cbd9119be7f202a;hb=276b4866a63f409f91c27cbc6af8ec58e8cbad91;hp=bf53bf8ee17ddb977347f488737c5554fdc2bc7f;hpb=e377c00ce713a0cc1d896f5d10e6be62cd626599;p=pintos-anon diff --git a/doc/vm.texi b/doc/vm.texi index bf53bf8..260f9d9 100644 --- a/doc/vm.texi +++ b/doc/vm.texi @@ -374,6 +374,12 @@ pages less frequently using your algorithm than using some inferior page replacement policy. The canonical example of a poor page replacement policy is random replacement. +You must write your code so that we can choose a page replacement policy +at compile time. By default, the LRU-like algorithm must be in effect, +but we must be able to choose random replacement by inserting the line +@code{#define RANDOM_REPLACEMENT 1} in @file{constants.h}. +@xref{Conditional Compilation}, for details. + Since you will already be paging from disk, you should implement a ``lazy'' loading scheme for new processes. When a process is created, it will not run immediately. Therefore, it doesn't make sense to load