操作系统、驱动程序、进程之间的关系
进程这个词语是操作系统为我们封装抽象出来的概念,且这个概念非常重要。
(如果不了解操作系统内核工作原理,很难真正意义上了解进程的本质,但还是可以用类比的方式解释一下)
最初的“计算机”,“程序”都是提前固定写好的,你只能干某件事情。
比如下图中的算盘:
打开今日头条,查看更多精彩图片
发明算盘的原因是什么?
社会发展,对数学的要求越来越高,超出了个人心算的能力,用算盘可以提高人类计算数字的能力和效率。
历史上,除了算盘,人类还发明过很多其他计算设备,比如:“星盘”,用来计算船在海上的纬度,计算尺等工具,日冕仪。
人类历史上,发明创造的计算工具,很难统计有多少种。
算日出,算天体位置、算潮汐、或者纯粹拿来计时。
总之就一件事情:怎么样让人可以更省时间,更简单、更准确的完成计算所需要的工作,降低门槛。
程序前端开发需要学什么软件每一样新工具的诞生,都会解放更多的生产力,所需要的劳动力也会越来越少,但这些工具还不能叫做“计算机”,只能叫做“辅助计算工具”。
随着工业革命的推进,人类掌握了机械技术,通过机械技术,又设计出了各种各样的“计算机”:
让一个聪明的人,浪费时间每天算数,简直太浪费了,毕竟这是有规律,需要重复的工作。
聪明的人应该去干发明创造的人。
所以,人只要能简单口算一些简单的数字计算,足够应付日常生活就行了,复杂的计算应该丢给计算机完成。
让一个普通人,用一个计算器也能准确计算,没必要把数学家和物理学家的时间浪费到这里每天大量的算数工作上。
可是计算器从哪里来呢?指望天天放牛,种地的农民伯伯吗?也不现实。
农民伯伯的工作是让大家吃饱饭,所以还是得靠数学家和物理学家去想办法干这事情。
最基本的数学运算就是“加减乘除”了。
一代又一代的数学家和物理学家努力发明各种计算机,从最初的木头、机械、继电器、电子管、晶体管,集成电路……这里面不知道有多少人类中的聪明者,投入了大量的精力。
其中有一些“计算机”,甚至计算速度还没有人拿笔算的快,不要嘲笑科学家的努力。伟大的发明都是从一个大胆的想象开始。
在《计算机原理》系列视频课程中,这些心酸的事情,我给大伙分享了不少。
总之,这些“计算机”,都不是“通用计算机”,只能干“指定”的一些事情,比如计算人口,计算导弹轨迹、破解敌方加密通讯。
如果你想玩个“英雄联盟”和“吃鸡”,那是不可能的。
那个时候的“计算机”,连“显示器”都没有。
后来有个聪明人叫“冯诺.依曼”,他提出了一种思想,把计算机分成五大件:“运算器、控制器、存储器、输入设备、输出设备。”
在《计算机原理》中,这五大块是怎么推导出来的,已经给大家用软件模拟演示过了。
我们回忆一下:把指令和数据放到存储器中,控制器(在脉冲信号的激励下)一条一条从存储器中获取指令,译码器(译码)执行,最后把结果输出。
输入设备和输出设备,在计算机历史上,已经发生过很多次改变,从最初的纸带,到今天的键盘、鼠标和显示器,打印机等。
(计算机存储器里面的1和0就可以抽象成两个概念:需要被计算的数据,如何计算这些数据。)也就是指令和数据
这样一来,就实现了“通用计算机”。
不管你是统计人口,计算导弹,模拟爆炸,计算国家税收,在一台机器上就可以完成。
世界上第一台通用电子计算机,那是很大很大滴。
(这么占地方的大家伙,你如果在北京和上海买个房子放下它,那可得不吃不喝奋斗好多年啊。)
可是它的运算速度,还没有你今天花300块钱买的一部十八手智能手机计算速度快。
我突然想起了网上的一句笑话:“你的手机运算能力比登月时NASA所有计算机运算能力的总和还要快。但NASA把人类发射到了月球,你却用来玩愤怒的小鸟。”
当然啦,任何顶尖的高科技产品刚刚研究出来,最初往往是用到军事领域上,由政府投资买单研究(用来破解敌方的信息,算一下的爆炸威力,弹道轨迹等)
慢慢技术普及,成本降低,可以进行大批量生产的时候,普通老百姓才能享受到这东西。
大概在20世纪,40年代,50年代,通用计算机虽然有了,但每次计算机只能运行一个程序。
很多特别牛的人(他们都要用到计算机完成手里的计算工作)怎么办呢?
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论