首页> 中国专利> 从虚拟踪迹创建物理踪迹的方法和系统

从虚拟踪迹创建物理踪迹的方法和系统

摘要

公开了一种从虚拟踪迹创建物理踪迹的方法和系统。在一实施方式中,读取虚拟踪迹记录,并创建和显示物理踪迹记录。虚拟踪迹记录与分配给被逻辑分区的计算机系统中的逻辑分区的虚拟处理器相关联。每个虚拟踪迹记录具有:等待时间戳,其指定虚拟处理器开始等待被分派的时间;以及等待时间增量,其指定所述虚拟处理器等待被分派的时间量。在每个虚拟踪迹记录中创建执行时间戳,其指定虚拟处理器被分派的时间。针对每个虚拟处理器按照执行时间戳对虚拟踪迹记录进行排序。根据已排序的虚拟踪迹记录来创建物理踪迹记录。每个物理踪迹记录描述虚拟处理器之一到物理处理器之一的分派。

著录项

  • 公开/公告号CN101290594A

    专利类型发明专利

  • 公开/公告日2008-10-22

    原文格式PDF

  • 申请/专利权人 国际商业机器公司;

    申请/专利号CN200810091520.2

  • 发明设计人 J·E·阿蒂内拉;

    申请日2008-04-15

  • 分类号G06F9/50;

  • 代理机构北京市金杜律师事务所;

  • 代理人王茂华

  • 地址 美国纽约阿芒克

  • 入库时间 2023-12-17 20:58:06

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-05-31

    未缴年费专利权终止 IPC(主分类):G06F9/50 授权公告日:20110323 终止日期:20160415 申请日:20080415

    专利权的终止

  • 2011-03-23

    授权

    授权

  • 2008-12-17

    实质审查的生效

    实质审查的生效

  • 2008-10-22

    公开

    公开

说明书

技术领域

本发明一般地涉及计算机系统,并且特别涉及在从被逻辑分区的计算机系统中的虚拟处理器的踪迹创建物理处理器的踪迹。

背景技术

1948年EDVAC计算机系统的开发经常被认为是计算机时代的开始。从那之后,计算机系统已经演化为可具有多种不同设置的极为复杂的设备。计算机系统通常包括硬件(例如,半导体、电路板等)和软件(例如,计算机程序)的结合。随着半导体工艺和计算机架构的进步推动计算机硬件的性能变得更高,已经开发出更加复杂的计算机软件以利用更高性能的硬件,这使得当前的计算机系统比仅仅几年之前的计算机系统要强大的多。计算机技术的一个显著进步是并行处理的发展,即,多个任务的并行执行。

已经开发了很多计算机软件和硬件技术以促进增强的并行处理。从硬件的角度看,计算机日益依赖于多个微处理器以提供增大的工作负载能力。此外,已经开发了一些这样的微处理器,其支持并行执行多个线程的能力,有效地提供通过使用多个微处理器可获得的相同性能增益。从软件的角度看,已经开发了多线程操作系统和内核,其允许计算机程序在多个线程中同时执行,从而多个任务可以基本上同时执行。

此外,一些计算机实现了逻辑分区的概念,其中允许单个物理计算机基本上像多个独立的虚拟计算机(被称为逻辑分区)一样进行操作,物理计算机中的各种资源(例如,处理器、存储器和输入/输出设备)通过分区管理器或管理程序在各个逻辑分区之间分配。每个逻辑分区执行单独的操作系统,并且从用户和逻辑分区中执行的软件应用的角度看,每个逻辑分区像完全独立的计算机一样进行操作。

将物理资源分配给逻辑分区以及在逻辑分区之间共享物理资源的一种方式是通过公知为虚拟资源的概念。例如,可以将虚拟处理器分配给逻辑分区。从逻辑分区的角度看,其具有对其虚拟处理器的完全访问权,并且可以任意执行其操作系统以及其虚拟处理器上的应用。但是,不为逻辑分区所知的是,其虚拟处理器实际上实现为一个或多个物理处理器的时间分片的部分分配,并且这些部分分配和物理处理器可以随时间改变。

当逻辑分区共享可用物理处理器的部分分配时,在各逻辑分区上分配物理处理器的方式可能影响每个逻辑分区的性能。逻辑分区内运行的操作系统经常提供用以分析其逻辑分区性能的工具,但是仅从逻辑分区角度的分析不足以理解物理处理器在多个逻辑分区上的分配的动态性。因此,可能难以分析逻辑分区的计算机系统的性能,因为所收集的性能数据是按照虚拟处理器来组织和描述的。目前的技术试图通过向被逻辑分区的计算机系统的底层固件和/或硬件添加附加的指令和数据收集来解决上述问题,但是这些技术可能是高成本的,并且经常降低计算机系统的整体性能。

因此,如果没有在逻辑分区的计算机系统中收集性能数据的较好技术,用户将继续经历执行性能分析时的困难。

发明内容

提供了一种方法、装置、存储介质和计算机系统。在一种实施方式中,读取虚拟踪迹记录,并创建物理踪迹记录。虚拟踪迹记录与分配给逻辑分区的计算机系统中的逻辑分区的虚拟处理器相关联。每个虚拟踪迹记录具有:被分派了虚拟处理器的物理处理器的标识符;引起虚拟处理器被分派的分派原因;等待时间戳,其指定虚拟处理器开始等待被分派的时间;以及等待时间增量,其指定虚拟处理器等待被分派的时间量。在每个虚拟踪迹记录中创建执行时间戳,它是来自该虚拟踪迹记录的等待时间戳和等待时间增量之和。针对每个虚拟处理器,按照执行时间戳对虚拟踪迹记录进行排序。

创建并显示与物理处理器相关联的物理踪迹记录。每个物理踪迹记录描述虚拟处理器之一到物理处理器之一的分派。在每个物理踪迹记录中创建分区标识符,其标识被分配了虚拟处理器的逻辑分区。在每个物理踪迹记录中创建开始时间戳,它是来自对应虚拟踪迹记录中的等待时间戳和等待时间增量之和。在每个物理踪迹记录中创建虚拟处理器标识符,其标识在开始时间戳的时间处被分派的虚拟处理器。在每个物理踪迹记录中创建虚拟处理时间,它是下一个虚拟踪迹记录(时间上在当前虚拟踪迹记录之后的下一个虚拟踪迹记录,其中当前虚拟踪迹记录对应于当前物理踪迹记录)的等待时间戳减去当前物理踪迹记录的开始时间戳。在每个踪迹记录中创建延迟时间,它是下一个物理踪迹记录中的下一个开始时间戳减去当前物理踪迹记录的开始时间戳减去当前虚拟处理时间。以此方式,物理踪迹记录以容易对被逻辑分区的计算机系统进行性能分析的形式呈现数据。

附图说明

此后结合附图描述本发明的各种实施方式:

图1描述了用于实现本发明实施方式的示例系统的高层框图。

图2描述了根据本发明的实施方式的示例存储器内容的框图。

图3A描述了根据本发明的实施方式的示例虚拟踪迹日志的框图。

图3B描述了根据本发明的实施方式的另一示例虚拟踪迹日志的框图。

图3C描述了根据本发明的实施方式的另一示例虚拟踪迹日志的框图。

图3D描述了根据本发明的实施方式的另一示例虚拟踪迹日志的框图。

图4A描述了根据本发明的实施方式的示例物理踪迹日志的框图。

图4B描述了根据本发明的实施方式的另一示例物理踪迹日志的框图。

图5描述了根据本发明的实施方式的用于提取数据并将数据输出到虚拟踪迹日志中的示例处理的流程图。

图6描述了根据本发明的实施方式的用于将虚拟踪迹日志转换为物理踪迹日志的示例处理的流程图。

然而,需要注意,附图仅示出了本发明的示例实施方式,因此不应被视为是对本发明范围的限制,因为本发明可以包括其他等效的实施方式。

具体实施方式

参考附图,其中贯穿若干视图,相似的数字表示相似的部分。图1描述了根据本发明的实施方式的通过网络130与服务器计算机系统132连接的被逻辑分区的计算机系统100的高层框图表示。使用名称“服务器”只是为了方便,在一种实施方式中,操作为一个计算机的客户端的计算机可以操作为另一个计算机的服务器,反之亦然。在一种实施方式中,计算机系统100的某些硬件组件可以通过IBMeServerPower5计算机系统实现。然而,本领技术人员将理解,本发明实施方式的机械和装置可等同地应用于任何合适的计算系统。

计算机系统100的主要组件包括一个或多个物理处理器101、主存储器102、终端接口111、存储接口112、I/O(输入/输出)设备接口113、以及通信/网络接口114,所有这些组件通过存储器总线103、I/O总线104和I/O总线接口单元105相耦合,用于组件间通信。

计算机系统100包括一个或多个通用可编程中央处理单元(CPU)101A、101B、101C和101D,在此通称为物理处理器101。在一种实施方式中,计算机系统100包括多个处理器,这是较大系统的典型情况;然而,在另一种实施方式中,作为替代,计算机系统100可以是单CPU系统。每个处理器101执行存储在主存储器102中的指令,并可以包括一级或多级板载高速缓存。

主存储器102是用于存储数据和程序的随机访问半导体存储器。在另一种实施方式中,主存储器102代表计算机系统100的整个虚拟存储器,并且还可以包括与计算机系统耦合的、或通过网络130连接的其他计算机系统的虚拟存储器。主存储器102概念上是单个单片电路实体,但是在其他实施方式中,主存储器102是更为复杂的布置,例如高速缓存和其他存储设备构成的层级。例如,存储器可以存在于多级高速缓存中,并且这些高速缓存可以根据功能进一步划分,从而使一个高速缓存保存指令,而其他高速缓存保存一个或多个处理器所使用的非指令数据。存储器可以被进一步分布,并且可以与不同的CPU或CPU集合相关联,如各种所谓的非一致性存储器访问(NUMA)计算机架构中的任意架构中所已知的。

存储器102被示出为包含在计算机100上实现被逻辑分区的计算环境所使用的主要软件组件和资源,包括由分区管理器或管理程序136管理的多个逻辑分区134-1和134-2以及物理踪迹日志138。下文将参考图2进一步描述存储器102的内容。

尽管将分区134-1和134-2、管理程序136和物理踪迹日志138示为被包含在计算机系统100的存储器102中,在其他实施方式中,它们中的一些或全部可以在不同的计算机系统上,例如在服务器计算机系统132上,并且可以例如通过网络130被远程访问。此外,计算机系统100可以使用虚拟寻址机制,其允许计算机系统100的程序以这样的方式运转:它们似乎只访问大的单个存储实体,而不是访问多个较小的存储实体。因此,尽管将分区134-1和134-2、管理程序136和物理踪迹日志138示为驻留在存储器102中,这些元素不必同时全部完整地包含在相同的存储设备中。

每个逻辑分区134-1和134-2使用相应的操作系统141-1和142-2,它们按照与非分区的计算机的操作系统相同的方式来控制其相应的逻辑分区134-1和134-2的主要操作。例如,可以使用可从国际商业机器公司获得的i5OS操作系统来实现每个操作系统142-1和142-2,但是在其他实施方式中,操作系统142-1和142-2可以是Linux、AIX、UNIX、Microsoft Windows、或任何适当的操作系统。而且,操作系统142-1和142-2中的一些或全部可以彼此相同或不同。如本领域公知的,任意数目的逻辑分区可以得到支持,并且因为向计算机100中添加或从中删除分区,所以驻留在计算机100中的逻辑分区的数目可以随时动态改变。

每个逻辑分区134-1和134-2在存储器102中的分离的或者说独立的存储空间中执行,因此从在相应的逻辑分区中执行的每个应用141-1和141-2的角度看,这样的每个逻辑分区与独立的、非分区的计算机几乎相同地进行操作。同样,用户应用通常不需要在分区环境中使用的任何特殊配置。图1中所示的每个应用141-1和141-2可以相同,或者它们中的一些或全部可以彼此不同。此外,分区134-1和134-2中的每一个可以包括多个应用141-1和141-2。分区134-1和134-2还包括提取器144、输出器146、以及相应的虚拟踪迹日志输出器缓冲器140-1和140-2。

提取器144和输出器146包括能够在处理器101上执行的指令或能够被处理器101上执行的指令所解释的声明,用以执行下文参考图5进一步描述的功能。在另一种实施方式中,提取器144和输出器146可以以微码或固件实现。在另一种实施方式中,提取器144和输出器146可以通过逻辑门和/或其他适当的硬件技术以硬件实现。

假设逻辑分区134-1和134-2是分离的虚拟计算机,可能期望支持分区间通信,以便允许逻辑分区134-1和134-2相互通信,就像逻辑分区134-1和134-2在分离的物理机器上一样。同样,在一些实现中,可能期望支持与管理程序136相关联的未示出的虚拟局域网络(LAN)适配器,以允许逻辑分区134-1和134-2通过例如以太网协议的联网协议相互通信。在另一种实施方式中,虚拟网络适配器可以桥接到物理适配器,例如网络接口适配器114。与本发明的实施方式一致,其他支持分区之间通信的方式也可以得到支持。

尽管将管理程序136示为在存储器102之内,在其他实施方式中,管理程序136的全部或部分可以以固件或硬件实现。管理程序136可以执行例如页表管理的低层分区管理功能,并且还可以执行较高层分区管理功能,例如创建和删除分区,并发I/O维护,以及将处理器、存储器和其他硬件或软件资源分配给各个分区134-1和134-2。

管理程序136将计算机100中的可用资源的部分静态地和/或动态地分配给每个逻辑分区134-1和134-2。例如,可以将一个或多个处理器101和/或一个或多个硬件线程、以及可用存储空间的部分分配给每个逻辑分区134-1和134-2。逻辑分区134-1和134-2可以共享特定的软件和/或硬件资源,例如处理器101,从而使给定的资源可由多于一个的逻辑分区使用。在可选方案中,可以将软件和硬件资源每次只分配给一个逻辑分区。管理程序136通过将虚拟处理器148分配给分区134-1和134-2将物理处理器101分配给逻辑分区134-1和134-2。虚拟处理器148代表物理处理器101A、101B、101C和/或101D的时间片的部分分配,并且指派或分配给特定虚拟处理器的具体物理处理器可以随时间改变。虚拟处理器148包括卷绕(wrapping)虚拟踪迹日志150,其包括关于物理处理器向被分配给逻辑分区134-1和134-2的虚拟处理器的分配的数据。

通常为逻辑分区134-1和134-2中的一个或多个分配附加的资源,例如海量存储器、备份存储器、用户输入、网络连接、以及用于它们的I/O适配器。可以按照多种方式来分配资源,例如,在逐个总线的基础上,或在逐个资源的基础上,其中多个逻辑分区共享相同总线上的资源。一些资源甚至可以每次被分配给多个逻辑分区。这里所标识的资源仅是示例,可以使用能够分配的任何适当资源。

存储器总线103提供数据通信路径,以用于在处理器101、主存储器102和I/O总线接口单元105之间传递数据。I/O总线接口单元105还与系统I/O总线104相耦合,以用于传送去往和来自各种I/O单元的数据。I/O总线接口单元105通过系统I/O总线104与多个I/O接口单元111、112、113、114通信,该I/O接口单元也称为I/O处理器(IOP)或I/O适配器(IOA)。系统I/O总线104可以是例如工业标准PCI(外围组件互连)总线,或是任何其他适当的总线技术。

I/O接口单元支持与多个存储设备和I/O设备的通信。例如,终端接口单元111支持一个或多个用户终端121的附接。在各种实施方式中,用户终端121可以包括用户输出设备(例如视频显示设备、扬声器和/或电视机)和用户输入设备(例如,键盘、鼠标、小键盘、触摸板、轨迹球、按钮、光笔或其他指点设备)。存储器接口单元112支持一个或多个直接访问存储设备(DASD)125、126和127(其通常是旋转磁盘驱动器存储设备,尽管它们可选地可以是其他设备,包括被配置为对于主机而言作为单个大容量存储设备出现的磁盘驱动器阵列)的附接。主存储器102的内容可以存储到直接访问存储设备125、126和127上并可从其上获取。

I/O设备接口113提供与各种其他输入/输出设备或其他类型设备(例如打印机或传真机)中的任何设备的接口,但是在其他实施方式中,可以存在多种其他这样的设备,这些设备可以是不同类型的。网络接口114提供从计算机系统100到其他数字设备和计算机系统的一个或多个通信路径;这样的通信路径例如可以包括一个或多个网络130。

尽管图1中将存储器总线103示为在处理器101、主存储器102和I/O总线接口105之间提供直接通信路径的相对简单的单个总线结构,实际上,存储器总线103可以包括多个不同的总线或通信路径,其可被布置为各种形式中的任意形式,例如层级中的点对点链路、星型或web配置、多层级总线、并行和冗余通路、或任何其他适当类型的配置。此外,尽管I/O总线接口105和I/O总线104示为各个单独的单元,实际上,计算机系统100可以包含多个I/O总线接口单元105和/或多个I/O总线104。尽管示出了将系统I/O总线104与接入各种I/O设备的各种通信路径分离开的多个I/O接口单元,但是在其他实施方式中,I/O设备中的一些或全部直接连接至一个或多个系统I/O总线。

在各种实施方式中,计算机系统100可以是多用户“大型机”计算机系统、单用户系统、或具有很少或没有直接用户接口而是从其他计算机系统(客户端)接收请求的服务器或类似设备。在其他实施方式中,计算机系统100可以实现为个人计算机、便携式计算机、膝上型计算机或笔记本计算机、PDA(个人数字助理)、平板式计算机、掌上计算机、电话、寻呼机、汽车、电话会议系统、器件、或任何其他适当类型的电子设备。

网络130可以是任何适合的网络或网络的结合,并且可以支持适于去往/来自计算机系统100和服务器132的数据通信和/或代码通信的任何适当协议。在各种实施方式中,网络130可以代表与计算机系统100直接或间接连接的存储设备或存储设备的结合。在一种实施方式中,网络130可以支持无限带宽架构。在另一种实施方式中,网络130可以支持无线通信。在另一种实施方式中,网络130可以支持例如电话线或缆线的硬连线通信。在另一种实施方式中,网络130可以支持以太网IEEE(国际电子电气工程师协会)802.3x规范。在另一种实施方式中,网络130可以是互联网或者可以支持IP(互联网协议)。

在另一种实施方式中,网络130可以是局域网(LAN)或广域网(WAN)。在另一种实施方式中,网络130可以是热点服务提供者网络。在另一种实施方式中,网络130可以是内联网。在另一种实施方式中,网络130可以是GPRS(通用分组无线服务)网络。在另一种实施方式中,网络130可以是FRS(家庭无线服务)网络。在另一种实施方式中,网络130可以是任何适当的蜂窝数据网络或基于小区的无线网络技术。在另一种实施方式中,网络130可以是IEEE 802.11B无线网络。在又一种实施方式中,网络130可以是任何适合的网络或网络的结合。尽管只示出了一个网络130,在其他实施方式中,可以给出任意数目(包括0)的(相同或不同类型的)网络。

图1旨在在高层次上描述计算机系统100、网络130以及服务器132的代表性的主要组件(其可以包括先前针对计算机系统100所描述的任意或全部元件);各个组件可以具有比图1所示更高的复杂性;可以存在不同于或除了图1所示组件之外的组件;并且这些组件的数量、类型和配置可以改变。在此公开了这样的附加复杂性和附加变形的若干特定示例;应当理解,这些仅仅是示例方式,并不一定仅有这样的变形。

图1中所示的各种软件组件以及实现本发明各种实施方式的软件组件可以通过多种方式实现,包括使用各种计算机软件应用、例程、组件、程序、对象、模块、数据结构等,以下称之为“计算机程序”或简称为“程序”。计算机程序通常包括在不同的时间驻留在计算机系统100中的各种存储器和存储设备中的一个或多个指令,当其被计算机系统100的一个或多个处理器101读取和执行时,使得计算机系统100执行完成包含本发明实施方式的各种方面的步骤或元素所需的步骤。

此外,尽管上文和下文是在功能完善的计算机系统中描述本发明的实施方式,但是本发明的各种实施方式能够以多种形式作为程序产品而被分发,并且本发明不论用以实际执行分发的信号承载介质的特定类型而等同地应用。限定此实施方式功能的程序可以经由多种信号承载介质被递送到计算机系统100,其中该信号承载介质包括但不限于:

(1)永久存储在不可重写存储介质上的信息,所述不可重写存储介质例如附接至计算机系统的或计算机系统之内的只读存储器设备,例如CD-ROM、DVD-R或者DVD+R;

(2)存储在可重写存储介质上的可变信息,所述可重写存储介质例如硬盘驱动器(例如,DASD 125、126或127)、CD-RW、DVD-RW、DVD+RW、DVD-RAM或磁盘;或

(3)通过通信介质传送的信息,诸如通过包括无线通信的计算机网络或电话网络,例如网络130。

当这样的信号承载介质携带指示本发明功能的机器可读指令时,其代表本发明的实施方式。

本发明的实施方式还可以作为与客户公司、非赢利性组织、政府实体、内部组织结构等的服务协议的一部分进行递送。这些实施方式的方面可以包括:将计算机系统配置为执行在此描述的一些或全部方法,以及部署实现在此描述的一些或全部方法的计算服务(例如,计算机可读代码、硬件和web服务)。这些实施方式的方面还可以包括:分析客户公司、响应于该分析而创建建议、生成计算机可读代码以实现该建议的部分、将该计算机可读代码集成到现有的处理、计算机系统和计算基础设施中,度量在此描述的方法和系统的使用、将费用分配给用户、以及针对用户对这些方法和系统的使用而为用户计费。

此外,在本发明的特定实施方式中,可以基于这样的应用来标识此后描述的各种程序,其中所述程序是针对所述应用而实现的。但是,此后使用任何特定程序术语只是为了方便,因此不应将本发明的实施方式限于仅在这样的术语所标识和/或隐含的任何特定应用中使用。

图1中所示的示例性环境不旨在限制本发明。实际上,在不脱离本发明范围的情况下,可以使用其他可选的硬件和/软件环境。

图2描述了根据本发明的实施方式的存储器102的示例内容的框图。存储器102包括逻辑分区134-1和134-2、管理程序136以及物理日志138。逻辑分区134-1包括:虚拟踪迹日志输出器缓冲器140-1、应用141-1、操作系统142-1、提取器144、以及输出器146。逻辑分区134-2包括:虚拟踪迹日志输出器缓冲器140-2、应用141-2、操作系统142-2、提取器144、输出器146、转换器205、以及虚拟踪迹日志转换器缓冲器206。在其他实施方式中,转换器205和虚拟踪迹日志转换器缓冲器206可以呈现在任意逻辑分区中、可以是管理程序136的一部分、或者可以是分离的实体。转换器205包括能够在处理器101上执行的指令或者能够被处理器101上执行的指令所解释的声明,用以执行下文参考图6进一步描述的功能。在另一种实施方式中,转换器205可以以微码或固件实现。在另一种实施方式中,转换器205可以通过逻辑门和/或其他适当的硬件技术以硬件实现。

管理程序136包括虚拟处理器148-1、148-2、148-3和148-4。每个虚拟处理器包括相应的卷绕虚拟踪迹日志150-1、150-2、150-3和150-4。管理程序136还包括逻辑210。逻辑210包括能够在处理器101上执行的指令或者能够被处理器101上执行的指令所解释的声明,用以执行下文参考图5进一步描述的功能。在另一种实施方式中,逻辑210可以以微码或固件实现。在另一种实施方式中,逻辑210可以通过逻辑门和/或其他适当的硬件技术以硬件实现。

将特定的虚拟处理器分配给特定的逻辑分区,使得从逻辑分区的角度看,逻辑分区具有对其专用虚拟处理器的独占使用,分区的程序在该虚拟处理器上执行,并且虚拟处理器不被其他逻辑分区共享。但是,虚拟处理器实际上代表一个或多个物理处理器的时间片的部分分配,并且这些物理处理器到虚拟处理器的部分分配可以随时间而改变的。管理程序136将虚拟处理器分配给分区,并且将虚拟处理器分派给物理处理器101A、101B、101C和101D。管理程序136可以随时间改变物理处理器到虚拟处理器的分配。当管理程序136分配虚拟处理器并将虚拟处理器分派给物理处理器时,管理程序136将描述该分配和分派的数据写入各个卷绕虚拟踪迹日志中。

图3A描述了根据本发明的实施方式的示例虚拟踪迹日志转换器缓冲器206-1的框图。虚拟踪迹日志转换器缓冲器206-1与虚拟处理器148-1相关联,这意味着虚拟踪迹日志转换器缓冲器206-1包括借助于虚拟踪迹日志输出器缓冲器140-1从与同一虚拟处理器148-1相关联的卷绕虚拟踪迹日志150-1处复制的记录的合并。虚拟踪迹日志转换器缓冲器206-1被分配给分区134-1,这意味着虚拟踪迹日志转换器缓冲器206-1包括描述物理处理器101到虚拟处理器148-1的分配的记录,其中虚拟处理器148-1被分配给分区134-1,并且分区134-1的程序在虚拟处理器148-1上执行。虚拟踪迹日志转换器缓冲器206-1是虚拟踪迹日志转换器缓冲器206的示例。虚拟踪迹日志转换器缓冲器206-1包括示例记录302、304、306、308和310,每个记录包括示例执行时间戳字段324、物理处理器标识符字段326、等待时间戳字段328、等待时间增量字段330、以及分派原因字段332。

虚拟踪迹日志转换器缓冲器206-1中的执行时间戳字段324指定开始时间,在该开始时间(由管理程序136)为虚拟处理器148-1分配物理处理器,也即虚拟处理器148-1被分派给物理处理器,并且逻辑分区134-1的程序(例如,输出器146、提取器144、操作系统142-1和/或应用141-1)开始在虚拟处理器148-1上执行,也即程序开始在被分配给虚拟处理器148-1的物理处理器326上执行。在每个记录中,执行时间戳字段324包括相同记录的等待时间戳字段328的内容和等待时间增量字段330的内容之和。

虚拟踪迹日志转换器缓冲器206-1中的物理处理器标识符字段326指定在执行时间戳字段324中所指示的时间处分配给虚拟处理器148-1(被分派给物理处理器的虚拟处理器148-1)的物理处理器101A、101B、101C或101D。例如,物理处理器标识符字段326中的值“A”可以指定物理处理器101A,并且值“B”可以指定物理处理器101B,但是在其他实施方式中,可以使用任何适当的名称、标识或索引。

虚拟踪迹日志转换器缓冲器206-1中的等待时间戳字段328指定虚拟处理器148-1开始等待的时间,也即这样的开始时间,虚拟处理器148-1在该开始时间不具有被分配的物理处理器(未被分派),从而虚拟处理器148-1等待物理处理器到该虚拟处理器148-1的分配。在一种实施方式中,等待时间戳字段328存储以日期、天、年、小时、分钟、秒、毫秒、微秒、任意其他适当的日期或其任意组合为单位的时间数据。

虚拟踪迹日志转换器缓冲器206-1中的等待时间增量字段330指定虚拟处理器148-1等待物理处理器分配的时间量,也即虚拟处理器148-1等待被分派给物理处理器的时间量。

虚拟踪迹日志转换器缓冲器206-1中的分派原因字段332指定物理处理器(由物理处理器标识符326指示)在执行时间戳324所指示的时间被分配给虚拟处理器148-1、并开始执行逻辑分区134-1的指令的原因(也即,虚拟处理器148-1在执行时间324被分派的原因)。示例分派原因(由“先占”指示)是:虚拟处理器148-1从先占条件返回之后被分派,也即,在虚拟处理器148-1具有其对被其他虚拟处理器先占的物理处理器的分配之后,该虚拟处理器148-1被分派。另一个示例分派原因(由“超时”指示)是:虚拟处理器148-1被分派,以便处理定时器期满。另一个示例分派原因(由“外部中断”指示)是:虚拟处理器148-1被分派,以便处理外部中断情况。另一个示例分派原因(由“lpprod”指示)是:虚拟处理器148-1被分派是由于来自逻辑分区的、用于强制该虚拟处理器148-1执行该逻辑分区的指令(也即,用于物理处理器到虚拟处理器148-1的分配)的请求。另一个示例分派原因是:虚拟处理器148-1被分派是由于另一个逻辑分区通过信号向此分区中的虚拟处理器148-1发送事件。另一个示例分派原因是:虚拟处理器148-1被分派是由于页面错误的完成。另一个示例分派原因是:虚拟处理器148-1被分派,以便在分区中执行初始程序载入或其他初始化序列。另一个示例分派原因是:虚拟处理器148-1被分派,以便处理分区的终止。另一个示例分派原因是:虚拟处理器148-1被分派是由于出现释放块的条件。在其他实施方式中,可以使用将虚拟处理器分派(分配)给物理处理器的任何原因。

图3B描述了根据本发明的实施方式的另一个示例虚拟踪迹日志转换器缓冲器206-2的框图。虚拟踪迹日志转换器缓冲器206-2与虚拟处理器148-2相关联,这意味着虚拟踪迹日志转换器缓冲器206-2包括借助于虚拟踪迹日志输出器缓冲器140-1从卷绕虚拟踪迹日志150-2处复制的记录的合并。虚拟踪迹日志转换器缓冲器206-2与分区134-1相关联,这意味着虚拟踪迹日志转换器缓冲器206-2包括描述物理处理器101到虚拟处理器148-2的分配的记录,其中分区134-1的程序在虚拟处理器148-2上执行。虚拟踪迹日志转换器缓冲器206-2是虚拟踪迹日志转换器缓冲器206的示例。虚拟踪迹日志转换器缓冲器206-2包括示例记录340、342、344、346和348,每个记录包括示例执行时间戳字段324、物理处理器标识符字段326、等待时间戳字段328、等待时间增量字段330、以及分派原因字段332。

虚拟踪迹日志转换器缓冲器206-2中的执行时间戳字段324指定开始时间,在该开始时间(由管理程序136)为虚拟处理器148-2分配物理处理器,并且逻辑分区134-1的程序(例如,输出器146、提取器144、操作系统和/或应用)开始在虚拟处理器148-2上执行,也即程序开始在被分配给虚拟处理器148-2的物理处理器上执行。对于虚拟踪迹日志转换器缓冲器206-2中的每个记录,执行时间戳字段324包括相同记录中等待时间戳字段328的内容和等待时间增量字段330的内容之和。

虚拟踪迹日志转换器缓冲器206-2中的物理处理器标识符字段326指定在执行时间戳字段324中所指示的时间处分配给虚拟处理器148-2的物理处理器101A、101B、101C或101D。

虚拟踪迹日志转换器缓冲器206-2中的等待时间戳字段328指定虚拟处理器148-2开始等待的时间,也即这样的开始时间,虚拟处理器148-2在该开始时间不具有被分配的物理处理器,从而虚拟处理器148-2等待物理处理器到该虚拟处理器148-2的分配。在一种实施方式中,等待时间戳字段328存储以日期、小时、分钟、秒、毫秒、微秒、任意其他适当的日期或其任意组合为单位的数据。

虚拟踪迹日志转换器缓冲器206-2中的等待时间增量字段330指定虚拟处理器148-2等待物理处理器分配的时间量。

虚拟踪迹日志转换器缓冲器206-2中的分派原因字段332指定物理处理器(由物理处理器标识符326指示)在执行时间戳324所指示的时间处被分配给虚拟处理器148-2、并开始执行逻辑分区134-1的指令的原因(也即,虚拟处理器148-2在执行时间324被分派的原因)。

图3C描述了根据本发明的实施方式的另一个示例虚拟踪迹日志转换器缓冲器206-3的框图。虚拟踪迹日志转换器缓冲器206-3与虚拟处理器148-3相关联,这意味着虚拟踪迹日志转换器缓冲器206-3包括借助于虚拟踪迹日志输出器缓冲器140-2从卷绕虚拟踪迹日志150-3处复制的记录的合并。虚拟踪迹日志转换器缓冲器206-3与分区134-2相关联,这意味着虚拟踪迹日志转换器缓冲器206-3包括描述物理处理器101到虚拟处理器148-3的分配的记录,其中分区134-2的程序在虚拟处理器148-3上执行。虚拟踪迹日志转换器缓冲器206-3是虚拟踪迹日志转换器缓冲器206的示例。虚拟踪迹日志转换器缓冲器206-3包括示例记录350、352、354、356和358,每个记录包括示例执行时间戳字段324、物理处理器标识符字段326、等待时间戳字段328、等待时间增量字段330、以及分派原因字段332。

虚拟踪迹日志转换器缓冲器206-3中的执行时间戳字段324指定开始时间,在该开始时间(由管理程序136)为虚拟处理器148-3分配物理处理器,并且逻辑分区134-2的程序(例如,输出器146、提取器144、操作系统和/或应用)开始在虚拟处理器148-3上执行,也即程序开始在被分配给虚拟处理器148-3的物理处理器上执行。对于虚拟踪迹日志转换器缓冲器206-3中的每个记录,执行时间戳字段324包括相同记录中等待时间戳字段328的内容和等待时间增量字段330的内容之和。

虚拟踪迹日志转换器缓冲器206-3中的物理处理器标识符字段326指定在执行时间戳字段324中所指示的时间处分配给虚拟处理器148-3的物理处理器101A、101B、101C或101D。

虚拟踪迹日志转换器缓冲器206-3中的等待时间戳字段328指定虚拟处理器148-3开始等待的时间,也即这样的开始时间,虚拟处理器148-3在该开始时间不具有被分配的物理处理器,从而虚拟处理器148-3等待物理处理器到该虚拟处理器148-3的分配。在一种实施方式中,等待时间戳字段328存储以日期、小时、分钟、秒、毫秒、微秒、任意其他适当的日期或其任意组合为单位的数据。

虚拟踪迹日志转换器缓冲器206-3中的等待时间增量字段330指定虚拟处理器148-3等待物理处理器分配的时间量。

虚拟踪迹日志转换器缓冲器206-3中的分派原因字段332指定物理处理器(由物理处理器标识符326指示)在执行时间戳324所指示的时间处被分配给虚拟处理器148-3、并开始执行逻辑分区134-2的指令的原因(也即,虚拟处理器148-3在执行时间324被分派的原因)。

图3D描述了根据本发明的实施方式的另一个示例虚拟踪迹日志转换器缓冲器206-4的框图。虚拟踪迹日志转换器缓冲器206-4与虚拟处理器148-4相关联,这意味着虚拟踪迹日志转换器缓冲器206-4包括借助于虚拟踪迹日志输出器缓冲器140-2从卷绕虚拟踪迹日志150-4处复制的记录的合并。虚拟踪迹日志转换器缓冲器206-4与分区134-2相关联,这意味着虚拟踪迹日志转换器缓冲器206-4包括描述物理处理器101到虚拟处理器148-4的分配的记录,其中分区134-2的程序在虚拟处理器148-4上执行。虚拟踪迹日志转换器缓冲器206-4是虚拟踪迹日志转换器缓冲器206的示例。虚拟踪迹日志转换器缓冲器206-4包括示例记录370、372、374、376和380,每个记录包括示例执行时间戳字段324、物理处理器标识符字段326、等待时间戳字段328、等待时间增量字段330、以及分派原因字段332。

虚拟踪迹日志转换器缓冲器206-4中的执行时间戳字段324指定开始时间,在该开始时间(由管理程序136)为虚拟处理器148-4分配物理处理器,并且逻辑分区134-2的程序(例如,输出器146、提取器144、操作系统和/或应用)开始在虚拟处理器148-4上执行,也即程序开始在被分配给虚拟处理器148-4的物理处理器上执行的。执行时间戳字段324包括等待时间戳字段328的内容和等待时间增量字段330的内容之和。

虚拟踪迹日志转换器缓冲器206-4中的物理处理器标识符字段326指定在执行时间戳字段324中所指示的时间处分配给虚拟处理器148-4的物理处理器101A、101B、101C或101D。

虚拟踪迹日志转换器缓冲器206-4中的等待时间戳字段328指定虚拟处理器148-4开始等待的时间,也即这样的开始时间,虚拟处理器148-4在该开始时间不具有被分配的物理处理器,从而虚拟处理器148-4等待物理处理器到该虚拟处理器148-4的分配。在一种实施方式中,等待时间戳字段328存储以日期、小时、分钟、秒、毫秒、微秒、任意其他适当的日期或其任意组合为单位的数据。

虚拟踪迹日志转换器缓冲器206-4中的等待时间增量字段330指定虚拟处理器148-4等待物理处理器分配的时间量。

虚拟踪迹日志转换器缓冲器206-4中的分派原因字段332指定物理处理器(由物理处理器标识符326指示)在执行时间戳324所指示的时间处被分配给虚拟处理器148-4、并开始执行逻辑分区134-2的指令的原因(也即,虚拟处理器148-4在执行时间324被分派的原因)。

图4A描述了根据本发明的实施方式的示例物理踪迹日志138-1的框图。如下文参考图6进一步描述的,转换器205根据虚拟踪迹日志转换器缓冲器206-1、206-2、206-3和206-4创建物理踪迹日志138-1。物理踪迹日志138-1与物理处理器101A相关联,其中物理处理器101A在图3A、图3B、图3C和图3D的相应的虚拟踪迹日志转换器缓冲器206-1、206-2、206-3和206-4的记录的物理处理器标识符字段326中被命名为“A”。物理踪迹日志138-1可以包括描述物理处理器A101A到任何虚拟处理器以及到任何分区的分配的记录。物理踪迹日志138-1是物理踪迹日志138的示例。

物理踪迹日志138-1包括示例记录402、404、406、408、410、412、414和416,每个记录包括示例开始时间戳字段430、分区标识符字段432、虚拟处理器标识符字段434、分派原因字段436、虚拟处理时间字段438、以及延迟字段440。每个物理踪迹日志描述虚拟处理器之一到物理处理器A101A的分派。该分派可以针对分配给任何分区的任何虚拟处理器。

物理踪迹日志138-1中的开始时间戳字段430指定开始时间,在该开始时间(由管理程序136)将物理处理器A 101A分配给虚拟处理器标识符434所指定的虚拟处理器(148-1、148-2、148-3或148-4),并且由逻辑分区标识符432所指定的逻辑分区134-1或134-2的程序(例如,输出器146、提取器144、操作系统和/或应用)开始在虚拟处理器标识符434所指定的虚拟处理器上执行,也即该程序开始在分配给该虚拟处理器的物理处理器A101A上执行。

物理踪迹日志138-1中的分派原因字段436指定在由开始时间戳430所指示的时间处将物理处理器A 101A分配给由虚拟处理器标识符434所指定的虚拟处理器的原因(也即,由虚拟处理器标识符434所指定的虚拟处理器在开始时间430被分派的原因)。

物理踪迹日志138-1中的虚拟处理时间字段438指定在开始时间戳430所指示的时间之后将物理处理器A 101A分配给虚拟处理器标识符434所指定的虚拟处理器的时间量。延迟字段440指示在虚拟处理时间438期满之后物理处理器A 101A未被分配给任何虚拟处理器的时间量。代替地,在延迟时段440中将物理处理器101A分配给管理程序136。延迟时段440因此指示管理程序136分派虚拟处理器所需的开销量。因此,对于物理踪迹日志138-1中的每个记录,从开始时间430开始将物理处理器A 101A分配给分区432中的虚拟处理器434,并且该分配持续了虚拟处理时段438,此后在延迟时段440中处理器A未被分配。

例如,如记录402所示,从时间“12301000”处开始将物理处理器A 101A分配给分区A 134-1中的虚拟处理器A 148-1,持续时间为虚拟处理时段438“2000”,此后在延迟时段440“10”中,处理器A 101A未分配给任何虚拟处理器。记录402中所指示的分配原因436是:物理处理器A101A先前被分配给虚拟处理器434,但是该分配被物理处理器A101向其他虚拟处理器的分配先占,并且向其他虚拟处理器的分配现在已经结束。

图4B描述了根据本发明的实施方式的另一示例物理踪迹日志138-2的框图。如下文参考图6进一步描述的,转换器205根据虚拟踪迹日志转换器缓冲器206-1、206-2、206-3和206-4创建物理踪迹日志138-2。物理踪迹日志138-1与物理处理器101B相关联,其中物理处理器101B在图3A、图3B、图3C和图3D的相应的虚拟踪迹日志转换器缓冲器206-1、206-2、206-3和206-4的记录的物理处理器标识符字段326中被命名为“B”。物理踪迹日志138-2可以包括描述物理处理器B101B到任何虚拟处理器以及到任何分区的分配的记录。物理踪迹日志138-2是物理踪迹日志138的示例。

物理踪迹日志138-2包括示例记录450、452、454、456、458、460、462和464,每个记录包括示例开始时间戳字段430、分区标识符字段432、虚拟处理器标识符字段434、分派原因字段436、虚拟处理时间字段438、以及延迟字段440。每个物理踪迹日志描述虚拟处理器之一到物理处理器B101B的分派。

物理踪迹日志138-2中的开始时间戳字段430指定开始时间,在该开始时间(由管理程序136)将物理处理器B 101B分配给由虚拟处理器标识符434所指定的虚拟处理器(148-1、148-2、148-3或148-4),并且由逻辑分区标识符432所指定的逻辑分区134-1或134-2的程序(例如,输出器146、提取器144、操作系统和/或应用)开始在虚拟处理器标识符434所指定的虚拟处理器上执行,也即该程序开始在分配给该虚拟处理器的物理处理器B 101B上执行。

物理踪迹日志138-2中的分派原因字段436指定在由开始时间戳430所指示的时间处将物理处理器B 101B分配给由虚拟处理器标识符434所指定的虚拟处理器的原因(也即,由虚拟处理器标识符434所指定的虚拟处理器在开始时间430被分派的原因)。

物理踪迹日志138-2中的虚拟处理时间字段438指定在开始时间戳430所指示的时间之后将物理处理器B 101B分配给虚拟处理器标识符434所指定的虚拟处理器的时间量。延迟字段440指示在虚拟处理器时间期满之后物理处理器B 101B未被分配给任何虚拟处理器的时间量。因此,对于物理踪迹日志138-2中的每个记录,从开始时间430开始将物理处理器B 101B分配给分区432中的虚拟处理器434,并且该分配持续了虚拟处理时段438,此后在延迟时段440中处理器B 101B未被分配。

例如,如记录450所示,从时间“12302000”处开始将物理处理器B 101B分配给分区A 134-1中的虚拟处理器B 148-2,持续时间为虚拟处理时段438“1000”,此后在延迟时段440“20”中,处理器B101B未被分配给任何虚拟处理器。记录450中所指示的分配原因436是:将虚拟处理器148-1分派给物理处理器B 101B,以便处理定时器期满。

在一种实施方式中,物理踪迹日志138-1和138-2可以用来确定物理处理器是否被管理程序136和分区有效使用。例如,物理踪迹日志138-1和138-2可以用来确定特定物理处理器是否执行短时期(通过检查虚拟处理时间438的量)以及是否在不同的逻辑分区432和虚拟处理器434之间频繁地切换分配(通过在各个记录中检查分区432和虚拟处理器434的值序列)。在这种情况下,物理处理器可能将其大量的周期花费在将存储器的内容载入高速缓存和存储目录的反复进行(thrashing)上,而没有留下足够的时间来执行有用工作,这导致了下降的性能。物理踪迹日志138-1和138-2还可以用来确定管理程序在其对虚拟处理器的分派期间的开销(延迟)。

仅仅检查虚拟踪迹日志时难以确定物理处理器是否执行短时期,因为它们的数据是从虚拟处理器的角度进行组织的,从而物理处理器分配信息散布在多个虚拟踪迹日志中,并且因为单个虚拟踪迹日志可以指定虚拟处理器到多个物理处理器的分配。当仅检查虚拟踪迹日志时也难以确定管理程序延迟,因为虚拟踪迹日志没有指定管理程序延迟,并且因为确定它们的管理程序延迟所需的信息可能散布在多个日志的多个记录中。该困难在具有较大数目的逻辑分区和物理处理器的计算机系统中加剧。例如,一些计算机系统可以具有64个或更多的逻辑分区以及32个或更多的处理器。使用物理踪迹日志比较容易,因为单个物理踪迹日志包括单个物理处理器的所有分配信息,其包括用于多个分区的多个虚拟处理器到由物理踪迹日志所代表的单个物理处理器的分派。

图5描述了根据本发明的实施方式的用于提取数据并将数据输出到虚拟踪迹日志中的示例处理的流程图。控制开始于方框500。控制继而继续到方框505,其中管理程序136激活分区。激活分区包括:管理程序136将存储器、虚拟处理器以及其他资源分配给分区;将物理处理器分配给分区所使用的至少一个虚拟处理器(将虚拟处理器分派给物理处理器);以及开始在该虚拟处理器上(在虚拟处理器被分派到的物理处理器上)执行分区的操作系统。

控制接着继续到方框510,在此,已激活分区的应用和操作系统以及管理程序136在各个虚拟和物理处理器上执行一段时间。如前所述,由于分派原因332和436,管理程序在该时段期间可以改变物理处理器到虚拟处理器的分配。

控制接着继续到方框515,在此,管理程序136根据虚拟处理器到物理处理器的分派并根据分区的程序执行来提取数据,并将提取的数据保存到卷绕虚拟轨迹日志150中。例如,响应于管理程序136将物理处理器从虚拟处理器解除分配,管理程序136在卷绕虚拟踪迹日志150中创建记录,并将解除分配的时间存储在等待时间戳中。稍后,响应于将物理处理器分配给该虚拟处理器(将虚拟处理器分派给物理处理器),管理程序136找到最近添加的记录并将等待时间增量添加到该记录中,其指示解除分配和后续分配(虚拟处理器到物理处理器的后续分派)之间的时间量。管理程序136还存储虚拟处理器被分派的原因以及虚拟处理器现在被分派到的物理处理器的标识符。

控制接着继续到方框520,在此,提取器144从卷绕虚拟踪迹日志150中提取数据(该记录包括物理处理器标识符、等待时间戳、等待时间增量、以及分派原因)并将所提取的数据存储在虚拟踪迹日志输出器缓冲器140-1和/或140-2中。控制接着继续到方框525,在此,输出器146从虚拟踪迹日志输出器缓冲器140-1和/或140-2中提取(读取)数据,将数据转化为独立于操作系统的形式,并将数据发送给转换器205。控制接着继续到方框526,在此,转换器205接收来自输出器146的数据,并将数据(物理处理器标识符326、等待时间戳328、等待时间增量330、以及分派原因332)写入与相应的虚拟处理器相关联的虚拟踪迹日志转换器缓冲器206-1、206-2、206-3和206-4中的记录中。

控制接着继续到方框530,在此,管理程序136确定分区是否被去激活。如果在方框530的确定为真,则分区被去激活,因此控制继续到方框599,图5的逻辑在此返回。

如果方框530的确定为假,则不对分区去激活,因此控制返回方框510,在此,如前所述,分区中的应用和操作系统在另一时间段中执行。

图6描述了根据本发明的实施方式的用于将虚拟踪迹日志转换为物理踪迹日志的示例处理的流程图。在一种实施方式中,转换器205周期性地执行图6的处理。在另一种实施方式中,转换器205响应于接收到来自用户终端121或来自程序的请求或命令而执行图6的处理。

控制开始于方框600。控制接着继续到方框650,在此,转换器205从虚拟轨迹日志转换器缓冲器206-1、206-2、206-3和206-4中读取记录。控制接着继续到方框610,在此,对于虚拟踪迹日志转换器缓冲器206-1、206-2、206-3和206-4中的每个记录,转换器205将执行时间戳324设置为相关联的等待时间戳328加上相关联的等待时间增量330。

控制接着继续到方框615,在此,转换器205按照执行时间戳324对在虚拟踪迹日志转换器缓冲器206-1、206-2、206-3和206-4中的记录进行排序,其中按照从最早的执行时间戳到最新的执行时间戳的顺序对虚拟踪迹日志转换器缓冲器206-1、206-2、206-3和206-4中的记录进行排序。

控制接着继续到方框620,在此,转换器205从虚拟踪迹日志转换器缓冲器记录创建物理踪迹日志记录。对于虚拟踪迹日志转换器缓冲器206-1、206-2、206-3和206-4中的每个记录,转换器205选择物理踪迹日志,其该物理踪迹日志与其标识符与虚拟踪迹日志转换器缓冲器的记录中的物理处理器标识符326相匹配(即相同)的物理处理器相关联。转换器205继而在该所选的物理踪迹日志中创建对应的记录,并将新近创建的物理踪迹日志记录中的开始时间戳430设置为来自虚拟踪迹日志转换器缓冲器记录的对应的执行时间戳324。由此,转换器205以排序顺序将执行时间戳复制到所选物理踪迹日志中的记录中,使得所选物理踪迹日志中的记录也按照开始时间戳430从最早时间到最新时间的顺序排序。

例如,虚拟踪迹日志转换器缓冲器206-1中的记录302具有的执行时间戳324为“12301000”以及物理处理器标识符326为“A”,因此转换器205选择物理踪迹日志138-1,因为它与物理处理器A相关联,该物理处理器A的标识符与物理处理器标识符326“A”相匹配。转换器205继而在所选的物理踪迹日志138-1中创建记录402,并将执行时间戳324“12301000”复制到记录402中的开始时间戳430。

控制接着继续到方框625,在此,对于物理踪迹日志138中的每个记录,转换器205将分区标识符432设置为分区,该分区的提取器144将对应记录(该记录的执行时间戳与开始时间戳匹配)写到虚拟踪迹日志输出器缓冲器中;将虚拟处理器标识符434设置为与虚拟踪迹日志转换器缓冲器中的对应记录相关联的虚拟处理器;并且将分派原因436设置为虚拟踪迹日志转换器缓冲器中的对应记录中的分派原因332。例如,转换器205将记录402中的分区标识符432设置为“A”,因为(在虚拟踪迹日志转换器缓冲器206-1(记录402根据该虚拟踪迹日志转换器缓冲器206-1创建,并且该虚拟踪迹日志转换器缓冲器206-1的执行时间戳324与开始时间戳430匹配)中的)对应记录302是由于分区“A”所拥有的虚拟处理器等待物理处理器分配而被创建的。由于分区“A”等待,分区“A”中的提取器144将记录302写到虚拟踪迹日志输出器缓冲器140-1中,其随后被转换并存储到虚拟踪迹日志转换器缓冲器206-1中。作为另一示例,转换器205将来自对应记录302的分派原因332“先占”复制到记录402中的分派原因436中。

控制接着继续到方框630,在此,转换器205将虚拟处理时段438设置为已排序的虚拟踪迹日志转换器缓冲器中的对应记录之后(接下来的最新时间)的记录的等待时间戳328减去开始时间戳430。例如,虚拟踪迹日志中的记录302对应于物理踪迹日志中的记录402,并且在虚拟踪迹日志转换器缓冲器中,记录304按照已排序的顺序在记录302之后。因此,转换器205将记录402中的虚拟处理时段438设置为“2000”,因为记录304中的等待时间戳328是“12303000”,记录402中的开始时间戳430是“12301000”,并且12303000-12301000=2000。

控制接着继续到方框625,在此,对于物理踪迹日志中的每个记录,转换器205将管理程序延迟时间440设置为对应于相同物理处理器的当前物理踪迹日志记录之后(接下来的最新时间)的记录的开始时间戳430减去物理踪迹日志中当前记录的开始时间430减去物理踪迹日志中当前记录中的虚拟处理时段438。以另一种方式解释,在方框635的处理对物理踪迹日志中的所有记录完成之后,每个记录中的开始时间戳430加上虚拟处理器时段438加上延迟440等于后续记录的开始时间戳430。

例如,转换器205将记录402中的延迟440设置为下一个最新记录404的开始时间“12303010”减去记录402中的开始时间“12301000”减去记录402中的虚拟处理时间“2000”,得到结果为“10”。因此,记录402中的开始时间“12301000”加上虚拟处理时间“2000”加上延迟“10”等于下一个最新记录404中的开始时间“12303010”。

控制接着继续到方框640,在此,转换器205可选地在用户终端121上显示物理踪迹日志(响应于接收到命令)。在另一种实施方式中,转换器205将物理踪迹日志存储在存储器或辅助存储库中,或将物理踪迹日志发送给请求程序,例如应用141-1或141-2,或通过网络130发送给服务器132。控制接着继续到方框699,图6的逻辑在此返回。

在上面对本发明示例性实施方式的详细描述中对附图(其中类似的标号代表类似的元素)进行了参考,附图构成了描述的一部分,其中以示例的方式示出了可以实践本发明的特定示例性实施方式。对这些实施方式进行了足够详细地描述,以便使本领域的技术人员能够实践本发明,但是在不脱离本发明范围的情况下,可以使用其他实施方式以及进行逻辑的、机械的、电子的和其他改变。在本说明书中使用的词语“实施方式”的不同实例并非必须是指相同的实施方式,但它们可以是指相同的实施方式。因此,不应对前面的详细描述作限制性理解,并且本发明的范围仅由所附权利要求书限定。

在前面的描述中说明了多个特定细节,以便提供对本发明实施方式的彻底理解。但是,本发明可以在没有这些特定细节的情况下付诸实践。在其他情况下,没有示出公知的电路、结构和技术,以避免使本发明难以理解。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号