gcore with less impact
This isn’t a everyday tool, however for diagnosing problems
gcore is one of the important tools in your toolbox. With
gcore you can create a core image of each process you specify with it. However the way
gcore works, it halts the process, then it creates the core and writes it do disk and then the process resumes its work. Dependent on the application this pausing can take too much time to be acceptable, especially when the process is quite large memorywise.
In SRU30 of Solaris 11.4 the
gcore command got the additional option
-R to increase the chances that everything is readily available to dump it to disk so you don’t have it to fetch from disk to dump it to disk.
Bring in the content of the process to memory before dumping its core. This is a best effort and pages read are not locked. For large processes, this option is expected to shorten the time they remain stopped, at the cost of increasing the total time of execution of the command.