Subject: Re: atime mtime ctime
To: Takahiro Kambe <taca@sky.yamashina.kyoto.jp>
From: Steven M. Bellovin <smb@research.att.com>
List: netbsd-users
Date: 11/22/2000 07:56:58
In message <200011220837.RAA12746@edge.sky.yamashina.kyoto.jp>, Takahiro Kambe
writes:
>In message <29948.974881548@brandenburg.cs.mu.OZ.AU>
> on Wed, 22 Nov 2000 15:25:48 +0700,
> Robert Elz <kre@munnari.OZ.AU> wrote:
>> Eg: consider
>...
>> Go through all of that, and more like it, and decide which of the
>> commands set the creation time of abc, and which do not, and then
>> justify the result for any practical use whatever.
>One simple way is the time when something created by open(), creat(),
>mkdir(), mknod(), socket() and so on. But I don't think
>it is very useful.
>
And what about link()? That, I think, is the killer -- the times are
in the i-node, but "created" is a concept that applies more to
directory names.
That said, if memory serves correctly ctime *was* originally "created"
time for a brief period between 6th Edition and 7th Edition. At least,
I recall seeing some references to that, way back when. ctime first
appeared in 7th Edition.
It's also worth remembering that in those days, there was a lot of
pressure to keep the inode small. Adding a 4th time field would have
taken away two disk block entries, which in turn would have lowered the
threshhold for when "indirect" blocks were needed, thus slowing access
to the file. Features aren't free, and constrained resources often
produce far more elegant solutions than today's "memory and CPU are
free; why not add it?" attitudes.
--Steve Bellovin