最早的计算机就是这么干的。那为什么后来不这样了呢?因为运行的程序多了。
你设想一下,比如说你用电脑的时候,你可能一边开了word文档写东西,一边打开网页查资料,一边开着PS处理素材,一边开着图片查看器看素材效果,一边开着翻译软件翻译外文,一边还在插着耳机听音乐,与此同时计算机的后台还在运行着杀毒监控程序、在线升级检测程序、输入法的词库收录程序等等。
现在问题就来了,每个程序都需要计算机提供资源,包括CPU的运算资源,内存条的主存容量,硬盘的读写流量,网卡的网络传输流量,主线的内部数据流量等等。
对于一个程序而言,它为了保障自己的程序运行流畅,势必就会要求自己分配到的资源越多越好,但是计算机的资源总是有限的,大家都自顾自抢资源的话,要么就是大家一起跑不动,要么就是某几个程序把别的程序的资源都挤占掉。
更麻烦的是,由于程序设计者不可能预测到自己的程序会和什么样的别的程序同时在一个电脑中运行,所以很有可能出现某个程序的临时数据恰好和另一个程序关键数据很相似的情况,于是就会发生这个程序破坏了那个程序数据之类的问题。
更更麻烦的是,我们的电脑硬件也是由不同的厂商制造的,它们的底层硬件系统也各有不同,无论是消费者还是软件出产方肯定都不希望某个软件在这个型号的电脑上能跑,换一个就跑不了的情况。
因此,我们需要操作程序来作为一个协调者。一方面,操作系统提供一系列底层接口和上层标准,“抹平”不同电脑之间的硬件差异,这样只要操作系统相同,硬件能达到软件运行的最低标准,理论上这个软件就能互通。
此外,操作系统可以为所有程序分配资源,一切程序要调用计算机资源都需要向操作系统申请权限,这样就能最大程度利用计算机资源同时让各种程序不互相冲突。
虽然操作系统本身也会占用一部分计算机资源,但是总体上它让计算机运行更为稳定,同时也减少了软件开发者的工作量,因为程序猿只需要考虑操作系统的标准接口,而不需要考虑硬件系统的底层差异。
题主你好
电脑的系统是一个各种程序运行的平台,缺了这个平台任何程序都无法应用。打个比方,装修是需要在房屋的条件下才可以进行的,没有房屋何来装修。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。