Making a RAM Disk Larger than 8 Megabytes
You can set a boot parameter to have Minix create a RAM disk
larger than 8 Mbytes, and if you don't copy the root file system to
the RAM disk you can then use mkfs to make a file system that uses
all the RAM you have reserved. But if you try to copy from a
standard floppy disk to a large RAM disk, you will find that only 8
Mbytes will actually be used. The reason is that the file system you
copy from the floppy disk has only one block, 1024 bytes or 8192
bits, for its zone bitmap. The solution to the 8MB RAM disk limit is
to enlarge the zone bitmap on the floppy disk by supplying an
appropriate option to the mkfs program.
Here is Kees Bot's explanation of how to do it:
If you want to create a file system on a floppy that has many
bitmap blocks then this should work: mkfs -t /dev/fd0 65535
de -w /dev/fd0
(Type PageDown, arrow down to reach the V1 or V2 "number of
zones" field with 65535 in it. Type 's' 1440 ENTER.)
Now you have a floppy file system that FS can expand up to
65536 blocks. (I used 65535 instead of 65536 to make it easier to
find and change. With 65536 you'll see 0 and 1 at the V2 field.)
If you use a script to fill a floppy then change the mkfs as
above, and run 'de' later. Maybe you can even forget about 'de', I
don't think FS minds if it hits the end of the image device early.
It's just not right somehow.
How many i-nodes?
When a file system is created using mkfs a number of i-nodes
proportional to the size of the medium are created if you don't
explicitly specify a number with the -i option.
These are the default mkfs actions: size i-nodes blocks
free used fd-free
----- ------- ------ ------ --------
720K 240 700 20
1024K 352 997 27
1200K 400 1170 30
1440K 480 1405 35 1405
2048K 688 2000 48 1392
4096K 1376 4005 91 1349
8192K 2736 8016 176 1264
16384K 5472 16036 348 1092
32768K 8192 32427 521 919
65536K 10928 64840 696 744
The last column above is the number of free blocks you will have
if you create the file system data structures on a floppy disk.
How many i-nodes do you need?
Here are actual i-node usages of a few systems: pre-install 2.0.3 system (root.mnx + usr.mnx): 229
a complete installed Minix 2.0.3 dosminix 3170
minix1.hampshire (2.0.2, 1.9G disk) total: 10747
" / + /usr + /usr/local only: 6968
How much floppy space do you need?
A Minix 2.0.4 install disk uses 359 (of 480) + 694 (of 720)
blocks on /dev/fd0p0 and /dev/fd0p2, for a total of 1053 blocks. So
we can easily make an install disk that initializes a 16M RAM disk
with 5472 i-nodes. |