On Fri, Feb 16, 2007 at 08:53:30AM -0800, Ray Lee ([EMAIL PROTECTED]) wrote: > On 2/16/07, Evgeniy Polyakov <[EMAIL PROTECTED]> wrote: > >if its design is good, then > >interface can be changed in a moment without any problem > > This isn't always the case. Sometimes the interface puts requirements > (contract-like) upon the implementation. Case in point in the kernel, > dnotify versus inotify. dnotify is a steaming pile of worthlessness, > because it's userspace interface is so bad (meaning inefficient) as to > be nearly unusable. > > inotify has a different interface, one that supplies details about > events rather that mere notice that an event occurred, and therefore > has different requirements in implementation. dnotify probably was a > good design, but for a worthless interface. > > The interface isn't always important, but it's certainly something > that has to be understood before putting the finishing touches on the > behind-the-scenes implementation.
Absolutely. And if overall system design is good, there is no problem to change (well, for those who fail to read to the end and understand my english replace 'to change' with 'to create and commit') interface to the state where it will satisfy all (majority of) users. Situations when system is designed from interface down to system ends up with one thread per IO and huge limitations on how system is going to be used at all. > Ray -- Evgeniy Polyakov - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/