X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fthreads%2Finit.h;h=45e9545f0a190261d1687c99ab6f142285bc00d1;hb=589006d404af818edc3996079ca077c85727db3b;hp=b4820796255e054e649eb6352b1aa6c6e089719e;hpb=57f2be6df1ca51a22b41699a5f3e5a6671400d3d;p=pintos-anon diff --git a/src/threads/init.h b/src/threads/init.h index b482079..45e9545 100644 --- a/src/threads/init.h +++ b/src/threads/init.h @@ -1,9 +1,32 @@ -#ifndef HEADER_INIT_H -#define HEADER_INIT_H 1 +#ifndef THREADS_INIT_H +#define THREADS_INIT_H +#include +#include #include +#include -extern size_t kernel_pages; +/* Physical memory size, in 4 kB pages. */ extern size_t ram_pages; -#endif /* init.h */ +/* 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; + +void power_off (void) NO_RETURN; + +#endif /* threads/init.h */