Subj : Re: RCU+SMR To : comp.programming.threads From : Joe Seigh Date : Mon Jul 11 2005 09:29 pm David Hopwood wrote: > Joe Seigh wrote: > >> David Hopwood wrote: >> >>> Joe Seigh wrote: >>> >> If the low level api was available, at least someone else who isn't so >> bad >> at api design could try to design a better one. And they certainly >> couldn't >> design a new or different api if the low level api wasn't available. > > > That's not the case: they can always drop down to assembler. Or they can > reuse > the low-level guts of an open-source implementation of some other > high-level > API. If documentation is available for it somehow like for Linux futex. It's an unstable api so you can't depend on it as if it were an official api. I've done an async safe eventcount using it. If I wanted to port it I would have to figure out low level api's for other platforms though. > >> If the only api available is a lock-free linked list and someone wants to >> design a lock-free tree, they won't be able to do one. > > > Yes they will, by modifying the lock-free linked list code to implement > a tree. > "Black box" reuse doesn't work, but reuse based on modification of source > code has been quite successful. > Assuming the linked list hasn't been hard coded into the low level api. Unfortunately, I have seen low level api's screwed up that way. Has there been any studies that show that lack of documentation for a low level api has never inhibited anyone from using the low level api? How would they measure that? Source isn't really a substitute. Otherwise I wouldn't have to document RCU+SMR which would save a lot of trouble for me. -- Joe Seigh When you get lemons, you make lemonade. When you get hardware, you make software. .