From b4ee10f0990fdc75e4b0a1fcd2ded45992219beb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Mon, 27 Jan 2020 12:53:04 +0100 Subject: Mon, 27 Jan 2020 12:53:04 +0100 --- Pintos.wiki | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 Pintos.wiki (limited to 'Pintos.wiki') diff --git a/Pintos.wiki b/Pintos.wiki new file mode 100644 index 0000000..d47eb1c --- /dev/null +++ b/Pintos.wiki @@ -0,0 +1,48 @@ +Omregga inte i webreg +Typ på torsdag + +- maila filippe [sic?] angående status +- Gör gammla eller nya labbar + +- lab 0 uppdaterad +- Lab3 delad i 3 + +- fler kodexempel + +---------------------------------------- + +- 29 mars lab deadline +- labbar lämnas kanske inte via gitlab + +== Tekniskt om pintos == + +- Return från syscall ligger i `f->eax` +- `f->esp` is the stack of the calling process +- The syscall number is ath the top, then the arguments +- `0xCC` means that memmory was `free()`d +- `backtrace kernel [ hexcode ] ...` +- gdb `x/{5w,s}` examine...? + +== Debug == +{{{ +# Stand in src/userprog/build +pintos-mkdisk fs.dsk 2 # make disk +pintos --qemu -- -f -q # format disk +pintos --qemu -p local-file -a file-in-pintos -- -q + +pintos --qemu --gdb -- run printf +pintos-gdb src/userprog/build/kernel.o +(gdb) target remote localhost:1234 +}}} + +ttps://www.ida.liu.se/~TDDB68/labs/Lab1.pdf + + +=== Filer === + +- `pintos/src/lib/user/syscal.{h,c}` :: The syscall wrapper +- `userprog/syscall.{h,c}` :: Implement syscalls here +- `threads/thread.{h,c}` :: Implement something here +- `threads/interrupt.{h,c}` :: Important structures +- `lib/syscal-nr.h` :: Syscall numbers +- `filesys/filesys.{h,c}` :: Pintos file system -- cgit v1.2.3