update lab1_result
1. Now can edit/analysis/debug in eclipse 2. add .cproject .project in .gitignore 3. fix some warnning using gcc-4.8
This commit is contained in:
parent
df589cbdde
commit
89d1308e41
2
.gitignore
vendored
2
.gitignore
vendored
@ -7,3 +7,5 @@ cscope.*
|
|||||||
ncscope.*
|
ncscope.*
|
||||||
tags
|
tags
|
||||||
*swp
|
*swp
|
||||||
|
.cproject
|
||||||
|
.project
|
||||||
|
@ -152,6 +152,7 @@ $(bootblock): $(call toobj,$(bootfiles)) | $(call totarget,sign)
|
|||||||
@echo + ld $@
|
@echo + ld $@
|
||||||
$(V)$(LD) $(LDFLAGS) -N -e start -Ttext 0x7C00 $^ -o $(call toobj,bootblock)
|
$(V)$(LD) $(LDFLAGS) -N -e start -Ttext 0x7C00 $^ -o $(call toobj,bootblock)
|
||||||
@$(OBJDUMP) -S $(call objfile,bootblock) > $(call asmfile,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)
|
@$(OBJCOPY) -S -O binary $(call objfile,bootblock) $(call outfile,bootblock)
|
||||||
@$(call totarget,sign) $(call outfile,bootblock) $(bootblock)
|
@$(call totarget,sign) $(call outfile,bootblock) $(bootblock)
|
||||||
|
|
||||||
@ -193,7 +194,7 @@ endif
|
|||||||
# files for grade script
|
# files for grade script
|
||||||
|
|
||||||
TARGETS: $(TARGETS)
|
TARGETS: $(TARGETS)
|
||||||
|
all: $(TARGETS)
|
||||||
.DEFAULT_GOAL := TARGETS
|
.DEFAULT_GOAL := TARGETS
|
||||||
|
|
||||||
.PHONY: qemu qemu-nox debug debug-nox
|
.PHONY: qemu qemu-nox debug debug-nox
|
||||||
@ -214,10 +215,12 @@ qemu: $(UCOREIMG)
|
|||||||
qemu-nox: $(UCOREIMG)
|
qemu-nox: $(UCOREIMG)
|
||||||
$(V)$(QEMU) -serial mon:stdio -hda $< -nographic
|
$(V)$(QEMU) -serial mon:stdio -hda $< -nographic
|
||||||
TERMINAL :=gnome-terminal
|
TERMINAL :=gnome-terminal
|
||||||
|
gdb: $(UCOREIMG)
|
||||||
|
$(V)$(QEMU) -S -s -parallel stdio -hda $< -serial null &
|
||||||
debug: $(UCOREIMG)
|
debug: $(UCOREIMG)
|
||||||
$(V)$(QEMU) -S -s -parallel stdio -hda $< -serial null &
|
$(V)$(QEMU) -S -s -parallel stdio -hda $< -serial null &
|
||||||
$(V)sleep 2
|
$(V)sleep 2
|
||||||
$(V)$(TERMINAL) -e "gdb -q -x tools/gdbinit"
|
$(V)$(TERMINAL) --full-screen -e "gdb -tui -q -x tools/gdbinit"
|
||||||
|
|
||||||
debug-nox: $(UCOREIMG)
|
debug-nox: $(UCOREIMG)
|
||||||
$(V)$(QEMU) -S -s -serial mon:stdio -hda $< -nographic &
|
$(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.
|
* * bootmain() in this file takes over, reads in the kernel and jumps to it.
|
||||||
* */
|
* */
|
||||||
|
unsigned int SECTSIZE = 512 ;
|
||||||
#define SECTSIZE 512
|
struct elfhdr * ELFHDR = ((struct elfhdr *)0x10000) ; // scratch space
|
||||||
#define ELFHDR ((struct elfhdr *)0x10000) // scratch space
|
|
||||||
|
|
||||||
/* waitdisk - wait for disk ready */
|
/* waitdisk - wait for disk ready */
|
||||||
static void
|
static void
|
||||||
|
@ -9,12 +9,12 @@
|
|||||||
#include <intr.h>
|
#include <intr.h>
|
||||||
#include <pmm.h>
|
#include <pmm.h>
|
||||||
#include <kmonitor.h>
|
#include <kmonitor.h>
|
||||||
int kern_init(void) __attribute__((noreturn));
|
void kern_init(void) __attribute__((noreturn));
|
||||||
void grade_backtrace(void);
|
void grade_backtrace(void);
|
||||||
static void lab1_switch_test(void);
|
static void lab1_switch_test(void);
|
||||||
|
|
||||||
int
|
void
|
||||||
kern_init(void) {
|
kern_init(void){
|
||||||
extern char edata[], end[];
|
extern char edata[], end[];
|
||||||
memset(edata, 0, end - edata);
|
memset(edata, 0, end - edata);
|
||||||
|
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
file bin/kernel
|
file bin/kernel
|
||||||
|
file obj/bootblock.o
|
||||||
target remote :1234
|
target remote :1234
|
||||||
|
break bootmain
|
||||||
break kern_init
|
break kern_init
|
||||||
continue
|
continue
|
Loading…
Reference in New Issue
Block a user