diff options
Diffstat (limited to 'tasks')
-rw-r--r-- | tasks | 159 |
1 files changed, 159 insertions, 0 deletions
@@ -0,0 +1,159 @@ +GNU Hurd Task List Version 1.21. Last updated 29 June 1999. + +If you would like to work on one of these, please contact tb@mit.edu. +It's important that you let me know what's being worked on, because +someone else might also be interested, and you should coordinate work. + +Items that we want done with more priority are marked with !!!. + + + +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. + + * Something to deal with the case where the system clock is in local + time instead of UCT. Linux deals already; we should too. + + +Mach 3.0 Work + +We now have our own distribution of the microkernel. Please discuss +proposed microkernel work there as well as with thomas@gnu.ai.mit.edu. + +!!! + * Mach 3.0 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. + +!!! + * Mach 3.0 needs many new device drivers for popular PC devices. + Shantanu Goel is doing work in this area; coordinate with him. + +!!! + * A replacement for MiG that understands C .h files. + +!!! + * Mach 3.0 needs to provide support for task virtual timers similar + in functionality to the Unix ITIMER_PROF and ITIMER_VIRTUAL timers. + +!!! + * Mach 3.0 needs to make switches from MEMORY_OBJECT_COPY_DELAY to + MEMORY_OBJECT_COPY_NONE have the effect of immediately completing any + delayed copies. + + * Mach 3.0 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 3.0 needs a facility to find out what task is the parent of + a given task. + + * Mach 3.0 needs a facility to find out which pages of a task's + address space are in core to implement Unix's mincore call. + + * Mach 3.0 needs a facility to do msync. + + * Utah Mach needs the OSF vm_remap call. + + * Mach 3.0 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 3.0 needs proxy memory objects. (thomas can tell you what + these are and why they are important.) + + * Mach 3.0 needs a way to do per-task resource counters that are + accessible to servers called by the task. + + * Mach 3.0 needs facilities to implement resource limits of various sorts. + + * Mach 3.0 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 3.0 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 + everytime 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). + + * Implement TASK_EVENTS_INFO. + + * Add a timestamp for task and thread creation to the relevant info + structures (and make sure it works for the kernel task and threads). + + * 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. 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. + + * A notepad program to hold and keep track of ports for shell scripts. + + + +C library work. See roland@gnu.ai.mit.edu if you are interested in working +on anything in the C library. + + * Useful response to SIGINFO. + + * Better integration with cthreads. |