[BACK]Return to TODO CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / doc

Annotation of src/doc/TODO, Revision 1.17

1.17    ! jruoho      1: #      $NetBSD: TODO,v 1.16 2011/08/09 16:10:10 jruoho Exp $
1.1       lukem       2:
                      3: THINGS TO BE DONE:
                      4:
                      5: [ Note that this list does not include change requests filed via 'gnats'.
                      6:   For information about them, mail query-pr@NetBSD.org. ]
                      7:
                      8: This is a list of things that need to be done for NetBSD.  Some of
                      9: these projects are small, others are large.  Some are extremely
                     10: important, others are enhancements to make the system more flexible
                     11: for the wide variety of NetBSD users and their applications.
                     12:
                     13: In general there are some guidelines for work to be included in
                     14: NetBSD.  Chief among these are:
                     15:
                     16:           (1) Keep GPLed stuff out of the kernel.
                     17:           (2) Introduce little to no more GPLed stuff as non-optional
                     18:               components of the user environment.
                     19:           (3) Only clean code, that lends itself to further enhancement
                     20:           (4) Keep architecture dependent code out of architecture independent
                     21:               directories
                     22:
                     23: Associated with some entries are login names which indicate persons or
                     24: groups who may already be working on that problem.  This isn't to say
                     25: that others shouldn't also look at it, but consultation with other
                     26: parties may result in less duplicated work.  A directory of these
                     27: persons can be found after the todo list itself.
                     28:
                     29: Please don't hesitate to suggest more projects for this list.
                     30: Suggestions, comments, etc to projects@NetBSD.org.
                     31:
                     32: High Kernel:
                     33:     swap fixes:
                     34:        swap to file of dynamic size; see apollo
                     35:     nfs:
1.9       simonb     36:        kernel support for lockd(8), lockf(3)
1.1       lukem      37:
                     38: User programs:
                     39:     rwall nfs-mountees on shutdown
1.14      hubertf    40:     add detachment to window(1)
1.1       lukem      41:     clean up gas config files, set up common defines
                     42:
                     43: Pie-in-the-Sky:
1.8       junyoung   44:     someone should actually test all the netiso stuff.
1.1       lukem      45:
                     46: Documentation:
                     47:     modify sys docs to reflect NetBSD/arch-specific stuff
                     48:     clean up src/share/man/{man0,tools} so that we can generate a printable
                     49:         version from the manpages again.
                     50:
                     51: i386 kernel support:
1.8       junyoung   52:     better ways of accessing BIOS, i/o space.  some exportable to
1.1       lukem      53:        user space.  See mach3,linux dos emulator
1.8       junyoung   54:     i686 optimized versions of copyin/copyout/memcpy/memset/etc. lazy
                     55:         floating-point context switching should be implemented as well.
                     56:     make use of sysenter/sysexit instructions on PIII/4 and Athlon for
                     57:         reducing syscall overhead.
1.4       agc        58:
                     59: This is a list of suggested smaller projects (in no particular order):
                     60:
                     61: + speed up sort(1) by using mmap(2) rather than temp files
                     62: + autoconf version of nawk, for use in non-NetBSD pkgsrc
                     63: + port valgrind to NetBSD for pkgsrc, then use it to do an audit of
                     64:   any memory leakage
                     65: + help in implementing various things in pkgsrc
                     66: + simplify some of the quirks in our build system
                     67: + help out with scripts for tgm/autobuild
                     68: + some PR fixing/re-categorising/investigating/closing
                     69: + investigate zebra or quagga in gnusrc rather than routed
                     70: + do a type-punned pointer sweep for gcc3 (and fix the problems, not
                     71:   the symptoms)
                     72: + kernel fine-grained locking
1.8       junyoung   73: + write a BSD-licensed web browser
1.4       agc        74: + perhaps look at putting wonka into src/ (with uuencoded class lib?)
                     75: + document autoconf framework
                     76: + write an overview document for openssl and certificates
                     77: + documentation project help
                     78: + investigate which userland utilities and daemons would benefit from
                     79:   kqueue, and rewrite them
                     80: + add a native scheme interpreter
                     81: + add platform support for TenDRA compiler suite
1.7       jmmv       82: + merge moused(8) with wsmoused(8) as a new work mode (i.e. serial)
1.12      agc        83: + re-design our mbuf/network buffer memory handling so that it is simpler
                     84:   and can handle zero copy tcp
                     85: + re-design our signal handling path. It is far too complicated and will not
                     86:   be easy to accommodate MP code
                     87: + Examine our vnode locking and vfs layer and see what needs to be changed
                     88:   for locking in layered filesystems to really work
1.13      jmmv       89: + Make mountd(8) update the in-kernel exports list for each file system
                     90:   atomically.  Many parts of the utility will need a rewrite, but the kernel
                     91:   functionality is already there (just enable the "notyet" blocks of code in
                     92:   sys/nfs/nfs_export.c).
1.14      hubertf    93: + Kerberize more services like ftp, ftpd, rsh, rshd, rlogind, ...
                     94:   (see PR bin/31378)

CVSweb <webmaster@jp.NetBSD.org>