I've got the Unix Programming Environment book by Kernighan & Pike, copyright 1984. The book says that you need the Unix programmer's manual while reading the book. The preface of the Unix Programming Environment book referenced a quote from the Unix programmer's manual 2nd edition June, 1972. Does anyone know if that means that that is the edition of the Unix programmer's manual, I should use and/or whether I can use that edition of the manual? If not so, which edition of Unix programmer's manual should I use, for that edition of the Unix programming Environment book? I think that maybe someone that read the book, might be more helpful, telling me the manual edition they used.

Finally I've a Windows machine, does anyone know the best option for me to be able to use a Unix terminal, while reading this book

  • One difference between 1984 and today is that putting argument types in function declarations was nonexistent back then but is required now. Apr 23, 2017 at 23:56
  • @MarkPlotnick Cheers mate
    – Evan
    Apr 24, 2017 at 19:27

2 Answers 2


The Unix programmer's manual is what is better known as the collection of man pages.

If you're reading Unix Programming Environment then it might be helpful to consult the 2nd edition that is cited by that book. You can find copies online, e.g. from Bell Labs. However it will also be useful to see the manual on your system. You can see individual entries of the manual with the man command (that's why they're called “man pages”).

Do note that this is a very old book and 2nd edition is even older. Unix has changed considerably in 35–45 years. To learn Unix, it would be a lot more useful and a lot easier to learn a system that you can run, such as an up-to-date Linux release. Learn this first, and read historical books once you're familiar with the basics.

The best way to learn Linux is to install it on your machine. Start by installing it in a virtual machine. VirtualBox is very easy to use for this. Pick a distribution for novice users, such as Ubuntu, Linux Mint or elementary OS. You can run all the same programs on any distribution, but some distributions are harder to set up than others if you've never done it before.

  • Maybe also point to repositories like man7.org/linux/man-pages/index.html for contemporary man pages for Linux. FreeBSD also has its manual on-line at freebsd.org/cgi/man.cgi
    – tripleee
    Apr 24, 2017 at 5:54
  • 1
    Oh, and since the OP asks about Unix rather than Linux, maybe point to FreeBSD as an alternative to Linux, which is less popular, but "more Unix" in some sense. I would not call it suitable for novices, though.
    – tripleee
    Apr 24, 2017 at 5:56
  • @tripleee Cheers mate
    – Evan
    Apr 24, 2017 at 19:29
  • @Gilles Cheers mate
    – Evan
    Apr 24, 2017 at 19:29
  1. In 1984 there wasn't really any mass-access Internet, so the only resource for a reference source would have been a book. I suspect these days you'll do just fine with an online connection.

  2. Cygwin, Bash on Windows, a Linux/FreeBSD virtual machine, a cheap VPS. There are many options. It's not possible to give a definitive answer because you haven't provided any criteria for the "best" option.

  • Cheers Roaima. My criteria would be a free one
    – Evan
    Apr 23, 2017 at 22:21
  • @user3856947 VirtualBox works well on Windows, and then just install any popular free Unix, like Ubuntu, or OpenBSD (which is what I'm running on a Windows setup with VirtualBox).
    – Kusalananda
    Apr 23, 2017 at 22:28
  • @Kusalananda Cheers mate
    – Evan
    Apr 23, 2017 at 22:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.