Basic disk detection stuff.
[pintos-anon] / src / threads / init.c
index f2476124da7d2a0a7a597d312da5715cb1985943..54a98d256236eb54fa2ba1a515949285b10d8085 100644 (file)
@@ -18,6 +18,7 @@
 #include "vga.h"
 #ifdef FILESYS
 #include "filesys.h"
+#include "disk.h"
 #endif
 
 /* Size of kernel static code and data, in 4 kB pages. */
@@ -32,6 +33,7 @@ void power_off (void);
 static void
 main_thread (void *aux UNUSED) 
 {
+  disk_init ();
   thread_execute ("a.out");
 }
 
@@ -50,7 +52,7 @@ main (void)
   /* Calculate how much RAM the kernel uses, and find out from
      the bootloader how much RAM this machine has. */
   kernel_pages = (&_end - &_text + 4095) / 4096;
-  ram_pages = *(uint32_t *) (0x7e00 - 8);
+  ram_pages = *(uint32_t *) (0x7e00 - 6);
 
   printk ("Initializing nachos-x86, %d kB RAM detected.\n",
           ram_pages * 4);