进程线程-自己的总结(先写一部分,随后再补充)

    个人揣测,刚开始,人们写完程序,要进行调试。调试的过程中,程序在人的思维中不是死的,而是运动着的。于是慢慢有了进程的概念。所谓进程,说白了就是正在运行中的程序相关的一些内涵外延等。程序要执行,一般要把可执行的代码加载进内存,然后跳到这段程序的起始地址运行。

    起初阶段,可能只有一个进程被执行,之后随着多任务的发展需求,出现了多进程,于是有了进程调度,有了所谓的上下文切换。

先粘上牛哥这段话:

  “最初的进程定义都包含程序、资源及其执行三部分,其中程序通常指代码,资源在操作系统层面上通常包括内存资源、IO资源、信号处理等部分,而程序的执行通常理解为执行上下文,包括对cpu的占用,后来发展为线程。”

    随着进一步发展,人们发现,进程切换的时候,不一定所有东西都必须“重新开始”,比如上面提到的的资源部分--内存、I/O、信号处理等。也就是说,在完成同样的多任务的情况下,可以减小上下文开销,从而提高效率。于是世界上有了线程的概念。线程变成了调度的基本单位,而进程变成了资源分配的单位。到这里,我才真正的明白了别人提的问题的原因所在。

    “自己解释不清楚的问题,八成是自己根本没有整明白啊。”

    明天看有没有时间把linux线程的实现,内核中的do_fork等进程相关部分学习一下。将这篇自己的总结完善之。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值