There are two programs in use during a nonlinear statics solution, and we loosely call them both "the solver", but it would be more accurate to say there is a "matrix solver" (MS) and a "solution control program" (SCP). The MS is the program called multiple times by the SCP. The MS is what is used exactly once for a linear analysis. The SCP manages the substeps, calculates the Force Imbalance and compares that with the Criterion and decides what to do next: another iteration, increment the load, bisect the load or stop the process with an error or stop with a successful completion.
When you insert a nonlinear item into the model (frictional contact, plasticity, large deflection), that automatically starts the SCP, which calls the MS as many times as it needs.