Re: VFS: C99 sparse format for struct vfsops

From: Paul Richards <paul_at_freebsd-services.com>
Date: 02 Jun 2003 22:54:01 +0100
On Tue, 2003-06-03 at 22:36, Poul-Henning Kamp wrote:
> In message <XFMail.20030603173300.jhb_at_FreeBSD.org>, John Baldwin writes:
> >
> >On 02-Jun-2003 Paul Richards wrote:
> >> On Mon, 2003-06-02 at 21:04, Paul Richards wrote:
> >> 
> >>> 
> >>> The tradeoff with using an index into an array is that there'd be a
> >>> heavy penalty for growing the array if an extra method didn't fit, but
> >>> that would be exceptionally rare and with our present usage we'd never
> >>> have that happen.
> >> 
> >> I'm not sure this is actually a problem after all since the Interface
> >> doesn't change and therefore we know a-priori how many methods there can
> >> be so we can pre-allocate an array.
> 
> I thought the point in KOBJ was that it was extensible so you could
> KLD load stuff which added more methods ?

Not exactly. It allows for dynamic binding of methods that implement a
specified interface. It gives you 2 things mainly:

1) Not all the interface has to be implemented within a particular
object, and things will just work if unimplemented parts of the
interface are called on an object.
2) The actual functions called for a particular method can by
dynamically changed (or at least they could be, I don't think there's
actually any API that does this at the moment so in fact they just get
mapped the once when the object is instantiated).

The possible methods available in an interface are fixed, they're
defined in the .m files.

-- 
Tis a wise thing to know what is wanted, wiser still to know when
it has been achieved and wisest of all to know when it is unachievable
for then striving is folly. [Magician]
Received on Tue Jun 03 2003 - 12:55:54 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:10 UTC