LinuxRT Startup Scripts:
[cpu]/startup.cmd
- A link to skel/startup_cpu.cmd or a real file.
Calls $IOC/common/linuxRT_startup_cpu.sh to set up environment & hardware.
- If using a real file, optionally create a list of screenrc VIOCs to start up
- If using a real file, optionally create a list of the executables to start them with
Calls $IOC/common/linuxRT_cpu_load_viocs to start the listed VIOCs or extract the list from screeniocs
[cpu]/kernel-modules.cmd
- Called by $IOC/common/linuxRT_startup_cpu.sh to load kernel modules.
- Custom for each CPU. May contain other related commands.
$IOC/common/linuxRT_startup_cpu.sh
- Load environment
- mount nfs dir
- load kernel modules with [cpu]/kernel-modules.cmd
- start CA repeater
$IOC/common/linuxRT_cpu_load_viocs.sh
- If a list of IOCs to start up is defined as an environment variable, use it.
- Otherwise use screeniocs.
- If there is a list of executables in an environment variable to go with the list of IOCs, use it.
For each ioc, call linuxRT_startup_vioc.sh iocDirName epicsApp ($IOC/common/linuxRT_startup_vioc.sh iocName [epicsApp])
- Set ulimits
- set umask
- cd to the vioc directory
- If the exececutable name was passed as the second argument, use that.
- Otherwise, check screeniocs to determine the epicsApp.
- Otherwise look for a #! at the top of ioc/startup.cmd to determine the epicsApp.
- Otherwise look for a #! at the top of ioc/iocSpecificRelease/iocBoot/[iocName]/st.cmd to determine the epicsApp.
- run startup.cmd using screen and epicsApp