diff options
author | Justus Winter <justus@gnupg.org> | 2016-10-12 10:10:19 +0200 |
---|---|---|
committer | Justus Winter <justus@gnupg.org> | 2016-10-12 11:45:55 +0200 |
commit | c97ee062c33ec8cbd90d6e98ee68c68e75697d69 (patch) | |
tree | c5a5b99843bf7357a84ffd2e6141ec20fe4f08cf /microkernel | |
parent | 0ca46c502ac0f37d818d9b8c4748b8189c31a1c3 (diff) |
Add interface for user-space drivers
Diffstat (limited to 'microkernel')
-rw-r--r-- | microkernel/mach/gnumach/projects/mach_5.mdwn | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/microkernel/mach/gnumach/projects/mach_5.mdwn b/microkernel/mach/gnumach/projects/mach_5.mdwn index b90f04d5..7b59170b 100644 --- a/microkernel/mach/gnumach/projects/mach_5.mdwn +++ b/microkernel/mach/gnumach/projects/mach_5.mdwn @@ -19,6 +19,8 @@ it, we could straighten out some of these problems. This page is a place to keep track of such changes. +[[!toc startlevel=2 levels=1]] + ## Protected payloads Protected payloads are a way of optimizing the receiver object lookup @@ -135,3 +137,27 @@ A prototype exists. * <https://lists.gnu.org/archive/html/bug-hurd/2015-05/msg00000.html> * <https://lists.gnu.org/archive/html/bug-hurd/2016-09/msg00056.html> + +## Interface for userspace drivers + +We need to provide an interface suitable for implementing drivers in +userspace: + +* A way to handle interrupts +* and a way to allocate memory suitable for DMA buffers + +### Required ABI changes + +None. This is a new interface. Debian/Hurd uses a non-standard rpc +id, so we do not change an existing procedure there. + +### Status + +A DDE-based solution is used in Debian/Hurd to provide network +drivers. A rump kernel prototype is implemented. These use a kernel +interface written by Zheng Da available in the +"master-user_level_drivers" branch in the GNU Mach repository. + +### Discussions + +* <https://lists.gnu.org/archive/html/bug-hurd/2016-02/msg00126.html> |