Merge branch 'master' of github.com:chyyuu/ucore_lab
This commit is contained in:
@@ -152,6 +152,7 @@ $(bootblock): $(call toobj,$(bootfiles)) | $(call totarget,sign)
|
||||
@echo + ld $@
|
||||
$(V)$(LD) $(LDFLAGS) -N -e start -Ttext 0x7C00 $^ -o $(call toobj,bootblock)
|
||||
@$(OBJDUMP) -S $(call objfile,bootblock) > $(call asmfile,bootblock)
|
||||
@$(OBJDUMP) -t $(call objfile,bootblock) | $(SED) '1,/SYMBOL TABLE/d; s/ .* / /; /^$$/d' > $(call symfile,bootblock)
|
||||
@$(OBJCOPY) -S -O binary $(call objfile,bootblock) $(call outfile,bootblock)
|
||||
@$(call totarget,sign) $(call outfile,bootblock) $(bootblock)
|
||||
|
||||
@@ -193,7 +194,7 @@ endif
|
||||
# files for grade script
|
||||
|
||||
TARGETS: $(TARGETS)
|
||||
|
||||
all: $(TARGETS)
|
||||
.DEFAULT_GOAL := TARGETS
|
||||
|
||||
.PHONY: qemu qemu-nox debug debug-nox
|
||||
@@ -214,10 +215,12 @@ qemu: $(UCOREIMG)
|
||||
qemu-nox: $(UCOREIMG)
|
||||
$(V)$(QEMU) -serial mon:stdio -hda $< -nographic
|
||||
TERMINAL :=gnome-terminal
|
||||
gdb: $(UCOREIMG)
|
||||
$(V)$(QEMU) -S -s -parallel stdio -hda $< -serial null
|
||||
debug: $(UCOREIMG)
|
||||
$(V)$(QEMU) -S -s -parallel stdio -hda $< -serial null &
|
||||
$(V)sleep 2
|
||||
$(V)$(TERMINAL) -e "gdb -q -x tools/gdbinit"
|
||||
$(V)$(TERMINAL) -e "cgdb -q -x tools/gdbinit"
|
||||
|
||||
debug-nox: $(UCOREIMG)
|
||||
$(V)$(QEMU) -S -s -serial mon:stdio -hda $< -nographic &
|
||||
|
||||
@@ -29,9 +29,8 @@
|
||||
*
|
||||
* * bootmain() in this file takes over, reads in the kernel and jumps to it.
|
||||
* */
|
||||
|
||||
#define SECTSIZE 512
|
||||
#define ELFHDR ((struct elfhdr *)0x10000) // scratch space
|
||||
unsigned int SECTSIZE = 512 ;
|
||||
struct elfhdr * ELFHDR = ((struct elfhdr *)0x10000) ; // scratch space
|
||||
|
||||
/* waitdisk - wait for disk ready */
|
||||
static void
|
||||
|
||||
@@ -9,12 +9,12 @@
|
||||
#include <intr.h>
|
||||
#include <pmm.h>
|
||||
#include <kmonitor.h>
|
||||
int kern_init(void) __attribute__((noreturn));
|
||||
void kern_init(void) __attribute__((noreturn));
|
||||
void grade_backtrace(void);
|
||||
static void lab1_switch_test(void);
|
||||
|
||||
int
|
||||
kern_init(void) {
|
||||
void
|
||||
kern_init(void){
|
||||
extern char edata[], end[];
|
||||
memset(edata, 0, end - edata);
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
file bin/kernel
|
||||
file obj/bootblock.o
|
||||
target remote :1234
|
||||
break kern_init
|
||||
continue
|
||||
break bootmain
|
||||
continue
|
||||
|
||||
Reference in New Issue
Block a user