* When did the `dc' command first appear? [not found] <199910251815.NAA25814@216-80-13-97.d.enteract.com> @ 1999-10-26 0:07 ` Warren Toomey 1999-10-27 2:15 ` Greg Lehey 0 siblings, 1 reply; 4+ messages in thread From: Warren Toomey @ 1999-10-26 0:07 UTC (permalink / raw) In article by Eric Fischer: > Brian D. Chase writes, > > > Just a quick question. Was the `dc' command introduced with one of the > > BSD releases or did it exist in an earlier version of Unix like the 6th or > > 7th Edition? > > It appears in the First Edition manual, and according to A Quarter > Century of Unix, it's even older than that. > eric There's a binary of dc from either 1st or 2nd Edition in the PUPS Archive: -r---wxrw- 0/0 6846 Apr 14 06:50 1973 bin/dc Warren Received: (from major at localhost) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) id KAA29099 for pups-liszt; Tue, 26 Oct 1999 10:24:03 +1000 (EST) Received: from europe.std.com (europe.std.com [199.172.62.20]) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) with ESMTP id KAA29095 for <pups at minnie.cs.adfa.edu.au>; Tue, 26 Oct 1999 10:23:54 +1000 (EST) Received: from world.std.com (bdc at world-f.std.com [199.172.62.5]) by europe.std.com (8.9.3/8.9.3) with ESMTP id UAA13599; Mon, 25 Oct 1999 20:23:44 -0400 (EDT) Received: from localhost (bdc at localhost) by world.std.com (8.9.3/8.9.3) with ESMTP id UAA11996; Mon, 25 Oct 1999 20:23:43 -0400 (EDT) Date: Mon, 25 Oct 1999 17:23:42 -0700 From: Brian D Chase <bdc@world.std.com> To: Warren Toomey <wkt at cs.adfa.edu.au> cc: Unix Heritage Society <pups at minnie.cs.adfa.edu.au> Subject: Re: When did the `dc' command first appear? In-Reply-To: <199910260007.KAA16993 at henry.cs.adfa.edu.au> Message-ID: <Pine.SGI.4.04.9910251718360.7714-100000 at world.std.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-pups at minnie.cs.adfa.edu.au Precedence: bulk On Tue, 26 Oct 1999, Warren Toomey wrote: > There's a binary of dc from either 1st or 2nd Edition in the PUPS Archive: > > -r---wxrw- 0/0 6846 Apr 14 06:50 1973 bin/dc Hmmm... did the permissions on files have the same meaning back in 1973 as they do now? Group and "other" writeable system binaries? Tsk tsk tsk. Well I suppose just because someone has written the Unix operating system, it doesn't necessarily mean that they're a very good Unix sysadmin. -brian. --- Brian Chase | bdc at world.std.com | http://world.std.com/~bdc/ ----- "Captain, we're experiencing a high rate of packet collisions!" -- K. Received: (from major at localhost) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) id KAA29144 for pups-liszt; Tue, 26 Oct 1999 10:27:16 +1000 (EST) Received: from henry.cs.adfa.edu.au (henry.cs.adfa.edu.au [131.236.21.158]) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) with ESMTP id KAA29140 for <pups at minnie.cs.adfa.edu.au>; Tue, 26 Oct 1999 10:27:10 +1000 (EST) Received: (from wkt at localhost) by henry.cs.adfa.edu.au (8.9.2/8.9.3) id KAA17113 for pups at minnie.cs.adfa.edu.au; Tue, 26 Oct 1999 10:27:10 +1000 (EST) From: Warren Toomey <wkt@cs.adfa.edu.au> Message-Id: <199910260027.KAA17113 at henry.cs.adfa.edu.au> Subject: Re: When did the `dc' command first appear? In-Reply-To: <Pine.SGI.4.04.9910251718360.7714-100000 at world.std.com> from Brian D Chase at "Oct 25, 1999 5:23:42 pm" To: pups at minnie.cs.adfa.edu.au (Unix Heritage Society) Date: Tue, 26 Oct 1999 10:27:09 +1000 (EST) Reply-To: wkt at cs.adfa.edu.au X-Mailer: ELM [version 2.4ME+ PL43 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-pups at minnie.cs.adfa.edu.au Precedence: bulk In article by Brian D Chase: > On Tue, 26 Oct 1999, Warren Toomey wrote: > > > There's a binary of dc from either 1st or 2nd Edition in the PUPS Archive: > > > > -r---wxrw- 0/0 6846 Apr 14 06:50 1973 bin/dc > > Hmmm... did the permissions on files have the same meaning back in 1973 as > they do now? Group and "other" writeable system binaries? Tsk tsk tsk. > > Well I suppose just because someone has written the Unix operating system, > it doesn't necessarily mean that they're a very good Unix sysadmin. No, the perms have got stuffed up in conversion from 1st Ed permissions to the tar archive. 1st Edition had no groups, and only had perms 01 write for other 02 read for other 04 write for owner [ all octal values ] 10 read for owner 20 executable 40 set-UID Warren Received: (from major at localhost) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) id KAA29265 for pups-liszt; Tue, 26 Oct 1999 10:36:34 +1000 (EST) Received: from caveman.geac.com.au (caveman.geac.com.au [203.30.73.2]) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) with SMTP id KAA29260 for <pups at minnie.cs.adfa.edu.au>; Tue, 26 Oct 1999 10:36:26 +1000 (EST) Received: (qmail 24193 invoked from network); 26 Oct 1999 10:36:59 +1000 Received: from trowel.geac.com.au (203.1.26.189) by caveman.geac.com.au with SMTP; 26 Oct 1999 10:36:59 +1000 Received: (qmail 931 invoked from network); 26 Oct 1999 10:36:24 +1000 Received: from fgh.geac.com.au (202.6.67.163) by trowel.geac.com.au with SMTP; 26 Oct 1999 10:36:24 +1000 Received: from localhost (dave at localhost) by fgh.geac.com.au?r with ESMTP id KAA08766 for <pups at minnie.cs.adfa.edu.au>; Tue, 26 Oct 1999 10:34:00 +1000 Delivered-To: <pups at minnie.cs.adfa.edu.au> X-Authentication-Warning: fgh.geac.com.au: dave owned process doing -bs Date: Tue, 26 Oct 1999 10:33:59 +1000 (EST) From: Dave Horsfall <dave@fgh.geac.com.au> X-Sender: dave at fgh To: PDP Unix Preservation Society <pups at minnie.cs.adfa.edu.au> Subject: Re: When did the `dc' command first appear? In-Reply-To: <Pine.SGI.4.04.9910251718360.7714-100000 at world.std.com> Message-ID: <Pine.GSO.4.20.9910261031430.7382-100000 at fgh> X-No-Archive: Yes X-Witty-Saying: "Tesseract - Enter at own risk" X-Disclaimer: "Me, speak for us?" MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-pups at minnie.cs.adfa.edu.au Precedence: bulk On Mon, 25 Oct 1999, Brian D Chase wrote: > > -r---wxrw- 0/0 6846 Apr 14 06:50 1973 bin/dc > > Hmmm... did the permissions on files have the same meaning back in 1973 as > they do now? Group and "other" writeable system binaries? Tsk tsk tsk. I don't believe the concept of group permissions existed then... > Well I suppose just because someone has written the Unix operating system, > it doesn't necessarily mean that they're a very good Unix sysadmin. On the other hand, people actually trusted each other, because you all worked with each other, and it was common for someone to write a utility and stick it on the system. Hint: /usr wasn't called that for no reason... -- Dave Horsfall VK2KFU dave at geac.com.au Ph: +61 2 9978-7493 Fx: +61 2 9978-7422 Geac Computers P/L (FGH Division) 2/57 Christie St, St Leonards 2065, Australia ^ permalink raw reply [flat|nested] 4+ messages in thread
* When did the `dc' command first appear? 1999-10-26 0:07 ` When did the `dc' command first appear? Warren Toomey @ 1999-10-27 2:15 ` Greg Lehey 1999-10-27 23:48 ` Warren Toomey 0 siblings, 1 reply; 4+ messages in thread From: Greg Lehey @ 1999-10-27 2:15 UTC (permalink / raw) On Tuesday, 26 October 1999 at 10:07:44 +1000, Warren Toomey wrote: > In article by Eric Fischer: >> Brian D. Chase writes, >> >>> Just a quick question. Was the `dc' command introduced with one of the >>> BSD releases or did it exist in an earlier version of Unix like the 6th or >>> 7th Edition? >> >> It appears in the First Edition manual, and according to A Quarter >> Century of Unix, it's even older than that. >> eric > > There's a binary of dc from either 1st or 2nd Edition in the PUPS Archive: > > -r---wxrw- 0/0 6846 Apr 14 06:50 1973 bin/dc Wouldn't that be the Third Edition with that timestamp? I won't comment again about the permissions. Greg -- Finger grog at lemis.com for PGP public key See complete headers for address and phone numbers ^ permalink raw reply [flat|nested] 4+ messages in thread
* When did the `dc' command first appear? 1999-10-27 2:15 ` Greg Lehey @ 1999-10-27 23:48 ` Warren Toomey 0 siblings, 0 replies; 4+ messages in thread From: Warren Toomey @ 1999-10-27 23:48 UTC (permalink / raw) In article by Greg Lehey: > > There's a binary of dc from either 1st or 2nd Edition in the PUPS Archive: > > -r---wxrw- 0/0 6846 Apr 14 06:50 1973 bin/dc > > Wouldn't that be the Third Edition with that timestamp? I won't > comment again about the permissions. > Greg The binary is an 0405 a.out file. I'm told by Norman Wilson, who has paper copies of the 2nd & 3rd Edition manuals, that 0405 binaries didn't exist in 2nd & 3rd Edition. I also believe that the files in the s2.tar tarball sent in by Dennis are a whole year off, and so the date above should be Apr 14, 1972. That dates the file just before the release of 2nd Edition. I really need to sit down & outline my reasons for believing that the dates are a year out. I'll do so soon & email it here! Cheers all, Warren Received: (from major at localhost) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) id JAA41918 for pups-liszt; Thu, 28 Oct 1999 09:49:29 +1000 (EST) Received: from nose.cita.utoronto.ca (nose.cita.utoronto.ca [128.100.76.157]) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) with SMTP id JAA41914 for <pups at minnie.cs.adfa.edu.au>; Thu, 28 Oct 1999 09:49:18 +1000 (EST) From: norman@nose.cita.utoronto.ca Message-Id: <199910272349.JAA41914 at minnie.cs.adfa.edu.au> Subject: dc and date numerology To: pups at minnie.cs.adfa.edu.au Date: Wed, 27 Oct 1999 19:48:50 -0400 Sender: owner-pups at minnie.cs.adfa.edu.au Precedence: bulk Greg Lehey wondered about the date in > There's a binary of dc from either 1st or 2nd Edition in the PUPS Archive: > > -r---wxrw- 0/0 6846 Apr 14 06:50 1973 bin/dc 1973 is indeed post-Second-Edition. But it's not the right date; just as the permission flags were different in the early years, so was the date representation. Here are some gleanings from old manuals that tell the story. The relatively recent ls or tar or whatnot that printed the line above presumably interpreted the date as if it were in modern form: seconds since 1 Jan 1970 UTC. So the raw number stored in the i-node was probably about 105000000 decimal (30 Apr 1973 in my time zone), or about 1200 days into the epoch. But the file system described in the First Edition manual takes the date as a count of clock ticks since 1 Jan 1971. The clock ticked at 60Hz, so the date is really about 1200/60 = 20 days into the epoch; if this file came from a 1e file system, it was written on 21 Jan 1971. The trouble with keeping a 60Hz clock in a 32-bit number is that it takes just a couple of years before it overflows. A band-aid had been stuck on by the time the Third Edition manual was printed: the base date changed to 1 Jan 1972. So maybe bin/dc was written on 21 Jan 1972 instead. There's no way to tell just from the bits in the i-node. The modern time format (1-second resolution) appeared in the Fourth Edition manual. It is probably not a coincidence that the file system format changed a lot at the same time; groups appeared, permission modes changed to approximately their current form, directory entries changed, and so on. The 60Hz scheme seems to have come from the PDP-7, on which it made more sense; the -7 has 36-bit words, so a 60Hz counter lasts 16 times longer. I bet the base date changed at least once between the original PDP-7 system and the PDP-11 as well, since 1 Jan 1971 seems too recent for the PDP-7 system. See http://www.cita.utoronto.ca/~norman/old-unix/old-fs.html for many more such grotty details, collected in an insomniac night with a stack of old manuals some months ago. Norman Wilson Received: (from major at localhost) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) id KAA42069 for pups-liszt; Thu, 28 Oct 1999 10:02:33 +1000 (EST) Received: from henry.cs.adfa.edu.au (henry.cs.adfa.edu.au [131.236.21.158]) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) with ESMTP id KAA42060 for <pups at minnie.cs.adfa.edu.au>; Thu, 28 Oct 1999 10:02:26 +1000 (EST) Received: (from wkt at localhost) by henry.cs.adfa.edu.au (8.9.2/8.9.3) id KAA26898 for pups at minnie.cs.adfa.edu.au; Thu, 28 Oct 1999 10:02:25 +1000 (EST) From: Warren Toomey <wkt@cs.adfa.edu.au> Message-Id: <199910280002.KAA26898 at henry.cs.adfa.edu.au> Subject: Re: dc and date numerology In-Reply-To: <199910272349.JAA41914 at minnie.cs.adfa.edu.au> from "norman at nose.cita.utoronto.ca" at "Oct 27, 1999 7:48:50 pm" To: Date: Thu, 28 Oct 1999 10:02:25 +1000 (EST) Cc: pups at minnie.cs.adfa.edu.au Reply-To: wkt at cs.adfa.edu.au X-Mailer: ELM [version 2.4ME+ PL43 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-pups at minnie.cs.adfa.edu.au Precedence: bulk In article by norman at nose.cita.utoronto.ca: > Greg Lehey wondered about the date in > > -r---wxrw- 0/0 6846 Apr 14 06:50 1973 bin/dc > > 1973 is indeed post-Second-Edition. But it's not the right date; just as > the permission flags were different in the early years, so was the date > representation. Here are some gleanings from old manuals that tell the > story. [ much omitted ] Norman details the fact that early Unixes stored time in 60ths of a second, i.e the normal clock tick, and as such, a 32-bit integer overflows in around 2.5 years. However, I think Norman is not exactly right when he said that the tar archive was reinterpreting this 1/60 sec time in units of seconds. Dennis Ritchie, with help from Keith Bostic and a DECtape drive, managed to retrieve these files from an old DECtape. These old files were stored in tap(1) archive format. Dennis wrote a program to read in the tap(1) format archives and extract their contents while trying to maintain the _correct_ permissions and timestamps. Here is his email describing this: The tapes were written in either the 'tap' or 'tp' format, which are similar in that they have a directory of up to 192 entries at the start with names and other information including the size and tape address of the files. 'tp' was the later format, and was in use by November 1973, the date of the 4th edition manual. With `tap', the times associated with the files were recorded in pre-modern units: sixtieths of a second, from an origin that changed. The first three editions of the manual had BUGS sections noting that 32 bits can represent only about 2.5 years in this unit, and this implied continuing crises as the time overflowed. I believe that the change to use seconds for Unix time took place along with the change to the C version of the operating system, which occurred about the end of the summer of 1973, and also that the change from `tap' to `tp' took place at the same time. (This is consistent with the dates of the 3rd and 4th edition manuals). Thus the dates recorded with the `tp' tapes probably correspond reliably to the modification dates of the files at the time of saving them (of course, this gives only a upper bound on their creation, since they might have been copied or trivially touched just before saving them). Recovering the proper dates for the `tap' tapes is less reliable, because there was at least one change of epoch (from 1971 to 1972) during the period they could possibly have been produced. I believe that the 1972 epoch is most likely the correct one for the tapes here. In other words, Dennis had to guess the epoch when recovering these files. He got it right with the `nsys' kernel files, because there is enough other data lying around documenting the kernel rewrite from assembly to C, and the inclusion of pipes into the kernel. However, with the s2.tar archive, I think Dennis got the epoch one year out, i.e everything should be dated a year earlier. The most obvious is that there are so many 0405 magic a.out files in the archive, and apparently this a.out format disappeared in the 2nd Edition. Cheers all, Warren ^ permalink raw reply [flat|nested] 4+ messages in thread
* When did the `dc' command first appear? @ 1999-10-25 16:34 Brian D Chase 0 siblings, 0 replies; 4+ messages in thread From: Brian D Chase @ 1999-10-25 16:34 UTC (permalink / raw) Just a quick question. Was the `dc' command introduced with one of the BSD releases or did it exist in an earlier version of Unix like the 6th or 7th Edition? -brian. --- Brian Chase | bdc at world.std.com | http://world.std.com/~bdc/ ----- Received: (from major at localhost) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) id DAA27477 for pups-liszt; Tue, 26 Oct 1999 03:20:12 +1000 (EST) Received: from mrynet.com (root at mrynet.com [24.234.53.177]) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) with ESMTP id DAA27473 for <pups at minnie.cs.adfa.oz.au>; Tue, 26 Oct 1999 03:20:03 +1000 (EST) Received: (from pups at localhost) by mrynet.com (8.9.3/8.9.3) id KAA77523; Mon, 25 Oct 1999 10:19:54 -0700 (PDT) (envelope-from pups) Posted-Date: Mon, 25 Oct 1999 10:19:54 -0700 (PDT) Message-Id: <199910251719.KAA77523 at mrynet.com> From: pups@mrynet.com (PUPS mailing list) Date: Mon, 25 Oct 1999 10:19:54 +0000 X-Mailer: Mail User's Shell (7.2.6 beta(3) 11/17/96) To: Brian D Chase <bdc at world.std.com> Subject: Re: When did the `dc' command first appear? Cc: pups at minnie.cs.adfa.oz.au Sender: owner-pups at minnie.cs.adfa.edu.au Precedence: bulk Brian Chase asked: > Just a quick question. Was the `dc' command introduced with one of the > BSD releases or did it exist in an earlier version of Unix like the 6th or > 7th Edition? I see it on the System III and Version 7 systems. I don't see it in V6 distro however. Cheers, -skots -- Scott G. Akmentins-Taylor InterNet: staylor at mrynet.com MRY Systems staylor at mrynet.lv (Skots Gregorijs Akmentins-Teilors -- just call me "Skots") ----- Labak miris neka sarkans ----- Received: (from major at localhost) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) id EAA27681 for pups-liszt; Tue, 26 Oct 1999 04:03:31 +1000 (EST) Received: from csadfa.cs.adfa.edu.au (csadfa.cs.adfa.edu.au [131.236.21.6]) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) with ESMTP id EAA27677 for <pups at minnie.cs.adfa.edu.au>; Tue, 26 Oct 1999 04:03:25 +1000 (EST) Received: from 216-80-13-97.d.enteract.com (216-80-13-90.d.enteract.com [216.80.13.90]) by csadfa.cs.adfa.edu.au (8.9.0/8.9.0) with ESMTP id EAA09243 for <pups at minnie@cs.adfa.oz.au>; Tue, 26 Oct 1999 04:03:21 +1000 (EST) Received: (from eric at localhost) by 216-80-13-97.d.enteract.com (8.9.3/8.9.3) id NAA25814; Mon, 25 Oct 1999 13:15:15 -0500 (CDT) (envelope-from eric) Date: Mon, 25 Oct 1999 13:15:15 -0500 (CDT) Message-Id: <199910251815.NAA25814 at 216-80-13-97.d.enteract.com> From: Eric Fischer <enf@pobox.com> To: bdc at world.std.com Subject: Re: When did the `dc' command first appear? In-Reply-To: <Pine.SGI.4.04.9910250931400.1849-100000 at world.std.com> References: <Pine.SGI.4.04.9910250931400.1849-100000 at world.std.com> Cc: pups at minnie@cs.adfa.oz.au Sender: owner-pups at minnie.cs.adfa.edu.au Precedence: bulk Brian D. Chase writes, > Just a quick question. Was the `dc' command introduced with one of the > BSD releases or did it exist in an earlier version of Unix like the 6th or > 7th Edition? It appears in the First Edition manual, and according to A Quarter Century of Unix, it's even older than that. "There was also a version of dc, desk calculator, a very very early program. That was actually the first program that ran on the PDP-11. It ran standalone before there was an operating system." (p. 35) eric Received: (from major at localhost) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) id EAA27847 for pups-liszt; Tue, 26 Oct 1999 04:24:20 +1000 (EST) Received: from scapa.cs.ualberta.ca (root at scapa.cs.ualberta.ca [129.128.4.44]) by minnie.cs.adfa.edu.au (8.9.3/8.9.3) with ESMTP id EAA27843 for <pups at minnie.cs.adfa.oz.au>; Tue, 26 Oct 1999 04:24:12 +1000 (EST) Received: (from localhost user: 'mark' uid#150 fake: goodfare.cs.ualberta.ca) by scapa.cs.ualberta.ca id <S433932AbPJYSXv>; Mon, 25 Oct 1999 12:23:51 -0600 Subject: Re: When did the `dc' command first appear? In-Reply-To: <Pine.SGI.4.04.9910250931400.1849-100000 at world.std.com> from Brian D Chase at "Oct 25, 1999 09:34:40 am" From: Mark Green <mark@cs.ualberta.ca> To: bdc at world.std.com (Brian D Chase) Date: Mon, 25 Oct 1999 12:23:48 -0600 (MDT) Cc: pups at minnie.cs.adfa.oz.au X-Mailer: ELM [version 2.4ME+ PL53 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Message-Id: <19991025182355Z433932-29789+188 at scapa.cs.ualberta.ca> Sender: owner-pups at minnie.cs.adfa.edu.au Precedence: bulk > Just a quick question. Was the `dc' command introduced with one of the > BSD releases or did it exist in an earlier version of Unix like the 6th or > 7th Edition? > I think it was in 6th, but thats straining my memory a bit. -- Dr. Mark Green mark at cs.ualberta.ca Professor (780) 492-4584 Director, Research Institute for Multimedia Systems (RIMS) Department of Computing Science (780) 492-1071 (FAX) University of Alberta, Edmonton, Alberta, T6G 2H1, Canada ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~1999-10-27 23:48 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <199910251815.NAA25814@216-80-13-97.d.enteract.com> 1999-10-26 0:07 ` When did the `dc' command first appear? Warren Toomey 1999-10-27 2:15 ` Greg Lehey 1999-10-27 23:48 ` Warren Toomey 1999-10-25 16:34 Brian D Chase
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).