diff options
Diffstat (limited to 'tasks')
-rw-r--r-- | tasks | 161 |
1 files changed, 161 insertions, 0 deletions
@@ -0,0 +1,161 @@ +GNU Hurd Task List Version 1.23. Last updated 25 April 2006. + +If you would like to work on one of these, please contact +bug-hurd@gnu.org. It's important that you let us know what's being +worked on, because someone else might also be interested, and we should +coordinate work. + +Items that we want done with more priority are marked with !!!. + + +Some of these items might be outdated. If someone feels like triaging +this list, please go ahead. + +These days, we tend to use the Savannah task tracker, +<URL:http://savannah.gnu.org/task/?group=hurd>. + + +General system work + + * Compile all the free programs you can find to help us fix bugs in + the system, and to submit necessary ports to the maintainers of + those programs. + + * Do whatever magic is necessary for Perl to take advantage of all + the nifty Hurd features that Unix doesn't have. + + +GNU Mach Work + +Please discuss proposed microkernel work with thomas@gnu.org. + + * Integrate stream device support so that the X server works + out-of-the-box. + +!!! + * Mach serial drivers support only a small subset of the + available possibilities in the Posix c_cflag termios field. Fix + this, by adding a new device_set_status call that sets the whole + thing and not just the old limited possibilities. + +!!! + * A replacement for MiG that understands C .h files. + +!!! + * Mach needs to provide support for task virtual timers similar + in functionality to the Unix ITIMER_PROF and ITIMER_VIRTUAL timers. + +!!! + * Mach needs to make switches from MEMORY_OBJECT_COPY_DELAY to + MEMORY_OBJECT_COPY_NONE have the effect of immediately completing any + delayed copies. + + * Mach needs a facility to automatically send task and thread + status on task/thread exit to a port that can only be changed by + a privileged user; this would be used to implement process + accounting. + + * Mach needs a facility to find out what task is the parent of + a given task. + + * Mach needs a facility to find out which pages of a task's + address space are in core to implement Unix's mincore call. + + * Mach needs a facility to do msync. + + * GNU Mach needs the OSF Mach vm_remap call. + + * Mach needs a replacement for MEMORY_OBJECT_COPY_CALL that + works at least for the cases needed in ordinary files. (Write + thomas if you want to know what the problem is and some ideas about + how to solve it.) + +!!! + * Mach needs proxy memory objects. (thomas can tell you what + these are and why they are important.) + + * Mach needs a way to do per-task resource counters that are + accessible to servers called by the task. + + * Mach needs facilities to implement resource limits of various sorts. + + * Mach needs a way to have a thread's CPU time statistics + include time spent by servers on its behalf. [This has been done + for the migrating-threads version of Mach; talk to thomas before starting + work on it.] + + * Of course, free ports are always necessary to machines that don't + already have free ports. + + * Much work can be done doing research in how to improve Mach VM + performance and timesharing scheduling policy. + + * Mach needs facilities to get a list of all the devices which + can be device_open'd, as well as to get the type of a device. + + * A way to have the kernel send a message on some designated port + every time a new task is started. + + * OSF has enhanced the exception_raise protocol to include thread_state + information. This code should be merged into the kernel; OSF people + have said their could could be released to the public (but it has not + appeared). + + * Add an anonymous swap allocation statistic to the task info structure. + + +Hurd work (these are brief descriptions; thomas can give more information): + + * Make the thread timeout in libports/manage-multithread.c work. + + * Make thread death in C threads really free resources. + +!!! + * An RPC trace program to aid debugging. Look at utils/rpctrace.c + for starters and ask roland for more info. + + * Programs that use utmp need to be changed to use /utmp and utmp.defs. + + * We need some standard translators for /utmp nodes; most importantly + one for ordinary terminals (set up by login) and one for X displays + (set up by xdm). + +!!! + * We need some existing shell programs changed to do Hurd things: + like ls, tar, cpio, etc. Some of this work has already been + done, but more is still needed. + +!!! + * Extend bash to call shell functions when various Hurdish async + events happen. + + * Handy shell programs to send msgport msgs, and change default init + ports and ints. + + * Shadow directory translators. + + * A system for write, send, talkd and so forth to bleep users; + this should be integrated with the utmp replacement above. + + * A filesystem for /tmp that uses virtual memory instead of disk. + (Roland has some ideas about this.) + + * Filesystem implementations (using libdiskfs) for other popular + formats. Importantly, MSDOS FAT format. + + * A fancy terminal driver that uses readline and supports + detach/attach, color, and virtual consoles. + +!!! + * A PPP interface. This will require some restructuring of pfinet. + + * A notepad program to hold and keep track of ports for shell scripts. + + + +C library work. See roland@gnu.org if you are interested in working +on anything in the C library. + + * Useful response to SIGINFO. + + * Get pthreads working and integrated. |