cunix(1M) — ADMINISTRATOR COMMANDS
NAME
cunix − configure a new bootable operating system
SYNOPSIS
cunix [−a "ld_args"] [−b boot_dir] [−c config_dir] [−d] [−e edtfile]
[−f system] [−g] [−i loader_directive_file] [−j assembler] [−l link_ed]
[−o outfile] [−s script_file] [−v] [−x multiplier] [−z "as_args"] [−E]
[−C cpu]
DESCRIPTION
The cunix command creates a new bootable operating system file from the object files (drivers) specified in the given system file.
The configuration of a new bootable operating system is usually done when new hardware or software is added to or removed from the system; most frequently it is done during a powerup or reboot of the system. The cunix command allows this procedure to be performed at the user level, without a powerdown or system reboot. The options to cunix also allow the user to create customized input files for the configuration process, and to choose the location for the resulting bootable operating system. The ICDDEV: field in the system(4) file directs cunix to incorporate an In-Core Disk (ICD) image within the bootable operating system.
Both COFF and ELF format object files can be used as input to cunix.
The options to cunix are as follows:
−aPass the specified ld_args as arguments to the link editor; the entire set of arguments must be enclosed in double quotes, with each argument surrounded by white space. By default (no −a specified), −x is passed to the link editor as an argument for COFF format object files (directs the link editor to omit local symbols from the output symbol table, saving some space in the output file); if one or more object files is in ELF format, then no loader arguments are passed by default. The link editor ld is used by default, unless another is specified with the −l option (see below).
−bboot_dir specifies the directory where driver object files reside; the default is /boot.
−cconfig_dir specifies the directory that contains working files for cunix; the default is /config.
−dBuild the operating system with debug mode on; the default is debug mode off. Debug mode populates the sysm68ksym or sysm88ksym symbol table with symbols from the kernel object file and drivers specified in the system file. The −d option causes cunix to use more disk space and time. The sysm68ksym table is accessible through the sysm68k system call; the sysm88ksym table is accessible through the sysm88k system call.
−eUse the EDT data from edtfile rather than /stand/edt_data.
−fsystem specifies the file that contains configuration information; the default is /stand/system.
−gDo not remove the config_dir/conf.o or config_dir/conf.s files after the bootable operating system has been created; the default is to remove conf.o and conf.s. The directory config_dir is either /config or the directory specified by −c, above.
−iloader_directive_file to be used for configuration; a loader_directive_file specifies memory locations for loading the operating system at boot time. A loader_directive_file for a COFF system is called an ifile, while a loader_directive_file for an ELF system is called a mapfile. Normally, it is not necessary to specify a loader_directive_file. Only use the −i option with a custom loader_directive_file.
−jUse the assembler to assemble conf.s. By default, as is invoked as if it had been typed as a command to the terminal.
−lUse the link_ed link editor to bind object files; the link editor ld is used by default. The PATH− variable is searched for the ld program. See NOTES.
−ooutfile specifies the output file name for the bootable operating system; the default is /stand/unix_test.
−sRun the script file after creating conf.s but before invoking the assembler. Script_file may be a shell script or an executable object. The script file may be used to massage conf.s before the assembler is invoked. In this use, script_file must reference conf.s explicitly since cunix does not pass it as an argument to script_file.
−vVerbose mode on; cunix displays all the modules and drivers being linked. The default is verbose mode off.
−xCunix must allocate certain areas of the kernel being built with fixed sizes. This option specifies a multiplier that will be applied to the compiled in sizes so the areas can be made sufficiently large. Use this option if the error Internal space problems when building conf.o, try ’-x <number> option occurs.
−zPass the specified "as_args" to the assembler. The entire set of arguments must be enclosed in double quotes, with each argument surrounded by white space. No flags are passed by default.
−EUse only the EDT data file. Do not read the in-core EDT. By default cunix reads /stand/edt_data for the data file. Use the −e flag to change this.
−CSpecify the CPU to build the kernel for. This option may only be used with the -E option. By default a kernel is built for the CPU the cunix is running on and all possible CPUs when the -E option is used. This option may appear more than once to allow the specification of more than one CPU, but no more than 16 times. The cpu parameter consists of a lower case string which uniquely identifies a CPU (e.g. mvme188). Acceptable values for the parameter may be found in the general directive information section of the edt_data(4) man page.
NOTES
Do not execute a separate ld ... -o /stand/unix command for the operating system; the output file is processed by cunix after loading. cunix calls the setrlimit system call to set the file size limit to infinity. It proceeds without complaint if setrlimit fails.
FILES
/boot_dir/∗drivers to be configured into the operating system
/config_dir/conf.oobject file created by cunix
/config_dir/ifile∗loader directive file(s) for COFF system
/config_dir/mapfile∗
loader directive file(s) for ELF system
/stand/systemsystem file
/stand/unixbootable operating system
/dev/rSA/disk1default location of root file system
SEE ALSO
buildsys(1M), ld(1), mkboot(1M), rc6(1M), sysm88k(2), system(4), edt_data(4).