Annotation of wikisrc/projects/project/binary_compat_puffs_backend.mdwn, revision 1.2

1.1       jmmv        1: [[!template id=project
                      2: 
                      3: title="Binary compatibility for puffs backend"
                      4: 
                      5: contact="""
                      6: [tech-kern](mailto:tech-kern@NetBSD.org), [tech-userlevel](mailto:tech-userlevel@NetBSD.org)
                      7: """
                      8: 
                      9: mentors="""
                     10: [Antti Kantee](mailto:pooka@NetBSD.org)
                     11: """
                     12: 
1.2     ! jmmv       13: category="kernel"
        !            14: difficulty="medium"
1.1       jmmv       15: duration="3 months"
                     16: 
                     17: description="""
                     18: Currently, the [puffs(3)](http://netbsd.gw.com/cgi-bin/man-cgi?puffs+3+NetBSD-5.1+i386) interface between the kernel and userspace uses various system structures for passing information. Examples are `struct stat` and `struct uucred`. If these change in layout (such as with the recent time_t size change), old puffs servers must be recompiled.
                     19: 
                     20: The purpose of the project is to:
                     21: 
                     22: * *define* a binary-independent protocol
                     23: * *implement* support
                     24: * *measure* the performance difference with direct kernel struct passing
                     25: * if there is a huge difference, *investigate* the possibility for having both an internal and external protocol. The actual decision to include support will be made on the relative complexity of the code for dual support.
                     26: 
                     27: While this project will be partially implemented in the kernel, it is fairly well-contained and prior kernel experience is not necessary.
                     28: 
                     29: If there is time and interest, a suggested subproject is making sure that [p2k(3)](http://netbsd.gw.com/cgi-bin/man-cgi?p2k+3+NetBSD-5.1+i386) does not suffer from similar issues. This is a required subproject if dual support as mentioned above is not necessary.
                     30: """
                     31: ]]
                     32: 
                     33: [[!tag gsoc]]

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb