Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Jun 1998 16:16:39 -0400 (EDT)
From:      zhihuizhang <bf20761@binghamton.edu>
To:        hackers <freebsd-hackers@FreeBSD.ORG>
Subject:   Trap types and AST
Message-ID:  <Pine.SOL.L3.93.980630160446.11172B-100000@bingsun2>

next in thread | raw e-mail | index | archive | help

I am trying to trace down how the vm_fault() gets called via trap
mechanism and I find something do not understand:

(1) The value of T_PAGEFLT is 12 not 14.  Why trap type definitions in
trap.h do not conform to the trap numbers defined in 80386 hardware
terminology (one more example is T_NMI which is defined as 19 not 2).

(2) The setidt() in file machdep.c set the DPL for page fault as SEL_KPL. 
This will prevent a normal process from handling page fault, only kernel
process can.  Why is the case? (this question requires the understanding
of gate descriptors).

(3) I come across many occurrences of AST, such as SWI_AST_MASK. Clearly,
AST does not stand for the PC manufacturer here.  I read in Mailing list 
that AST is an event.  Can anyone tell me what does AST stand for and how
it is used?

Thanks in advance.  

-------------------------------------------------

Zhihui Zhang

Department of Computer Science
State University of New York at Binghamton

Web Site: http://cs.binghamton.edu/~zzhang

-------------------------------------------------


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SOL.L3.93.980630160446.11172B-100000>