From f53494c28e362fb7752bbc83417b9ba47cff0bf5 Mon Sep 17 00:00:00 2001 From: rsc Date: Wed, 3 Sep 2008 04:50:04 +0000 Subject: DO NOT MAIL: xv6 web pages --- web/x86-intr.html | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 web/x86-intr.html (limited to 'web/x86-intr.html') diff --git a/web/x86-intr.html b/web/x86-intr.html new file mode 100644 index 0000000..0369e25 --- /dev/null +++ b/web/x86-intr.html @@ -0,0 +1,53 @@ +Homework: xv6 and Interrupts and Exceptions + + + + + +

Homework: xv6 and Interrupts and Exceptions

+ +

+Read: xv6's trapasm.S, trap.c, syscall.c, vectors.S, and usys.S. Skim +lapic.c, ioapic.c, and picirq.c + +

+Hand-In Procedure +

+You are to turn in this homework during lecture. Please +write up your answers to the exercises below and hand them in to a +6.828 staff member at the beginning of the lecture. +

+ +Introduction + +

Try to understand +xv6's trapasm.S, trap.c, syscall.c, vectors.S, and usys.S. Skim + You will need to consult: + +

Chapter 5 of IA-32 Intel +Architecture Software Developer's Manual, Volume 3: System programming +guide; you can skip sections 5.7.1, 5.8.2, and 5.12.2. Be aware +that terms such as exceptions, traps, interrupts, faults and aborts +have no standard meaning. + +

Chapter 9 of the 1987 i386 +Programmer's Reference Manual also covers exception and interrupt +handling in IA32 processors. + +

Assignment: + +In xv6, set a breakpoint at the beginning of syscall() to +catch the very first system call. What values are on the stack at +this point? Turn in the output of print-stack 35 at that +breakpoint with each value labeled as to what it is (e.g., +saved %ebp for trap, +trapframe.eip, etc.). +

+This completes the homework. + + + + + + + -- cgit v1.2.3