【技术实现步骤摘要】
本专利技术涉及一种重复(iterative)程序,用于结构化软件对象到原始数据流的转换以及反向转换,并利用简单的通信设备如嵌入式计算机基站提供它们的直接传输,本专利技术还涉及所述软件对象的复位或是分配给它们的存储器空间的再利用。
技术介绍
在以高级语言编写、特别是以结构化或面向对象的语言如Java编写的应用程序中,所使用或处理的大部分数据都是以软件对象的形式组织及存储的,这些对象具有精确的结构,且比简单的字节序列复杂。这些对象中可能包含多个变量或是数据组,例如在简单类型的形式中,有字符(“char”类型),或是整数(“int”类型),或是基本对象类型,或是由程序员定义的类型,字符串(“string”类型),或是含有一维或多维上述类型的数组(“array”类型)。因此,该类型的结构化对象可由一个聚集了各种不同对象的树状结构定义或表示,所述的对象本身又是各种类型的,这类结构的组织形式有时被称为对象复合图。一个对象类型可以根据另一个类型(通常被称为“超类”)的定义“继承”地定义,并且所有的类型都可以以一种树状结构来表示,该结构被称为继承图。根据特定的情况,能够在硬件 ...
【技术保护点】
供计算机基站(2)用来进行数据转换的过程,所述的计算机基站被称为“嵌入式平台”,它由一个便携对象构成,其中包括至少一个处理器、存储设备以及通信资源,所述的通信资源能够以一个或多个线性数据序列的形式与一台终端交换信息,所述过程的特征在于它包括一个数据集合的转换步骤,该转换步骤沿一个方向或另一个方向在一方和另一方之间进行转换,转换的一方是包括线性数据序列的排列,而另一方则是描述或代表一个或多个软件对象的结构化排列,该软件对象是根据一种面向对象编程语言的规范被结构化或层次化的。
【技术特征摘要】
FR 2002-2-28 02/025701.供计算机基站(2)用来进行数据转换的过程,所述的计算机基站被称为“嵌入式平台”,它由一个便携对象构成,其中包括至少一个处理器、存储设备以及通信资源,所述的通信资源能够以一个或多个线性数据序列的形式与一台终端交换信息,所述过程的特征在于它包括一个数据集合的转换步骤,该转换步骤沿一个方向或另一个方向在一方和另一方之间进行转换,转换的一方是包括线性数据序列的排列,而另一方则是描述或代表一个或多个软件对象的结构化排列,该软件对象是根据一种面向对象编程语言的规范被结构化或层次化的。2.根据上述权利要求所述的过程,其特征在于它包括下列步骤-把要被发送的第一数据集从一种描述或代表软件对象的结构化排列转换或串行化成一种代表所述第一数据集的线性数据序列,所述的第一数据集包括或代表了一个或多个软件对象(31,41),这些软件对象是根据一种面向对象编程语言的规范被结构化或层次化的;-通过通信资源(200或100)将所述的线性数据序列从嵌入式平台(2)发送给至少一个主机(1),即一台终端或与终端相连的工作站,或是从所述的主机(1)发送到嵌入式平台(2);- 在发送之后,将该线性数据序列转换或反串行化成一个数据集,该数据集被排列成一个或多个结构化的软件对象(34或44),这些软件对象重现或代表了所述第一数据集。3.根据上述权利要求之一所述的过程,其特征在于所述的主机终端(1)利用一个软件主体(101)向所述的嵌入式平台(2)发送信息,该软件主体被称为发送函数,所述的信息在嵌入式平台中被一个响应函数(201)接收,该响应函数能够通过至少一个接收方软件主体(221)启动一个对所述数据的处理过程(2210),所述的接收方软件主体被储存在嵌入式平台中,并且构成了至少一个应用过程(21)的一部分,所述的过程包括下列步骤- 由一个通信主体(211)代表接收方主体(221)接收数据集(32),该数据集是由所述的响应函数(201)为所述的接收方软件主体接收的,所述的数据集被排列成一个线性数据序列;- 将该数据集转换成至少一个软件对象(34),该软件对象根据一种面向对象编程语言的规范被结构化或层次化;- 将所述的结构化软件对象(34)发送给接收方主体(221),并由所述的接收方主体根据所述对象启动一个处理过程(2210)。4.根据上述权利要求之一所述的过程,其特征在于它包括下列步骤- 由响应函数(201)从主机(1)的发送函数(101)以至少一个发送参数(32)的形式接收至少一个数据项,并将该参数发送给一个储存或运行在嵌入式平台(2)上的通信主体(211);- 由通信主体(211)将响应主体(201)发送来的至少一个发送参数(32)转换或连接成一个被排列成线性数据序列的数据集,并将这些数据储存在嵌入式平台(2)的输入流(33)中;- 由储存或运行在嵌入式平台(2)上的串行化主体(212)将储存在所述输入流(33)中的至少一部分数据转换或反串行化成一个数据集,该数据集包括或代表了至少一个结构化软件对象(34);- 由所述的接收方主体(221)接收所述结构化软件对象(34)或其引用。5.根据上述权利要求之一所述的过程,其特征在于它包括下列步骤- 从一个软件主体(221)向一个串行化主体(212)发送一个结构化软件对象(41)或其代表,所述的软件主体构成了储存或运行在嵌入式平台(2)上的应用过程(22)的一部分,而所述的串行化主体被储存或运行在所述的嵌入式平台上;- 由所述的串行化主体(212)将所述的结构化软件对象(41)转换或串行化成一个被排列成线性数据序列的数据集,并将这些数据储存在嵌入式平台上的一个输出流(42)中;- 由一个储存或运行在嵌入式平台(2)上的通信主体(211)将储存在所述输出流(42)中的数据的至少一部分转换成一个响应参数集(43),该参数集能够被响应函数(201)发送;- 由响应函数(201)将所述的响应参数(43)从嵌入式平台(2)发送到主机终端(1),该发送过程是响应函数主动进行或是响应于主机终端(1)的发送函数(101)而进行的。6.根据上述权利要求之一所述的过程,其特征在于储存在输入流(33)或输出流(42)中的线性数据序列代表了一个或多个软件对象(31或41),这些软件对象是利用一个或多个数据项被结构化或层次化了的,所述的数据项被称为标签,具有一个或多个给定值,所述每个指定值代表要对所述线性数据序列的反串行化执行的指定行为。7.根据上述权利要求之一所述的过程,其特征在于至少一个标签被定义为代表下列行为之一- 向所述线性数据序列代表的结构化对象的结构中添加一个新元素;- 引用一个元素或对象,作为源对象,作为构成结构化对象的一个元素的全部或部分的值的源;- 指示出其后的一个或多个数据项代表了构成结构化对象的一个元素的内容;- 指示出构成结构化对象的一个元素的内容缺失。8.根据上述权利要求之一所述的过程,其特征在于所述的串行化主体(212)在一个被称为串行化过程的过程之后将一个被称为源对象的结构化对象(41)串行化成一个线性数据集(42),所述的过程通过下列步骤处理所述对象(410至414)中的至少一个,这些对象被称为元素,它们构成了所述结构化源对象(41)的结构或树状结构- 由串行化主体(212)检测出被称为当前对象的一个元素(410,414)的类型(4100),所述元素构成所述结构化对象(41)的结构或树状结构;- 将代表一个标签的数据项存储在输出流(42)中,随后存放代表当前对象类型(TYOBJ)的数据项,所述标签指示添加一个新元素;- 由与当前对象类型(TYOBJ)相关联的类型串行化主体(TM0,TM1,TM2)在输出流中储存,在流中已有的元素之后● 或是通过一个代表结构化对象(41)的全部或部分(412,413,411)的值的数据项(424,425,429),● 或是通过代表一个标签(4211)的数据项(4211,4212),该标签指示引用一个对象(410)作为所述结构化对象(41)的全部或部分(414)的值的源,该标签之后跟随着标识所述源对象(410)的一个数据项(4212)。9.根据上述权利要求之一所述的过程,其特征在于所述的串行化过程将一个结构化对象(41)转换到输出流(42)中,并在每次重复中将各个当前对象的类型储存在一个存储器堆栈(TYST)中,该堆栈被称为类型堆栈,读取该堆栈存储位置的顺序与存入顺序相反。10.根据上述权利要求之一所述的过程,其特征在于所述的串行化主体(212)在一个被称为反串行化过程的过程之后将一个线性数据集反串行化成至少一个结构化结果对象(34),所述的过程通过下列步骤处理储存在输入流(33)中的每个数据项-由串行化主体读取储存在输入流中先前已被处理过的数据之后的至少一个数据项;-分析该数据项并执行对应于所述数据项的行为。11.根据上述权利要求之一所述的过程,其特征在于所述的反串行化过程涉及载入一个被称为当前对象的元素,即向所述当前对象的全部或部分指定一个直接或间接值,所述的元素构成结构化结果对象(34)的结构的全部或部分,随后当前对象的载入的结束而开始- 读取储存在存储器结构的下一个位置中的代表了一个对象类型的数据项(TYT2),并从该位置删除该数据项,所述的存储器结构被称为类型堆栈(TYST);- 将从类型堆栈中读出的数据项(TYT2)所代表的类型储存为新的当前对象类型(TYOBJ)。12.根据上述权利要求之一所述的过程,其特征在于当所述的类型堆栈(TYST)为空时,反串行化过程所创建的结构化对象(34)被认为是完整的,并被发送给软件主体(221)或应用过程(22),所述的软件主体或应用过程是所述对象的接收方。13.根据上述权利要求之一所述的过程,其特征在于对应一个数据项(321,326)的反串行化行为包括下列步骤,所述的数据项代表一个被称为“NEW”的标签,该标签指示一个新元素- 读取输入流中的至少一个后续数据项(322,327);- 将所述后续数据项(322,327)所代表的对象类型储存在一个存储器堆栈中,紧随已经被储存在其中的类型,所述的存储器堆栈被称为类型堆栈(TYST)。14.根据上述权利要求之一所述的过程,其特征在于反串行化过程所用的类型堆栈(TYST)包括一个LIFO类型堆栈,即该堆栈中位置的读取顺序与储存顺序相反。15.根据上述权利要求之一所述的过程,其特征在于所述的反串行化过程包括一个步骤,该步骤通过分配一个新的存储空间或重用一个自由空间,来创建构成所述结构化结果软件对象(34)结构的元素(410至414),所述的创建步骤由一个对应于将被创建元素的类型的类型管理器主体(TM0,TM1,TM2)执行。16.根据上述权利要求之一所述的过程,其特征在于构成所述结构化结果软件对象(34)结构的元素(410至414)的创建步骤是在表示所述元素创建的数据项(322,327)的读取步骤与用于同一个元素的第一载入步骤之间进行的。17.根据上述权利要求之一所述的过程,其特征在于对应于一个数据项(324,325,329)的行为包括将该数据项的值储存到分配给当前对象的存储器空间中的步骤,所述的数据项被称为简单数据项,即它不代表一个标签。18.根据上述权利要求之一所述的过程,其特征在于,在反串行化过程期间,为构成所述结构化结果对象(34)的结构的至少一个元素(410)分配一个对象标号(4102),所述的对象标号以一种唯一的方式标识所述的元素,从而所述的元素可以被其他对象或元素(414)指定或引用。19.根据上述权利要求之一所述的过程,其特征在于对应于一个数据项(3211)的行为包括下列步骤,所述的数据项代表一个被称为“REF”标签的标签,该标签表示一个引用- 读取输入流(32)中的至少一个后续数据项(3212);- 将一个数据项储存在分配给当前对象(344)的存储器空间(3441)中,紧接着已被存储的数据,所述的数据项指定了一个对象(340)作为当前对象的所有或部分的值的源,所述的源对象或元素(340)由所述的后续数据项(3212)标识。20.根据上述权利要求之一所述的过程,其特征在于当储存在指定存储器空间内的数据达到一个给定长度时,就考虑终止当前对象的载入,所述的长度由嵌入式平台中的类型管理器主体(TM0、TM1、TM2)或通用类型管理器主体(TMG)从卡(2)的存储器中读出。21.根据上述权利要求之一所述的过程,其特征在于由嵌入式平台(2)向主机(1)发送一个给定长度的线性数据序列(42)是根据一个重复过程执行的,该过程被...
【专利技术属性】
技术研发人员:奥利维尔法布恩,安德烈弗雷西内,塞尔日拉库尔特,
申请(专利权)人:艾斯奥托公司,
类型:发明
国别省市:FR[法国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。