【1.9】系统漫游——几个关键概念

为了后期学习方便,这里需要对几个关键概念进行阐述。

1、并发和并行

         这里以单处理器系统为例进,并发是个宏观概念,指在某一时间段内有超过1个的进程在处于活动状态;并行是个微观概念,指在某一时刻就有超过1个的进程处于活动状态。显然,单处理器系统是无法实现并行的,只能实现并发。处理器只能以时间片为单位,依次执行活动进程。

        并发和并行的思想在计算机的多个抽象层次上都有所体现,这里以层次从高到低的顺序讨论3层。

(1)线程级别并发

        线程的产生就是为了更好的处理并发,减少系统开销。单处理机系统中cpu在各个线程中切换执行,来达到“同时”处理多个任务的目的。后来出现了多处理机系统,典型的就是一个cpu多个core,每个core可以单独执行线程流,各个core之间有独立缓存也共享一部分缓存(intel和amd不一样)。超线程技术:就是在一个物理cpu内核中,模拟多个cpu硬件资源,包括计数器PC和寄存器文件等,当某个线程处于暂时等待时,cpu快速切换到另一个线程,更高效的利用cpu资源。

        多处理技术可以在2个方面提高系统性能:首先,当执行多个任务时减少了任务之间切换频率;其次,如果是单任务那么单任务的多个线程之间可以更好的并行处理。单任务的多线程并发就涉及到程序设计方案了,需要程序的支持,并行处理编程也是现在的难点之一。

(2)指令级别并行

        更低层次的并行就是指令级别的并行了,现代处理器可以同一个时刻执行多个指令。这是在cpu设计时就考虑到的,例如当某一个电平转换时数据a有P1复制到P2,同时数据b也可以由P3复制到P4等等。同时cpu制造商还引入了多级流水线技术,就是把某一个执行的执行过程分成多个微指令,形成流水线式的结构,这样流水线上每个步骤的时间是不一样的,提前完成的流水线可以执行别的指令的相应动作。当然,流水线不是越多越好,这在历史上有过教训,inter的奔腾4处理器虽然频率很高,但是因为流水线过多导致拖累系统效率,后来又进行了流水线精简,同时类似的还有超标量处理技术。

(3)单指令多数据并行

       现代cpu都有这样一种能力,同时并行运算多个数据,达到提高效率的目的。例如:单指令但数据时代,如果想处理a+b,则一个周期取出a,一个周期取出b,一个周期相加。而单指令多数据时代,则是一个周期取出a和b,一个周期相加,两个数据同时到位,通过这种方式提高效率。

2、抽象

        从最底层的硬件开始到最上层的应用软件,计算机系统提供了多层抽象来屏蔽细节,所以说抽象(层)是计算机系统的最重要概念之一。要能从根本上理解这种思维,尤其是在进行开发过程中,要学会应用并指导实践。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值