Q: How do I build TCP/IP support into the Minix kernel?
A: Actually, the changes to the kernel itself are small. The ethernet driver code is compiled and the kernel is enabled to communicate with the INET server, which runs outside of the kernel with the same priority as the MM and FS servers.
To compile a network-capable Minix system you must edit /usr/include/minix/config.h. as described below and then cd to /usr/src/tools and type "make". A new Minix system will be created as /usr/src/tools/image. The new system will include the inet server.
The minimum change to config.h is to set ENABLE_NETWORKING to 1. If you want to be able to do remote logins with rlogin or telnet you need to change NR_PTYS to a value greater than zero. If two or more users are likely to be active at once you may need to increase NR_PROCS from its default value of 32. NR_PTYS 8 and NR_PROCS 64 seems to work well for a system that has two or three users logged in at the same time. These changes will increase the size of the kernel, and if you are compiling for a system with limited memory you might want to first try a system with no ptys and only the default 32 processes.
Once the new system image is compiled you can move it to the root directory as /minix.net. Then you can test it by specifying image=minix.net at the boot manager prompt. If it works correctly you can either rename it as /minix or save the image boot parameter. If you have limited memory you may want to keep the original system image available to boot when you want to do something that requires a lot of memory, like recompiling a system.
Q. Having compiled a networking kernel, how do I use it?
A. There are a few more steps after compiling before you can use the network capabilities.
Return to the Minix hints page .
Return to Al Woodhull's MINIX home page at Hampshire College, Amherst, MA, USA.
Albert S. Woodhull
Hampshire College, Amherst, MA