[发明专利]存储器事务分组有效
| 申请号: | 200880020189.3 | 申请日: | 2008-06-18 |
| 公开(公告)号: | CN101681294A | 公开(公告)日: | 2010-03-24 |
| 发明(设计)人: | M·塔耶费尔 | 申请(专利权)人: | 微软公司 |
| 主分类号: | G06F12/00 | 分类号: | G06F12/00 |
| 代理公司: | 上海专利商标事务所有限公司 | 代理人: | 陈 斌;钱静芳 |
| 地址: | 美国华*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 存储器 事务 分组 | ||
背景
计算机随时间不断变得更加强大,具有更多的处理能力和存储器来处 理高级操作。这一趋势最近将焦点从日益增长的单处理器时钟速率移开, 并趋向于增加单个计算机中可用处理器的数量。软件开发者想要利用计算 机处理能力上改进的优势,以允许他们的软件程序在采用新硬件时更快地 执行。然而,对于该新硬件趋势,这要求不同的方法:开发者必须安排特 定软件程序的一个或多个任务“并发地”(有时称为“并行”)执行,以 使同一逻辑操作可以同时利用多个处理器,并在向该软件在其上运行的计 算机添加更多处理器时提供更好的性能。
事务存储器被设计成通过向程序代码区域提供原子性和隔离性来简化 并发程序的开发。事务存储器(TM)是类似于数据库事务的、用于在并发 计算中控制对共享存储器的访问的并发控制机制。事务存储器的上下文中 的事务是对共享存储器执行一系列读取和写入的一段代码。TM用作传统锁 定机制的替换。TM允许更简单地编写并发程序。事务指定应当好像隔离地 执行的代码序列,而实际上它在正常的多线程环境中与许多并发活动一起 执行。这一隔离错觉可以通过对象或存储器范围的细粒度锁定,以及通过 以在发现事务与某一其它事务相冲突的情况下允许回退该事务的影响的模 式执行来实现。如果数据访问受这些锁定和回退机制保护,则可以说该访 问被“事务化”。
不同的锁定和版本化机制是可能的,包括若干基于软件的和基于硬件 的方法。不同的机制具有特征和质量,使得其各自在不同的情况是合适的 或优选的。在单个进程中组合不同的机制通常是不可能的,从而导致对通 用机制的选择,而通用机制为了实现一般适用性通常使性能受损。
概述
公开了用于提供在事务存储器系统下操作的程序中使用的事务分组特 征的各种技术和方法。事务分组特征可用于允许创建包含相关事务的事务 分组。事务分组可用来增强程序的操作。定义各事务分组,以便知道每一 分组中的事务操作不相交的数据,这允许每一这样的分组内的不兼容的锁 定和版本化机制,转而又允许精细地调节用于每一特定分组的具体机制。
提供本概述以便以简化形式介绍将在以下详细描述中进一步描述的一 些概念。本概述不旨在标识所要求保护的主题的关键特征或必要特征,也 不旨在用于帮助确定所要求保护的主题的范围。
附图简述
图1是一个实现的计算机系统的图示。
图2是在图1的计算机系统上操作的一个实现的事务存储器应用程序 的图示。
图3是图1的系统的一个实现的高级处理流程图。
图4是图1的系统的一个实现的处理流程图,其示出在允许程序员对 事务进行分组时所涉及的各阶段。
图5是图1的系统的一个实现的处理流程图,其示出在提供基于特定 试探法来自动地对事务进行分组的语言编译器时所涉及的各阶段。
图6是图1的系统的一个实现的处理流程图,其示出在提供自动地对 事务进行分组的运行时环境时所涉及的各阶段。
图7是图1的系统的一个实现的处理流程图,其示出在向不同的事务 分组提供专用争用管理时所涉及的各阶段。
图8是图1的系统的一个实现的处理流程图,其示出在向不同的事务 分组提供专用锁定和版本化机制时所涉及的各阶段。
图9是图1的系统的一个实现的处理流程图,其示出在对相关事务的 分组进行命名以增强调试或其它过程时所涉及的各阶段。
图10是多个事务分组的图示。
详细描述
此处的技术和方法可以在事务存储器系统的一般上下文中描述,但本 技术和方法也用作除此之外的其它目的。在一个实现中,此处所描述的一 个或多个技术可被实现为诸如微软.NET框架等框架程序内的、或来自为 开发者提供开发软件应用程序的平台的任何其它类型的程序或服务的特 征。在另一实现中,此处所描述的一个或多个技术被实现为涉及开发在并 发环境中执行的应用程序的其它应用程序的特征。
在一个实现中,提供事务分组特征以供在事务存储器系统下操作的程 序中使用。事务分组特征允许将事务置于各个分组中。如果可以确定一组 事务访问可证明与任何其它事务所访问的数据不相交的数据(例如读/写数 据),则这一组可被认为是“事务分组”。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200880020189.3/2.html,转载请声明来源钻瓜专利网。





