Use runtime options instead of conditional compilation for MLFQS,
[pintos-anon] / src / threads / init.h
index a6fec055d0b66067fd590441b06c2d2a141492ea..45e9545f0a190261d1687c99ab6f142285bc00d1 100644 (file)
@@ -12,6 +12,18 @@ extern size_t ram_pages;
 /* Page directory with kernel mappings only. */
 extern uint32_t *base_page_dir;
 
+/* -o mlfqs:
+   If false (default), use round-robin scheduler.
+   If true, use multi-level feedback queue scheduler. */
+extern bool enable_mlfqs;
+
+#ifdef VM
+/* -o random-paging:
+   If false (default), use LRU page replacement policy.
+   If true, use random page replacement policy. */
+extern bool enable_random_paging;
+#endif
+
 /* -q: Power off when kernel tasks complete? */
 extern bool power_off_when_done;