DDE Linux26 in the Hurd
zhengda1936 at gmail.com
Fri Jan 29 15:46:33 CET 2010
On 10-1-29 下午7:37, Christian Helmuth wrote:
> On Thu, Jan 28, 2010 at 08:28:07PM +0800, Da Zheng wrote:
>> You missed my point. I understand that each driver runs in a separate program.
>> The problem is that a device has to find the bus where it is located. In the
>> current implementation, a driver can only scan 32 devices. If we have 33 devices
>> in the system, its driver thinks there isn't such a device and fails to work.
> Please, do not take the limitation to 32 devices for granted. It was
> just a reasonable guess at implemenation time and is power of 2.
The current implementation cannot work in my VMWare VM, which has more than 32
PCI devices, so I kind of hope it can be extended.
>> So I suggest why not let the logical bus contains all devices in the system.
>> Thus, the driver can always find its device no matter where the device is
>> located, and we don't need an IO manager to pre-configure the logical PCI bus as
>> Bjoern said, which seems quite complex.
> I disagree here. In a modern OS you need access control and resource
> management also on driver level, as nobody wants his VGA driver mess
> with the USB host controller. The access policy to I/O resources in
> our design is implemented by a special system component. This
> component configures the virtual busses mentioned before, whereas each
> driver gets its own virtual bus, i.e., view on the real hardware. You
> may look into http://os.inf.tu-dresden.de/papers_ps/haenel-beleg.pdf.
> Lukas gives a good summary of our ideas in its Architecture section.
I totally agree that we need to impose some access control and resource
management. I just wanted to simply extend the current implementation. The
current implementation doesn't have access control either, so I didn't consider
the security issue.
More information about the l4-hackers