Method, apparatus, and computer program product for adaptively generating code for a computer program
    1.
    发明申请
    Method, apparatus, and computer program product for adaptively generating code for a computer program 有权
    用于自动生成计算机程序代码的方法,装置和计算机程序产品

    公开(公告)号:US20070033572A1

    公开(公告)日:2007-02-08

    申请号:US11197606

    申请日:2005-08-04

    IPC分类号: G06F9/44

    CPC分类号: G06F8/47

    摘要: A program feature set is compared to a processor feature set. The comparison may be performed in response to restoring the program onto a system or requesting its execution. The processor feature set represents zero, one or more optional hardware features supported by the processor, whereas the program feature set represents zero, one or more optional hardware features the program relies upon in its generated code. Comparison of the feature sets determines whether a particular program may run on a particular processor. Programs may be automatically or manually rebuilt to achieve full compatibility. If the comparison indicates that the program requires a feature not supported by the processor, the program is rebuilt based on the processor feature set. Alternatively, the program may be rebuilt in response to a rebuild request, rather than the comparison. The program is preferably rebuilt from an intermediate representation (IR) stored with or locatable from the program.

    摘要翻译: 将程序功能集与处理器功能集进行比较。 可以响应于将程序恢复到系统或请求其执行来执行比较。 处理器功能集表示处理器支持的零个一个或多个可选的硬件特征,而程序特征集代表零,一个或多个可选的硬件特征,程序依赖于其生成的代码。 特征集的比较确定特定程序是否可以在特定处理器上运行。 可以自动或手动重建程序以实现完全兼容。 如果比较表明程序需要处理器不支持的功能,则基于处理器功能集重建程序。 或者,可以重建响应于重建请求而不是比较的程序。 该程序优选地从存储有或可从该程序定位的中间表示(IR)重建。

    Apparatus and method for selectively invalidating entries in an address translation cache
    2.
    发明申请
    Apparatus and method for selectively invalidating entries in an address translation cache 有权
    用于选择性地使地址转换高速缓存中的条目无效的装置和方法

    公开(公告)号:US20070143565A1

    公开(公告)日:2007-06-21

    申请号:US11304136

    申请日:2005-12-15

    IPC分类号: G06F12/00

    摘要: An apparatus and method selectively invalidate entries in an address translation cache instead of invalidating all, or nearly all, entries. One or more translation mode bits are provided in each entry in the address translation cache. These translation mode bits may be set according to the addressing mode used to create the cache entry. One or more “hint bits” are defined in an instruction that allow specifying which of the entries in the address translation cache are selectively preserved during an invalidation operation according to the value(s) of the translation mode bit(s). In the alternative, multiple instructions may be defined to preserve entries in the address translation cache that have specified addressing modes. In this manner, more intelligence is used to recognize that some entries in the address translation cache may be valid after a task or partition switch, and may therefore be retained, while other entries in the address translation cache are invalidated.

    摘要翻译: 一种装置和方法选择性地使地址转换高速缓存中的条目无效,而不是使所有或几乎所有条目无效。 在地址转换高速缓存中的每个条目中提供一个或多个翻译模式位。 可以根据用于创建高速缓存条目的寻址模式来设置这些转换模式位。 在指令中定义一个或多个“提示位”,该指令允许根据翻译模式位的值来指定在无效操作期间选择性地保留地址转换高速缓存中的哪些条目。 在替代方案中,可以定义多个指令以保留具有指定寻址模式的地址转换高速缓存中的条目。 以这种方式,使用更多的智能来识别地址转换高速缓存中的一些条目在任务或分区切换之后可能是有效的,并且因此可以被保留,而地址转换高速缓存中的其他条目是无效的。

    Method, apparatus, and computer program product for accessing process local storage of another process
    3.
    发明申请
    Method, apparatus, and computer program product for accessing process local storage of another process 有权
    用于访问另一进程的本地存储的方法,装置和计算机程序产品

    公开(公告)号:US20070208882A1

    公开(公告)日:2007-09-06

    申请号:US11360351

    申请日:2006-02-23

    IPC分类号: G06F3/00

    CPC分类号: G06F9/544

    摘要: An operating system kernel includes an attach mechanism and a detach mechanism. In addition, processes are tagged with an access attribute identifying the process as either a client process or a server process. Based on the access attribute, the operating system kernel lays out the process local address space differently depending on whether the process is a client process or a server process. A server process can “attach” to a client process and reference all of the client process' local storage as though it were its own. The server process continues to reference its own process local storage, but in addition, it can reference the other storage, using the client process' local addresses. When access to the other storage is no longer needed, the server process can “detach” from the client process. Once detached, the other storage can no longer be referenced.

    摘要翻译: 操作系统内核包括连接机构和分离机构。 此外,进程用标识进程的访问属性标记为客户端进程或服务器进程。 基于访问属性,操作系统内核会根据进程是客户端进程还是服务器进程来区分进程本地地址空间。 服务器进程可以“附加”到客户端进程,并引用所有客户端进程的本地存储,就像它是自己的。 服务器进程继续参考自己的进程本地存储,但另外也可以引用其他存储,使用客户端进程的本地地址。 当不再需要访问其他存储时,服务器进程可以从客户端进程“脱离”。 一旦分离,其他存储就不能再被引用了。