The difference between an RTOS and a general purpose OS is really a matter of emphasis. If you asked the designer of a general purpose OS “what is the worst case latency in your OS”, they would probably answer “I don’t know”. It isn’t something that they generally worry about unless it gets so long that someone important enough complains about it. If you ask an RTOS designer the same question, they can give you a definite answer.

also if you consider the memory used… then the RTOS will consume little memory & our general purpose OSs.. you know that… as the new OS release are coming out… they are occupying more memory…
yeah as you said RTOS are used in Embedded Systems… The main aim in our embedded system is that… the responce should be quick… because.. these system are used in very critical situations/applications… like in our modern cars…If these cars encounter in an accident then immidiately in a fraction the airbags will be blown… to protect the driver… but if you use the general OS.. then.. — help them… So If you use winXP in a camera processors with P4 3.5GH then… its okie having a latest & high speed processor… still the responce time of the OS will be the same.. in winXP…. here we just need to capture a pic in fraction of second.

there is no problem if you use different configuration for your camera… then you have to wait to capture your pic… click it & then wait forfew seconds to get the picture….
So… i think you got the Importance of RTOS over OS

Real Time OS :

  1. It is time deterministic
  2. High accuracy Resource allocation
  3. Configurable Kernel
  4. BSP support for external dependency to another system
  5. Mostly used in Embedded systems

Normal OS:

  1. It may or may not be time deterministic ( Eg Hard OS is time – deterministic)
  2. General level Resource allocation
  3. Configurable(may or may not be) Kernel(e.g. in LINUX you can configure some application level kernel)
  4. Package support is available here
  5. Mostly used in general purpose systems

Reference:www.edaboard.com