Difference between IOS, IOS-XE and IOS XR

IOS-XE is basically a combination of a monolithic application and a linux kernel. IOS-XE is an advanced version of IOS and pls note that both IOS and IOS-XE share a lot of codes, meaning that both have similar codes unlike IOS-XR which is based on entirely different codings.

IOS-XR is based on QNX(QNX is a Unix type OS). The applications of IOS-XR has been seperated into different processes and if any one process stops or malfunctions ,the other processes are not effected.