Tolerating and detecting asymmetric races
    1.
    发明授权
    Tolerating and detecting asymmetric races 有权
    容忍和检测非对称种族

    公开(公告)号:US07971248B2

    公开(公告)日:2011-06-28

    申请号:US11839017

    申请日:2007-08-15

    IPC分类号: G06F11/00

    CPC分类号: G06F9/526

    摘要: Detecting and/or tolerating races. Races occur due to malicious threads not respecting software locks. A method of detecting and/or correcting races includes making local copie(s) and reference copie(s) of shared data. Any read and write operations performed by a safe thread are caused to be performed on the local copie(s) during a critical section. The critical section defines a time frame which a variable lock is placed on shared data. Any read and write operations performed by malicious threads are allowed to be performed on the shared data during the critical section. The shared data, the local copie(s), and the reference copie(s) are compared to determine that a race has been detected. An indication can be output that a race has occurred or the race can be corrected.

    摘要翻译: 检测和/或容忍种族。 由于不遵守软件锁的恶意线程而发生竞赛。 检测和/或校正种族的方法包括制作共享数据的本地复本和参考文件。 在安全线程执行的任何读写操作都会导致在临界区域对本地复合机执行。 关键部分定义了将变量锁定在共享数据上的时间范围。 允许在关键部分对共享数据执行由恶意线程执行的任何读写操作。 比较共享数据,本地复本和参考文件,以确定已经检测到比赛。 可以输出发生比赛的指示或者可以纠正比赛。

    TOLERATING AND DETECTING ASYMMETRIC RACES
    2.
    发明申请
    TOLERATING AND DETECTING ASYMMETRIC RACES 有权
    加速和检测不对称赛车

    公开(公告)号:US20090049545A1

    公开(公告)日:2009-02-19

    申请号:US11839017

    申请日:2007-08-15

    IPC分类号: G06F11/00

    CPC分类号: G06F9/526

    摘要: Detecting and/or tolerating races. Races occur due to malicious threads not respecting software locks. A method of detecting and/or correcting races includes making local copie(s) and reference copie(s) of shared data. Any read and write operations performed by a safe thread are caused to be performed on the local copie(s) during a critical section. The critical section defines a time frame which a variable lock is placed on shared data. Any read and write operations performed by malicious threads are allowed to be performed on the shared data during the critical section. The shared data, the local copie(s), and the reference copie(s) are compared to determine that a race has been detected. An indication can be output that a race has occurred or the race can be corrected.

    摘要翻译: 检测和/或容忍种族。 由于不遵守软件锁的恶意线程而发生竞赛。 检测和/或校正种族的方法包括制作共享数据的本地复本和参考文件。 在安全线程执行的任何读写操作都会导致在临界区域对本地复合机执行。 关键部分定义了将变量锁定在共享数据上的时间范围。 允许在关键部分对共享数据执行由恶意线程执行的任何读写操作。 比较共享数据,本地复本和参考文件,以确定已经检测到比赛。 可以输出发生比赛的指示或者可以纠正比赛。

    Software robustness through search for robust runtime implementations
    3.
    发明授权
    Software robustness through search for robust runtime implementations 有权
    通过搜索强大的运行时实现来实现软件的鲁棒性

    公开(公告)号:US07802232B2

    公开(公告)日:2010-09-21

    申请号:US11396040

    申请日:2006-03-31

    IPC分类号: G06F9/44

    CPC分类号: G06F11/3612 G06F12/023

    摘要: Software program robustness is improved by successfully masking memory safety errors in the software program. For instance, at least some memory safety errors in a software program can be masked by using a runtime memory manager that approximates the semantics of an infinite heap memory manager. In one example, an approximation of an infinite heap memory manager is implemented by configuring a parameterized memory manager with parameter values such as padding to be added to each allocation on the heap and the amount of deferment before executing a call to free memory on the heap. Ideal configurations balance expected robustness with costs such as added memory and processing time. Ideal configurations can be identified through systematic search of a coordinate space of selected parameters. Ideal configurations can also be identified by statistically correlating success/failure data collected from execution of deployed instances of the software program to the configuration of the memory managers used therein.

    摘要翻译: 通过成功地屏蔽软件程序中的内存安全错误,软件程序的鲁棒性得到改善。 例如,可以通过使用近似无限堆存储器管理器的语义的运行时存储器管理器来掩蔽软件程序中的至少一些存储器安全错误。 在一个示例中,无限堆存储器管理器的近似通过配置参数化的存储器管理器来实现,该参数值具有诸如填充的参数值以被添加到堆上的每个分配,并且在执行对堆之间的空闲存储器的调用之前的延迟量 。 理想的配置平衡预期的鲁棒性与成本,如增加的内存和处理时间。 可以通过系统搜索所选参数的坐标空间来识别理想配置。 还可以通过将从软件程序的部署实例的执行收集的成功/失败数据与其中使用的存储器管理器的配置统一地相关联来识别理想配置。

    PROTECTION OF CRITICAL MEMORY USING REPLICATION
    4.
    发明申请
    PROTECTION OF CRITICAL MEMORY USING REPLICATION 有权
    使用复制保护关键存储器

    公开(公告)号:US20080140962A1

    公开(公告)日:2008-06-12

    申请号:US11608695

    申请日:2006-12-08

    IPC分类号: G06F12/16 G06F12/14

    CPC分类号: G06F11/167 G06F11/183

    摘要: Typical computer programs may incur costly memory errors that result in corrupted data. A new memory model is presented wherein it may be determined that certain data is critical and critical data may be stored and protected during computer application execution. Critical Memory allows that data determined to be critical may be stored and retrieved using functions enabled to increase the reliability of the data. Functions are presented enabling allocation of redundant computer memory; functions are presented enabling consistently writing critical data to redundant locations; and functions are presented enabling reading critical data while ensuring that the data read is consistent with the most recent write of critical data and enabled to repair inconsistent data. The memory model and functions presented are designed to be compatible with existing third-party libraries.

    摘要翻译: 典型的计算机程序可能会导致导致数据损坏的昂贵的内存错误。 提出了一种新的存储器模型,其中可以确定某些数据是关键的,并且在计算机应用执行期间可以存储和保护关键数据。 关键内存允许确定为关键的数据可以使用启用的功能来存储和检索,以提高数据的可靠性。 提供功能,使冗余计算机存储器的分配; 提供功能,可以将关键数据始终写入冗余位置; 并提供了功能,可以读取关键数据,同时确保数据读取与最新的关键数据写入一致,并能够修复不一致的数据。 所提供的内存模型和功能旨在与现有的第三方库兼容。

    EXPEDITED TECHNIQUES FOR GENERATING STRING MANIPULATION PROGRAMS
    5.
    发明申请
    EXPEDITED TECHNIQUES FOR GENERATING STRING MANIPULATION PROGRAMS 有权
    用于生成STRING操作程序的有针对性的技术

    公开(公告)号:US20130326475A1

    公开(公告)日:2013-12-05

    申请号:US13487266

    申请日:2012-06-04

    IPC分类号: G06F9/44

    CPC分类号: G06F17/22 G06F8/30 G06F8/427

    摘要: A program creation system is described which generates sets of subprograms for respective input-output examples. The program creation system then groups the sets into partitions by performing an intersection operation. According to one aspect, the program creation system generates subprograms so as to exclude tokens that are not represented by the input strings of the input-output examples. According to another aspect, the program creation system first generates the subprograms without attempting to generate loop-type expressions. If this operation produces unsatisfactory results, the program creation system repeats its processing, this time including loop-type expressions. According to another aspect, the program creation system performs the grouping operation using an expedited graph-intersection operation. According to another aspect, the program creation system ranks programs (which are created based on the results of the grouping operation) based on the presence of preferred features found in the programs.

    摘要翻译: 描述了为相应的输入输出示例生成一组子程序的程序创建系统。 然后,程序创建系统通过执行交叉操作将集合分组成分区。 根据一个方面,程序创建系统生成子程序以排除未由输入 - 输出示例的输入字符串表示的令牌。 根据另一方面,程序创建系统首先生成子程序而不尝试生成循环类型表达式。 如果此操作产生不令人满意的结果,则程序创建系统重复其处理,此时包括循环类型表达式。 根据另一方面,程序创建系统使用加速的图形交叉操作来执行分组操作。 根据另一方面,程序创建系统基于在程序中发现的优选特征的存在来排列基于分组操作的结果创建的程序(其被创建)。

    Critical memory
    6.
    发明授权
    Critical memory 有权
    关键记忆

    公开(公告)号:US08112597B2

    公开(公告)日:2012-02-07

    申请号:US11608698

    申请日:2006-12-08

    IPC分类号: G06F12/00

    CPC分类号: G06F11/141 G06F11/1438

    摘要: Typical computer programs may incur costly memory errors that result in corrupted data. A new memory model is presented wherein it may be determined that certain data is critical and critical data may be stored and protected during computer application execution. Critical Memory allows that data determined to be critical may be stored and retrieved using functions enabled to increase the reliability of the data. Critical Memory presents a memory model where a subset of memory designated as critical memory may be used to store a subset of data deemed critical data. Probabilistic guarantees of data value consistency are provided by the employment of the new memory model. The memory model and functions presented are compatible with existing third-party libraries such that third-party libraries may be compatibly called from processes using critical memory.

    摘要翻译: 典型的计算机程序可能会导致导致数据损坏的昂贵的内存错误。 提出了一种新的存储器模型,其中可以确定某些数据是关键的,并且在计算机应用执行期间可以存储和保护关键数据。 关键内存允许确定为关键的数据可以使用启用的功能来存储和检索,以提高数据的可靠性。 关键存储器提供了一种存储器模型,其中指定为关键存储器的存储器的子集可以用于存储被认为是关键数据的数据子集。 通过使用新的内存模型提供数据价值一致性的概率保证。 所呈现的内存模型和功能与现有的第三方库兼容,使得可以使用关键内存从进程兼容地调用第三方库。

    Policy Management for the Cloud
    7.
    发明申请
    Policy Management for the Cloud 审中-公开
    云的政策管理

    公开(公告)号:US20100319004A1

    公开(公告)日:2010-12-16

    申请号:US12485678

    申请日:2009-06-16

    IPC分类号: G06F9/54 G06F9/46

    摘要: An exemplary policy management layer includes a policy module for a web-based service where the policy module includes logic to make a policy-based decision and an application programming interface (API) associated with an execution engine associated with resources for providing the web-based service, where the API is configured to communicate information from the execution engine to the policy module and where the API is configured to receive a policy-based decision from the policy module and to communicate the policy-based decision to the execution engine to thereby effectuate policy for the web-based service. Various other devices, systems, methods, etc., are also described.

    摘要翻译: 示例性策略管理层包括用于基于web的服务的策略模块,其中策略模块包括用于进行基于策略的决策的逻辑以及与用于提供基于web的用于提供基于Web的资源的资源相关联的执行引擎相关联的应用程序编程接口 服务,其中API被配置为将信息从执行引擎传递到策略模块,并且其中API被配置为从策略模块接收基于策略的决策,并将基于策略的决策传达到执行引擎,从而实现 基于Web的服务策略。 还描述了各种其它装置,系统,方法等。

    Datacenter execution templates
    8.
    发明授权
    Datacenter execution templates 有权
    数据中心执行模板

    公开(公告)号:US08856333B2

    公开(公告)日:2014-10-07

    申请号:US12485670

    申请日:2009-06-16

    IPC分类号: G06F15/173 G06F9/50

    CPC分类号: G06F9/5066

    摘要: Deployment and execution of a service in a multiple datacenter environment may be facilitated using datacenter execution templates. Developers, business managers, and other interested parties may select and/or modify a declarative execution template embodying multiple factors. The execution template may then be used to generate an execution plan, which is then executed by datacenters which run the service. The execution template may be optimized after deployment of the service, allowing for ongoing adjustment in response to changing business, regulatory, and operational factors.

    摘要翻译: 可以使用数据中心执行模板来方便在多数据中心环境中部署和执行服务。 开发人员,业务经理和其他感兴趣的方可以选择和/或修改体现多个因素的声明性执行模板。 执行模板然后可以用于生成执行计划,然后执行计划由运行该服务的数据中心执行。 在部署服务之后,可以优化执行模板,从而可以根据不断变化的业务,监管和操作因素进行持续调整。

    Storing results related to requests for software development services
    9.
    发明授权
    Storing results related to requests for software development services 有权
    存储与软件开发服务请求相关的结果

    公开(公告)号:US08407206B2

    公开(公告)日:2013-03-26

    申请号:US11131455

    申请日:2005-05-16

    IPC分类号: G06F17/30

    CPC分类号: G06F8/20

    摘要: Described herein are methods and systems for providing software development services more efficiently. Re-computation of results each time a service request is received can be avoided by maintaining a cache of results from having processed requests. Results are stored under a unique mapping of request-results pairs that at least in part rely on a file fingerprint hash of the contents of the input files related to the request. In network environment with a client requester and service provider unnecessary transmission is also avoided by first presenting results for requests are in form of a unique file identifier identifying one or more files holding the content of the results. The file identifier is used to search a cache local to the requesting client prior to requesting transmission of the results. The file identifier may also include an indicator for indicating a location from which the results may be retrieved.

    摘要翻译: 这里描述了更有效地提供软件开发服务的方法和系统。 每次接收到服务请求时,重新计算结果都可以通过维护具有处理请求的结果缓存来避免。 结果存储在请求结果对的唯一映射下,至少部分地依赖于与请求相关的输入文件的内容的文件指纹散列。 在具有客户机请求者和服务提供商的网络环境中,也通过首先呈现请求的结果来避免通过标识一个或多个保存结果内容的文件的唯一文件标识符的形式来避免传输。 文件标识符用于在请求发送结果之前搜索请求客户端的本地缓存。 文件标识符还可以包括用于指示可从中检索结果的位置的指示符。

    Program history in a computer programming language

    公开(公告)号:US07111283B2

    公开(公告)日:2006-09-19

    申请号:US09725983

    申请日:2000-11-29

    IPC分类号: G06F9/45 G06F9/44

    CPC分类号: G06F8/31

    摘要: A programming-language construct called a program history, and a method, system, apparatus, and data structure for translating computer source code that contains the program history construct. A program history captures data regarding the state of the program as it executes and makes this data available to functions called history operators, which operate on the data. The source code contains a history operand, an instance of the history operand, and the history operator. The presence of the history operand directs a translator to cause history data to be saved regarding the sequence of data that is associated with the operand instance as the program executes. The presence of the history operator directs the translator to cause a function to be performed that saves history data. In this way, the programmer is freed from writing tedious and error-prone bookkeeping code that declares variables and saves history data into those declared variables.