designing the IO subsystem.
Posted: Fri Feb 21, 2003 6:23 am
Hello, all...
I'm actually entering the firghtful step of starting IO subsystem for Clicker. I've now got a working "resource allocator" that will allow modules to request resource like memory regions or ports range and avoiding two module allocate the same resource.
I will then try to add IO devices and drivers. So far, the way i think i'll handle this will be through a bus-driver module that will enumerate existing devices and then load the appropriate device drivers.
I also plan to replace the infamous "IOCTL" function by a service that you can also enumerate (so that you can learn at run time what kind of API are available on system.io.device.eth0, for instance)
Do you have some hints/suggestion to make? How would you list block devices, for instance (partitions, removable media, etc ...)
Should there be a single "system.dev.floppy" or one instance per "media" that has been made present (MACintosh-like) ? ...
I'm actually entering the firghtful step of starting IO subsystem for Clicker. I've now got a working "resource allocator" that will allow modules to request resource like memory regions or ports range and avoiding two module allocate the same resource.
I will then try to add IO devices and drivers. So far, the way i think i'll handle this will be through a bus-driver module that will enumerate existing devices and then load the appropriate device drivers.
I also plan to replace the infamous "IOCTL" function by a service that you can also enumerate (so that you can learn at run time what kind of API are available on system.io.device.eth0, for instance)
Do you have some hints/suggestion to make? How would you list block devices, for instance (partitions, removable media, etc ...)
Should there be a single "system.dev.floppy" or one instance per "media" that has been made present (MACintosh-like) ? ...