首页 > 试题广场 >

在操作系统中为什么要引入线程?

[问答题]

在操作系统中为什么要引入线程?

个人认为 在操作系统中 首先你得看是什么操作系统 在linux 操作系统上根本上来说 是没有线程和进程的概念 因为最终都是调用的do_fock函数 其根本解决的事情就是 能够划分时间片 使得在同一时间内能够看上去能做更多的事情 由于window 不开源 所以无法知道 其内容 但是从linux 操作系统上 操作系统为线程函数分配了一个结构体专门存储每个线程函数的信息  多线程根本目的就是解决在同一时间内看上去能够执行更多的事情  因为现在的计算机的主频够快  能做到这些事情 但是实际上如果cpu频率很慢那么就不建议了 这个是单核cup而言 在多核cpu 这个是很合理的 应为可以把任务分配给不同的cpu的核导致更快速的运行程序 
发表于 2018-01-14 14:08:00 回复(1)
由于进程是资源的拥有者,所以在创建、撤销、切换操作中需要较大的时空开销,限制了并发程度的进一步提高。为减少进程切换的开销,把进程作为资源分配单位和调度单位这两个属性分开处理,即进程还是作为资源分配的基本单位,但是不作为调度的基本单位(很少调度或切换),把调度执行与切换的责任交给“线程”。这样做的好处不但可以提高系统的并发度,还能适应新的对称多处理机(SMP)环境的运行,充分发挥其性能。
发表于 2018-09-03 10:57:26 回复(0)
划分时间片,让多个线程并发执行,提高cpu的利用率
编辑于 2018-01-14 15:42:06 回复(0)