在上一篇文章中,小编为您详细介绍了关于《平时打打lol自己配电脑主机预算6000以内?打LOL的时候CPU占用高是什么样鬼》相关知识。本篇中小编将再为您讲解标题将硬盘上一个程序分成几段载入内存?多线程编程的概念什么样时候被提出的。
把硬盘上①个程序的几个部分都载入内存,每①段分配①个CPU执行它。这是多进程还是多线程?个人倾向认为是多进程。
*************我今天看了Operating System Concepts,倾向于认为是多进程单线程**************
进程是计算机处理工作任务的最小单位,它只看①个①个的进程,而不管进程是否来自同①个程序,每个进程都是不同的。①个程序的几个部分都分别载入内存,因此形成多个不同的进程。每①段分配①个cpu执行它,说明是在①个进程上只有①个控制流,是单线程。
同意@并不麻烦 的回答,这个问题改成“用多线程或多进程哪个更好?”也许会好①点。
小白来答①下,说得不对别喷我啊~
如果你看过[①]《计算机组成与设计: 硬件/软件接口》,你会知道程序在调入内存时确实是分段(或者说是分页)调入的。
设计这种调度方式的时候大部分计算机内存还不大而且没有多核,这样设计的主要目的有两个:
①.避免程序过大超出内存容量
②.实现多个程序共享内存资源,用户角度实现多个程序同时运行
这套调度算法计算机交给系统内核去解决,所以不同的操作系统具体的实现可能不同。当然,无论作为用户还是作为程序开发者,这都是黑箱操作,我们不能决定。
至于各个主流操作系统是怎么实现的,建议参考①下[②]Operating System Concepts(俗称恐龙书),关于多线程和多进程的区别里面介绍的也很详细。
简单讲多线程是程序将自己的资源分配给自己的子线程,也就是不会占用该程序外部资源;而多进程可以在创建子进程的时候重新出分配①部分资源。多线程和多进程各自适合的用途...嗯...下面我编不下去了。
所以说,如果这个问题问的是“程序在分页调入内存时,内核使用多线程或多进程,哪个效果更好”也许更值得讨论。然而我并不知道答案,也不知道这种讨论有没有意义,还希望可以有大神给科普。
学习不精,班门弄斧
如有纰漏,还望指正
参考资料:
[①]计算机组成与设计: 硬件/软件接口(原书第④版) (豆瓣)
[②]Operating System Concepts (豆瓣)
PC上第①颗双核心CPU是②⓪⓪⑤年发布的Pentium EE ⑧④⓪ · 不过在那之前的②⓪⓪②年就有了支持单核双线程,亦即HyperThreading技术的Pentium ④ ③.⓪⑥HT。
但即便是Pentium ④ ③.⓪⑥也不是最早将多线程引入PC的CPU,往前①⓪年,早在①⑨⑨③年Intel就在第①代Pentium上引入了双路CPU支持,①个主板上可以安装两颗CPU,提供两个线程。所以在PC上,多线程编程的概念至少在⑨⓪年代初就有了。
CPU单核的时代有多路啊……①样的……我觉得最早描述多线程的应该是π-calculus吧,不知道有没有更古老的
编后语:关于《将硬盘上一个程序分成几段载入内存?多线程编程的概念什么样时候被提出的》关于知识就介绍到这里,希望本站内容能让您有所收获,如有疑问可跟帖留言,值班小编第一时间回复。 下一篇内容是有关《兴都库什山与帕米尔高原、喀喇昆仑山与喜马拉雅山是否相连接?2009年前的主板应该是》,感兴趣的同学可以点击进去看看。
小鹿湾阅读 惠尔仕健康伙伴 阿淘券 南湖人大 铛铛赚 惠加油卡 oppo通 萤石互联 588qp棋牌官网版 兔牙棋牌3最新版 领跑娱乐棋牌官方版 A6娱乐 唯一棋牌官方版 679棋牌 588qp棋牌旧版本 燕晋麻将 蓝月娱乐棋牌官方版 889棋牌官方版 口袋棋牌2933 虎牙棋牌官网版 太阳棋牌旧版 291娱乐棋牌官网版 济南震东棋牌最新版 盛世棋牌娱乐棋牌 虎牙棋牌手机版 889棋牌4.0版本 88棋牌最新官网版 88棋牌2021最新版 291娱乐棋牌最新版 济南震东棋牌 济南震东棋牌正版官方版 济南震东棋牌旧版本 291娱乐棋牌官方版 口袋棋牌8399 口袋棋牌2020官网版 迷鹿棋牌老版本 东晓小学教师端 大悦盆底 CN酵素网 雀雀计步器 好工网劳务版 AR指南针 布朗新风系统 乐百家工具 moru相机 走考网校 天天省钱喵 体育指导员 易工店铺 影文艺 语音文字转换器