Browse Source

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
main
os_lab_user 10 years ago
parent
commit
89d1308e41
5 changed files with 15 additions and 9 deletions
  1. +2
    -0
      .gitignore
  2. +5
    -2
      labcodes_answer/lab1_result/Makefile
  3. +2
    -3
      labcodes_answer/lab1_result/boot/bootmain.c
  4. +3
    -3
      labcodes_answer/lab1_result/kern/init/init.c
  5. +3
    -1
      labcodes_answer/lab1_result/tools/gdbinit

+ 2
- 0
.gitignore View File

@ -7,3 +7,5 @@ cscope.*
ncscope.*
tags
*swp
.cproject
.project

+ 5
- 2
labcodes_answer/lab1_result/Makefile View File

@ -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) --full-screen -e "gdb -tui -q -x tools/gdbinit"
debug-nox: $(UCOREIMG)
$(V)$(QEMU) -S -s -serial mon:stdio -hda $< -nographic &

+ 2
- 3
labcodes_answer/lab1_result/boot/bootmain.c View File

@ -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

+ 3
- 3
labcodes_answer/lab1_result/kern/init/init.c View File

@ -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);

+ 3
- 1
labcodes_answer/lab1_result/tools/gdbinit View File

@ -1,4 +1,6 @@
file bin/kernel
file obj/bootblock.o
target remote :1234
break bootmain
break kern_init
continue
continue

Loading…
Cancel
Save