After spending a few hours poking around I have some ideas on where I
can make the biggest impact given my background.
Multi-threading/Concurrency: This is one of my bailiwicks. Correct me if
I'm wrong but it appears that concurrency support was removed when Mac
OSX dropped support for standard concurrency APIs. I saw that all the
concurrency APIs were gutted in semaphore.h and mutex.h. Unfortunately
replacing them with the OSX GCD (Grand Central Dispatcher, how cute) and
dispatch queues won't fill the porting bill. I would like to look into
ways to implement semaphores, mutexes,etc. so we can fill this gap.
Might still be able to use dispatch queues for threading.
I have a pretty good background in threading and concurrency. For
example, way back I needed to port some threaded unix code to an OS that
had no support for threads or concurrency so implemented my own
light-weight threads and concurrency primitives. For atomic operations I
used a assembly-level compare and increment command. I was so proud of
it I started writing an article for Dr. Dobbs, a big programming mag at
the time. While I was so engaged, someone else beat me to the punch. Rats.
Architecture Documentation: It appears to be in need of major updating.
I haven't seen anything updated in the last 10 years. I would like to
update it as much as I can, at least WRT the modules I touch.
What do you think?
Sorry for bloviating.
BTW, this is fun.
Steve