From c1a671852e57a3219ddb842f83e2ee4cf0915c32 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 7 Jul 2009 15:51:01 +0200 Subject: open_issues/user-space_device_drivers: Add a TOC, and sections about issues and a plan. --- open_issues/user-space_device_drivers.mdwn | 55 ++++++++++++++++++++++++++++-- 1 file changed, 53 insertions(+), 2 deletions(-) diff --git a/open_issues/user-space_device_drivers.mdwn b/open_issues/user-space_device_drivers.mdwn index 154a525c..43795705 100644 --- a/open_issues/user-space_device_drivers.mdwn +++ b/open_issues/user-space_device_drivers.mdwn @@ -14,6 +14,57 @@ This is a collection of resources concerning *user-space device drivers*. Also see [[device drivers and IO systems]]. +[[!toc levels=2]] + + +# Issues + +## IRQs + + * Can be modeled using [[RPC]]s. + + * Security considerations: IRQ sharing. + + * *Omega0* paper defines an interface. + +## DMA + + * Security considerations. + + * I/O MMU. + +## I/O Ports + + * Security considerations. + +## PCI and other buses + + * Security considerations: sharing. + +## Latency of doing RPCs + + * [[GNU Mach|microkernel/mach/gnumach]] is said to have a high overhead when + doing RPC calls. + + +# Plan + + * Examine what other systems are doing. + + * L4 + + * Hurd on L4: deva, fabrica + + * Minix 3 + + * Start with a simple driver and implement the needed infrastructure (see + *Issues* above) as needed. + + * + + Some (unfinished?) code written by Robert Millan in 2003: PC keyboard + and parallel port drivers, using `libtrivfs`. + # Documentation @@ -92,8 +143,8 @@ Also see [[device drivers and IO systems]]. Ganapathy, Arini Balakrishnan, Michael M. Swift, Somesh Jha -# Projects +# External Projects * - * + * -- cgit v1.2.3