- return make_seg_desc (0, 0xfffff, SYS_CODE_DATA, TYPE_WRITABLE,
- dpl, GRAN_PAGE);
+ for (; *argv != NULL && **argv == '-'; argv++)
+ {
+ char *save_ptr;
+ char *name = strtok_r (*argv, "=", &save_ptr);
+ char *value = strtok_r (NULL, "", &save_ptr);
+
+ if (!strcmp (name, "-h"))
+ usage ();
+ else if (!strcmp (name, "-q"))
+ power_off_when_done = true;
+#ifdef FILESYS
+ else if (!strcmp (name, "-f"))
+ format_filesys = true;
+#endif
+ else if (!strcmp (name, "-rs"))
+ random_init (atoi (value));
+ else if (!strcmp (name, "-mlfqs"))
+ enable_mlfqs = true;
+#ifdef USERPROG
+ else if (!strcmp (name, "-ul"))
+ user_page_limit = atoi (value);
+#endif
+#ifdef VM
+ else if (!strcmp (name, "-rndpg"))
+ enable_random_paging = true;
+#endif
+ else
+ PANIC ("unknown option `%s' (use -h for help)", name);
+
+ }
+
+ return argv;