CN111679867B - 一种嵌入式系统配置数据生成方法 - Google Patents
一种嵌入式系统配置数据生成方法 Download PDFInfo
- Publication number
- CN111679867B CN111679867B CN202010476657.0A CN202010476657A CN111679867B CN 111679867 B CN111679867 B CN 111679867B CN 202010476657 A CN202010476657 A CN 202010476657A CN 111679867 B CN111679867 B CN 111679867B
- Authority
- CN
- China
- Prior art keywords
- data
- configuration
- file
- service
- configuration data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000013515 script Methods 0.000 claims abstract description 27
- 230000009471 action Effects 0.000 claims abstract description 16
- 230000000875 corresponding effect Effects 0.000 claims description 10
- 238000007689 inspection Methods 0.000 claims description 7
- 238000013523 data management Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 8
- 238000013500 data storage Methods 0.000 abstract description 5
- 239000008358 core component Substances 0.000 abstract description 2
- 238000012423 maintenance Methods 0.000 abstract description 2
- 238000007670 refining Methods 0.000 abstract 1
- 238000012360 testing method Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000000342 Monte Carlo simulation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种嵌入式系统配置数据生成方法,包括:采用基于服务的方式提炼配置数据生成所需要的动作代码,根据需求用这些动作代码制作脚本文件,配置生成主程序通过读取配置文件和脚本文件,从而读取配置文件中的数据输出到指定的结构中。当新的配置数据生成需求到来时,不需要更改工具核心组件服务解释器,只需要重新编写脚本文件即可,极大的减少了后期更新和维护的工作量。并且,本发明采用的配置数据存储结构具有高度的安全性,配置数据生成目标机端主程序能够在数据加载过程中自动检测配置数据的合法性、一致性。
Description
技术领域
本发明属于计算机系统软件技术领域,涉及一种基于服务的高安全配置数据生成方法。
背景技术
用户通过界面配置的数据不能直接传递给嵌入式系统使用,所以需要一种配置生成方法,将配置数据转化为目标机能够识别的文件。
传统的配置生成方案将整个配置数据直接读取,并存储于一个大型结构体中,操作系统通过读取此结构体来判断用户的配置情况。因而整个配置数据的结构和大小都是固定的。在综合化操作系统的多级安全灵活架构下,配置数据的规模可能有很大不同,而传统方法配置占用空间大小不能动态改变,此方法明显不能够灵活。操作系统如若采用大型结构体的方法会使得配置数据目标文件过大,造成内存空间的极大浪费。当需要增加或修改某一配置检查生成的内容可能要修改整个配置数据文档。
发明内容
本发明的目的是提供一种嵌入式系统配置数据生成方法,克服现有技术配置数据不够灵活、内存空间利用率低等问题。
为了实现以上目的,本发明提出以下方案:
一种嵌入式系统配置数据生成方法,其特殊之处在于,包括:
读取脚本文件,所述脚本文件包括多组动作命令,由用户采用基于服务的方式提炼配置数据生成所需要的动作代码得到相应的动作命令;
读取配置文件,通过将所述脚本文件中的动作代码解释为相应的服务指令,然后按照服务指令调用相应服务接口将配置文件中的数据取出并填写到二进制目标文件指定的数据结构中,完成对配置数据的检查和生成。
进一步地,所述配置文件采用XML文件格式,所述脚本文件采用XSLT文件格式。
进一步地,所述相应服务接口,选自预先提供的一组配置服务接口,通过接口的方式提供给用户实现不同的服务,包括:算术操作服务、逻辑操作服务、字符串操作服务、列表操作服务、数据管理操作服务和数据检验操作服务。
进一步地,所述将配置文件中的数据取出,利用了一组XML配置文件解析接口,包括:解析XML路径、提取XML元素、提取XML元素的属性和遍历XML元素。
进一步地,所述将配置文件中的数据取出并填写到二进制目标文件指定的数据结构中,由配置生成接口实现,所述目标文件采用流式的存储格式。
进一步地,所述目标文件的每段配置数据结构分为依次的5个部分:随机数、数据类型、数据大小、数据内容以及校验码。
进一步地,所述随机数是采用蒙特卡罗同余法设置得到,用于隔开上一段配置数据,并用推导随机数的方法,验证整个目标文件是否满足格式要求。
进一步地,所述校验码采用CRC校验的方式,用于验证本段数据是否正确。
与现有技术相比,本发明具有以下有益效果:
本发明提供了一种基于服务的具有高安全数据存储结构的配置数据生成方法,采用基于服务的方式提炼配置数据生成所需要的动作代码,根据需求用这些动作代码制作脚本文件,配置生成主程序通过读取配置文件和脚本文件,从而读取配置文件中的数据输出到指定的结构中。利用本发明的方案可以对配置文件随意地进行扩展,配置数据服务解释器是一个相对稳定的部分,不需要更改;对新用户新操作系统的适配,只需要更改脚本文件即可,极大地减少了工作量,提高了工作效率。并且,本发明提出的多级验证的目标数据结构,能够保证配置数据的一致性、安全性。
附图说明
图1是本申请配置数据生成方法的服务接口框架示意图;
图2是本申请配置数据生成目标文件结构示意图;
图3是本申请配置数据生成脚本执行流程状态转换示意图。
具体实施方式
以下结合附图,通过实施例进一步详述本发明。
本发明实现一种基于服务的配置数据生成方法,主要功能为将用户配置数据转化为嵌入式系统能够直接识别的二进制文件,其本质是一种文件格式转换器。本实施例的整个配置数据生成方法组成如图1所示。其有两个输入,一个为配置文件,一个为脚本文件。配置文件一般采用XML文件格式,脚本文件一般采用XSLT文件格式。相应提供一组配置服务接口140、配置文件解析接口120、配置生成接口130;根据脚本文件的要求,解释执行脚本文件160中的动作代码,完成对配置数据的检查和生成;生成满足高安全结构特性的二进制目标文件。
本实施例的主要流程就是读取XML数据和XSLT脚本动作代码,将XSLT中的每一条动作代码解释成单独的服务指令,然后调用相应服务接口执行,按照服务指令将XML配置数据取出并填写到一个指定的数据结构之中。其中:
将所有的需求,提取出一套完备的服务,通过接口的方式提供给用户使用,配置服务接口140包括:算术操作服务、逻辑操作服务、字符串操作服务、列表操作服务、数据管理操作服务、数据检验操作服务。
配置文件解析接口120包括:解析XML路径,提取XML元素、提取XML元素的属性、遍历XML元素。
配置数据生成主程序可根据脚本文件的要求,提取配置数据经配置生成接口130填写到图2所示的配置数据结构中。
XML是一种可扩展标记语言,是W3C推荐标准,常用于数据存储。本发明使用XML文件作为配置数据文件,提供给用户当作配置界面输入的数据文件。配置XML文件可能拥有多个,当拥有多个时,一般取其中一个文件当个主XML文件,并由此XML文件引用其他所有XML文件。
本实施例采用XSLT文件当作执行脚本,XSLT也是XML文件的一种。XSLT脚本文件由多组动作命令组成,每一组动作命令完成某一种特定的功能,如检查某配置数据是否符合要求,检查用户是否配置了某一属性等。
因此,本实施例主要有两方面的特点:
第一方面,一种基于服务的配置数据生成方法:利用XSLT标准函数组建起一套配置服务接口140,能够对脚本进行解释执行。其中包括对变量的定义与使用、对基本数据类型的支持、运算符支持、字符串操作支持、逻辑运算支持、执行流程控制支持、XPATH的语法解析支持、xml语法解析支持。
本实施例还扩展出了配置生成接口130,其可实现对读取的配置数据进行流式文件格式存储。
本实施例还扩展了XSLT脚本执行过程中的报错机制,能够对配置检查和生成过程中遇到的错误进行报错。
第二方面,一种高安全目标配置数据格式:采用蒙特卡罗同余法设置一系列随机数210,隔开各一段配置数据,用推导随机数的方法,验证整个文件是否满足格式要求。在每段数据结尾采用CRC校验的方式,验证本段数据是否正确。这种多层次验证相结合的方式,能够确保配置数据的正确性、一致性,数据安全上做到了最好的保障。
本实施例利用XSLT标准,设计封装的上述配置服务接口140,具体包含接口如下:
<xsl:value-of>用于提取某个选定节点的值,并把值添加到转换的输出流之中。
例如:<value-of select="$FileName"data-type="char[256]"/>
上面例子作用为将一个256位的字符类型变量FileName的值添加到输出流中;select属性的值一般为一个XPath路径,运行此句时,调用value-of对应的接口函数,完成xpath的路径搜索,找到指定位置,然后读取节点的值,将值添加到输出流中。Data-type为读取的数据类型。
<xsl:for-each>元素可用于选取指定的节点集中的每个XML元素。
例如:<for-each select="../VirtualBoard">
/**遍历内部执行过程**/
</for-each>
上用例子作用为遍历父结果的所有VirtualBoard元素。for-each元素可以起到循环控制的作用。
<xsl:if>元素:用于针对XML文件内容进行条件测试。
例如:<xsl:if test="price>;10">
上面例子作用于判断price变量是否大于10。If命令可以起到分支跳转的作用。
<xsl:choose>元素:用于选择控制,一般与<xsl:when>和<xsl:otherwise>配合使用。用法相当于C语言中的Switch-Case语句;
例如:<choose>
上面用例的作用为根据不同的条件给变量srctype进行赋值。
本实施例扩展出了配置生成接口130,其可实现对读取的配置数据进行流式文件格式存储,接口调用方式如下:
<data-box>元素,用于数据存储,生成目标文件。
例如:<data-box select="8">
<value-of select="0"data-type="uint32"/>
<value-of select="0"data-type="uint32"/>
</data-box>
上面用例的作用为申请8字节的空间用来填充数据,第一个数据为uint32类型,值为0,第二个数据也为uint32类型,值为0。
<assert>元素,用于报错处理。
例如:<assert test="count(/Module/HM)>0"
select="/ModuleOS"
message="'Missing HM element'"/>
上面用例的作用为测试配置XML文件中路径Module/HM的个数,如果>0则正常,否则则表示用户没有配置HM元素,这时需要报"'Missing HM element'"错误。属性中test为测试条件,select为测试对象,message为报错内容。
除上述的服务接口外,为使配置生成方法能够对配置数据进行各种运算,本发明封装了逻辑运算、算术运算、比较运算、字符串运算。其中逻辑运算包括“与”、“或”、“非”,算术运算包括“加”、“减”、“乘”、“除”、“同余”,比较运算包括“大于”,“小于”,“等于”。
上面介绍了本发明为配置数据生成所设计的一套完备服务接口。下面介绍通过这些接口实现整个配置生成过程(配置数据生成的详细处理流程),程序状态跳转如图3所示:
首先进行初始化;
调用配置文件解析接口120,读取XML文件并初始化成XML树;
调用配置文件解析接口120,读取XSLT文件并初始化成XSLT树;
接下来调用配置服务接口140和配置生成接口130来循环处理XSLT动作代码;
初始化栈,设置当前状态state为”enter”;
当前状态state为”enter”时,读取当前XSLT树结点的孩子结点,如果读取失败,则设置当前状态state为“exit”(图3跳转线3),读取成功,设置当前结点为孩子结点,并设置当前状态state为“run”(图3跳转线1);
当前状态state为“next”时,读取当前XSLT树结点的兄弟结点,如果读取失败,则设置父结点为当前结点。读取成功,则设置兄弟结点为当前节点,并设置当前状态为”run”(图3跳转线8);
当前状态state为“exit”时,如果当前结点为空,则跳出。
switch读取当前结点
当前结点为choose或transform时,设置当前状态为”next”(图3跳转线5);
当前结点为data-box时,读取boxoffset,设置当前状态为”next”(图3跳转线5);
当前结点为for-each时,如果栈中存储的节点数为0,则跳出栈,并设置当前状态为”next”(图3跳转线5),如果不为0,则设置处理节点为栈顶的结点,设置当前状态为”enter”(图3跳转线4);
当前结点为“loop”时,从栈中读取循环次数,如果循环次数为0,则跳出栈,设置当前状态为”next”(图3跳转线5)。如果次数不为0,则设置循环次数减1,设置当前状态为“enter”(图3跳转线4);
当前结点为otherwise或者when时,设置当前结点父结点为当前结点,并设置当前状态为”exit”(图3跳转线10)
当前结点为while时,读取当前节点的test属性,如果测试成功,则设置当时状态为”enter”(图3跳转线4),如果失败则设置当前状态为”next”(图3跳转线5)。
当前状态为run时,读取当前结点:
如果结点为assert,处理当前节点的test属性,对test的内容进行判断,如果错误则进行报错。设置当前状态为”next”(图3跳转线7);
如果当前结点为data-box,从当前节点的size属性中读取data-box的大小,如果大小小于0则报错。将大小存到栈中,并设置当前状态为”enter”(图3跳转线2);
如果当前结点为choose或者otherwise时,设置当前状态为”enter”(图3跳转线2);
如果当前结点为for-each时,读取当前路径中的结点存储在栈中,然后迭代执行栈中的每一个结点,设置当前状态为”exit”(图3跳转线11);
如果当前结点为loop时,读取当前结点的count属性,并把值存到栈中,设置当前状态为”exit”(图3跳转线11);
如果当前结点为transform时,设置当前状态为”enter”(图3跳转线2);
如果当前结点为value-of时,读取当前结点的select节点,并执行,如果执行成功则调写函数将结果写到输出文件中;设置当前结点为“next”(图3跳转线7);
如果当前结点为variable时,读取当前结点的name属性,设置变量,执行当前结点的select属性。设置当前状态为”next”(图3跳转线7);
如果当前结点为when时,读取当前结点的test属性,并对test内容进行判断,如果为真则设置当前状态为“enter”(图3跳转线2),否则设置当前状态为“next”(图3跳转线7);
如果当前结点为while时,设置当前状态为”exit”(图3跳转线11)
}
}
执行完成,返回成功;
本实施例设计的上述高安全配置数据目标文件结构具体如图2所示,每段配置数据结构分为5个部分:随机数210、数据类型220、数据大小230、数据240、校验码250。
随机数的设计采用了蒙特卡洛方法。蒙特卡洛线性同余发生器:
xn+1=(a*xn+c)mod m
本实施例中a、c、m均取常数,经常取c=0,当填写第一段数据时,随机数填写成x1为随机一个常数,因为占用了4个字节,所以大小必须小于4294967296。当填写第2个数据段时,第一个4字节填写随机数x2使用
x2=(a*x1+c)mod m
计算而来,依此类推。接下来4个字节是数据类型,一般是一个给定的结构体标记号,如内核配置结构体标记为1,这四个字节就填写数字1,如果存储的是健康监控配置数据,可以标记为2,直接在这四个字节中填字数字2。当目标机端进行读取的时候,当读到数据类型时,读取数字1,就表明此段数据内容为内核配置数据,如果读取的数字为2,则表示此段数据内容为健康监控配置数据。
接下来的4个字节为数据大小,用来判定读取数据结构的大小。如数据类型为1,存储了内核配置数据,接下来填写数据大小为60,说明内核配置数据共占用空间60个字节。然后读取数据大小后面的60个字节即为内核配置数据。
接下来的部分为数据,存储了从XML配置文件中读取的数据,按照规定的数据结构填写到这部分中。数据段的最后部分为数据检验,占用空间4个字节,采用CRC校验的方式对数据段进行数据校验。
当配置数据生成完毕,并通过工具加载到目标机中。目标机端程序可以通过预先解析的方式判断这个配置数据文件是否遭到破坏。首先目标机端程序通过读取第一个随机数,然后再移动4+4+value(数据大小230)+4个字节,移动到了下一个随机数的位置,读取随机数,并用蒙特卡洛同余法计算判断随机数是否正确。如果不正确说明整个文件数据结构已经遭到破坏。如果此部分正确,然后再对每个数据段计算CRC校验值,与每个数据段的最后四个字节相比较,如果不相同,则说明这个数据段的配置数据遭到破坏,与主机端产生数据时的状态不一致。
本实施例相较于传统配置数据生成方法最大的不同是将配置处理和生成的过程抽象为一组与具体配置数据无关的基本服务,支持多种配置数据、支持算术运算、支持逻辑运算、支持比较运算、支持顺序分支循环多种运行方式。配置数据解析、检查、生成等需求全部可以写到脚本文件中,通过调用基本服务的接口,完成指定的功能。这样配置生成过程不仅能够摆脱与工具、数据检查、编译器的依赖,而且能够最大限度的提升配置数据处理的灵活性。当新的配置数据生成需求到来时,不需要更改工具核心组件服务解释器,只需要重新编写脚本文件,即可完成对新嵌入式系统的适配,极大的减少了后期更新和维护的工作量。并且,本实施例采用的配置数据存储结构具有高度的安全性,配置数据生成目标机端主程序能够在数据加载过程中自动检测配置数据的合法性、一致性。
Claims (1)
1.一种嵌入式系统配置数据生成方法,其特征在于,包括:
读取脚本文件,所述脚本文件包括多组动作命令,由用户采用基于服务的方式提炼配置数据生成所需要的动作代码得到相应的动作命令;
获取配置文件,通过将所述脚本文件中的动作代码解释为相应的服务指令,然后按照服务指令调用相应服务接口将配置文件中的数据取出并填写到二进制目标文件指定的数据结构中,完成对配置数据的检查和生成;
所述配置文件采用XML文件格式,所述脚本文件采用XSLT文件格式;
所述将配置文件中的数据取出并填写到二进制目标文件指定的数据结构中,由配置生成接口(130)实现,所述目标文件采用流式的存储格式;
所述相应服务接口,选自预先提供的一组配置服务接口(140),通过接口的方式提供给用户实现不同的服务,包括:算术操作服务、逻辑操作服务、字符串操作服务、列表操作服务、数据管理操作服务和数据检验操作服务;
所述将配置文件中的数据取出,利用了一组XML配置文件解析接口(120),包括:解析XML路径、提取XML元素、提取XML元素的属性和遍历XML元素
所述目标文件的每段配置数据结构分为依次的5个部分:随机数、数据类型、数据大小、数据内容以及校验码;
所述随机数是采用蒙特卡罗同余法设置得到,用于隔开上一段配置数据,并用推导随机数的方法,验证整个目标文件是否满足格式要求;
所述校验码采用CRC校验的方式,用于验证本段数据是否正确。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010476657.0A CN111679867B (zh) | 2020-05-29 | 2020-05-29 | 一种嵌入式系统配置数据生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010476657.0A CN111679867B (zh) | 2020-05-29 | 2020-05-29 | 一种嵌入式系统配置数据生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111679867A CN111679867A (zh) | 2020-09-18 |
CN111679867B true CN111679867B (zh) | 2024-02-27 |
Family
ID=72452802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010476657.0A Active CN111679867B (zh) | 2020-05-29 | 2020-05-29 | 一种嵌入式系统配置数据生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111679867B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101901234A (zh) * | 2009-05-27 | 2010-12-01 | 国际商业机器公司 | 将xml数据转换为资源描述框架数据的方法和系统 |
CN103034481A (zh) * | 2011-10-10 | 2013-04-10 | 深圳市证通电子股份有限公司 | 金融自助终端及其界面实现方法 |
CN104461619A (zh) * | 2014-11-26 | 2015-03-25 | 卡斯柯信号有限公司 | 一种嵌入式软件功能可配置方法 |
CN104598263A (zh) * | 2014-12-04 | 2015-05-06 | 广州酷狗计算机科技有限公司 | 应用程序运行方法、配置文件生成方法和装置 |
CN105607923A (zh) * | 2015-12-10 | 2016-05-25 | 中国航空工业集团公司西安航空计算技术研究所 | 一种跨平台的航空电子系统配置数据生成与恢复方法 |
EP3070558A1 (de) * | 2015-03-17 | 2016-09-21 | Sick Ag | Verfahren zum konfigureren eines embedded-geräts |
CN109976803A (zh) * | 2017-12-27 | 2019-07-05 | 航天信息股份有限公司 | 一种文件的生成方法及装置 |
CN110209389A (zh) * | 2019-06-05 | 2019-09-06 | 卡斯柯信号(成都)有限公司 | 一种基于xml的数据生成工具开发系统 |
CN110222318A (zh) * | 2019-06-05 | 2019-09-10 | 卡斯柯信号(成都)有限公司 | 基于xml的数据生成工具开发方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6687897B2 (en) * | 2000-12-01 | 2004-02-03 | Microsoft Corporation | XML based script automation |
JP5142638B2 (ja) * | 2007-09-03 | 2013-02-13 | キヤノン株式会社 | 文書変換装置、文書変換方法 |
US8516459B2 (en) * | 2008-03-25 | 2013-08-20 | Intel Corporation | XSLT-specific XJIT compiler |
WO2014062194A1 (en) * | 2012-10-19 | 2014-04-24 | Halliburton Energy Services, Inc. | Self-defining configuration apparatus, methods, and systems |
-
2020
- 2020-05-29 CN CN202010476657.0A patent/CN111679867B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101901234A (zh) * | 2009-05-27 | 2010-12-01 | 国际商业机器公司 | 将xml数据转换为资源描述框架数据的方法和系统 |
CN103034481A (zh) * | 2011-10-10 | 2013-04-10 | 深圳市证通电子股份有限公司 | 金融自助终端及其界面实现方法 |
CN104461619A (zh) * | 2014-11-26 | 2015-03-25 | 卡斯柯信号有限公司 | 一种嵌入式软件功能可配置方法 |
CN104598263A (zh) * | 2014-12-04 | 2015-05-06 | 广州酷狗计算机科技有限公司 | 应用程序运行方法、配置文件生成方法和装置 |
EP3070558A1 (de) * | 2015-03-17 | 2016-09-21 | Sick Ag | Verfahren zum konfigureren eines embedded-geräts |
CN105607923A (zh) * | 2015-12-10 | 2016-05-25 | 中国航空工业集团公司西安航空计算技术研究所 | 一种跨平台的航空电子系统配置数据生成与恢复方法 |
CN109976803A (zh) * | 2017-12-27 | 2019-07-05 | 航天信息股份有限公司 | 一种文件的生成方法及装置 |
CN110209389A (zh) * | 2019-06-05 | 2019-09-06 | 卡斯柯信号(成都)有限公司 | 一种基于xml的数据生成工具开发系统 |
CN110222318A (zh) * | 2019-06-05 | 2019-09-10 | 卡斯柯信号(成都)有限公司 | 基于xml的数据生成工具开发方法 |
Non-Patent Citations (2)
Title |
---|
李盛钢 ; .一种基于XML脚本技术的嵌入式系统测试方法.电脑知识与技术.2010,(07),全文. * |
裴朝 ; 李华 ; 王延君 ; 丁志盛 ; .汽车电子OSEK配置器的设计与实现.单片机与嵌入式系统应用.2007,(02),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111679867A (zh) | 2020-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106648662B (zh) | 基于工程造价计算描述语言bcl的报表生成装置及生成方法 | |
CN107273117B (zh) | 一种编程友好型的敏捷代码自动生成系统 | |
CN111459889B (zh) | 一种用于物联网平台的设备数据模型生成方法和装置 | |
EP2754044A2 (en) | Profile guided jit code generation | |
CN111985055B (zh) | 一种模型封装方法、装置及电子设备 | |
CN111078555B (zh) | 一种测试文件的生成方法、系统、服务器和存储介质 | |
CN110597501A (zh) | 一种基于强静态脚本语言的自然语言编程方法及装置 | |
US20110239192A1 (en) | Fully declarative build system for build optimization | |
CN110532167A (zh) | 一种基于模型转换的状态机模型时序性质验证方法 | |
JP2000232516A (ja) | 妥当性検査規則を作成するための方法、生成モジュール、サーバ、制御モジュール、および記憶手段 | |
Darvas et al. | PLC program translation for verification purposes | |
CN111679867B (zh) | 一种嵌入式系统配置数据生成方法 | |
Hansen et al. | HAZOP analysis of UML-based software architecture descriptions of safety-critical systems | |
Schlich et al. | Direct model checking of PLC programs in IL | |
CN110110299B (zh) | 文本变换方法、装置以及服务器 | |
Pereira et al. | An IOPT-net state-space generator tool | |
Darvas et al. | Generic representation of PLC programming languages for formal verification | |
CN112130723B (zh) | 用于针对数据执行特征处理的方法及系统 | |
Athan et al. | Design and implementation of highly modular schemas for xml: Customization of ruleml in relax ng | |
CN107451167A (zh) | 站内点击位的点击数据获取方法和系统 | |
Havelund | Java PathFinder user guide | |
CN113590129B (zh) | 一种基于同步反应式构件的代码自动生成方法 | |
CN117369789B (zh) | 基于可视化配置工具生成代码的方法及可视化显示设备 | |
Boyer | On the Expressive Power of Declarative Constructs in Interactive Document Scripts | |
Haga et al. | Inconsistency Checking of UML Sequence Diagrams and State Machines Using the Structure-Behavior Coalescence Method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |