projects
/
pintos-anon
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Allow user fault messages in output in bad-* tests.
[pintos-anon]
/
src
/
threads
/
init.c
diff --git
a/src/threads/init.c
b/src/threads/init.c
index ef82cb192083e398f1c859a2faaf403a8c35ff8e..458f67cb2bbd7a7424950d8a219c9f08747c30f8 100644
(file)
--- a/
src/threads/init.c
+++ b/
src/threads/init.c
@@
-9,6
+9,7
@@
#include <stdlib.h>
#include <string.h>
#include "devices/kbd.h"
#include <stdlib.h>
#include <string.h>
#include "devices/kbd.h"
+#include "devices/input.h"
#include "devices/serial.h"
#include "devices/timer.h"
#include "devices/vga.h"
#include "devices/serial.h"
#include "devices/timer.h"
#include "devices/vga.h"
@@
-46,7
+47,7
@@
uint32_t *base_page_dir;
bool enable_mlfqs;
#ifdef FILESYS
bool enable_mlfqs;
#ifdef FILESYS
-/* -f: Format the filesystem? */
+/* -f: Format the file
system? */
static bool format_filesys;
#endif
static bool format_filesys;
#endif
@@
-108,6
+109,7
@@
main (void)
intr_init ();
timer_init ();
kbd_init ();
intr_init ();
timer_init ();
kbd_init ();
+ input_init ();
#ifdef USERPROG
exception_init ();
syscall_init ();
#ifdef USERPROG
exception_init ();
syscall_init ();
@@
-119,7
+121,7
@@
main (void)
timer_calibrate ();
#ifdef FILESYS
timer_calibrate ();
#ifdef FILESYS
- /* Initialize filesystem. */
+ /* Initialize file
system. */
disk_init ();
filesys_init (format_filesys);
#endif
disk_init ();
filesys_init (format_filesys);
#endif
@@
-219,7
+221,10
@@
read_command_line (void)
/* Print kernel command line. */
printf ("Kernel command line:");
for (i = 0; i < argc; i++)
/* Print kernel command line. */
printf ("Kernel command line:");
for (i = 0; i < argc; i++)
- printf (" %s", argv[i]);
+ if (strchr (argv[i], ' ') == NULL)
+ printf (" %s", argv[i]);
+ else
+ printf (" '%s'", argv[i]);
printf ("\n");
return argv;
printf ("\n");
return argv;
@@
-362,7
+367,7
@@
usage (void)
/* Powers down the machine we're running on,
/* Powers down the machine we're running on,
- as long as we're running on Bochs or
qemu
. */
+ as long as we're running on Bochs or
QEMU
. */
void
power_off (void)
{
void
power_off (void)
{
@@
-380,6
+385,8
@@
power_off (void)
for (p = s; *p != '\0'; p++)
outb (0x8900, *p);
for (p = s; *p != '\0'; p++)
outb (0x8900, *p);
+ asm ("cli; hlt");
+ printf ("still running...\n");
for (;;);
}
for (;;);
}