当前位置: 首页 > 专利查询>微软公司专利>正文

可执行代码数据的无锁流传送制造技术

技术编号:11280701 阅读:122 留言:0更新日期:2015-04-09 14:05
分解器接收指令并将它们分解成多个分开的操作码。分解器创建标识每一个操作码之间的边界的表。通过原子地写存储器的标准块来将每一个操作码以逐操作码的方式写至存储器。当需要时将调试断点操作码追加到操作码以创建完整的存储器块。存储器块可以长达例如三十二位或者六十四位。长操作码可重叠两个或更多的存储器块。可将调试断点操作码追加到长操作码的第二部分以创建完整的存储器块。流故障拦截器标识何时所请求的数据页不可用并取回该数据页。

【技术实现步骤摘要】
【国外来华专利技术】可执行代码数据的无锁流传送的方法和系统
本专利技术涉及一种计算机系统和计算机实现的方法,尤其涉及可执行代码数据的无锁流传送的方法和系统。
技术介绍
当同时收到读和写数据的命令时发生竞争状况。这也可以在例如在写线程将数据递送至存储器的同时一线程正在执行来自存储器的可执行数据分组的时候发生。结果可能是计算机崩溃、程序关闭、读/写错误或其他问题。在一个解决方案中,在等待写线程提供数据的同时可将执行线程挂起。然而,挂起线程可导致相关进程的性能问题。举例而言,对于进程可以有数十或数百个线程在运行,其中只有一个或几个线程访问该数据,但每一次流故障发生时所有的线程都必须被挂起以等待数据递送。
技术实现思路
提供本概述以便以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本概述并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。各实施例通过分解可执行代码并对于对存储器页的写排序来允许可执行代码以无锁的方式递送。这允许可执行代码贯穿流数据的递送而保持在一致的状态中。因为存储器处于一致的状态,所以当字节代码被写进存储器时其他线程可继续执行。这允许更大的可扩展性和性能。本文档来自技高网...
可执行代码数据的无锁流传送

【技术保护点】
一种计算机实现的方法,包括:接收包括多个操作码的指令,每一个操作码包括一个或多个字节的数据;将所述指令分解成分开的操作码;创建标识每一个操作码之间的边界的表;以及通过原子地写存储器的标准块将每一个操作码以逐操作码的方式写至存储器。

【技术特征摘要】
【国外来华专利技术】2012.07.27 US 13/560,2161.一种计算机实现的方法,包括:接收包括多个操作码的指令,每一个操作码包括一个或多个字节的数据;将所述指令分解成分开的操作码;创建标识每一个操作码之间的边界的表;将调试断点操作码追加到操作码以创建完整的存储器标准块;以及通过原子地写存储器的标准块将每一个操作码以逐操作码的方式写至存储器。2.如权利要求1所述的计算机实现的方法,其特征在于,还包括:将调试断点操作码写至所有存储器位置以初始化所述存储器。3.如权利要求1所述的计算机实现的方法,其特征在于,所述存储器标准块长达三十二位或六十四位。4.如权利要求1所述的计算机实现的方法,其特征在于,还包括:标识何时长操作码将重叠两个或更多的存储器标准块;将所述长操作码的第二部分写至第二存储器块;以及将所述长操作码的第一部分写至第一存储器块。5.如权利要求4所述的计算机实现的方法,其特征在于,还包括:将调试断点操作码追加到所述长操作码的第二部分以创建完整的存储器标准块。...

【专利技术属性】
技术研发人员:K·雷厄森
申请(专利权)人:微软公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1