1 操作系统的作用


对于一个程序而言,它为了保障自己的程序运行流畅,势必就会要求自己分配到的资源越多越好,但是计算机的资源总是有限的,大家都自顾自抢资源的话,要么就是大家一起跑不动,要么就是某几个程序把别的程序的资源都挤占掉。




更麻烦的是,由于程序设计者不可能预测到自己的程序会和什么样的别的程序同时在一个电脑中运行,所以很有可能出现某个程序的临时数据恰好和另一个程序关键数据很相似的情况,于是就会发生这个程序破坏了那个程序数据之类的问题。


更更麻烦的是,我们的电脑硬件也是由不同的厂商制造的,它们的底层硬件系统也各有不同,无论是消费者还是软件出产方肯定都不希望某个软件在这个型号的电脑上能跑,换一个就跑不了的情况。

因此,我们需要操作程序来作为一个协调者——操作系统(Operation System,OS)。

*
一方面,操作系统提供一系列底层接口和上层标准,“抹平”不同电脑之间的硬件差异,这样只要操作系统相同,硬件能达到软件运行的最低标准,理论上这个软件就能互通。
* 此外,操作系统可以为所有程序分配资源,一切程序要调用计算机资源都需要向操作系统申请权限,这样就能最大程度利用计算机资源同时让各种程序不互相冲突。

总体而言,虽然操作系统本身也会占用一部分计算机资源,但是总体上它让计算机运行更为稳定,同时也减少了软件开发者的工作量,因为程序猿只需要考虑操作系统的标准接口,而不需要考虑硬件系统的底层差异。


当然,操作系统也会有额外的问题,比如说恶意程序和电脑病毒也能利用这些标准接口,还有操作系统为各类程序分配资源的算法总是不可能完美,更不可能应对软件无穷无尽的升级,于是操作系统不得不不断提供各种防火墙、监测程序和补丁来应对这类问题,于是就出现了那个你永远干不掉的升级提示。此外操作系统也是商业公司提供的,他们总希望可以靠这个赚钱,于是你的电脑,要么像苹果那样这也不许下,那也不许装,要么像微软那样动不动给你玩黑屏蓝屏各种屏。

2 操作系统地位

操作系统在计算机系统中承上启下的地位:向下封装硬件,向上提供操作接口。


3 不同应用领域的主流操作系统

3.1 桌面操作系统



3.2 服务器操作系统



3.3 嵌入式操作系统



3.4 移动设备操作系统



4 参考资料


《为什么电脑要装操作系统才能用?直接装应用程序不行吗?》:http://www.360doc.com/content/16/0126/17/476103_530728093.shtml
<http://www.360doc.com/content/16/0126/17/476103_530728093.shtml>