[TUHS] PDP-7 UNIX filesystem

Abhinav Rajagopalan abhinavrajagopalan at gmail.com
Mon Oct 21 21:38:11 AEST 2019

Also, I only now realized that only mknod existed, up until a long time,
only later on with the GNU coreutils did mkdir as a command come into
existence. Running the PDP-11 v7 on SIMH showed that, gotten so accustomed
to the Linux env that thinking backwards seemed suddenly arcane.

On Mon, Oct 21, 2019 at 4:13 PM Abhinav Rajagopalan <
abhinavrajagopalan at gmail.com> wrote:

>> . and ..
>>         Was this introduced first with PDP-11 unix or did the convention
>> start on the PDP-7 already? It certainly seems to be the case with .
>> but how about ..? the dd directory seems to take on the role of a sort
>> of root directory and the now discovered program pd actually creates a
>> file .. (haven't tried to understand what it does though yet)
>> What does dd stand for, dotdot? directory directory?
> . and .. are quite intuitive the more I think about it, they're
> essentially acting as symbolic representations of the 'current' and
> 'parent' dirs as in, when we look at it from / :
>                    /
>        |--|--|--|--|--|--|--|--|
>      /etc /bin /root /home /mnt /dev /usr
>        |--|--|--|--|--|--|--|--|
>      ../ ../ ../ ../ ../ ../ ../ ../
> As we see, each of the subdirectories hold a / prefix to them as we're
> used to seeing, and this translated to the subfolders having their ../
> descriptor denoting their parent (I think of them as recursive pointers to
> parent dirs), where the parent holds ../ and child dir has a name like /..
> and invoking
> I don't know if it wasn't until the mkdir() syscall was added this
> approach took form. There was an earlier 'Aha, Unix!' thread where Ken had
> mentioned a similar thing, where invoking pwd gave only the /usr/name
> directory even if the directory had been changed with chdir, essentially
> stemming out of only the forked child changing dirs, when the cd wasn't
> built into the shell (this was in the PDP-11 when he was writing the
> initial set utilities like cd, ls)
> Also, depending on the implementation of 'ls' we were to try this out
> today, these are bound to have their differences. The original syscalls on
> the PDP-7 had chdir,
> swp:			" system call dispatch table
>    jmp .		" base instruction
>    .save; .getuid; .open; .read; .write; .creat; .seek; .tell
>    .close; .link; .unlink; .setuid; .rename; .exit; .time; .intrp
>    .chdir; .chmod; .chown; badcal; .sysloc; badcal; .capt; .rele
>    .status; badcal; .smes; .rmes; .fork
> mkdir was probably in the works at this stage.
> We should also touch upon the "cd -" as this one takes you back like a
> back button into the directory you were last inside, whereas the cd ../..
> takes you up or down the hierarchy depending on the placement of the / and
> adding placeholders i.e directory names in place of the .. (dots).
> Of course, only the creators can embark upon the design details of the
> hierarchical system and the reasons behind all the above and more.
> Since you mentioned the word dd, the utility which serves me like none
> other for my frequent rewrites of images, it too has an interesting past,
> it seems like 'dd' was non-unixy in it's design approach, if I'm to believe
> the lores around, which leads me to think that this might have been another
> one of the many idiosyncratic naming conventions used back then. More on
> the dd stuff: http://www.catb.org/jargon/html/D/dd.html
> Personally, I just like to think of it in my head as disk-disk.
> --
> Abhinav Rajagopalan


Abhinav Rajagopalan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20191021/16467ce5/attachment.html>

More information about the TUHS mailing list