【技术实现步骤摘要】
【国外来华专利技术】事务中止指令
一个或多个方面大体上关于多处理计算环境,且尤其关于此类计算环境内的事务处理。
技术介绍
多处理器编程中的持久挑战为由多个中央处理单元(CPU)对同一储存位置的更新的挑战。更新储存位置的许多指令(甚至包括诸如AND的简单逻辑运算)用对该位置的多次存取来进行该更新。举例而言,首先提取储存位置,且接着储存回已更新结果。为了使多个CPU安全地更新同一储存位置,序列化对该位置的存取。用先前由提供的S/360架构引入的一个指令(TESTANDSET指令)提供储存位置的连锁更新(interlockedupdate)。连锁更新意谓:如由其他CPU及输入/输出(I/O)子系统(例如,通道子系统)所观察的那样,指令的整个储存存取看来像是自动地发生的一样。稍后,由IBM提供的S/370架构引入COMPAREANDSWAP及COMPAREDOUBLEANDSWAP指令以及COMPAREDOUBLEANDSWAP指令,这些指令提供执行连锁更新的较精密方式且允许通常被称为锁定字组(或旗号)的实施。最近新增的指令已提供额外连锁更新能力,包括COMPAREANDSWAPANDPURGE及COMPAREANDSWAPANDSTORE。然而,所有这些指令提供用于仅单一储存位置的连锁。较复杂的程序技术可需要多个储存位置的连锁更新,诸如,当将一元素新增至一双向链接清单(doubly-linkedlist)时。在此类操作中,前向指针及向后指针两者皆看来像是被同时地更新一样,如由其他CPU及I/O子系统所观察的那样。为了实现此类多重位置更新,强制程序使用分离的单一序列化点,诸如,锁定字 ...
【技术保护点】
一种用于执行计算环境内的指令的方法,所述方法包括:由处理器获得用于执行的机器指令,所述机器指令是根据计算机架构而对于计算机执行所限定的,所述机器指令包括:操作码,用于指定事务中止操作;以及至少一个字段,用于指定中止码;以及由所述处理器执行所述机器指令,所述执行包括:中止正执行的事务,其中,所述事务在完成之前结束;以及基于所述中止,提供条件码,所述条件码用于指示是否推荐所述事务的重新执行。
【技术特征摘要】
【国外来华专利技术】2012.06.15 US 13/524,8551.一种用于执行计算环境内的指令的方法,所述方法包括:由处理器获得用于执行的机器指令,所述机器指令是根据计算机架构而对于计算机执行所限定的,所述机器指令包括:操作码,用于指定事务中止操作;以及至少一个字段,用于指定中止码;以及由所述处理器执行所述机器指令,所述执行包括:中止正执行的事务,其中,所述事务在完成之前结束;以及响应于所述中止,提供条件码,所述条件码用于指示是否推荐所述事务的重新执行。2.如权利要求1所述的方法,其中,所述至少一个字段包括基本字段和位移字段,并且其中,基于所述基本字段为非零,组合所述基本字段所指定的寄存器的内容与所述位移字段的值,以创建所述中止码。3.如权利要求2所述的方法,其中,所述组合包括:将所述寄存器的所述内容与所述位移字段的值相加,以创建用户限定的中止码。4.如权利要求1所述的方法,其中,所述至少一个字段包括基本字段和位移字段,并且其中,基于所述基本字段为零,所述至少一个字段用于指定由位移字段组成的所述中止码,其中,所述位移字段的值指定所述中止码。5.如前述权利要求中的任一项所述的方法,其中,所述中止码提供用户限定的用于中止的具体原因,并且其中,所述机器指令是从机器程序状态字指定的程序地址所获得的事务中止指令,并且其中,所述方法还包括:在执行所述机器指令之后,以从分离并且不同的事务程序状态字获得的另一程序地址替换所述机器程序状态字的所述程序地址;以及继续以从分离并且不同的事务程序状态字获得的所述另一程序地址处的指令开始的指令的执行。6.如前述权利要求1-4中的任一项所述的方法,其中,所述条件码包括基于所述中止码的指定位为一个值的第一值以及基于指定位为另一值的第二值。7.如权利要求6所述的方法,其中,所述第一值指示推荐重新执行,所述第二值指示不推荐重新执行。8.如前述权利要求1-4中的任一项所述的方法,其中,所述方法还包括:将所述中止码放置在事务诊断区块中。9.如权利要求8所述的方法,其中,所述事务诊断区块由起始被中止的事务的指令或起始另一事务的指令之一指定,其中,所述事务和另一事务是嵌套的。10.如前述权利要求1-4中的任一项所述的方法,其中,所述方法还包括:基于中止所述事务,将非事务储存存取交付至存储器,并且舍弃事务储存存取。11.一种用于执行计算环境内的指令的...
【专利技术属性】
技术研发人员:D格雷纳,C雅各比,T斯莱格尔,M米特兰,
申请(专利权)人:国际商业机器公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。