Hi, All.

I'm interested in building a minimal block device driver in userspace.  My
plan is to extend the work in the OpenSolaris FUSE project - not the
filesystem-specific parts, but the kernel<->user message passing parts.  I'd
like some help to identify the minimal set of entry points that I need to
forward to user space.  So far, I've identified these operations: open.9e,
close.9e, prop_op.9e, strategy.9e and ioctl.9e.

I understand that forwarding a call to ioctl.9e might be a little tricky due
to the nature of the arguments.  I hope to only support the minimal set of
control ops defined in dkio.7i.

I understand that character devices must support read+write and block
devices can support the aread+awrite entry points.  If these points are not
defined, are all IO operations routed through the strategy entry point
instead?  (If it's not obvious by this point, I'm a complete noob when it
comes to kernel development).

I understand that such a block device could never be used for swap, also
that it would exhibit high latency and low bandwidth relative to a kernel
implementation.  I'm OK with all of this.  If anybody can think of any other
caveats, please let me know.

Thanks,

Russ
_______________________________________________
driver-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/driver-discuss

Reply via email to