add directory Minix

This commit is contained in:
gohigh
2024-02-19 00:21:39 -05:00
parent 56596ada90
commit 5a46ddb732
2923 changed files with 1764412 additions and 0 deletions

95
Minix/old/1.7.2/README Normal file
View File

@@ -0,0 +1,95 @@
HOW TO GET AND INSTALL MINIX 1.7.2
This directory and subdirectories contains Minix version 1.7.2, a small
educational UNIX-like system for IBM PC's and compatibles.
Before installing Minix, do the unthinkable and read the installation
manual in the file usage.8. On a UNIX machine you can unpack
man.tar.Z and use a reasonably smart pager (one that understands
backspace overstrikes) to read the man pages. The same manual pages
can be found in man.zip as flat text for use under MS-DOS. Note that the
ZIP file contains subdirectories that you may or may not want to keep
intact.
man.tar.Z - Installation manual pages (UNIX)
man.zip - Installation manual pages (MS-DOS)
Alternatively, by WWW you can view the whole manual page set. The
page to start with is usage(8).
Before fetching Minix, you should get the checksum list (to verify correct
transmission and unpacking). If you do not already have it, you will need
the program to compute the checksums on your machine, crc.c:
crclist - CRC's of all the files here
crc.c - Command to make CRC checksums
Eventually, you may also want these files:
changes-1.7.2 - List of changes between 1.7.1 and 1.7.2
upgrade-1.7.2 - How to upgrade from 1.7.x to 1.7.2
bugs - List of bugs in 1.7.2
fixes/ - Fixes to bugs in 1.7.2
Minix for the Intel architecture comes in three flavors:
- Regular (for 386, 486, and Pentium machines)
- Small (for 8086 and 286 machines)
- Tiny (for 8086 and 286 machines with small memories and/or 360K
diskette drives)
For the regular distribution, use the i386 directory. For the small
distribution, use the i86 directory. For the tiny distribution, use the both
the i86 and xt directories. All these directories contain the executable
programs of Minix. In addition, the src directory contains the full Minix
source code, which is identical for all three flavors (the code contains
#ifdef's where the difference matters).
Two versions of the distribution have been prepared. If you are
reasonably experienced in dealing with UNIX or Minix and are
downloading to a UNIX or Minix system with 10MB of free disk space,
and a connection that can transfer megabyte files without loss (even if
this is not the target system), just fetch whichever of the following you
need:
i386.tar - 386 binaries
i86.tar - 8086/286 binaries
xt.tar - Replacement files for tiny systems
src.tar - Full sources and manual pages for all versions
Under all other circumstances, use the second distribution, which
consists of many 720K floppy disk images (you can also use bigger
diskettes, but remember that the size of the images is still 720K).
i386: ROOT USR USR.01 USR.02 ... USR.06
i86: ROOT USR USR.01 USR.02 ... USR.06
xt: README TINYROOT TINYUSR1 TINYUSR2 (360K images)
src: SRC.01 SRC.02 ... SRC.08
The USR.nn and SRC.nn series of diskette images were created by
commands like this one, so they are just a compressed tar file cut to
pieces:
tar cf - * | compress | vol 720 /dev/fd0
The two installation floppies can be combined on a 1.2 Mb or 1.44 Mb
diskette, the other images can be combined on 1.44 Mb floppies, turning
them into 1440K images:
cat ROOT USR >/dev/fd0
cat USR.01 USR.02 >/dev/fd0 (odd/even pairs)
cat USR.03 USR.04 >/dev/fd0
...
cat SRC.01 SRC.02 >/dev/fd0
...
/dev/fd0 is a random floppy device name. You have to find out what your
Operating System names it today. Under MS-DOS you can use the
WrtDsk command in the ../dosutil directory to write the floppy images.
Be careful when you install Minix, many of the commands are
potentionally dangerous in a way that a simple typing mistake may
destroy all other data on your system. So make backups first!
Kees J. Bot (kjb@cs.vu.nl)

117
Minix/old/1.7.2/README.html Normal file
View File

@@ -0,0 +1,117 @@
<head>
<title>Minix 1.7.2</title>
</head>
<body>
<h2>HOW TO GET AND INSTALL MINIX 1.7.2</h2>
This directory and subdirectories contains Minix version 1.7.2, a small
educational UNIX-like system for IBM PC's and compatibles.
<br><br>
Before installing Minix, do the unthinkable and read the installation manual
in the file <b>usage.8</b>.
On a UNIX machine you can unpack <b>man.tar.Z</b> and use a reasonably smart
pager (one that understands backspace overstrikes) to read the man pages.
The same manual pages can be found in <b>man.zip</b> as flat text for use
under MS-DOS. Note that the ZIP file contains subdirectories that you may
or may not want to keep intact.
<br><br>
<pre>
<a href="man.tar.Z">man.tar.Z</a> - Installation manual pages (UNIX)
<a href="man.zip">man.zip</a> - Installation manual pages (MS-DOS)
</pre>
Alternatively, by WWW you can view the
<a href="http://nano.am.cs.vu.nl/man/Minix/1.7.2/whatis.html">whole manual page set</a>.
The page to start with is
<a href="http://nano.am.cs.vu.nl/man/Minix/1.7.2/man8/usage.8.html">usage(8)</a>.
<hr>
Before fetching Minix, you should get the checksum list (to verify correct
transmission and unpacking). If you do not already have it, you will need
the program to compute the checksums on your machine, crc.c:
<pre>
<a href="crclist">crclist</a> - CRC's of all the files here
<a href="crc.c">crc.c</a> - Command to make CRC checksums
</pre>
Eventually, you may also want these files:
<pre>
<a href="changes-1.7.2">changes-1.7.2</a> - List of changes between 1.7.1 and 1.7.2
<a href="upgrade-1.7.2">upgrade-1.7.2</a> - How to upgrade from 1.7.x to 1.7.2
<a href="bugs">bugs</a> - List of bugs in 1.7.2
<a href="fixes/">fixes/</a> - Fixes to bugs in 1.7.2
</pre>
<hr>
Minix for the Intel architecture comes in three flavors:
<pre>
- Regular (for 386, 486, and Pentium machines)
- Small (for 8086 and 286 machines)
- Tiny (for 8086 and 286 machines with small memories and/or 360K
diskette drives)
</pre>
For the regular distribution, use the <b>i386</b> directory. For the small
distribution, use the <b>i86</b> directory. For the tiny distribution, use
the both the <b>i86</b> and <b>xt</b> directories. All these directories
contain the executable programs of Minix. In addition, the <b>src</b>
directory contains the full Minix source code, which is identical for all
three flavors (the code contains #ifdef's where the difference matters).
<hr>
<b>Two</b> versions of the distribution have been prepared. If you are
reasonably experienced in dealing with UNIX or Minix and are
downloading to a UNIX or Minix system with 10MB of free disk space, and a
connection that can transfer megabyte files without loss (even if this is not
the target system), just fetch whichever of the following you need:
<pre>
<a href="ftp://ftp.cs.vu.nl/pub/minix/1.7.2/i386.tar">i386.tar</a> - 386 binaries
<a href="ftp://ftp.cs.vu.nl/pub/minix/1.7.2/i86.tar">i86.tar</a> - 8086/286 binaries
<a href="ftp://ftp.cs.vu.nl/pub/minix/1.7.2/xt.tar">xt.tar</a> - Replacement files for tiny systems
<a href="ftp://ftp.cs.vu.nl/pub/minix/1.7.2/src.tar">src.tar</a> - Full sources and manual pages for all versions
</pre>
Under all other circumstances, use the second distribution, which consists
of many 720K floppy disk images (you can also use bigger diskettes, but
remember that the size of the images is still 720K).
<pre>
<a href="i386/">i386</a>: ROOT USR USR.01 USR.02 ... USR.06
<a href="i86/">i86</a>: ROOT USR USR.01 USR.02 ... USR.06
<a href="xt/">xt</a>: README TINYROOT TINYUSR1 TINYUSR2 (360K images)
<a href="src/">src</a>: SRC.01 SRC.02 ... SRC.08
</pre>
The <b>USR.</b><i>nn</i> and <b>SRC.</b><i>nn</i> series of diskette images
were created by commands like this one, so they are just a compressed tar
file cut to pieces:
<pre>
<b>tar cf - * | compress | vol 720 /dev/fd0</b>
</pre>
The two installation floppies can be combined on a 1.2 Mb or 1.44 Mb
diskette, the other images can be combined on 1.44 Mb floppies, turning
them into 1440K images:
<pre>
<b>cat ROOT USR >/dev/fd0</b>
<b>cat USR.01 USR.02 >/dev/fd0</b> (odd/even pairs)
<b>cat USR.03 USR.04 >/dev/fd0</b>
...
<b>cat SRC.01 SRC.02 >/dev/fd0</b>
...
</pre>
<b>/dev/fd0</b> is a random floppy device name. You have to find out what
your Operating System names it today. Under MS-DOS you can use the
<b>WrtDsk</b> command in the <a href="../dosutil/">../dosutil</a> directory
to write the floppy images.
<p>
Be careful when you install Minix, many of the commands are potentionally
dangerous in a way that a simple typing mistake may destroy all other data
on your system. So make backups first!
<pre>
Kees J. Bot (kjb@cs.vu.nl)

6
Minix/old/1.7.2/bugs Normal file
View File

@@ -0,0 +1,6 @@
List of bugs discovered in 1.7.2. Please report more bugs to kjb@cs.vu.nl.
- The TCP/IP programs telnet, telnetd, ftp, and ftpd were under
development when 1.7.2 was put together. As such they contained a
number of bugs or lack of features. New source files can be found
in fixes/fix-1.

Binary file not shown.

115
Minix/old/1.7.2/crc.c Normal file
View File

@@ -0,0 +1,115 @@
/* Compute checksum Author: Johan W. Stevenson */
/* Copyright 1988 by Johan W. Stevenson */
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
int errs;
#if __STDC__
int main(int argc, char **argv);
void crc(char *fname);
#else
void crc();
#endif
int main(argc, argv)
int argc;
char **argv;
{
char line[256];
if (argc <= 1)
crc((char *) 0);
else if (argc == 2 && strcmp(argv[1], "-") == 0)
while (fgets(line, sizeof line, stdin) != NULL) {
if (line[strlen(line) - 1] == '\n')
line[strlen(line) - 1] = '\0';
crc(line);
}
else
do {
crc(argv[1]);
argv++;
argc--;
} while (argc > 1);
return(errs != 0);
}
/* Crctab calculated by Mark G. Mendel, Network Systems Corporation */
static unsigned short crctab[256] = {
0x0000, 0x1021, 0x2042, 0x3063, 0x4084, 0x50a5, 0x60c6, 0x70e7,
0x8108, 0x9129, 0xa14a, 0xb16b, 0xc18c, 0xd1ad, 0xe1ce, 0xf1ef,
0x1231, 0x0210, 0x3273, 0x2252, 0x52b5, 0x4294, 0x72f7, 0x62d6,
0x9339, 0x8318, 0xb37b, 0xa35a, 0xd3bd, 0xc39c, 0xf3ff, 0xe3de,
0x2462, 0x3443, 0x0420, 0x1401, 0x64e6, 0x74c7, 0x44a4, 0x5485,
0xa56a, 0xb54b, 0x8528, 0x9509, 0xe5ee, 0xf5cf, 0xc5ac, 0xd58d,
0x3653, 0x2672, 0x1611, 0x0630, 0x76d7, 0x66f6, 0x5695, 0x46b4,
0xb75b, 0xa77a, 0x9719, 0x8738, 0xf7df, 0xe7fe, 0xd79d, 0xc7bc,
0x48c4, 0x58e5, 0x6886, 0x78a7, 0x0840, 0x1861, 0x2802, 0x3823,
0xc9cc, 0xd9ed, 0xe98e, 0xf9af, 0x8948, 0x9969, 0xa90a, 0xb92b,
0x5af5, 0x4ad4, 0x7ab7, 0x6a96, 0x1a71, 0x0a50, 0x3a33, 0x2a12,
0xdbfd, 0xcbdc, 0xfbbf, 0xeb9e, 0x9b79, 0x8b58, 0xbb3b, 0xab1a,
0x6ca6, 0x7c87, 0x4ce4, 0x5cc5, 0x2c22, 0x3c03, 0x0c60, 0x1c41,
0xedae, 0xfd8f, 0xcdec, 0xddcd, 0xad2a, 0xbd0b, 0x8d68, 0x9d49,
0x7e97, 0x6eb6, 0x5ed5, 0x4ef4, 0x3e13, 0x2e32, 0x1e51, 0x0e70,
0xff9f, 0xefbe, 0xdfdd, 0xcffc, 0xbf1b, 0xaf3a, 0x9f59, 0x8f78,
0x9188, 0x81a9, 0xb1ca, 0xa1eb, 0xd10c, 0xc12d, 0xf14e, 0xe16f,
0x1080, 0x00a1, 0x30c2, 0x20e3, 0x5004, 0x4025, 0x7046, 0x6067,
0x83b9, 0x9398, 0xa3fb, 0xb3da, 0xc33d, 0xd31c, 0xe37f, 0xf35e,
0x02b1, 0x1290, 0x22f3, 0x32d2, 0x4235, 0x5214, 0x6277, 0x7256,
0xb5ea, 0xa5cb, 0x95a8, 0x8589, 0xf56e, 0xe54f, 0xd52c, 0xc50d,
0x34e2, 0x24c3, 0x14a0, 0x0481, 0x7466, 0x6447, 0x5424, 0x4405,
0xa7db, 0xb7fa, 0x8799, 0x97b8, 0xe75f, 0xf77e, 0xc71d, 0xd73c,
0x26d3, 0x36f2, 0x0691, 0x16b0, 0x6657, 0x7676, 0x4615, 0x5634,
0xd94c, 0xc96d, 0xf90e, 0xe92f, 0x99c8, 0x89e9, 0xb98a, 0xa9ab,
0x5844, 0x4865, 0x7806, 0x6827, 0x18c0, 0x08e1, 0x3882, 0x28a3,
0xcb7d, 0xdb5c, 0xeb3f, 0xfb1e, 0x8bf9, 0x9bd8, 0xabbb, 0xbb9a,
0x4a75, 0x5a54, 0x6a37, 0x7a16, 0x0af1, 0x1ad0, 0x2ab3, 0x3a92,
0xfd2e, 0xed0f, 0xdd6c, 0xcd4d, 0xbdaa, 0xad8b, 0x9de8, 0x8dc9,
0x7c26, 0x6c07, 0x5c64, 0x4c45, 0x3ca2, 0x2c83, 0x1ce0, 0x0cc1,
0xef1f, 0xff3e, 0xcf5d, 0xdf7c, 0xaf9b, 0xbfba, 0x8fd9, 0x9ff8,
0x6e17, 0x7e36, 0x4e55, 0x5e74, 0x2e93, 0x3eb2, 0x0ed1, 0x1ef0
};
/* Updcrc macro derived from article Copyright (C) 1986 Stephen Satchell.
* NOTE: First argument must be in range 0 to 255.
* Second argument is referenced twice.
*
* Programmers may incorporate any or all code into their programs,
* giving proper credit within the source. Publication of the
* source routines is permitted so long as proper credit is given
* to Stephen Satchell, Satchell Evaluations and Chuck Forsberg,
* Omen Technology.
*/
#define updcrc(cp, crc) ( crctab[((crc >> 8) & 255)] ^ (crc << 8) ^ cp)
void crc(fname)
char *fname;
{
register int c;
register long len = 0;
register unsigned short crc = 0;
register FILE *fp;
if (fname == NULL)
fp = stdin;
else if ((fp = fopen(fname, "r")) == NULL) {
fprintf(stderr, "crc: cannot open %s\n", fname);
errs++;
return;
}
while ((c = getc(fp)) != EOF) {
len++;
crc = updcrc(c, crc);
}
printf("%05u %6ld", crc, len);
if (fname) {
printf(" %s", fname);
fclose(fp);
}
printf("\n");
}

30
Minix/old/1.7.2/crclist Normal file
View File

@@ -0,0 +1,30 @@
17311 4026 crc.c
57807 65364 man.tar.Z
02483 52279 man.zip
01891 614400 i386/ROOT
63394 614400 i386/USR
62170 737280 i386/USR.01
39345 737280 i386/USR.02
17741 737280 i386/USR.03
35322 737280 i386/USR.04
07905 737280 i386/USR.05
05983 46571 i386/USR.06
48609 614400 i86/ROOT
56173 614400 i86/USR
22441 737280 i86/USR.01
41733 737280 i86/USR.02
28238 737280 i86/USR.03
62152 737280 i86/USR.04
31673 737280 i86/USR.05
25978 2090 i86/USR.06
43750 737280 src/SRC.01
20502 737280 src/SRC.02
10520 737280 src/SRC.03
12136 737280 src/SRC.04
45305 737280 src/SRC.05
21608 737280 src/SRC.06
12122 737280 src/SRC.07
29892 298637 src/SRC.08
15495 304128 xt/TINYROOT
11362 368640 xt/TINYUSR1
43599 368640 xt/TINYUSR2

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
Minix/old/1.7.2/i386/USR.gz Normal file

Binary file not shown.

BIN
Minix/old/1.7.2/i86/ROOT.gz Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
Minix/old/1.7.2/i86/USR.06 Normal file

Binary file not shown.

BIN
Minix/old/1.7.2/i86/USR.gz Normal file

Binary file not shown.

BIN
Minix/old/1.7.2/man.zip Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,70 @@
How to upgrade from 1.7.x to 1.7.2.
Note: Things you have to do as root are marked with a # sign. The ! sign
marks the actions of bin.
# Replace the sources, that's /usr/include, /usr/man, and /usr/src, with
the 1.7.2 sources by extracting the SRC.nn images in the normal way.
(Don't forget to move or remove the 1.7.x stuff.)
# First remove the encrypted passwords from the password file. 1.7.2
encrypts and checks passwords differently.
! Almost all 1.7.2 compiled commands should run under a 1.7.x kernel,
and vice-versa. The the new stty and loadkeys commands will only run
under 1.7.2, so make copies of them. The old loadkeys command cannot
run under the new kernel, so you have to compile a new loadkeys if you
need it. The mkfs command can only run well under the kernel it is
compiled under. If you follow this text point by point then the old
mkfs will be used for 'make hdtest', and the new mkfs will be created
once the 1.7.2 kernel is running when the commands are recompiled.
! Move to /usr/src/lib and type 'make install'. You need new libraries
for the new kernel.
! In /usr/src/boot type 'make install'. The new kernel needs a new boot
monitor. (The 1.7.1 monitor can only boot 1.7.2 on an AT.)
# Copy /usr/src/etc/ttytab to /etc. The ttytab file replaces /etc/ttys &
/etc/ttytype in 1.7.2. You need ttytab or you can't login! Also update
the RAM disk image if you are using the RAM disk:
# M root
# synctree /etc /root/etc
# U root
! If you are running 1.7.0 now then move to /usr/src/commands/simple and
type 'make bin /usr/bin/dd'. The next step uses a new dd option.
# The tty devices have changed in 1.7.2, so you have to create new ones:
# cd /dev
# sh /usr/src/commands/scripts/MAKEDEV.sh log tty00 tty01
MAKEDEV is not installed yet, so you have to use this long name. The
tty0 - tty2 devices are now obsolete, you can remove them later. If you
have a RAM disk then update the /dev on the image as shown above for
/etc.
! Customize /usr/include/minix/config.h to add or remove drivers. In
/usr/src/tools type 'make hdtest', or 'make fdboot'. Test the new
kernel.
! If the kernel works then go back to /usr/src/tools and type
'make bootable' to install a new boot monitor on the root partition.
! Next use 'make hdinstall' to install an new kernel image on the root
partition. Reboot from the top.
! Your system is now running 1.7.2. Use 'make install' in /usr/src to
recompile the rest. (Update the /bin on the RAM disk image.)
# Run 'checkhier' to check your top level directory tree. It suggest
commands to execute to fix descrepancies in the top level directory
tree. (Update /etc on the RAM disk image.)
# Compare all files in /usr/src/etc with those in /etc. Some have
changed and should be replaced. Be careful not to lose changes you
have made to files in /etc. Remove /etc/ttys, /etc/ttytype, and
/etc/psdatabase. Install /etc/shadow if you want shadow passwords.
Update /etc/passwd and /etc/shadow to the form described in passwd(5).
(Update /etc on the RAM disk image.)
# You can remove /dev/tty[012] now.

43
Minix/old/1.7.2/xt/README Normal file
View File

@@ -0,0 +1,43 @@
Suggestions on installing Minix on a machine with little memory.
The file TINYROOT is a small replacement for the ROOT image that is
needed if your machine has only one floppy drive and less than 2
megabytes of memory. You can use it to boot your machine, but you
should use ROOT for the installation if you can.
If your floppy drive is only 360 kb then have to use TINYROOT for ROOT,
and TINYUSR1 for USR. The very last step of the installation, filling
/usr from USR.nn, will fail, because you need some commands that are on
TINYUSR2. You have to copy those commands into the /usr tree (mount the
floppy and cpdir the lot). TINYUSR2 also contains the kernel image
used for TINYROOT in the tmp directory that you can use as /minix.
A machine with only 640 kb memory will have trouble to run the
installation script. Use
exec instdist
to overlay the login shell of root with the script. The USR.nn and
SRC.nn images can be split in two 360 kb pieces with the commands:
dd if=image of=first-half bs=1k count=360
dd if=image of=second-half bs=1k skip=360
If you want to compile a new kernel as bin use
chsh /bin/sh
to change the login shell of bin from ash to the much smaller sh. Log
out, log back in, and use
exec make xxx
If it still fails then you have to make things bit by bit by running
make in subdirectories.
Note that you are on your own in this enterprise, anyone mad enough to
still use an XT had better be smart enough to find his own way. Testing
the TINYXXX stuff has consumed enough of my time. If you still dare to
ask me questions then you'd better make it very interesting questions.
--
Kees J. Bot (kjb@cs.vu.nl)

Binary file not shown.

Binary file not shown.

Binary file not shown.