Date: Wed, 27 Oct 1999 00:04:17 -0700 From: Mike Smith <mike@smith.net.au> To: " " <twinkle.star@263.net> Cc: smp@freebsd.org Subject: Re: inquire(third time) Message-ID: <199910270704.AAA01010@dingo.cdrom.com> In-Reply-To: Your message of "Sat, 02 Oct 1999 15:45:43 %2B0800." <001301bf0caa$2a58cea0$c226a8c0@jut.edu.cn>
next in thread | previous in thread | raw e-mail | index | archive | help
> Dear Mr. Smith: > I'm awfully sorry for asking such vague questions.It is because th= at I > haven't known much of the interrupt mechanism.I was studying Linux an= d was > interested in its interrupts.I have read the Multiprocessor specificati= on, > version 1.4 and I know that interrupts can be handled symmetrically by= any > of the processors in the system.But I still wonder how they are handled= by > the OS. This varies depending on the operating system in question. Which = operating system are you asking about? > While interrupts can be handled symmetrically by any of the > processors ,one interrupt should be handled only once and by a single > processor,I think. That's fairly obvious, really. > I wonder which processor will handle it ? And why it is his turn? > Maybe the processor possesses some kind of lock ,and how can 'he' > obtain the lock? These all depend on the operating system in question, and the algorithms that system may use. Currently FreeBSD uses a single giant kernel = lock, and if an interrupt is handled by a process that doesn't hold the = lock, and another does, the interrupt is forwarded to the CPU that does = hold the lock so that it can process it in the kernel context. > I think there are maybe some similarity between Linux and > Freebsd in dealing with the interrupts since they follow the same MP > Specification. There is some similarity, yes, but FreeBSD and Linux also have = different interrupt architectures and different locking and masking = primitives, so they differ perhaps more than they resemble one another. > I don't know whether I have expressed myself clearly this time.I'm= very > sorry for my poor English. I think that the problem you're having is just that you're not making = clear to me what it is that you actually want to know. Have you looked = at the FreeBSD code yet, and want explanations of how we do things? = Are you asking generalised questions and looking for wide-ranging = answers? As far as it goes, your English is great; you shouldn't be = apologising for it at all. -- = \\ Give a man a fish, and you feed him for a day. \\ Mike Smith \\ Tell him he should learn how to fish himself, \\ msmith@freebsd.org \\ and he'll hate you for a lifetime. \\ msmith@cdrom.com To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199910270704.AAA01010>