The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: Abhinav Rajagopalan <abhinavrajagopalan@gmail.com>
To: Angelo Papenhoff <aap@papnet.eu>, tuhs@tuhs.org
Subject: Re: [TUHS] PDP-7 UNIX filesystem
Date: Mon, 21 Oct 2019 17:08:11 +0530	[thread overview]
Message-ID: <CANOZ5rjiezTY0DM+B9Gafa3DZDHPCbKPhAxttu91LD+zX=f9Vw@mail.gmail.com> (raw)
In-Reply-To: <CANOZ5riWWibJ4OY8SnZ7q_o1VaMRFq_-1yXedq2PMXupc1ckMA@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 3531 bytes --]

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@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

[-- Attachment #2: Type: text/html, Size: 8473 bytes --]

  reply	other threads:[~2019-10-21 11:39 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-21  6:22 Angelo Papenhoff
2019-10-21 10:43 ` Abhinav Rajagopalan
2019-10-21 11:38   ` Abhinav Rajagopalan [this message]
2019-10-21 12:00     ` Thomas Paulsen
2019-10-21 13:31       ` Abhinav Rajagopalan
2019-10-22 18:07   ` Peter Jeremy
2019-10-23  0:07     ` Mary Ann Horton
2019-10-23  2:02       ` Kurt H Maier
2019-10-23  2:19         ` Larry McVoy
2019-10-23  8:34       ` Thomas Paulsen
2019-10-24  0:06         ` Warner Losh
2019-10-24  2:23           ` Michael Parson
2019-10-25 21:08             ` Michael Kjörling
2019-10-25 21:34               ` Arthur Krewat
2019-10-25 21:50                 ` reed
2019-10-25 22:54                 ` Warner Losh
2019-10-24  2:29   ` Christopher Browne
2019-10-24  8:25     ` Thomas Paulsen
2019-10-21 16:54 ` Angelo Papenhoff
2019-10-23  5:48 ` Lars Brinkhoff
2019-10-21 11:58 Noel Chiappa
2019-10-21 15:44 ` Abhinav Rajagopalan
2019-10-22  2:09 ` Jaap Akkerhuis
2019-10-23  2:00   ` Christopher Browne

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CANOZ5rjiezTY0DM+B9Gafa3DZDHPCbKPhAxttu91LD+zX=f9Vw@mail.gmail.com' \
    --to=abhinavrajagopalan@gmail.com \
    --cc=aap@papnet.eu \
    --cc=tuhs@tuhs.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).