用于将格式化数据传送给中央处理器的设备的制作方法

文档序号:7569062阅读:257来源:国知局

专利名称::用于将格式化数据传送给中央处理器的设备的制作方法
技术领域
:本发明涉及到诸如交互式电视传输系统之类的多媒体设备,这种设备用于将具有共同格式的数据传送给以低字节在前(littleendian)或高字节在前(bigendian)方式工作的中央处理器(CPU)。几乎所有的现代计算机系统都包括存储器系统,该存储器系统可为数据字节(8位)提供可分别寻址的存储单元,也就是说,字节是最小的可寻址数据单元。CPU可以把称为字(16位)和/或长型字(32位)的较长数据单元当做相邻存储单元内的字节序列加以提取、处理和存储。CPU使用两种方法来提取和存储存储器中的上述较长数据单元。第一种方法是以存储器地址递增的方式从较长数据单元的最低有效字节到最高有效字节来存储该数据单元。使用这种方法提取和存储较长数据单元的CPU以通常称为低字节在前的方式进行工作。第二种方法是以存储器地址递增的方式从较长数据单元的最高有效字节到最低有效字节来存储该数据单元。使用这种方法提取及存储较长数据单元的CPU以通常称为高字节在前的方式进行工作。表1</tables></tables>表1示出了存储长型字(32位)变量0×12345678的一个实例,该变量同时以低字节在前和高字节在前的方式存储在存储器中存储单元0×1000内。表1所示的系统包括一可按字节寻址的存储器。也就是说,字节是可寻址的最小数据单元,换句话说,每一个字节都存储在一可独立寻址的存储单元内。长型字变量0×12345678存储在始于存储单元0×1000的顺序存储器存储单元内。在低字节在前的系统中,最低有效字节(即0×78)存储在最低的存储器存储单元(即0×1000)内,后续较高的有效字节存储在接续的存储器存储单元内。在高字节在前的系统中,最高有效位(即0×12)存储在最低的存储器存储单元(即0×1000)内,后续较低的有效字节存储在接续的存储器存储单元内。对执行程序的CPU来说,为了正确地执行程序重要的是按适当方式将数据存储在存储器中。在现有的系统中,这并不是一个问题,因为,每一种CPU均包含程序开发工具,以便将源程序(例如汇编语言或高级语言)翻译成该CPU的本机机器码,其中包括将常数或原始变量数据以适当的格式放入存储器中。如果CPU是低字节在前的CPU,则所述工具会以适用于该CPU的低字节在前的格式送出数据。与此相似,如果CPU是高字节在前的CPU,则所述工具会以适用于该CPU的高字节在前的格式送出数据。然而,最近已提出了诸如多媒体(交互式)系统之类的分布系统,其中,将计算机程序从一中央单元传送到若干远程单元。中央单元无法得知远程CPU的情况,尤其是无法得知用于较长数据单元的CPU所使用的字节存储格式(endianformat)。事实上,我们希望有能同时使用两种字节存储格式的CPU来接收并执行所传送的计算机程序。尤其是目前已开发出交互式电视系统,在这种系统中,将视频、音频及计算机程序从一中央单元经由一卫星线路广播给各个用户单元。每一用户单元均包含一电视机,它用以显示所接收的视频及音频信息;以及,一CPU,它用以执行所接收的电视程序信息。不同的用户单元可能带有采用不同字节存储格式的CPU。可以想像,计算机程序的程序代码部分是中间程序代码,用户位置中的CPU所设置的解释器解释这种中间程序代码。然而,每一用户单元中的CPU应带有某些该CPU可以使用的预先写好的例程,以便执行共同的工作。在用户单元中以CPU本机指令码的方式实现这些例程,以便获得最大的执行速度。必须以该CPU的字节存储格式存储这些本机指令码例程所存取的任何数据。一种可能的解决方案是自中央单元传送两种版本的计算机程序一种用于高字节在前的CPU,而第二种则用于低字节在前的CPU。然而,这种解决方法需要经由卫星线路传送两次所有的计算机程序,一次以高字节在前的格式传送,而第二次则以低字节在前的格式传送。这就会浪费带宽。最好是只经由卫星线路传送一次数据,但使该数据可由同时采用高字节在前及低字节在前格式的CPU所使用。依照本发明的原理,一分布式计算机系统包括一中央单元以及多个远程单元。一中央单元计算机系统生成一计算机程序,该计算机程序包含一个或多个模块,每一模块均包含一数据部分,此数据部分包含多个数据单元。每一数据单元是一可寻址的最小数据单元或是一较长的数据单元。每一较长数据单元包含多个可寻址的最小数据单元。上述模块还包含一交换部分,该交换部分含有标识较长数据单元在上述数据部分内的位置的数据。远程单元的计算机系统接收模块且包含一加载器。该加载器交换上述数据部分中较长数据单元的可寻址的最小数据单元。一传输线路将模块从中央单元的计算机系统传送给该远程单元的计算机系统。在附图中图1是一采用了本发明的分布式计算机系统的框图;图2是一存储器的结构图,它说明了数据部分的结构以及另一种相应的交换数据部分;图3是一存储器的结构图,它说明了如何对本发明一个实施例的交换部分进行编码;以及图4是一存储器的结构图,它说明了图3所示编码后的相应交换部分的一个实例。图1是一采用了本发明的分布式计算机系统的框图。在图1中,中央单元包括一计算机系统,它用以准备计算机程序代码及数据,以便传送给各远程单元。上述计算机系统包括一中央处理器(CPU);读/写存储器(RAM);只读存储器(ROM);以及,诸如阴极射线管(CRT)终端机及打印机等输入及输出装置;这些装置以周知的方式通过一系统总线连在一起,但图中并未示出这些装置。所述计算机系统还包括一海量存储装置10,它也以周知的方式进行操作并以周知的方式连接于所说的系统总线。在操作过程中,程序员用计算机系统生成计算机程序,以便将这些程序从中央单元分配给多个远程单元。正如程序开发中所常见的那样,应用程序员以周知的方式用计算机系统生成源文件(未示出),该源文件包括一个或多个源代码和/或控制文件(未示出)。计算机系统中所执行的各种程序(例如编译程序)以周知的方式处理上述源文件,上述各种程序中的每一种程序均能产生中间结果,以便形成准备分配给远程单元的最终模块。海量存储装置10存储有表示程序开发过程中间结果的数据,例如一个或多个诸如目标文件12之类的目标文件;以及,一个或多个诸如模块14之类的程序开发过程的最终模块。在图1中,一后链接器例程20以下文要详细加以说明的方式将目标模块12当作输入并形成作为输出的模块14。举例来说,在一交互式电视系统中,应用程序员利用中央单元中的程序开发工具来开发用以影响观看者与广播电视信号相交互的应用程序。程序开发工具的一个中间结果是目标文件12。目标文件12包括代表可执行代码(未示出)的数据以及一符号表122。符号表122包含有与每个变量名相关的数据、该数据的数据类型以及执行程序时存储所述变量的存储器地址。符号表122还有使该符号表122中各个数据类型与诸如上述字节、字及长型字相关联的信息。后链接器20以周知的方式处理目标文件12中代表可执行代码(未示出)的数据并在模块14的中间代码部分142内产生具有已知结构的中间代码。后链接器20还以周知的方式分析目标模块12的符号表122内的信息并生成一数据部分144,该数据部分包括代表符号表122中数据映像的数据,当在远程单元中执行模块14的代码部分142内所包含的程序代码时,上述代码部分144将要存储在存储器中。模块14(以及所有其它未示出的模块)给由传输线路30传送给多个远程单元。传输线路30包括周知的部件,如连接于中央单元计算机系统的系统总线上的输出适配器、调度器、分组器、多路复用器、射频卫星上行线路系统、卫星脉冲转发器、射频卫星下行线路系统、多路分解器以及与远程单元计算机系统的系统总线相连的输入适配器等(这些部件均未示出)。上述传输线路以周知的方式进行操作,以便将模块14从中央单元按需传送给远程单元。在一交互式电视系统中,中央单元还包含有一电视视频与音频信号源,此信号源伴随着模块14(以及所有未示出的其它模块)所代表的计算机程序。对上述电视视频及音频信号连同模块14一道用加以分组和多路复用以便形成一复合的交互电视信号。将此复合信号经由例如卫星线路广播给所有的远程单元。远程单元则带有接收机,这些接收机包括用于检测/提供上述复合信号的检测器;以及,例如反向传输处理器,这些处理器用于对来自上述电视视频和音频信号的模块进行多路分解。以周知的方式对电视视频和音频信号进行处理并将它们提供给可以利用这些信号的系统。例如,可将电视视频和音频信号提供给用户单元处的电视接收机或VCR(盒式录像机)。此外,远程单元的计算机系统也可以执行模块所代表的计算机程序,并因执行了该程序而形成图像视频信号和声音音频信号。计算机所产生的视频和音频信号可分别与电视视频和音频信号组合在一起以产生组合的电视/计算机多媒体显示信号。此外,用户可(例如通过用遥控器)与正在执行的计算机程序相交互,以便与所显示的多媒体显示信号相交互。交互式电视系统技术的专家知道如何实现上述所有的内容。如前所述,每个远程单元均带有一计算机系统,该系统包括一CPU70、一RAM50、一ROM60以及各种输入输出装置(未示出),所有这些装置均以周知的方式连在一起并以周知的方式工作。一输入装置(未显示)将传输线路30的输出与系统总线连接起来。在CPU上执行的加载器处理例程40控制着上述输入装置的操作。在从传输线路30接收到预定的模块时,加载器40将代码部分52和数据部分54传送给RAM50。在把所接收到的模块完全传递给RAM50时,一永久存储在ROM60内的解释器例程62提取代码部分52内的中间代码(如前所述)并通过按周知的方式对该代码加以解释而执行该代码。代码部分52内的某些指令会涉及到存储在数据部分54内的数据。在执行这些指令时,解释器62提取数据部分54内的所需数据并执行的说的程序。众所周知,解释器是一种很慢的执行程序装置。尽管速度并不总是那么重要,但也存在着要求速度的功能。为了能执行这种功能,远程单元中的计算机系统包括一用远程单元中CPU的本机代码写成的例程库64。但是,如前所述,不同远程单元处的相应CPU会按不同的字节存储格式进行操作。也就是说,某些远程CPU可能按高字节在前的格式进行操作,而另一些CPU则按低字节在前的格式进行操作。如果按一种字节存储格式例如按高字节在前格式来产生并传送数据部分,那么,用于按高字节在前格式进行操作的CPU的本机例程库64可用已有的最有效的多字节本机读写指令直接存取存储在数据部分54内的较长数据单元。但是,按低位在前格式进行操作的CPU的本机例程库64必须每次一个字节地存取较长的数据单元,并在处理数据本身之前通过把较长数据单元从高字节在前格式交换成低字节在前格式而调整所说的字节。这就会使得上述必须尽快运行的例程增加了显著的开销。依照本发明的原理,在中央单元中所产生的模块14还包括一交换部分146。交换部分146包括指示较长数据单元存储在数据部分144内什么位置中的数据。后链接器20在分析目标文件12内的符号表122的同时,可以确定上述较长数据单元存储在数据部分内的什么位置上。后链接器20在识别出一较长数据单元时于一表格中进行登录以指示该较长数据单元驻留在数据部分144内的相对位置。在业已完全地分析了目标文件12时,将表示上述表格的数据存储到模块14的交换部分146内并连同中间代码部分142和数据部分144经由传输线路30一起传输给远程单元。在所示的实施例中,只以高字节在前的格式将数据存储在数据部分144内。交换部分146包含指示各较长数据单元存储在数据部分144内位置的数据。在远程单元中,加载器40将所接收的模块的程序代码部分52、数据部分54以及交换部分56存储在RAM50中。如果远程单元中的CPU按高字节在前的格式进行操作,则并不需要其中包含交换部分56的RAM50的存储单元并可释放这些存储单元以供其他用途使用。然后,加载器40报告其功能已完成,且解释器62及本机例程库64均可用远程CPU所使用的高字节在前格式存取数据。另一方面,如果远程单元中的CPU按低字节在前的格式进行操作,则加载器40在完成其处理之前,先分析交换部分56中的数据。在交换部分56所指出的数据部分54内含有一较长数据单元的每一位置上,加载器40交换该数据单元的字节,因而将该数据单元从高字节在前的格式转换成低字节在前的格式。在将所有的较长数据单元均转换成低字节在前的格式之后,不再需要含有交换部分56的RAM50的存储单元,而可将这些存储单元释放以供其他用途使用。然后,加载器40报告其功能已完成,因而解释器62及本机例程库64可开始执行。因为远程单元中所有的数据现在都为低字节在前的格式,所以,本机例程64中的例程可使用最有效率的多字节本机指令进行操作。本发明的交互式电视系统允许以高字节在前及低字节在前格式进行操作的远程单元的CPU在其本机模式下存取所传送的数据,而无须自中央单元传送两次数据,即一次以高字节在前的格式传送,第二次以低字节在前的格式传送。所需要的只有用中央单元中的后链接例程在每一模块中产生一个小的交换部分;以及,在含有CPU的各远程单元的加载器例程中加上一个额外的步骤,以便在完全加载操作之前先交换较长数据单元,上述CPU是以不同于所传送数据的字节位置格式进行操作的。图2是一存储器的结构图,它说明了数据部分144的结构以及另一种交换数据部分146a和146b。图2中,在图中间的一行上示出了数据部分144。每一变量均被说明成此行中的一个矩形,矩形的大小对应于变量的大小。具体地说,最上方的两个变量都是字节变量;第三变量是一个字变量,它包含两个连续的字节;第四变量是一个字节变量;第五变量是一个长型字变量,它包含四个连续的字节;第六变量是一个字节变量;第七变量是一个字变量,它包含两个连续的字节。当然,数据部分144可以有其他的变量,这些变量可以是字节变量、字变量或长型字变量。此图左侧的这行示出了交换数据部分146a的第一实施例。在本实施例中,数据部分144的每一变量都有一登录项,这些登录项的顺序即为它们在数据部分内的顺序,每一登录项均指示相应变量的大小。在交换部分146a中,共有对应于数据部分144所示七个变量的七个登录项。用一个字母示出了每一登录项的内容,以便指示各相应变量的类型。具体地说,头两个登录项包含“B”标识以指示头两个变量是字节变量。下一个登录项包含“W”标识以指示第三变量是一个字变量。再下一个登录项包含“B”标识以指示第四变量是一个字节变量。下一个登录项包含“L”标识以指示第五变量是一个长型字变量,依此类推。如图所示,在本实施例中,一个变量有三种可能的长度(B、W、L),因而可用两个二进位来表示其长度,并可在一个字节中放入四个这种标识。此外,交换部分中可只含有较长数据单元在数据部分内的位置。图2右侧的交换部分146b中示出了这种情况。在数据部分144所示的部分中,数据部分144中共有三个较长数据单元需要从一种字节存储格式置换成另一种字节存储格式。交换部分146b中每一登录项都包含一偏移值,该偏移值指向数据部分144内一较长数据单元的位置;以及,上述数据单元的类型。具体地说,交换部分146b中的第一登录项包含指向第三变量位置的指针以及指示该第三变量是一个字变量(两个字节)的标识。下一个登录项指向数据部分144中的第五变量并包含该变量是一个长型变量(四个字节)的标识。再下一个登录项指向第七变量并包含该变量是字变量(两个字节)的标识。本实施例的交换部分中的每一登录项都必须大到足以容纳指向数据部分内存储单元的偏移指针以及该存储单元中类型的标识。但是,有一些登录项只用于较长数据单元而不用于每个数据单元。此外,每一类的变量也可以有独立的表,亦即有一个字变量的表和另外一个长型字变量的表。每一个表中的每一登录项只需要包含指向数据部分144中变量存储单元的偏移值指针。在上述实施例中,如上文所述,后链接器20(如图1所示)分析符号表并产生交换部分146,以识别较长数据单元在数据部分144中的位置。加载器40首先加载交换部分56,然后,若需要改变数据部分54中较长数据单元的字节存储格式,就遍历交换部分56中的数据、标识出较长数据单元在数据部分54中的位置,并交换这些存储单元的字节。对于所示的交换部分146a而言,扫描整个数据部分144,并且,在交换部分146a中的登录项标识出该存储单元包含有一较长数据单元(字变量或长型字变量)时,就交换这些字节。对于所示的交换部分146b而言,交换部分中的各登录项是通过交换位于数据部分144中所指示出位置上的字节而被处理的。在现代的程序语言中,变量通常是由前述基本的字节、字及长型字构成的复杂变量,这些变量被设置成结构、数组、结构数组和/或内含数组的结构。这种数据结构会造成同类型数据的重复,或造成数据类型组成格式的重复。通过特殊的编码以有效地表示重复的变量类型或变量组成格式,可以减少交换部分的大小。图3是一存储器的结构图,它说明了如何对本发明一个实施例的交换部分146的相应部分进行编码。图3所示的交换部分146的结构对应于交换部分146a(图2),其中,交换部分中存在有用于数据部分内每个字节的登录项。利用同类型数据的重复以及数据类型组成格式的重复,可在图3所示的交换部分146中实现进一步的压缩。在图3中,远程单元包含CPU,该CPU具有三个基本变量类型字节、字及长型字,并且,该CPU需要使较长数据单元对齐。也就是说,字节变量可存储在存储器内的任何位置处,字变量只能存储在地址为偶数的字节位置处,长型字变量只能存储在地址可被4除尽的字节位置处。这种结构是周知的,并为计算机系统设计专家所了解。在图3中,称为指针的特殊长型字被单独标示为“P”。指针是周知的程序结构且在加载过程中作特殊处理。指针的大小与长型字相同,也是四个字节,因而必须将指针存储在地址可被4除尽的字节位置上,并且,如需要改变字节存储格式,则必须交换指针的字节。此外,必须改变指针值,以便反映在远程单元的RAM中存储数据部分的绝对位置,这一过程称为重定位(relocation)。重定位的过程是周知的,因而本文中将不详述。数据部分中的数据结构在交换部分146中表示为一系列以下文所述方式加以编码的字节。对图3所示交换部分146的编码方案首先将数据部分(图中未示出)划成若干个对齐的长型字。图3的左上方示出了一个表(202),它指示存储器中一个对齐的长型字内的字节变量(标为“B”)、对齐的字变量(标为“W”)以及对齐的长型字变量(对长型字来说标为“L”,对指针来说标为“P”)的唯一容许结构。表202左侧的地址说明了数据部分中长型字的对齐(可被4除尽)地址,而不是用来指示一数据部分中的实际地址。如图所示,在一对齐的长型字内共有六种容许的变量结构。右侧数目为“0”的第一登录项示出了一个对齐的长型字可包含四个独立的字节变量(B)。数目为“1”的第二登录项示出了一个对齐的长型字可包含两个字节(B)变量,该变量的后面是一个字变量(W)。数目为“2”的第三登录项示出了一个对齐的长型字可包含一个字变量(W),该变量的后面是两个字节变量(B)。数目为“3”的第四登录项示出了一个对齐的长型字可包含两个字变量(W)。数目为“4”的第五登录项示出了一个对齐的长型字可包含一个长型字变量(L)。数目为“5”的第六登录项示出了一个对齐的长型字可包含一个指针(P)。其他任何结构都是不容许的。参阅图3a,交换部分146中的一个登录项可代表数据部分中的一个对齐的长型字。表202中登录项右侧的数目代表该对齐的长型字内的变量组成格式,此数目以周知的方式被二进位编码成三个二进位。将这三个位插入对应于该对齐的长型字的交换部分146中登录项204的三个最高有效位(位7∶6∶5)内。让交换部分中的每一登录项204代表存储器中的多个连续对齐的长型字且每个对齐的长型字含有有相同的变量组成格式,就可以在交换部分中获得压缩。其余的位(位4∶4∶2∶1∶0)208包含一个进行了二进位编码的数值N,该数值N代表由上述三个最高有效位所表示的组成格式重复次数。数值N的范围为0到31。数值N代表组成格式的重复次数-1。数值N为“0”时,代表重复值为1,亦即组成格式206在数据部分中出现一次。数值N为“1”时,代表重复值为2,数值N为“31”时,代表重复值为32。因此,二进位编码值206所代表的组成格式的重复次数为1到32,而编码值206则由交换部分146中的单字节登录项204所表示。如上所述,程序中的变量可以是基本数据类型的组合,这些基本数据类型包括结构、数组、结构数组以及/或者含有数组的结构。这些复杂的组合是由按指定方式排列的基本数据类型序列所构成的。有些二进位即“6”及“7”并不用来对表202的组成格式进行编码,但这些二进位值分别用于对基本数据类型的序列及先前限定的组成格式的重复进行编码,所说的重复可能起因于此类结构及数组的重复事例。图3b示出了如何对交换部分146的一部分进行编码,交换部分的这一部分代表来自表202的组成格式的重复序列。当标识出此序列时(例如用图1所示的后链接器20根据符号表122加以标识时),就将一个二进位编码值“6”放置到交换部分146中的第一字节210的三个最高有效位(7∶6∶5)内,以表示交换部分146中的这个登录项代表一个序列,而不是代表一个基本数据类型组成格式,如图3a所示,第一字节(210)中的五个最低有效位是代表特定序列重复次数的二进位编码值N。在这种情况中,二进位编码值N代表此序列的重复次数-2。因此,所标识的序列的重复次数范围为2到33。交换部分中的下一个字节212包含交换部分146中上述序列的长度-1,并且,按下文所述的方式确定字节212。在序列长度字节212之后是一个字节序列214,并且,按参照图3a所示的方式对该字节序列214加以编码。如上文所述,确定了序列214中的字节数,并且,对该序列中等于字节数-1的数值N进行二进位编码,而且将该数值N插入到序列长度字节212内。在诸如(图1所示的)符号表122中限定一复杂结构时,后链接器20可确定表示该结构所需的基本数据类型的结构。每当在符号表122中限定上述数据结构的一个事例时,就在交换部分(146)中形成一个图3b所示的登录项。如上所述,该数据结构的重复次数可表示此种结构的数组,重复次数由代表重复次数-2的一个二进位编码数N所指定。如果以后在(图1所示)符号表122中限定上述数据类型的另一个事例,则并不重新插入先前在图3b中所插入的序列登录项,而是将一称为反向指针登录项的独立登录项插入到交换部分146内,以便向后指向前一个序列登录项。图3c示出一反向指针登录项的编码。在一反向指针登录项中,将二进位值“7”编码成第一字节216的三个最高有效位。如在图3a及图3b中那样,第一字节216的五个最低有效位含有一个二进位编码数N,该二进位编码数N代表反向指针登录项所代表的在以前限定的序列的重复次数。在图3c中,数值N是重复次数-2并且代表从2到33的重复次数。如图3b所示,下一个字节218代表交换部分146中返回至到先前插入的序列登录项的偏移值。此偏移值代表当前反向指针登录项与先前限定的序列登录项之间的字节数。如从图3c中反向指针偏移值字节218到图3b中序列长度字节212的箭头所示,上述偏移值指向先前限定的序列登录项的序列长度字节212。在使用图3所示的编码方案的情况下,(图1所示的)加载器40只要遍历交换部分中的各登录项,就可很容易地确定数据部分内的字节、字以及长型字等基本数据类型的位置。如果需要改变较长数据单元的字节存储格式,则可找到字、长型字及指针等较长数据单元并进行字节交换。图4是存储器的结构图,它说明了图3所示的编码后的数据部分144及对应置部分146的一个实例。在图4中,右侧说明了数据部分144的各部分,左侧说明了交换部分146的对应部分。以水平的矩形示出了在交换表中构成登录项的字节。某些字节在逻辑上分成若干部分,这些部分由矩形内的垂直线所示。在交换部分146的上方示出了构成各个部分的位。数据部分144中的每一水平矩形都对应于存储器中的对齐的长型字,该长型字包含四个字节。在数据部分144的上方示出了这些字节B1、B2、B3及B4。前六个对齐的长型字左方处的地址均只用于说明这些长型字是对齐的,而非用来指示在数据部分中的绝对位置。所示每一个对齐的长型字内基本变量类型的结构是这样的用“B”指示字节变量;用“W”指示字变量,该字变量包含两个相邻的字节;用“L”指示长型字变量,该长型字变量包含四个相邻的字节;用“P”指示指针,该指针也包含四个相邻的字节。图4所示数据部分144中的头六个对齐的长型字包含与图3a中的表202所示的基本数据类型组成格式相同的变量。头六个长型字右方的标号“0”到“5”如表202所示的相应长型字中的组成格式的号码。交换部分146中的第一登录项对应于数据部分144中的第一个对齐的长型字。该对齐的长型字的地址为0×0000且包含四字节变量“B”。其组成格式的二进位编码表示为“0”,该二进位编码表示被编码到三个最高有效位元7∶6∶5中。这种连续的组成格式只有一个,所以,重复次数为1。被编码到五个最低有效位元4∶3∶2∶1∶0中的数值N为重复次数(1)-1或0。交换部分146中的下五个登录项和数据部分144中的下五个对齐的长型字相对应且以相同之方式编码。交换部分146中的下一个示出的登录项对应数据部分144中的组成格式,该组成格式重复三次。在这种情况中,重复的组成格式是一个字变量W,它后面是两个连续的字节变量B。如图3的表202所示,上述组成格式用二进位编码值“2”来表示。二进位编码值“2”存储在三个最高有效位7∶6∶5内。这种情况中的重复次数为三。编码在五个最低有效位4∶3∶2∶1∶0中的数值N为重复次数(3)-1或2。交换部分146中所示的下一个登录项包含五个连续字节且表示重复的组成格式序列。此序列包括两个内含相同组成格式的连续对齐的长型字即一个字变量W,该变量后面是两个连续的字节变量B。此序列后面是一个对齐的长型字,长型字包含由两个连续的字变量W所构成的组成格式;以及,一个对齐的长型字,该长型字包含由一个长型字变量L构成的组成格式。上述序列重复两次。在交换部分146中的对应登录项中,如图3b所示,第一字节在其三个最高有效位7∶6∶5中含有一个二进位值“6”。如图3b所示,用一数值N在五个最低有效位中进行编码,该数值N等于序列的重复次数-2。在这种情况中,数值N是重复的次数(2)-2或0。下一个字节包含代表序列长度的登录项的二进位编码数-1。在这种情况中,共有三个说明此序列的后续登录项(将于下文中予以说明),因而,序列长度字节中所存储的数值为登录数目(3)-1或2。后面的三个字节说明了所述序列本身,其编码如图3a所示。数据部分144的相应部分内所示的序列始于两个对齐的连续长型字,每一长型字均包含由后面是两个字节变量的字变量所构成的组成格式。这就是编号为2的组成格式的两次重复。因此,说明交换部分146内序列的第一字节在三个最高有效位7∶6;5中的值为2、且在五个最低有效位4∶3∶2∶1∶0中的值为1(重复次数(2)-1)。数据部分144内序列中的下一个对齐的长型字包含由两个连续的字变量W所构成的组成格式。这是编号为3的组成格式的一次重复。说明交换部分146内上述组成格式的字节在三个最高有效位7∶6∶5中的值为3。而在五个最低有效位4∶3∶2∶1∶0中的值为0。所述序列中的最后一个对齐的长型字包含由一个单一的长型字变量L所构成的组成格式。这就是编号为4的组成格式的一次重复。说明交换部分146内上述组成格式的字节在三个最高有效位7∶6∶5中的值为4而在五个最低有效位4∶3∶2∶1∶0中的值为0。交换部分146中所示的下一个登录项包含两个字节并表示在数据部分144所述序列的三次重复。交换部分146的这一登录项始于在三个最高有效位7∶6∶5内含有值“7”的字节。五个最低有效位4∶3∶2∶1∶0包含重复次数(3)-2或1。下一个字节包含一偏移值,它代表指向交换部分146中登录项的序列长度字节的反向指针,其中,所说的序列在开始时由一箭头来加以说明,该箭头朝向交换部分146中先前说明的登录项内的序列长度字节(含有2)。在这种方式下,用交换部分146中的相应登录项来代表数据部分144中每一字节所含的变量类型。如上所述,(图1所示的)后链接器20通过分析符号表122并在交换部分146中产生若干登录项以代表这些构成符号表122所涉及到的变量的基本变量数据类型,可以产生交换部分146,加载器40可分析所接收到的交换部分56,并且,在必要时找出所接收到的数据部分54中的较长的数据单元并交换其字节,从而将这些较长数据单元转换成适当的字节位置格式。权利要求1.一种包括一分布式计算机系统的多媒体传输系统,其特征在于一中央单元(10)计算机,它用于产生代表一个模块的信号,该模块包括一数据部分(144),此数据部分包含多个数据单元,每一数据单元均是一可寻址的最小数据单元及一较长数据单元中的一个,每一较长数据单元均包含多个可寻址的最小数据单元;以及一交换部分(146),该交换部分包含标识上述较长数据单元在数据部分内的位置的数据;一远程单元计算机系统(40-46),该远程单元计算机系统对上述代表模块的信号作出响应且包含一加载器,此加载器用以提取上述模块并在由交换部分内数据所标识的位置上交换(56)数据部分中较长数据单元的最小可寻址数据单元;以及一传输线路(30),它用以将上述代表模块的信号从中央单元计算机系统传送给远程单元计算机系统。2.如权利要求1所述的多媒体传输系统,其特征在于在所述数据部分中以一预定顺序设置一较长数据单元中的多个可寻址的最小数据单元;以及所述加载器通过颠倒可寻址的最小数据单元的顺序,从而交换较长数据单元的可寻址的最小数据单元。3.如权利要求1所述的多媒体传输系统,其特征在于,所说的传输线路包括位于上述中央单元计算机系统中的发射机;位于上述远程单元计算机系统中的接收机;以及连在上述发射机与该接收机之间的卫星线路。4.如权利要求1所述的多媒体传输系统,其特征在于,前述中央单元还包括一电视视频及音频信号源,并且,所述发射机还包括一多路复用器,它用于将代表模块的信号与电视视频及音频信号混合起来,以便形成一音频/视频交互(AVI)的复合信号;以及所述远程单元还包括一多路分解器,它用以将电视视频和音频信号及上述模块从所接收的复合AVI信号中分离开来;以及电视视频及音频信号的利用装置。5.一种包括一远程单元计算机系统的接收机,该接收机的特征在于一信号模块源(30),此信号模块源包含一数据部分(54),该数据部分包含多个数据单元,每一数据单元是一可寻址的最小数据单元和一较长数据单元中的一个,每一较长数据单元均包含多个可寻址的最小数据单元;以及一交换部分(56),该交换部分包括标识上述较长数据单元在数据部分中位置的数据;以及一驻留在远程单元计算机中的加载器(40)程序,它用于控制所说的远程单元计算机在交换部分内的数据所标识的位置处交换数据部分中较长数据单元的可寻址的最小数据单元。6.如权利要求5所述的接收机,其特征在于,所述信号模块源包含一连接于一传输线路的检测器,它用于检测含有上述信号模块的信号。7.如权利要求5所述的接收机,其特征在于所接收到的信号还包括经多路复用的电视视频及音频信号;以及所述系统还包括一多路分解器,它用于将信号模块与电视视频及音频信号分离;以及,一接收电视视频及音频信号的利用装置。8.如权利要求5所述的接收机,其特征在于可寻址的最小数据单元是一个字节变量;较长数据单元是包含两个字节的字变量及包含四个字节的长型字变量中的一种;数据单元按对齐的方式以连续对齐的长型字的形式存储在数据部分中;以及所述交换部分包括多个登录项,每一登录项均包括一含有数据的部分,所说的数据用以标识数据部分中一相应对齐的长型字内的数据单元的组成格式。9.如权利要求8所述的接收机,其特征在于,所述交换部分还包括多个登录项,这些登录项用以标识数据部分内对齐的长型字序列中的数据单元。10.如权利要求9所述的接收机,其特征在于,每一序列重复代表登录项均包括一登录项,该登录项含有数据,此数据表示相对前一序列代表登录项偏移的反向指针,并且,所说的加载器可响应该反向指针,以便在相应序列所标识的位置处交换数据部分中较长数据单元的可寻址的最小数据单元。11.如权利要求8所述接收机,其特征在于,一对齐的长型字内的数据单元组成格式包括下述情况之一四个连续的字节变量;后面是变量的两个连续的字节变量;后面是连续字节变量的一个字变量;两个连续的字变量;以及一个长型字变量。12.一种包含一中央单元计算机系统的多媒体传输系统,所述中央单元计算机系统的特征在于一计算机(12)程序数据源一连接于上述计算机程序数据源的后链接器(20),它用以扫描所说的程序数据,并产生一数据模块,该数据模块包括一数据部分(144),该数据部分包含多个数据单元,每一数据单元均是一可寻址的最小数据单元及一较长数据单元中的一种,每一较长数据单元均包括多个可寻址的最小数据单元;并且,该数据部分响应该数据部分中的数据格式而产生一交换部分(144),此交换部分含有标识较长数据单元在数据部分内的位置的数据。13.如权利要求12所述的多媒体传输系统,其特征在于,一连接于传输线路的发射机,该发射机用以广播所说的数据模块。14.如权利要求13所述的多媒体传输系统,其特征在于一电视视频及音频信号源;以及一多路复用器,它与上述电视信号源相连并响应所说的模块以便产生一其中包括上述数据模块及电视视频及音频信号的复合信号。15.如权利要求12所述的多媒体传输系统,其特征在于,所述计算机程序数据源是一目标代码文件中的符号表。16.一种在多媒体传输系统中操作中央计算机系统的方法,所述多媒体传输系统包括一中央计算机系统、远程计算机系统以及一连在中央计算机系统与远程计算机系统之间的传输线路,所述方法的特征在于下列步骤产生一包含符号表的目标代码文件扫描该目标代码文件,以便产生一模块,该模块包括一数据部分,此数据部分包含多个数据单元,每一数据单元均是一可寻址的最小数据单元及一较长数据单元中的一种,每一较长数据单元均包括多个可寻址的最小数据单元;扫描上述符号表,以便在所述模块中产生一交换部分,该交换部分包含标识较长数据单元在所述数据部分内的位置的数据;产生一代表所述模块的信号;以及经由传输线路将上述代表模块的信号传送给远程计算机系统。17.如权利要求16所述的方法,其中,所述中央计算机系统还包括一音频信号源及一视频信号源,上述方法的特征还在于下列步骤在产生一代表模块的信号这一步骤之后,将该音频信号、视频信号、及代表模块的信号进行多路复用,以便形成一复合AVI信号。18.一种在多媒体传输系统中操作远程计算机系统的方法,所述多媒体传输系统包括一中央计算机系统,它用以产生一代表模块的信号,此模块包括一数据部分,该数据部分包含多个数据单元,每一数据单元均是一可寻址的最小数据单元及一较长数据单元中的一种,每一较长数据单元均包括多个可寻址的最小数据单元,上述模块还包括一交换部分,该交换部分包括标识较长数据单元在数据部分内的位置的数据;一远程计算机系统;以及,一连在上述中央计算机系统与远程计算机系统之间的传输线路,它用以将该代表模块的信号从中央计算机系统传送给远程计算机系统;所述方法的特征在于下列步骤接收代表模块的信号;从代表模块的信号中提取数据部分;从该代表模块的信号中提取交换部分;遍历交换部分内的数据;以及对数据部分内被标识为含有一种较长数据单元的每一位置,交换该较长数据单元的各可寻址的最小数据单元。19.如权利要求18所述的方法,其中,前述中央计算机系统所产生的信号是一音频/视频/交互(AVI)复合信号,该AVI复合信号含有上述代表模块的信号作为信号分量,且,该AVI复合信号还包含代表视频信号及音频信号的分量,上述方法的特征在于,所说的接收步骤包括下列步骤接收上述AVI复合信号;自该复合信号中分离出该音频信号分量、视频信号分量以及代表模块的信号分量,以及将音频信号分量及视频信号分量提供给一利用装置。20.如权利要求18所述的方法,其中,较长数据单元区内的多个可寻址的最小数据单元按一定的顺序设置在数据部分内,所述方法的特征在于,前述交换步骤包括下列步骤颠倒在较长数据单元中可寻址的最小数据单元的顺序。全文摘要一种分布式计算机系统,包括中央单元以及多个远程单元。中央单元的计算机系统产生一模块,此模块包括含有多个数据单元的数据部分。各数据单元均是可寻址的最小数据单元或较长数据单元。各较长数据单元包括多个可寻址的最小数据单元。上述模块还包括交换部分,此交换部分含有标识较长数据单元在数据部分内的位置的数据。远程单元的计算机系统接收模块并包括一加载器。一传输线路将该模块传给远程单元。文档编号H04N7/173GK1177774SQ96108659公开日1998年4月1日申请日期1996年6月28日优先权日1995年6月30日发明者P·M·韦拉德申请人:汤姆森消费电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1