<my_own_opinion>
Reboot of the workstation hosting the soft IOC should not, by design, be
provided so easily to an IOC for the reasons previously stated.
What differs between "soft" IOCs and standard IOCs?
On a standard IOC (such as EPICS running on a VxWorks operating system
on a VME board), the IOC software is the only software suite on that
computer.
An EPICS soft IOC is one of potentially many software suites running on
the host computer. Others suites would include user login sessions and
non-EPICS services provided to the computer, LAN, or WAN.
For standard IOCs, reboot of the computer seems natural.
For soft IOCs, reboot of *only* the soft IOC (not the computer) seems
natural.
</my_own_opinion>
Pete
On 4/17/2015 9:32 AM, Shen, Guobao wrote:
Hi Geyang,
The reboot function used in iocStats has been redefined as for example
"#define reboot(x) epicsExit(0)" on any posix system.
You can find full definition in file for example
devIocStats/os/posix/devIocStatsOSD.h
Therefore, the reboot is a alias name of epicsExit() instead of not a
linux OS reboot, and does accept parameter.
I hope this is your question.
Guobao
On 4/17/15 9:20 AM, Silver wrote:
hi, Ralph:
Thanks a lot for your reply.
maybe you misunderstand my question for my poor english. I think
reboot function should restart the whole machine, but why the reboot
function here just kill the IOC process?
In the man help about reboot function, I didn't see any parameters for
just rebooting the process?
------------------------------------------------------------------------
Best wishes
Geyang 2015-04-17
*From:* Ralph Lange <mailto:[email protected]>
*Date:* 2015-04-17 16:44
*To:* EPICS Tech-Talk <mailto:[email protected]>
*Subject:* Re: iocStats reboot question
Hi Geyang,
Under Linux (and the other host-type OSs), an IOC is a single
multi-threaded process.
So, naturally, "rebooting" an IOC means restarting the IOC
process, which is usually done by shutting down or killing the
current process and letting the wrapper (e.g. procServ) handle the
restart.
Very often, many Linux IOCs are run on a single host: 20-30 are
quite common, I have seen up >300 IOCs on a server-class Solaris
machine.
I am sure you understand that allowing to reboot the server from
any of these IOCs would be a bad idea.
Also, rebooting a server usually needs root access. IOCs should
not be run as root.
Cheers,
~Ralph
On 17/04/2015 09:36, Silver wrote:
hi,
in IOC Status and Control (devIocStats), it has an reboot
function in subroutine record, that is ,in devIocStatsSub.c file,
it calls reboot function of linux.
I am wandering why this call just kill the ioc process instead of
rebooting the machine? as in manual of reboot function
(http://man7.org/linux/man-pages/man2/reboot.2.html)
Thanks a lot for your help.
------------------------------------------------------------------------
Best wishes
Geyang 2015-04-17
--
----------------------------------------------------------
Pete R. Jemian, Ph.D. <[email protected]>
Beam line Controls and Data Acquisition, Group Leader
Advanced Photon Source, Argonne National Laboratory
Argonne, IL 60439 630 - 252 - 3189
-----------------------------------------------------------
Education is the one thing for which people
are willing to pay yet not receive.
-----------------------------------------------------------
- References:
- iocStats reboot question Silver
- Re: iocStats reboot question Ralph Lange
- Re: iocStats reboot question Shen, Guobao
- Navigate by Date:
- Prev:
Re: iocStats reboot question Shen, Guobao
- Next:
epicsQt and QWT6 John Dobbins
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
<2015>
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: iocStats reboot question Shen, Guobao
- Next:
epicsQt and QWT6 John Dobbins
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
<2015>
2016
2017
2018
2019
2020
2021
2022
2023
2024
|