操作系统的出现解决了很多问题,操作系统本身就是一个程序,计算机家电之后,首先先运行的是操作系统,随时可以载入其它程序执行,也就是说,它可以随时的从软盘上读取其它程序的代码,并切换到这段带马上让CPU执行,执行完毕后则立即切换回操作系统笨死,但是每次也总是要等待这个程序执行完毕,才能接着载入下一个程序执行。当被载入的程序执行的时候,不能做任何其它事情,暴扣操作系统本身的程序模块,任何产生中断的时间,都会中断正在运行的程序。
  程序执行完毕之后,会将CPU使用权归还操作系统,从而继续操作系统本身的运行,这种操作系统成为单任务操作系统,典型代表就是DOS。
  如今操作系统针对系统时钟中断,开发了专门的中断服务器程序,也就是多任务操作系统中的调度程序,时钟中断到来的时候,CPU根据中断向量表的内容,指向调度程序所在的地址入口,执行调度程序的代码,调度程序所做的就是将CPU的执行跳转到各个应用程序所在的内存地址入口,每次中断后,调度程序以一定的优先级,指向不通过的程序入口,这样就能做到极细粒度的应用程序入口切换,如果遇到某个程序还没执行完毕就切被切出了,则操作系统会自动将这个程序运行状态保存起来,待下次轮到的时候,提取出来继续运行。
  通过这样的虚拟化,运行在操作系统之上的所有程序都会认为自己是独占一代计算机的硬件运行。