summaryrefslogtreecommitdiff
path: root/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'main.c')
-rw-r--r--main.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/main.c b/main.c
index 563f216..b711640 100644
--- a/main.c
+++ b/main.c
@@ -28,8 +28,7 @@ main()
acquire_spinlock(&kernel_lock);
idtinit(); // CPU's idt
lapic_init(cpu());
- curproc[cpu()] = &proc[0]; // XXX
- swtch();
+ scheduler();
}
acpu = 1;
// clear BSS
@@ -45,7 +44,7 @@ main()
// create fake process zero
p = &proc[0];
- curproc[cpu()] = p;
+ memset(p, 0, sizeof *p);
p->state = WAITING;
p->sz = 4 * PAGE;
p->mem = kalloc(p->sz);
@@ -70,10 +69,10 @@ main()
write_eflags(read_eflags() | FL_IF);
p = newproc();
- // load_icode(p, _binary_usertests_start, (unsigned) _binary_usertests_size);
+ // load_icode(p, _binary_usertests_start, (unsigned) _binary_usertests_size);
load_icode(p, _binary_userfs_start, (unsigned) _binary_userfs_size);
-
- swtch();
+ cprintf("loaded userfs\n");
+ scheduler();
return 0;
}