Date: Mon, 29 Jun 1998 14:42:25 -0400 (EDT) From: zhihuizhang <bf20761@binghamton.edu> To: hackers <freebsd-hackers@FreeBSD.ORG> Subject: Interrupt Handling and inline assembly Message-ID: <Pine.SOL.L3.93.980629141418.18359A-100000@bingsun2>
next in thread | raw e-mail | index | archive | help
I got two questions: (1) I read in the MailingList Archive that the interrupt blocking in FreeBSD is software-based, we do not communicate with 8259 (which I think is slower) What is the advantage of doing this besides being faster? If we mask interrupts off (by cli or setting the IMR register in 8259), will interrupts be simply discarded (the device has to request interrupt again) or postponed by 8259? (2) I am reading the source code in cpufunc.h: static __inline void setbits(volatile unsigned * addr, u_int bits) { __asm __volatile("orl %1, %0" : "=m" (*addr): "ir"(bits)); } I have read a text on inline assembly at: http://www.rt66.com/~brennan/djgpp/djgpp_asm.html But I still do not understand the meaining of "m" and "ir". Thanks a lot. ------------------------------------------------- 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.980629141418.18359A-100000>