Annotation of 43BSDTahoe/new/X/doc/Usenix/fd.t, revision 1.1

1.1     ! root        1: .SH
        !             2: File Descriptors
        !             3: .PP
        !             4: Andrew, the window system developed at the ITC at CMU [1]
        !             5: uses one connection (file descriptor)
        !             6: per window.
        !             7: While simple from a conceptual level,
        !             8: also allowing naive applications to do output to a window,
        !             9: it ties an expensive resource (file descriptor and connection) to
        !            10: what should be a cheap resource (a window or sub-window).
        !            11: It requires more kernel resources
        !            12: in the form of socket buffers for each file descriptor.
        !            13: In addition, the handshaking required for opening a connection is
        !            14: expensive in terms of time and will become more so once connections
        !            15: become authenticated.
        !            16: The attraction of having a simple stream interface to a window
        !            17: can be had by other means [2].
        !            18: In addition, if a window is tied to a file descriptor, the
        !            19: application loses the
        !            20: implicit time sequencing provided by the event stream coming over a single
        !            21: connection.
        !            22: .PP
        !            23: One X application uses more than 120 subwindows,
        !            24: all multiplexed over a single connection.
        !            25: One could postulate a single connection per client for input,
        !            26: and a single connection
        !            27: per window for output; with the limited number of file descriptors in 4.2BSD
        !            28: and other current versions of 
        !            29: .UX , 
        !            30: this was eliminated as a possibility.
        !            31: Sixteen client programs seems to be sufficient for most people,
        !            32: (this is limited by 20 file descriptors on standard 
        !            33: .UX ,
        !            34: with four file descriptors needed
        !            35: for X; one for the display, keyboard and mouse, two to listen for
        !            36: incoming connections, and one for reading fonts).
        !            37: Sixteen is not a tolerable limit on the total number of (sub)windows,
        !            38: however.
        !            39: .PP
        !            40: 4.3BSD lifts this limit to sixty four.
        !            41: (It can be configured to any size.)
        !            42: While this increase in the number of file descriptors is beneficial,
        !            43: it is still too expensive a resource to use one per window.
        !            44: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.