Minix Source Code Hierarchy
Minix Source Code Hierarchy
This manual will illustrate as to the source code
hierarchy for the Minix Operating
system. I have illustrated the important directories
and their functions, which will help
you to get an overall picture of the operating system
hierarchy.
· disks
This contains your copy of the root file system, disks/root,
as well as symbolic
links to the shared /usr/bin and /usr/man file
systems.
· include
This contains your copies of the system-wide include
files for the Minix operating
system, the Minix library calls, and any Minix user
programs. You will typically
have to modify some of these include files.
· lib
Your copy of the compiled C library routines. Source
code for these compiled
libraries is located in src/lib.
· src
Your src directory holds your copy of all of the
Minix source code. The
subdirectories of src are described below.
o src/commands
This contains the source code for all Minix commands
(such as more, ls,
who, etc.)
· src/etc
This contains copies of the contents of the /etc directory
in your root file
system. These files also appear in the /etc
directory in your Minix root file
system.
· src/fs
This contains the file system source code, for the
FS server process.
· src/inet
This contains the network system source code, for
the INET server
process.
· src/kernel
This contains the source code for the Minix kernel,
including the system
tasks and the process management layer beneath them.
· src/mm
This contains the memory manager source code, for
the MM server
process.
· src/lib
This contains the source code for the C library
routines that are available
to a Minix user program. For some projects, you will
change a few of
these files to add new system calls to Minix. This
directory includes:
o src/lib/ansi_ some of the ANSI C library routines.
o src/lib/curses_ a screen handling package.
o src/lib/editline_ a line editing package.
o src/lib/fphook_ for printing floating-point numbers.
o src/lib/ip_ network access routines.
o src/lib/liby_ yacc library routines.
o src/lib/math_ mathematical library routines.
o src/lib/other_ other system library routines.
o src/lib/posix _ all system calls.
o src/lib/stdio_ the C standard I/O library.
o src/lib/sunsyscall_ all system calls (these just call the src/lib/posix
versions).
o src/lib/syslib_ used by Minix operating system, and a few commands
in src/commands.
o src/lib/sun4 _ C run time routines.
· src/tools
This contains the files needed to combine the src/kernel/kernel,
src/mm/mm, src/fs/fs,
src/inet/inet, and src/tools/init files, and the
compiled libraries in lib, into the single src/tools/image
file. You won't
normally edit any code in this directory, but this
is the only place you can
recompile all of your Minix operating system (the src/tools/image file).
Please refer to the diagrammatic representation in
the next page.