X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=src%2Fthreads%2Finit.h;h=4455c212d04dec6d07ea201862c07d83cebcb4a0;hb=42428b5613cb885d3d1fa9933f6dc51f5a6c8019;hp=1d6c5c6fdd2d88bdaf765e672f8924687d42f32a;hpb=e4b11e55cce16307ffae87d90c08bacb1a2f3c66;p=pintos-anon diff --git a/src/threads/init.h b/src/threads/init.h index 1d6c5c6..4455c21 100644 --- a/src/threads/init.h +++ b/src/threads/init.h @@ -1,11 +1,25 @@ -#ifndef HEADER_INIT_H -#define HEADER_INIT_H 1 +#ifndef THREADS_INIT_H +#define THREADS_INIT_H +#include +#include #include +#include /* Physical memory size, in 4 kB pages. */ -size_t ram_pages; +extern size_t ram_pages; -struct tss *tss; +/* Page directory with kernel mappings only. */ +extern uint32_t *base_page_dir; -#endif /* init.h */ +/* -o mlfqs: + If false (default), use round-robin scheduler. + If true, use multi-level feedback queue scheduler. */ +extern bool enable_mlfqs; + +/* -q: Power off when kernel tasks complete? */ +extern bool power_off_when_done; + +void power_off (void) NO_RETURN; + +#endif /* threads/init.h */