Difference between revisions of "Xv6 homework 6"

From Computer History Wiki
Jump to: navigation, search
(Created page with "Since this has gone missing... <pre> Lecture 6 homework: xv6 and Interrupts and Exceptions Handed out: Wednesday, September 21, 2005 Due: Wednesday, September 28, Oct 3, 2005 R...")
 
m (+cat)
 
Line 22: Line 22:
 
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.).
 
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.</pre>
+
This completes the homework.
 +
</pre>
 +
 
 +
[[Category: Documentation]]

Latest revision as of 15:57, 30 December 2018

Since this has gone missing...

Lecture 6 homework: xv6 and Interrupts and Exceptions

Handed out: Wednesday, September 21, 2005
Due: Wednesday, September 28, Oct 3, 2005
Read: trapasm.C, trap.c, syscall.c, vectors.S, usys.c of xv6. 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 trapasm.C, trap.c, syscall.c, vectors.S, usys.c of xv6. 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 standardized 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.