From another. But the whole process is very precarious for most distributions. The distributions that this is aimed at, are things like, Carrier Grade Linux. Where mere seconds of downtime is critical and could cause catostrophic problems.

You have to have a kernel running that can release all the resources it uses, then the second kernel needs to be able to take those resources up. There is a downside, the Kernels are typically slower than the stock Kernels for most distributions.