美文网首页
计算机世界里多核多进程那些事

计算机世界里多核多进程那些事

作者: 明逸随想录 | 来源:发表于2019-02-21 22:56 被阅读0次

在我们买手机的时候,近些年来厂商的宣传重点越来越倾向于他们有多少个核,似乎核数越多,就代表着这款手机就更强大。十年前,电脑CPU有4个核就已经是很罕见了,然而在今天,八核的手机也屡见不鲜。

那么,究竟什么是核呢?核数多少有什么意义呢?

我们就以去年很火的一款游戏《分手厨房》来了解下多核和多进程的那些事吧。

《分手厨房》原名《煮糊了》,是2018年在switch和ps4平台上非常火的合作游戏,最多4人联机,在规定时间内分工协作,有的人去洗碗,有的人去切菜,有的人去煮菜和上饭,最终完成顾客点的菜,当分数达标后才能打开下一关。之所以叫《分手厨房》呢,据说是因为很多情侣玩这个游戏吵的不可开交,最终分手而得名。

分手厨房

我们把《分手厨房》的游戏内容再简化一点,假设房间里只有一口多功能锅,可以用来做任何的食物,而房间里也只有一个厨师,外面是源源不断的待处理的订单。

这里的锅就是一个CPU内核,这里的厨师呢,就是用CPU这口锅来做菜的一个进程。

起初呢,因为这个锅的科技比较落后,一次只能小火烧一种菜,所以其他的菜就只能干等呀,这就是早期的386时代的计算机,很慢,一次只能支持一个任务。

但后来随着锅的技术越来越先进,做一道菜的时间也越来越短,最后做菜就像用微波炉一样几秒钟就好了。这个时候一个厨师就有点忙不过来了,于是,店长又多雇了几名大厨,大家共用一口锅,这样就可以做到锅永远不闲着,上菜速度也快多了。这就是早期单核时代,伴随着摩尔定律的神奇效果,CPU的计算能力每一年半翻一番,一直持续到奔腾4的时代,这个时候,同一个CPU核上可以同时跑多个进程,你可以同时听歌、看电影和浏览网页,啥都不耽误。

但是技术的进步不是一直能快速前进的,人们渐渐发现,当新式的锅出现后,做饭的速度反而没办法再继续加快了,但是客户的订单越来越多,忙不过来怎么办呢?多买几口锅就好了呀,于是餐厅进入了多锅时代,在计算机的世界里,这就是多核时代的开始。

现在好了,我们有多个锅,有多个厨师,一个厨师可以同时占用一口锅,也可以同时占用多口锅,那么上菜的速度一定比之前更快了。在一台有4个核的计算机里,你听音乐的进程可以运行在1号核上,看电影的进程可以运行在2、3号核上,浏览网页呢,就在4号核上,速度自然是之前只有一个核时的4倍。

但是,多核一定会更快吗?其实不然,当一个厨房里放满了锅和厨师时,大家走来走去,总会互相发生小冲突的,有时候可能大家抢一口锅吵的不可开交,但过了一会儿呢,又可能有好多锅没人用,这时候,厨房也就成了一团糟了。同样的,在多核CPU上执行多个进程时,各进程之间需要怎么能各司其职,分工合理地协作,就成了多核时代首先要考虑的问题了。但这也是时代发展的必然,只是广大程序员所面临的问题要比之前更加复杂了。

相关文章

  • 计算机世界里多核多进程那些事

    在我们买手机的时候,近些年来厂商的宣传重点越来越倾向于他们有多少个核,似乎核数越多,就代表着这款手机就更强大。十年...

  • 多核、多CPU、线程、进程

    1. 多核就是一个cpu中有多个核心,多CPU就是多个CPU。废话连篇 2.一个进程至少包含一个线程。 3.一个C...

  • 进程和线程的深入理解

    下面是抽象类比:单CPU:一台单核处理器计算机 = 一个车间;多CPU:一台多核处理器计算机 = 一座工厂; 进程...

  • 【Python 100天从新手到大师】进程和线程

    进程和线程 今天我们使用的计算机早已进入多CPU或多核时代,而我们使用的操作系统都是支持“多任务”的操作系统,这使...

  • [OS] 进程管理 内存管理

    并发和并行 高并发: 提高了系统的利用率 并行: 多核计算机同时运行多个进程或线程, 提高了性能 进程和线程 进程...

  • 《python》-13:进程和线程~进程

    每一个不曾起舞的日子,都是对生命的辜负! 进程和线程 今天我们使用的计算机早已进入多CPU或多核时代,而我们使用的...

  • Python基于进/线程池实现大数据量爬虫项目

    如今计算机已经进入多核CPU的时代了,使用多线程或多进程能够充分利用CPU多核性能来提高程序的执行效率。 Pyth...

  • node反向代理与负载均衡

    一、node如何应对高并发 增加每台机器的cpu数--多核 反向代理 负载均衡 二、进程与线程 进程:是计算机中的...

  • iOS 多线程的使用(NSThread、NSOperation、

    一、多线程那些你不得不知道的事: 1、进程: 是计算机中已运行的实体(计算机可以工作都是进程的功劳)2、线程: ...

  • Python 多线程

    线程和进程 计算机,用于计算的机器。计算机的核心是CPU,在现在多核心的电脑很常见了。为了充分利用cpu核心做计算...

网友评论

      本文标题:计算机世界里多核多进程那些事

      本文链接:https://www.haomeiwen.com/subject/zjzdyqtx.html