aboutsummaryrefslogtreecommitdiff
path: root/tasks
diff options
context:
space:
mode:
Diffstat (limited to 'tasks')
-rw-r--r--tasks159
1 files changed, 159 insertions, 0 deletions
diff --git a/tasks b/tasks
new file mode 100644
index 00000000..d8c7b4c7
--- /dev/null
+++ b/tasks
@@ -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.