Re: Multiprocessor considerations for IOKit Audio Drivers (10.2)
Re: Multiprocessor considerations for IOKit Audio Drivers (10.2)
- Subject: Re: Multiprocessor considerations for IOKit Audio Drivers (10.2)
- From: Jeff Moore <email@hidden>
- Date: Mon, 28 Oct 2002 12:00:52 -0800
On Friday, October 18, 2002, at 06:31 AM, Cameron Jones wrote:
Given the abundance of new Multi-Processor Macs out there...
Would an Audio HAL thread (e.g. the tread that calls back into my
ClipOutputSamples routine) ever run (concurrently) using a different
processor than the IOKit thread (e.g. the thread that calls back into
my USB
completion routines)?
Or are the Audio HAL threads synchronized with the IOKit threads using
one
of the built-in MP-safe synchronization methods?
The HAL's IO thread can and will run concurrently with any IOKit
thread, or any other thread on the system for that matter.
The only place where there is any sort of HAL/IOAudio family
synchronization is in the kernel trap where the family takes and holds
it's own locks. This will cause an IO thread in another process to wait
in the kernel trap until the locks are releaased.
Apart from that, you should plan for the HAL's IO thread running at the
most inconvenient times possible for your driver. That way you won't be
surprised when it happens =)
I have read Louis G. Gerbarg article on "Advanced Synchronization in
Mac OS
X: Extending Unix to SMP and Real-Time" which implies that IOKit itself
takes care of MP issues for (most) IOKit driver writers. My specific
question is whether Audio HAL ties into these same synchronization
methods.
Thanks in advance...
Cameron Jones
Salem Technology Associates
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.
--
Jeff Moore
Core Audio
Apple
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.