home *** CD-ROM | disk | FTP | other *** search
/ minnie.tuhs.org / unixen.tar / unixen / PDP-11 / Distributions / research / 1972_stuff / Readme < prev    next >
Text File  |  2008-12-15  |  8KB  |  167 lines

  1. This directory doesn't contain a full distribution of UNIX, but it has a
  2. bunch of stuff that Dennis Ritchie extracted from some old DECtapes at
  3. the labs. Here are his notes.
  4.  
  5.     s1-bits    I haven't cracked this yet.
  6.  
  7.     s2-bits    Is not source, but a dump of (parts of) /bin, /etc,
  8.             /usr/lib, and bits of a few other directories.
  9.             Caution!  The tape uses absolute pathnames,
  10.             and is dangerous to extract unless you want to install
  11.             old PDP-11 binaries.  (tap format).
  12.  
  13. s1-bits tape
  14. ------------
  15.  
  16. s1-bits is possibly output from a dump program like 1st Edition rkd(1),
  17. where the disk image was written `as is'. rkd(1) used to require nine
  18. DECtapes, so s1-bits may be one of the middle ones. Although there is
  19. substantial C and asm code on the tape (use strings(1) to see it), I
  20. can't find filenames ending in .c or .s. This seems to imply that the
  21. directory entries for the files are elsewhere, making it impossible to
  22. recover the contents. However, it is possible to manually extract files,
  23. such as the oldcp.c source file.
  24.  
  25. After a bit of manual eyeballing, I've extracted what I can from this
  26. file, and placed the bits into s1-fragments.tar.gz
  27.  
  28. s2-bits tape
  29. ------------
  30. The s2-bits tape is definitely recoverable, and both Dennis Ritchie and
  31. Warren Toomey have done so. Dennis used a plug-in for Plan 9 to read the
  32. tape. Warren used his Apout emulator and the real 1st Edition tap(1)
  33. program to decode the archive.
  34.  
  35. The following list gives details of all the files in the s2-bits tap-format
  36. archive. The first columns are a direct copy of a listing done with the
  37. emulated 1st Edition tap(1) from the s2-bits tape.
  38.  
  39. The last column gives the file's modified timestamp (in decimal)
  40. as recorded in the archive: I captured the smdate(2) argument in Apout
  41. as tap(1) tried to extract the archive. This is in 1/60th second units.
  42.  
  43. The list is sorted by the TAP DATE column.
  44.  
  45. MODE  UID SIZE  TAPA    DATE     NAME              TAP DATE
  46. ===============================================================
  47. -rwrw  0 16448  538 Jan  1 00:33 /core            121912 
  48. -rwrw 10    54  529 Jan  1 00:52 /usr/x            188944 
  49. -rwrw 10    84  474 Jan  1 00:58 /usr/jack/x.f        209544 
  50. -rwrw  0   312  490 Jan  1 00:58 /usr/jack/x.o        210381 
  51. xrwrw  0  7514  475 Jan  1 00:58 /usr/jack/a.out    210836 
  52. -r-r-  1  1664  533 Jan  1 01:31 /tmp/etma        328795 
  53. -rwrw  1   670  530 Jan  1 01:33 /usr/ken/maki.s    336810 
  54. -rwr-  0   142  532 Jan  1 01:33 /tmp/utmp        337991 
  55. -rwrw  0   512  259 Jan  1 01:33 /etc/std0        338378 
  56. xrwrw  0   698  229 Jan  1 01:35 /bin/maki        344095 
  57. -rwrw  0    26  537 Jan  1 01:35 /tmp/ttmp        344821 
  58. -rwrw  0 16448  260 Jan  1 01:36 /usr/sys/core        347684 
  59. -rwr-  1  1928  298 Jan  1 01:36 /usr/sys/maki.s    348923 
  60. xrwrw  0  2192  293 Jan  1 01:37 /usr/sys/a.out        349375 
  61. xrwr-  3  1912  135 Jan  4 17:05 /bin/form        19243860 
  62. urwr-  0  3940  142 Jan  5 19:26 /bin/mail        24936840 
  63. xrwr-  1  2662  241 Jan  6 18:01 /etc/glob        29812654 
  64. xrwr-  1   186  240 Jan  6 18:01 /etc/msh        29812724 
  65. urwr-  0   784   50 Jan 17 17:46 /bin/mv        86785042 
  66. xrwr-  3   134  114 Jan 17 17:53 /bin/cat        86808907 
  67. xrwr-  3    82   25 Jan 17 17:53 /bin/chmod        86808926 
  68. xrwr-  3   420   93 Jan 17 17:53 /bin/cmp        86808947 
  69. xrwr-  3   160   48 Jan 17 17:53 /bin/cp        86808966 
  70. xrwr-  3   464   79 Jan 17 17:53 /bin/du        86809052 
  71. xrwr-  3   104   49 Jan 17 17:53 /bin/ln        86809162 
  72. xrwr-  3  2010   42 Jan 17 17:53 /bin/ls        86809182 
  73. xrwr-  3   154  126 Jan 17 17:53 /bin/mesg        86809205 
  74. xrwr-  3    70  121 Jan 17 17:53 /bin/rew        86809297 
  75. xrwr-  3    93   52 Jan 17 17:53 /bin/rm        86809316 
  76. xrwr-  3  1026   54 Jan 17 17:53 /bin/stat        86809356 
  77. xrwr-  3    80  125 Jan 17 17:53 /bin/tty        86809419 
  78. xrwr-  3   524   57 Jan 17 17:53 /bin/write        86809532 
  79. xrwr-  3   560   77 Jan 17 17:54 /bin/who        86813788 
  80. xrwr-  3   644  139 Jan 17 17:54 /bin/wc        86813793 
  81. xrwr-  3   750  164 Jan 17 17:54 /bin/skip        86813802 
  82. xrwr-  3  1166  115 Jan 17 17:54 /bin/pr        86813803 
  83. xrwr-  3   300  141 Jan 17 17:54 /bin/od        86813807 
  84. xrwr-  3  1844  159 Jan 17 17:56 /bin/if        86819396 
  85. xrwr-  3  1154  156 Jan 17 17:56 /bin/goto        86819398 
  86. xrwr-  3   276  163 Jan 17 17:56 /bin/exit        86819403 
  87. xrwr-  3  1054  153 Jan 17 17:56 /bin/echo        86819406 
  88. xrwr-  3   244   60 Jan 17 17:56 /bin/dsw        86819407 
  89. xrwr-  3  5922   80 Jan 17 17:56 /bin/bas        86819408 
  90. xrwr-  3    16  152 Jan 17 17:56 /bin/:            86819410 
  91. xrwr-  1   954   32 Jan 19 17:20 /bin/sh        97059255 
  92. xrwr-  3  2310  103 Jan 26 17:20 /bin/ar        133346922 
  93. xrwr-  3  1048  166 Jan 31 18:14 /bin/stty        159458885 
  94. xrwrw  6  2860  169 Mar  7 12:23 /bin/cal        339637168 
  95. -rwr-  3  2082  233 Mar 28 16:42 /etc/suftab        449432781 
  96. urwr-  0  1290   28 Mar 29 15:19 /bin/login        454317684 
  97. xrwr-  3  4066   95 Mar 29 16:42 /bin/db        454616955 
  98. xrwrw  3    76   94 Apr  6 19:42 /bin/chball        496735250 
  99. xrwrw  3   446  232 Apr  7 16:40 /etc/getty        501264829 
  100. xrwr-  3  6846  176 Apr 14 20:50 /bin/dc        538454712 
  101. urwr-  0   794   26 Apr 20 23:45 /bin/date        570186721 
  102. urwr-  0   746  190 May  3 22:54 /bin/su        637395674 
  103. xrwr-  3  3998  127 May 10 15:23 /bin/ed        672059949 
  104. xrwr-  3   330  213 May 27 00:21 /bin/find        756940137 
  105. xrwr-  3   480   59 May 27 00:21 /bin/strip        756940428 
  106. urwr-  1   872  211 May 27 00:26 /bin/ds        756957948 
  107. xrwr- 10  2730  192 May 27 23:37 /bin/fc        761966733 
  108. xrwrw  3 17092  346 Jun  6 21:26 /usr/lib/c1        813333853 
  109. -rwrw  0  3498  339 Jun  9 17:10 /usr/lib/bilib.a    827964344 
  110. -rwrw  0  6626  326 Jun 20 10:47 /usr/lib/libb.a    883611316 
  111. xrwr-  3  7582  214 Jun 30 17:45 /bin/as        936955268 
  112. xrwrw  3  5778  247 Jun 30 17:47 /etc/as2        936962166 
  113. xrwr-  3   238  118 Jun 30 18:37 /bin/un        937143109 
  114. -rwrw  0 12158  302 Jun 30 18:40 /usr/lib/liba.a    937154143 
  115. xrwr-  3  2942  108 Jun 30 19:26 /bin/ld        937319472 
  116. xrwr-  3   518   75 Jun 30 20:09 /bin/nm        937472871 
  117. xrwr-  3  1446  208 Jun 30 20:15 /bin/size        937496145 
  118. -rwrw 28   304  448 Jun 30 20:31 /usr/lib/fr0.o        937553564 
  119. -rwrw 28 12222  449 Jun 30 20:37 /usr/lib/filib.a    937573356 
  120. -rwrw 28  9158  419 Jun 30 20:46 /usr/lib/libf.a    937606048 
  121. -rwrw  0   108  473 Jun 30 21:11 /usr/lib/crt0.o    937696858 
  122. -rwrw  0  5242  437 Jun 30 21:20 /usr/lib/libc.a    937728015 
  123. xrwrw  3 19948  380 Jun 30 21:21 /usr/lib/c0        937734428 
  124. xrwrw  3  4672  198 Jun 30 21:53 /bin/cc        937848855 
  125. xrwr- 28  3462  491 Jul  1 16:35 /usr/fort/fc1        941888104 
  126. xrwr- 28  3238  498 Jul  1 16:35 /usr/fort/fc2        941888184 
  127. xrwr- 28  6840  505 Jul  1 16:35 /usr/fort/fc3        941888472 
  128. xrwr- 28  4918  519 Jul  1 16:35 /usr/fort/fc4        941888613 
  129. xrwrw  3   214  175 Jul 15 01:21 /bin/sum        1011175062 
  130. xrwr-  4  7154   61 Jul 21 12:42 /bin/roff        1044729738 
  131. urwr-  0   282   53 Sep 28 21:37 /bin/rmdir        1404349922 
  132. urwr-  0   232   31 Nov  6 21:42 /bin/mkdir        1606544287 
  133. urwr-  1   192   92 Nov 22 19:35 /bin/df        1689030995 
  134. urwr-  1  1084  122 Nov 22 19:35 /bin/check        1689030997 
  135. xrwr-  3   718   46 Nov 22 22:51 /bin/chown        1689737545 
  136. xrwr-  3   604  150 Nov 22 22:51 /bin/sort        1689737557 
  137. urwr-  1   790  119 Nov 26 14:24 /bin/tm        1708647263 
  138. urwr-  0  3678   34 Dec 31 04:08 /bin/tap        1887871165 
  139.  
  140. -rw--  1   221  239 Feb  6 14:35 /etc/passwd        2081934621 
  141. -rwr-  1    70  238 Feb  6 14:38 /etc/uids        2081948231 
  142. xrwr-  1   424  231 Feb  6 14:50 /etc/init        2081988977 
  143.     
  144. Note that the tap timestamp of 2081988977 for /etc/init is approximately
  145. 13 months. Therefore, the February for the last 3 files is the one in
  146. the year after all the other archive files.
  147.  
  148. The biggest problem here is to pin down the epoch for the files. In the
  149. early version of UNIX, timestamps were in 1/60th second units. A 32-bit
  150. counter using these units overflows in 2.5 years, so the epoch had to
  151. be changed periodically, and I believe 1970, 1971, 1972 and 1973 were
  152. all epochs at one stage or another.
  153.  
  154. Given that the C compiler passes, and the library, are dated in June
  155. of the epoch year, and that Dennis has said ``1972-73 were the truly
  156. formative years in the development of the C language'', it's therefore
  157. unlikely that the epoch for the s2 tape is 1971: it is more likely to
  158. be 1972. The tape also contains several 1st Edition a.out binaries,
  159. which also makes it unlikely to be 1973.
  160.  
  161. Therefore, Warren's decoding of the s2-bits file, in s2-bits.tar.gz,
  162. uses 1972 as the epoch. However, Dennis decoding in s2.tar.gz uses 1973.
  163.  
  164. Finally, the date(1) a.out on the tape uses 1971 as its archive. How annoying!
  165. After a bit of discussion, Dennis and Warren have agreed that 1972 is the
  166. most probable epoch for s2-bits.
  167.