dmr@alice.UUCP (02/20/87)
An annotated transcript. D$ is my shell prompt: 1 D$ size /unix text data bss dec hex 145792 50508 141784 338084 528a4 # my machine (/unix) is a Ninth Edition 11/750 with few devices. 2 D$ size /n/alice/unix text data bss dec hex 163936 58596 382244 604776 93a68 # Alice is a big V9 785 with hundreds of users and lots of # devices. I got its size by looking in its root directory, # which is mounted in /n/alice. 3 D$ rx research size unix text data bss dec hex 154152 51860 222696 428708 68aa4 # My machine supports Datakit; 'rx research size /unix' runs the # command remotely on research, another V9 Comet. 4 D$ rsh presto size /vmunix text data bss dec hex 182708 71280 81888 335876 52004 # My machine has TCP/IP; 'rsh presto size' runs the size # command on presto, another group's Vax, running 4.3 BSD. # Because I don't have an attached Ethernet, the # connection goes over Datakit to Research, which does have one, # and the IP code there gateways it onto the real Ethernet to presto. 5 D$ rx presto size /vmunix text data bss dec hex 182708 71280 81888 335876 52004 # Actually, I can use 'rx' whether the connection is Datakit or # Ethernet. The server process that makes the connection figures # it out. rx and rsh are the same file. 6 D$ size /n/3k/src/sys/3k/unix size: /n/3k/src/sys/3k/unix not an object file # The remote file system works on other machines too. 3k is a Cray # XMP; unfortunately, the Vax size command doesn't understand # its object file. (Nor does the Vax understand /n/3k/bin/size.) 7 D$ rx 3k size /src/sys/3k/unix /src/sys/3k/unix: 228647 + 0 + 0 = 228647 # But remote execution tells me the size. (The number 228647 is # words (8 bytes each). Well, it's a S/V system.) 8 D$ dkcc mhcc/mhuxh size /unix 151164 + 36064 + 235672 = 422900 9 D$ rx purdy size /dynix text data bss dec hex 247808 34816 59356 341980 537dc 10 D$ rx shamash size /vmunix text data bss dec hex 398128 60224 60296 518648 7e9f8 # Just showing off a little. mhuxh is a S/V Vax (I think) in the # local comp center. Connection is by Datakit, but I had to use # a special command; it's not integrated into rx. Shamash is a # Sun. The V9 remote file system server is usually running, but I # guess Peter forgot to start it. Likewise for purdy, a Sequent. I don't really know what it in BSD that makes it bigger when it does less, and the Sun and the Sequent are amazing. Incidentally, I'm concerned only with text size, the first number. The size command is misleading for /*unix because some memory is dynamically allocated, and more important, I'm willing to spend memory for buffers in order to get performance, but less willing to put in code that has to be maintained and understood. The point is that it is possible to have multiple networks with varying protocols, remote file systems that cross architectures, and remote execution/login facilities that don't care what network they use, good communication with systems that aren't controlled by you, and still have a kernel that is not too chubby. Dennis Ritchie