Skip site navigation (1)Skip section navigation (2)
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>