Method and Device for Preloading Application, Storage Medium, and Terminal Device

    公开(公告)号:US20190196849A1

    公开(公告)日:2019-06-27

    申请号:US16188929

    申请日:2018-11-13

    发明人: Yan Chen Yaoyong Liu

    IPC分类号: G06F9/445 G06F9/448 H04L29/08

    摘要: A method for preloading an application, a storage medium, and a terminal device are provided. The method includes the following. In response to a target application being detected to be closed, current state feature information of a terminal device is acquired. The current state feature information is compared with historical state feature information of the terminal device when the target application was closed. Target historical state feature information closest to the current state feature information is determined from within the historical state feature information according to a comparison result. The target application is preloaded, in response to determining that the target application is about to be launched again according to a historical usage regularity corresponding to the target historical state feature information.

    Symmetrical dimensions in context-oriented programming to optimize software object execution

    公开(公告)号:US09898310B2

    公开(公告)日:2018-02-20

    申请号:US14503064

    申请日:2014-09-30

    IPC分类号: G06F9/44

    CPC分类号: G06F9/4491

    摘要: A method, system, and/or computer program product optimizes execution of a computation. Multiple slots, each of which is a container for information, are defined. A coordinate tuple is defined for each of the multiple slots. The coordinate tuple describes a position of a slot along multiple dimensions in a slot space. The multiple dimensions describe roles for executing a software object, and each of the multiple dimensions has a same level of primacy such that no dimension has primacy over another dimension in the slot space. Multiple method slots are populated with software method objects that address different contexts and purposes as defined by coordinate tuples of the multiple method slots. Software method objects are retrieved from coordinate tuples in the slot space that match a defined context and purpose of a particular computation, which is propagated to a processor that is executing a particular software method object.

    Concurrent accesses of dynamically typed object data
    3.
    发明授权
    Concurrent accesses of dynamically typed object data 有权
    动态类型对象数据的并发访问

    公开(公告)号:US09501409B2

    公开(公告)日:2016-11-22

    申请号:US14231464

    申请日:2014-03-31

    申请人: Apple Inc.

    发明人: Filip J. Pizlo

    摘要: A method and an apparatus for an enhanced object model to allow concurrent execution for program code generated from dynamic programming languages, such as JavaScript, are described. An index structure may be introduced to an object model representing a dynamically typed object in addition to a type structure and a data payload storing property or field values of the object. Elements of the index structure may point at corresponding property values as an indirection for accessing the object.

    摘要翻译: 描述了用于允许从动态编程语言(例如JavaScript)生成的程序代码的并发执行的增强对象模型的方法和装置。 索引结构可以被引入到表示动态类型对象的对象模型,除了类型结构和数据有效载荷存储对象的属性或字段值之外。 索引结构的元素可以指向相应的属性值作为访问对象的间接。

    Execution guards in dynamic programming
    4.
    发明授权
    Execution guards in dynamic programming 有权
    执行守卫动态规划

    公开(公告)号:US09207914B2

    公开(公告)日:2015-12-08

    申请号:US14137356

    申请日:2013-12-20

    IPC分类号: G06F9/44 G06F9/455

    摘要: A method for executing a machine code based on a dynamic language is disclosed. An execution guard is created as a value stored in a data structure. The value is representative of an expected condition or a set of conditions for a reusable portion of the machine code. The value representative of the expected condition(s) is compared to an actual value encountered later during execution of a portion of the machine code. The reusable machine code is executed if the actual value corresponds with the value representative of the expected condition(s). The execution guard is invalidated if any of the expected conditions changes.

    摘要翻译: 公开了一种基于动态语言执行机器代码的方法。 创建执行保护作为存储在数据结构中的值。 该值代表机器代码的可重复使用部分的预期条件或一组条件。 将代表期望状况的值与执行机器代码的一部分期间稍后遇到的实际值进行比较。 如果实际值对应于代表预期条件的值,则执行可重用机器代码。 如果任何预期条件发生变化,执行守卫将被无效。

    Hardware Acceleration for Inline Caches in Dynamic Languages
    5.
    发明申请
    Hardware Acceleration for Inline Caches in Dynamic Languages 有权
    动态语言内联缓存的硬件加速

    公开(公告)号:US20150205726A1

    公开(公告)日:2015-07-23

    申请号:US14262852

    申请日:2014-04-28

    IPC分类号: G06F12/08 G06F9/38 G06F9/30

    摘要: Aspects include a computing devices, systems, and methods for hardware acceleration for inline caches in dynamic languages. An inline cache may be initialized for an instance of a dynamic software operation. A call of an initialized instance of the dynamic software operation may be executed by an inline cache hardware accelerator. The inline cache may be checked to determine that its data is current. When the data is current, the initialized instance of the dynamic software operation may be executed using the related inline cache data. When the data is not current, a new inline cache may be initialized for the instance of the dynamic software operation, including the not current data of a previously initialized instance of the dynamic software operation. The inline cache hardware accelerator may include an inline cache memory, a coprocessor, and/or a functional until one an inline cache pipeline connected to a processor pipeline.

    摘要翻译: 方面包括用于动态语言的内联高速缓存的硬件加速的计算设备,系统和方法。 可以为动态软件操作的实例初始化内联缓存。 动态软件操作的初始化实例的调用可以由内联高速缓存硬件加速器执行。 可以检查内联高速缓存以确定其数据是当前的。 当数据是最新的时,可以使用相关的在线高速缓存数据来执行动态软件操作的初始化实例。 当数据不是当前的时候,可以为动态软件操作的实例初始化新的内联高速缓存,包括动态软件操作的先前初始化的实例的当前数据。 内联高速缓存硬件加速器可以包括内联高速缓冲存储器,协处理器和/或功能,直到连接到处理器流水线的内联高速缓存流水线为止。

    IMPLEMENT INLINE CACHE USING A DATA ARRAY
    6.
    发明申请
    IMPLEMENT INLINE CACHE USING A DATA ARRAY 审中-公开
    使用数据阵列实现在线高速缓存

    公开(公告)号:US20150199186A1

    公开(公告)日:2015-07-16

    申请号:US13648128

    申请日:2012-10-09

    申请人: GOOGLE INC.

    IPC分类号: G06F9/45

    CPC分类号: G06F8/443 G06F9/4491

    摘要: Methods and systems are provided for implementing an inline cache that uses a data array to perform receiver class checks. The data array contains classes, targets, and counters. The invocation is forwarded to the appropriate target when the checked class matches. On the other hand, an inline cache miss expands the data array with the new receiver class. The inline cache stub counts the invocations for specific classes and stores the count into the data array. The optimizing compiler can generate better code using the call type frequency (e.g., sort checks, limit the number of checks to the most frequently used classes, etc.).

    摘要翻译: 提供了方法和系统来实现使用数据数组执行接收器类检查的内联高速缓存。 数据数组包含类,目标和计数器。 当被检查的类匹配时,调用将转发到相应的目标。 另一方面,内联高速缓存未命中使用新的接收器类来扩展数据数组。 内联缓存存根对特定类的调用进行计数,并将计数存储到数据数组中。 优化编译器可以使用呼叫类型频率(例如,排序检查,将检查的数量限制到最常用的类别等)来生成更好的代码。

    Method and system for testing a software program
    8.
    发明授权
    Method and system for testing a software program 有权
    用于测试软件程序的方法和系统

    公开(公告)号:US08291385B2

    公开(公告)日:2012-10-16

    申请号:US12917414

    申请日:2010-11-01

    申请人: Sriram V. Iyer

    发明人: Sriram V. Iyer

    IPC分类号: G06F9/44

    CPC分类号: G06F11/3668 G06F9/4491

    摘要: Methods and systems for testing a software program are provided. The methods include receiving a textual input for testing at least one static type used by the software program. The textual input of an embodiment is pre-linked to the at least one static type. The method includes creating a dynamic type based on the textual input in a dynamically typed language. The dynamic type is populated based on a predefined set of test vectors and is then passed on to the software program. The software program is executed using the dynamic type. Executing the software program by using the dynamic type invokes the at least one static type used by the software program.

    摘要翻译: 提供了测试软件程序的方法和系统。 这些方法包括接收用于测试由软件程序使用的至少一个静态类型的文本输入。 实施例的文本输入被预先链接到至少一个静态类型。 该方法包括基于动态类型语言的文本输入创建动态类型。 基于预定义的一组测试向量填充动态类型,然后传递给软件程序。 使用动态类型执行软件程序。 使用动态类型执行软件程序会调用软件程序使用的至少一个静态类型。

    Method and System for Testing a Software Program
    9.
    发明申请
    Method and System for Testing a Software Program 有权
    测试软件程序的方法和系统

    公开(公告)号:US20110047530A1

    公开(公告)日:2011-02-24

    申请号:US12917414

    申请日:2010-11-01

    申请人: Sriram V. Iyer

    发明人: Sriram V. Iyer

    IPC分类号: G06F9/44

    CPC分类号: G06F11/3668 G06F9/4491

    摘要: Methods and systems for testing a software program are provided. The methods include receiving a textual input for testing at least one static type used by the software program. The textual input of an embodiment is pre-linked to the at least one static type. The method includes creating a dynamic type based on the textual input in a dynamically typed language. The dynamic type is populated based on a predefined set of test vectors and is then passed on to the software program. The software program is executed using the dynamic type. Executing the software program by using the dynamic type invokes the at least one static type used by the software program.

    摘要翻译: 提供了测试软件程序的方法和系统。 这些方法包括接收用于测试由软件程序使用的至少一个静态类型的文本输入。 实施例的文本输入被预先链接到至少一个静态类型。 该方法包括基于动态类型语言的文本输入创建动态类型。 基于预定义的一组测试向量填充动态类型,然后传递给软件程序。 使用动态类型执行软件程序。 使用动态类型执行软件程序会调用软件程序使用的至少一个静态类型。

    Methods and systems for testing a software program
    10.
    发明授权
    Methods and systems for testing a software program 失效
    用于测试软件程序的方法和系统

    公开(公告)号:US07827530B2

    公开(公告)日:2010-11-02

    申请号:US11506102

    申请日:2006-08-17

    申请人: Sriram V. Iyer

    发明人: Sriram V. Iyer

    IPC分类号: G06F9/44

    CPC分类号: G06F11/3668 G06F9/4491

    摘要: Methods and systems for testing a software program are provided. The methods include receiving a textual input for testing at least one static type used by the software program. The textual input of an embodiment is pre-linked to the at least one static type. The method includes creating a dynamic type based on the textual input in a dynamically typed language. The dynamic type is populated based on a predefined set of test vectors and is then passed on to the software program. The software program is executed using the dynamic type. Executing the software program by using the dynamic type invokes the at least one static type used by the software program.

    摘要翻译: 提供了测试软件程序的方法和系统。 这些方法包括接收用于测试由软件程序使用的至少一个静态类型的文本输入。 实施例的文本输入被预先链接到至少一个静态类型。 该方法包括基于动态类型语言的文本输入创建动态类型。 基于预定义的一组测试向量填充动态类型,然后传递给软件程序。 使用动态类型执行软件程序。 使用动态类型执行软件程序会调用软件程序使用的至少一个静态类型。