用于配置模块化系统的方法和软件系统的制作方法

文档序号:6568120阅读:144来源:国知局
专利名称:用于配置模块化系统的方法和软件系统的制作方法
用于配置模块化系统的方法和软件系统本发明涉及用于配置包含至少 一个模块的系统(模块化系统)的方 法以及软件系统。 现有技术包含至少一个模块的系统(模块化系统),尤其可以理解为以下所 述种类的微处理器程序。在这种情况下模块可以与函数单元相等同看 待。但该方法并不局限于微处理器程序,而是通常可以用于配置模块化 系统,在所述模块化系统中单个模块被配置并被结合。当前微处理器应用于所有重要的技术领域。其应用在此并不局限于通常的个人计算机(PC),而是此外还扩展到许多不同的电子设备,比如测量设备、控制设备等,尤其在汽车制造上。现代微处理器程序或计算机程序几乎都如此来编程,使它们可以胜 任尽可能宽广的应用领域。 一方面通过所提供的、而又应当涵盖尽可能 多的用户期望的功能性,另一方面通过其上应执行所述微处理器程序的 基础硬件,来确定所述应用领域。所述基础硬件在此表示不同的(计算 机)系统,其中所述系统应用于不同的领域,由不同的部件(比如处理 器或总线系统)来构造,和/或配有不同的外围设备。不同的功能性可能源于基础硬件的不同构造或者源于不同的用户 期望。微处理器程序的所谓配置包括微处理器程序与基础硬件以及与特 定用户期望的一种匹配以及一种专用化。所述配置比如包括激活或关闭微处理器程序的几个函数、特定变量 的起始值的设置或者特定变量类型的给定和说明。已知的是,在微处理器程序中所使用的变量和函数在一个所谓的头 文件中被说明,并实施微处理器程序的配置,其方式是在头文件中改变 几个变量或函数名称。比如可以根据某一配置来把一个特殊的函数分配 给在该微处理器程序中所使用的以及在该头文件中所说明的函数名 称。通常微处理器程序用所谓的高级语言,比如C、 C++、 Scheme或 JAVA编写。通常将一个以高级语言编写的微处理器程序称为源代码。 为了能够在微处理器上执行这种微处理器程序,必须将所述源代码转换成所谓的机器码,其中该机器码包含可由处理器执行的指令。机器码可 以通过对源代码的解释或编译来生成。一个微处理器程序典型地包含多个函数单元。一个或多个函数单元 的源代码在此被存储在一个文件中。 一个或多个这种文件被划归为 一个 头文件。从而一个微处理器程序典型地由多个文件组成。通过改变内部 几个头文件来实施的这种微处理器程序的配置从而是非常错综复杂 的,并且通常仅仅可以由源代码的编写者来实施。此外还必须生成所有 头文件的使用说明书,这是非常耗费的,其中该使用说明书本身大多都 是非常错综复杂的。还已知的是,为了配置微处理器程序而为其分配一个特殊的函数单 元,借助该函数单元比如可以通过改变给定参数的值来配置整个微处理 器程序。该函数单元比如可以由执行中的微处理器程序调用,并被执行 以配置该微处理器程序。这种为配置微处理器程序而设置的函数单元然 而只允许在给定的范围内进行配置。利用这种函数单元不能实现比如用 于把微处理器程序与一个新的硬件相匹配的或者用于把微处理器程序 与新的用户期望相匹配的配置。此外,用于配置的所述函数单元必须专 门针对所涉及的微处理器程序来开发,并且不能用于其它的微处理器程 序。在优先权期限内的、未事先乂>开的102004005730.3中,申请人 描述了用于克服这种问题的一个第一方案。在所描述的方法中,改善了 微处理器程序的配置,并实现了优化资源的实施,其方式是,在一个与 实施无关的配置文件中规定了在用户(配置者)与微处理器程序之间的 所要实施配置的一个抽象描述,其中所述与实施无关的配置文件是配置 的基础。借助所述的与实施无关的配置文件自动地生成一个与实施有关 的配置文件,然后所述与实施有关的配置文件被用于配置该微处理器程序。为了保证配置过程无误,并最终为了保证微处理器程序无误,在生 成所述与实施有关的配置文件时实施了多次验证过程。所述验证过程的生成和连接是困难的和耗费的,尤其因为这些验证过程是以程序代码来 生成以及编程的。从而本发明的技术问题在于,进一步简化并尽可能清晰和灵活地进 行微处理器程序的配置。该技术问题通过根据权利要求l所述的一种方 法、和根据权利要求13所述的一种系统以及一种相应的软件系统产品和一种相应的计算机单元而得到解决。 本发明的优点确定一个配置的数据与一个打算具体实施无关地被存储在一个或 多个与实施无关的配置文件中。所述配置文件的与实施无关性尤其实现 了对所存储信息的抽象描述。这使对于配置微处理器程序重要的信息能 够尤其良好可读地被存储,并从而大大简化所述配置。由于所述配置文 件与实施无关,尤其能够以简单的方式来实现微处理器程序的配置,如 此使得该微处理器程序比如可以在一个新的计算机系统中执行,其中该 计算机系统的确切参数在生成该微处理器程序时还是完全未知的。 通过配置数据集可以集中预备所有对于配置重要的数据。 借助在所述配置数据集中存储的配置数据自动地对至少一个模块 进行配置。按照根据本发明的方法的一种实施,规定,借助在所述配置数据集 中存储的配置数据自动地生成至少一个与实施有关的配置文件,其中根 据在至少一个与配置有关的配置文件中存储的信息来实施所述至少一 个模块的自动配置。在该步骤的每个实施方案中都根据所述与实施无关的配置文件使 单个或多个参数值具体化。在这样一种具体化中比如把相对值替换为绝 对值。同样也可以给几个值或数据区域分配特定的数据类型或数据结 构。所述与实施有关的配置文件考虑了与实施有关的特性,比如在源代 码编写时所使用的一种或多种编程语言或者应执行该微处理器程序的 硬件的特性。比如可以借助所谓的脚本来实施借助在所述与实施无关的配置文 件中存储的信息配置数据集的构建或更新。在此, 一个脚本表示可由一 个特殊的微处理器程序来执行的一个指令序列。这种特殊的微处理器程序比如是AWK或Perl。这些特殊的微处理器程序也可以用于根据在配 置数据集中存储的配置数据来生成与实施有关的配置文件或模块的配 置。另外在本发明的方法中还应用了配置规则。在此典型地给每个配置 参数都配备了 一个或多个配置规则。在所述配置规则中比如可以规定, 哪些数据源或数据源组对于某一配置参数是有效的、必要的或禁止的。在把该方法用于复杂软件系统时,数据源尤其理解为该软件系统的诸如 配置数据的组件。在汽车领域中配置数据的可能的数据源是诸如拉姆达 控制、驾驶踏板处理、诊断系统等的软件组件。在说明有效数据源时可以规定诸如"所有源无区别,,或"包括所有子组件的组件x"的群特征。在所述配置规则中尤其明文规定了在形式和内容上如何来构成所述单 个配置参数。总之本发明的措施能够以尤其简单的方式避免耗费的和分 散的验证过程,反之能够集中地和一次性地(并从而是连贯一致地)实施。同样可以借助合适的脚本来实施配置参数与配置规则的比较。使用 集中配置完全能够对所述特性进行形式上的定义并对配置参数进行限 定。从而大量和详细的验证被集中地实现并被计划。在当前所描述的解 决方案中验证过程必须在相应的脚本中分立地被实施和编程,与当前所 描述的解决方案相反,现在一个处理器或脚本可以集中地实施规则验 证、结构验证和/或交叉关系验证。通过本发明的措施实施了从程序代码到规则的一种变换。通过把配置规则作为组件接口 (interface)的 组成部分来处理,实现了进一步的接口验证以及可视性限定。从而能够 提早识别并避免在更换单个组件时的冲突。本发明的重点从而是以下的认识可以大大改善一个模块化系统 的、尤其微处理器程序的配置,其方式是在用户(配置者)和系统之间 在与实施无关的配置文件中规定所要实施的配置的一个抽象描述,其中 所述与实施无关的配置文件是配置的基础。通过应用配置规则可以在一 个提早的处理时间点对配置参数进行验证,这有利地降低了为此必要的 耗费。借助所述与实施无关的配置文件可以自动地生成一个与实施有关 的配置文件,其中所述的与实施有关的配置文件然后用于配置该系统。 但是在物理上没有形成这种文件的情况下,也同样可以配置该系统。因 为所述配置参数服从给定的配置规则,所以可以实现与给定的外部参数 的简单而灵活的匹配。本发明的方法从而能够抽象地并从而尤其良好可 读地提供对配置进行描述的信息。通过使每个实施细节相独立,另外还 达到了尤其高的灵活性,其中这种灵活性通过所述配置规则是可概观的 和可掌握的。仍然具有分散配置的优点。比如一个多通道测量系统的特性不仅可以在分配给该系统的一个配置文件中集中地存储,而且可以在分配给相 应传感器/通道的多个与实施无关的配置文件中集中地存储。然后这些 信息被聚集到一个集合中,并可以由脚本来集中分析。此外,比如在一个分工的过程中,所述配置规则文件带来所述与实 施无关的配置文件的安全使用。在一个与实施无关的配置文件中尤其可 以包含具有不同配置规则文件的配置单元,由此不同模块的配置要求可 以成批i也处理。在本发明方法的一个尤其优选的扩展中,在自动构建和/或在自动 更新在配置数据集中存储的配置数据时,和/或在根据在该配置数据集 中存储的配置数据来自动配置至少一个模块时,和/或在根据在该配置 数据集中存储的配置数据来自动生成一个与实施有关的配置文件时,所 述配置规则被应用。同样可以规定在生成所述的与实施无关的配置文件 时就已经应用所述配置规则,这在下文中以配置文件编辑器的例子来描 述。在所述的各点中,可以尤其简单地来实施配置规则的连接。从而在 此达到 一个尤其有利的性价比。适用的是,如果把配置规则存储在至少一个配置规则文件中了。在 此就出现了规定多个配置规则文件的情况,比如为每个函数单元规定一 个配置规则文件,或者为每个配置文件规定一个配置规则文件。在一个 此种的配置规则文件中存储被分配给函数单元的配置参数的规则。由此 能够达到较高的概观性。所述单个规则文件在配置进行期间适用地被聚 集到 一个集中的规则文件中。当然也可以为所有要处理的配置参数仅仅 规定一个配置规则文件。在所述方法的一个优选扩展中,给一个配置参数分配了至少一个配 置规则,其中该配置规则描述了用于处理该配置参数的权限、形式特 性、决定存在的特性或确定其值的特性。作为本发明方法的另一有利扩 展,在下文中进一步描述通过关联信息来规定一个配置。适用的是,如 果在此规定了涉及配置规则的一种(处理)权限。从而可以以简单的方 式在配置参数中确定一种分级体系,其中所述分级体系描述一种相互之 间的可改变性。尤其可以控制哪个配置参数可以或允许由哪个另外的配 置参数来描述或改变。在此出现了通过配置规则来描述配置参数的其它 特征,比如-一个标准值(缺省值),如果没有为一个参数提供值,那么所述的标准值就被用作替代值;从而使所有对配置数据进行处理的后接过程 可以信赖一个配置值的存在;-有效参照目标的 一个说明,如果所属的配置参数是通过代码来区 分的配置调节集合的一个列表;画一个允许的值范围(比如最小/最大值、增量[比如仅值0、 0.1、 0.2等]、在文字参数中的最小/最大文字长度、确定的文本类型(比如 ISO数据)、满足一个确定的文本格式的文本、或与多个给定文本之一 相一致的文本);-用于自动把一个值转换为另 一形式的一个规定;-由一个值的抽象的/物理的表示到一个内部表示的和/或反转的 一个换算公式;-比如应当怎样在显示器上显示一个配置值的一个说明(比如在 printf-格式中的格式串);-至另一系统特性的一个连接,比如在软件系统或微处理器程序中的一个变量、或者一个硬件特性或资源; -配置值的一个单元;-对文本信息中空字符和换页的一种处理。在此可以为每个配置参数规定所述规则中的单个、多个或全部以及 此外的规则。通过这种措施能够尤其有利地提高自动化程度,并能够实 现微处理器程序的可靠配置。如果一个模块或一个函数单元比如预计要 用来收集测量值,那么就可以在所述相应的规则中描述,哪些传感器由 硬件来提供以及具有哪种精确度。所述参数仅仅可以在这些规则种被设 置。在本方法的一个有利的改进中,自动生成至少一个关联信息,其中 该关联信息描述在配置数据集中所具有的至少两个配置数据的关联。根 据所述的至少一个关联信息来生成所述的至少一个与实施有关的配置 文件。关联信息比如可以描述一个配置参数的变化是否影响到另一配置 参数。如果比如一个资源仅仅预留给一个模块,那么在实施该模块/函 数单元期间该资源就不提供给其它的函数单元。利用关联信息可以获知 哪些函数单元需要某一资源并从而不能同时执行。从而关联信息也可以 用于资源管理。所述关联信息被用于配置信息的续传(前向)。在前向 续传中,分配给某一组件的一个配置处理级根据向它提供的配置要求或配置微调通过一个可自由选择的算法来导出其它组件的配置,并将如此 获得的调节续传到所述的其它组件。所述的有利的措施尤其可以用于自 动配置子组件。此外还产生了把前向续传的意图存储在配置规则中的机 会,以使在真正进行配置的时间点之前能够验证,通过配置数据的这种 续传是否可能产生自循环(参数A配置参数B,参数B又配置参数A )。 通过存储在配置规则中,继续对几个组件之间的关联进行形式描述,并 从而提供给其它进一步的处理过程。所述前向续传除了可以规定所述的 被动的处理方法之外,还可以规定主动的处理方法。在主动的前向续传 中,不仅根据一个不变的数据,而且有利地根据一个(可能是复杂的和 /或有条件的)表述来对某一配置参数的调节进行详细说明,其中所述 的表述包含关于调节其它参数的参考。此外还有利地规定,将一个配置 参数的详细说明作为整体(也即所述详细说明的存在)再次与其它配置 参数的调节-或者由这些调节组成的可能任意复杂的表述-相关联。通过 应用配置规则,可以对前向顺序进行自动确定,由此在接口验证的时间 点就可以识别可能的自循环。在本方法的一个优选实施方案中,生成多个与实施无关的配置文 件,并且所述的与实施无关的配置文件中的每一个都被分配给至少一个 模块或一个函数单元。通过作为信息而被存储在所述与实施无关的配置 文件中的配置参数可以尤其简单地被找到并被改变,这实现了尤其简单 的配置。比如可以把确定一个配置的信息、也即配置参数按照受其影响 的功能或硬件来排序。另外,由此还实现了所述与实施无关的配置文件 与新添加的函数单元之间的尤其简单的匹配。在最简单的情况下,给一 个新添加的函数单元分配一个特殊的与实施无关的配置文件以及比如 一个配置规则文件。有利地生成多个与实施有关的配置文件,并且所述 与实施有关的配置文件中的每一个都被分配给至少一个函数单元。所述 的与实施有关的配置文件的这种结构使所产生的与实施有关的配置文 件更加清晰明确。如果源代码具有同样的结构,即一个或多个函数单元 位于不同的文件中,那么就可以做到给每个源代码文件都分配一个与实 施有关的配置文件。 一个尤其清晰明确的结构也可以通过给每个与实施 无关的配置文件分别分配一个与实施有关的配置文件来实现。优选地根据硬件的至少一个特性来生成所述至少一个与实施有关 的配置文件,其中在所述硬件上应当能够将已配置的模块化系统的至少一部分作为微处理器程序来安装。这种硬件特性比如可以是所提供的处 理器的数量或者是连接在该硬件上的传感器的类型和数量。如果在生成 所述与实施有关的配置文件时考虑这类硬件特性,那么就可以对该微处 理器程序进行一个尤其精密的配置。从而比如可以尤其利用关联信息自 动地形成一个针对执行速度和资源消耗优化的配置。在另一优选的实施方案中,自动生成一个说明书。该说明书描述了 在所述至少一个与实施无关的配置文件中、和/或在至少一个与实施有 关的配置文件和/或配置规则中、和/或在至少一个配置规则文件中所存 储的信息。这种自动生成的说明书一方面提供了微处理器程序的可维护 性,另一方面能够尤其简单地以简单的方式来计划和准备一个配置,并 回忆理解已执行过的配置。通过自动生成所述的说明书,保证了它与实 际的配置或配置规则相一致。如果应当对该模块化系统实施新的配置, 那么就可以借助这种说明书尤其简单地来确定,哪些参数值必须或允许 改变以及它们遵循哪些规则。适用的是,如果在根据本发明的方法中为了生成和/或改变所述至 少一个与实施无关的配置文件而使用一个微处理器程序,使得配置规则得以考虑。这种计算机程序或微处理器程序比如可以称为配置文件编辑 器,这为专业人员进行了充分的功能描述。通过在生成所述配置文件时 就已经应用配置规则,从一开始就能够保证配置参数与配置规则的一致 性。可以避免事后的修改。优选地以基于XML的格式生成所述至少一个与实施无关的配置文 件和/或至少 一 个配置规则文件。XML ( Extensible Markup Language,可扩展标记语言)是一种标准化的元语言,其中该语言能 够生成结构化的语言。如果所述至少一个与实施无关的配置文件和/或 至少一个配置规则文件是用一种与XML兼容的、结构化语言来生成的, 那么由于这种文件是良好可读的,从而使一个配置变得轻松。另外这种 文件还尤其是机器良好可读的。尤其存在多种局部的但同样是标准化的 软件装置(Tools ),借助这些软件装置可以对基于XML格式生成的文 件进行处理和加工。在本方法的一个优选实施方案中,根据所述配置数据来自动获知, 一个该模块化系统所包括的模块是否是该模块化系统所需要的,并且只 在该模块是该模块化系统所需要的情况下,才实施对该模块的一个配置。通过仅对在被配置系统的执行中实际所需要的模块/函数单元才实 际进行配置,能够尤其快速地实施配置。此外,如果涉及一个微处理器 程序,那么就做到了使被配置的系统尽可能少占用存储器空间,因为比 如仅仅对应当实际被使用的这种函数单元实施从源代码到机器代码的 转换。本发明的方法有利地用于配置一个微处理器程序。但原则上可以用 于配置由模块(比如文本、信息、机械元件等)组成的每种系统。该命题还通过开头所述种类的 一种软件系统而得到解决。在此该软件系统、尤其一种计算机程序或微处理器程序具有 -至少一个配置规则文件; -至少一个与实施无关的配置文件;-具有一个配置文件的配置数据集和/或用于根据在所述至少一个 与实施无关的配置文件中所存储的信息来生成一个配置数据集的装置;-用于改变和/或从该配置数据集中读出配置数据的装置; -用于根据在所述配置数据集中所存储的配置数据来自动配置所述至少一个模块的装置。在一个优选的扩展中,用于根据在所述配置数据集中所存储的配置数据来自动配置所述至少一个模块的所述装置具有-用于根据在所述配置数据集中所存储的配置数据来自动生成一 个与实施有关的配置文件的装置;以及-用于根据在所述与实施有关的配置文件中所存储的信息来自动 配置所述至少一个函数单元的装置。如果所述软件系统在一个计算机、 一个微处理器或一个相应的计算 机单元、尤其根据本发明的计算机单元上执行,那么所述软件系统优选 地具有用于实施本发明方法的装置。本发明以一种软件系统的形式来实现在此是尤其有意义的。在此该 软件系统可以在一个计算设备、尤其在一个微处理器上运行,并适于实 施本发明的方法。在这种情况下,本发明从而通过所述软件系统来实 现,如此使得该软件系统如同该方法一样以同样的方式来体现本发明, 其中该软件系统适于实施该方法。根据本发明的另 一软件系统或计算机程序具有程序编码装置,以在考虑配置规则的情况下来生成或改变与实施无关的配置文件(配置文件 编辑器)。该软件系统可优选地存储在一个存储器单元(存储器介质、数据栽 体)上。该存储器单元可以构造为随机存储器、只读存储器或闪存。该 存储器单元还可以构造为数字化视频光盘(DVD)、光盘(CD)或硬盘 (Hard Disc)。根据本发明的一种软件系统产品、尤其一种计算机或 微处理器程序产品包含有程序编码装置,其中该程序编码装置存储于一 个存储器单元、尤其一个机器可读的或计算机可读的数据载体上。合适 的数据载体尤其是软盘、硬盘、闪存、EEPROM、 CD-ROM、 DVD、 RAM、 ROM等。也可以通过计算机网络(因特网、内联网)来下载程序。根据本发明的一种计算机单元、尤其控制设备,具有一个微处理 器,并被编程用于实施根据本发明的方法。在汽车制造领域中使用 一种根据本发明的方法、 一个#>据本发明的 软件系统、 一个根据本发明的软件系统产品或一个根据本发明的计算机 单元是符合目的的。当然,所述应用并不局限于此。本发明的其它优点和扩展由说明和附图得出。当然,之前所述的以及之后还要解释的特征不仅可以以相应给出的 组合、而且可以以其它组合或以单独的形式来使用,而不脱离本发明的 范畴。本发明借助一个实施例在附图中概略地示出,并在下文中结合附图 详细解释。


图1示出了用于实施本发明方法的一种软件系统的一个实施方 案;以及图2示出了本发明方法的一个实施方案的概略流程图。 在图1中示出了用于实施本发明方法的一种软件系统。该软件系 统具有多个与实施无关的配置文件1。给每个配置文件1都分配了一个 文件名。在图1中所示的与实施无关的配置文件比如文件名为 conf —1. xml 、 conf 一2 . xml 、 conf 一3 . xml 至conf 一n. xml 。 该软 件系统同样具有多个配置规则文件lb。给每个配置规则文件lb都分配 了一个文件名。在图1中所示的配置规则文件比如文件名为 rule l.xml、 rule 2.xml、 rule 3.'xml 至rule n.xml。 文件后缀xml表示所述与实施无关的配置文件1和配置规则文件lb以一个 基于XML的格式存在。 一个基于XML格式而存在的文本文件能够按照 可给定的规则来组织所述文本文件的结构。这样构造过的文本文件可以 尤其良好地由人工或机器来读和处理。所述与实施无关的配置文件1和配置规则文件lb被输入给一个脚 本2。该脚本2比如被构造为所谓的Perl脚本。Perl是一种解释语 言,其语法基于编程语言C并且使用由相应的操作系统提供的辅助程 序。借助该脚本2,读出所述与实施无关的配置文件l,以及提取其中 所存储的信息并将其存储在一个配置数据集3中。在考虑配置规则文件 lb中的配置规则的情况下来提取配置信息或配置参数。如果配置参数 与配置规则相矛盾,那么这能在配置的早期就已经被识别并被指出。为 此比如可以在配置规则文件中或在脚本2中加入相应的提示文字或错误 文字,其中这些文字在违反相应的规则时或违反一个规则类型时被输 出。同时还确定并存储可能存在的与另外的配置脚本4的关联(前向)。 配置规则文件lb在该软件系统中的位置可以作为示例来看待。在所述 软件系统的另一实施方案中所述配置规则文件lb比如可能分配给脚本 4。所述的另外的配置脚本4同样比如是Perl脚本。同样也可以考虑 的是,所述另外的配置脚本4中的一个或多个是可执行的微处理器程序 (机器码),或者以另一脚本语言、比如AWK来存在。用参考符号5表示与实施有关的配置文件。所述与实施有关的配 置文件5比如以编程语言来编码,其中需要配置的源代码也用该编程语 言编写。这种与实施有关的配置文件可以由一个编译器来进行处理。用参考符号7表示一个微处理器程序,它具有多个函数单元8。借 助在图2中所示的流程图来描述根据本发明的软件系统的作用原理。在图2中所示的根据本发明的一个方法用于配置微处理器程序的 流程图开始于步骤100。在一个步骤101中生成或改变与实施无关的配 置文件l。所述与实施无关的配置文件1特征尤其在于,它能够借助那 里所存储的信息来抽象地描述具体的配置值或配置参数。具体的配置值 比如可以确定用于测量电压的一个传感器模块的测量范围。比如可以将 一个测量范围抽象地说明为具有值3-5伏。如同要配置的功能单元8所期待的一样,需要由此生成的、与实施有关的值却可能比如位于10.000和20.000之间。该微处理器程序中控制该传感器的模块的一 个函数单元8比如在这种情况下就必须借助具体的配置值10.000和 20.000来进行配置,以实现在3-5伏的一个测量范围内的测量。另外还给本方法提供了配置规则文件lb (在图1中的 rule_l.xml至rule—x.xml)。通常并不是在该方法的每次实施中 都生成或改变所述配置规则文件lb。所述配置规则文件lb描述所述配 置参数的形式和内容特性。在步骤101中所生成的或被改变的与实施无关的配置文件1和配 置规则文件lb比如是以一个基于XML的格式生成的。这种格式能够尤 其有利地实现所述与实施无关的配置文件1和配置规则文件lb的一种 清晰明确的结构化。这提高了所述与实施无关的配置文件1和配置规则 文件lb的可读性,并且比如由于可以迅速找到要修改的配置数据,从 而简化对所述与实施无关的配置文件1的修改。对于一个尤其大的微处 理器程序,其中对于它的配置需要大量的配置数据,也可以仅仅规定一 个与配置无关的配置文件或配置规则文件。在此可以通过合适的XML 结构来实现对所述与实施无关的配置文件1中所存储的信息以及对所述 配置规则文件lb中所存储的配置规则的结构化。然而尤其有利的是规定多个与实施无关的配置文件和配置规则文件。这些与配置无关的配置 文件1和配置规则文件lb中的每一个都比如可以分配给一个或多个函 数单元8。由此能够尤其清晰明确地实施对所述与实施无关的配置文件 和配置规则文件的生成或改变。此外由此还提高了单个与实施无关的配 置文件和配置规则文件的可重复利用性。这对于还将要重复使用源代码 中单个函数单元8的项目尤其有利。在一个步骤102中完成在脚本2中所列出的指令。该脚本2致使 所述无关的配置文件1和配置规则文件lb被读入。如果所述与实施无 关的配置文件1和/或配置规则文件lb是基于一种结构化格式,比如 一种基于XML的格式,那么就可以借助该脚本2尤其有利地对所述与 实施无关的配置文件1和/或配置规则文件lb的内容实施语法和语意 分析。从而比如可以识别在配置数据说明中的(文件)错误(缺少字符、 过多字符、错误字符等)。所述与实施无关的配置文件l和配置规则文 件lb的基于XML的格式优选地具有一种分级结构,这种分级结构有利地依从函数单元8的自身结构、其关系和/或其近似主题。借助脚本2 在构建这种分级结构时,并从而还在构建源代码时就可以识别错误。该步骤102有利地具有对所找到的错误进行处理的措施。这比如 可以通过输出关于错误的信息来实现。同样可以想象采用随机的方法来 消除错误。在该步骤102中还借助配置规则来对配置参数进行验证。在此尤 其验证配置参数在形式上和内容上是否与所属的配置规则相对应。如果 不是这种情况,那么就分支返回到步骤101,在该步骤101中为了消除 错误而实施对所述与实施无关的配置文件1的修改。如果在步骤102 中没有识别到错误,那么就分支到步骤103中,在步骤103中构建或 更新配置数据集3。该脚本2在步骤103中提取在所述与实施无关的配置文件1中已 有的配置数据,并将其存储到该配置数据集3中。该配置数据集3在此 比如可以构造成数据库。同样可以想象,在本发明的软件系统中将所述 的配置数据集3作为在一个存储器区域中预留的数据结构来实现,其中 保证了该脚本2对配置数据集3中所存储的配置数据的读写访问。在一个步骤104中获得关联。这种关联比如可以描述该微处理器 程序的哪些函数单元8在当前的配置中必须实际被处理。借助这些关联 可以决定在以后步骤之一中究竟是否必须为某一函数单元8生成一个与 实施有关的配置文件。所述关联此外还描述,哪些具体的配置数据与哪 些抽象的配置数据有关。从而可以想象,在一个与实施无关的配置文件中一个抽象配置数据的改变造成多个具体配置数据的改变。如果所述另外的脚本4在其一侧改变所述的配置数据集3,那么也 可能产生关联。从而必须获得并存储该脚本4的正确的调用顺序(激活 顺序)。关联还可以描述一个或多个硬件组件与几个配置数据之间的关 系。这比如能够识别一个规定的配置是否实际可以在某一硬件上执行。在一个步骤105中生成与实施有关的配置文件5。为此,借助一 个脚本4或多个脚本4首先调用在配置数据集3中所存储的配置数据。 在本实施例中,该脚本4构造为Perl脚本。借助该脚本4尤其把在配 置数据集3中所存储的抽象配置数据转变为具体的配置数据,其中所述 的具体的配置数据然后被存储在与实施有关的配置文件5中。在此还优 选地使用在步骤104中所获得的关联。在步骤105中生成的与实施有关的配置文件5比如可以是头文件 (在图1中的file—l.h、 file_2.h、 file_3.h)。所生成的与实 施有关的配置文件5同样也可以包含源代码(在图1中的file—2.0、 file_k.c)。由脚本4根据抽象的配置数据所生成的具体配置数据典 型地通过变量和/或函数参数的赋值以及作为一个编程语言中的指令来 实现。在此所述的编程语言对应于微处理器程序7的函数单元8所采用 的编程语言。如果比如微处理器程序7的函数单元8是用编程语言C++ 编写的,那么具体的配置数据比如可以通过所谓的Define-指令或通 过定义常数变量来实现。借助该脚本4还可以根据在配置数据集3中所 存储的配置数据来生成函数,其中所述函数承担复杂的任务-比如硬件 组件的初始化或者对单个软件组件或硬件组件的存在进行验证-并本身 作为源代码以高级编程语言来实现。该源代码然后可以被存储在一个或 多个与实施有关的配置文件中(在图1中的file—2.c、 file—k.c)。 为此脚本4比如可以包含一个所谓的模板,该模板比如由0++指令组 成,这些指令根据在配置数据集3中所存储的配置数据而被更新并被存 储在一个与实施有关的配置文件5中。在一个步骤106中该微处理器程序7的函数单元8被更新。这比 如可以通过自动调用一个编译器6来实现,其中该编译器把以源代码存 在的函数单元8翻译成机器码。为此该编译器6读入所述的与实施有关 的配置文件5,并根据在所述与实施有关的配置文件5中所存储的具体 配置数据来控制生成机器码。也可以想象的是, 一个或多个函数单元8 已经以机器码的形式存在。在这种情况下,该编译器比如可以在考虑头 文件(file—l.h、 file_2.h、 file_3.h)的情况下把由脚本4所 生成的源代码(在图1中的file_2.c、 file—k.c)翻译成机器码, 并把如此翻译的机器码借助分配给该编译器6的一个所谓连接器与代表 函数单元8的机器码相连接。在一个步骤107中该方法结束。在该步骤中如此配置该微处理器 程序7,使得在所述与实施无关的配置文件中所存储的具体配置数据在 所生成的机器码中得以考虑。该脚本2和/或该脚本4可以以另一脚本语言来编写,或者作为可 执行的程序来构造。同样也可以在启用脚本4时才使用配置规则。当然,在图2中所示的实施步骤可以变化,并且处理顺序可以部分地改变。该方法尤其还可以从一个或多个与实施无关的配置文件出发,具有一个或多个串连执行的脚本2,具有分别生成一个或多个与实 施有关的配置文件5的一个或多个脚本4,并且该微处理器程序7同样 可以具有一个或多个函数单元8。利用本发明的方法尤其能够识别,一 个或多个函数单元8是否在由所述与实施无关的配置文件所给定的配置 中被实际使用。如果不是这种情况,那么这可以通过分配给该配置数据 集3的、未示出的软件装置来识别。这能够使这样一个函数单元8不被 配置,并借助所述与实施有关的配置文件5致使该编译器6不把所述函 数单元8加入要生成的机器码中。由此本发明的方法可以尤其快速地实 施。由借助本发明方法配置的一个微处理器程序所生成的机器码在此可 以是尤其紧凑的,并从而可以节省存储器空间。该脚本2本身就可以促使一个或多个与实施有关的配置文件5生 成。由此本发明的方法可以尤其快速地实施。这比如对于抽象的配置数 据可能是有利的,其中所述的抽象的配置数据不具有关联,并且与具体 的配置数据不同。
权利要求
1.用于配置包含至少一个模块的系统(模块化系统)尤其是一种微处理器程序的方法,其特征在于,具有以下的步骤-生成至少一个与实施无关的配置文件(1),和/或改变在所述至少一个与实施无关的配置文件(1)中所存储的信息;-根据在所述至少一个与配置无关的配置文件(1)中所存储的信息来自动构建和/或自动更新在一个配置数据集(3)中所存储的配置数据;-根据在所述配置数据集(3)中所存储的配置数据来自动配置所述至少一个模块;-应用配置规则。
2. 根据权利要求l所述的方法, 其特征在于, 具有以下步骤-根据在所述配置数据集(3)中所存储的配置数据来自动配置所 述至少一个模块;-以后的步骤包括-根据在所述配置数据集(3)中所存储的配置数据来自动生成至 少一个与实施有关的配置文件(5);-根据在所述至少一个与实施有关的配置文件中所存储的信息来 自动配置所述至少一个模块。
3. 根据前述权利要求之一所述的方法, 其特征在于,在自动构建和/或在自动更新在一个配置数据集(3)中所存储的 配置数据时,和/或在根据在所述配置数据集(3)中所存储的配置数据 来自动配置所述至少一个模块时,和/或在根据在所述配置数据集(3) 中所存储的配置数据来自动生成至少一个与实施有关的配置文件(5) 时,应用所述配置规则。
4. 根据前述权利要求之一所述的方法, 其特征在于,所述配置规则已经存储在至少一个配置规则文件(lb)中。
5. 根据前述权利要求之一所述的方法, 其特征在于,配置参数分配有至少一个配置规则,其中所述配置规则描述用于处 理所述配置参数的权限、形式特性、决定配置参数的存在的特性或者决 定配置参数值的特性。
6. 根据前述权利要求之一所述的方法, 其特征在于,自动生成至少一个关联信息,该关联信息描述在所述配置数据集中 存在的至少两个配置数据的关联,根据所述至少一个关联信息来生成所 述至少一个与实施有关的配置文件。
7. 根据前述权利要求之一所述的方法,其中所述模块化系统包含多个模块,其特征在于,生成多个与实施无关 的配置文件,并且所述与实施无关的配置文件中的每一个都被分配给至少一个模块。
8. 根据前述权利要求之一所述的方法, 其特征在于,所述至少一个与实施有关的配置文件根据一个硬件的至少一个特 性而被生成,其中应该能够在所述硬件上将所述已配置的模块化系统的 至少一部分作为微处理器程序来安装。
9. 根据前述权利要求之一所述的方法, 其特征在于,自动生成一个说明书,并且所述说明书描述在所述至少一个与实施 无关的配置文件中、和/或在所述至少一个与实施有关的配置文件中、 和/或在所述配置规则中、和/或在所述至少一个配置规则文件中所存储 的信息。
10. 根据前述权利要求之一所述的方法, 其特征在于,为了生成和/或改变所述至少一个与实施无关的配置文件而使用 微处理器程序,使所述配置规则得以考虑。
11. 根据前述权利要求之一所述的方法, 其特征在于,所述至少一个与实施无关的配置文件和/或所述至少一个配置规 则文件以基于XML的格式来生成。
12. 根据前述权利要求之一所述的方法, 其特征在于,根据所述配置数据来自动地获知,所述模块化系统所包括的模块是 否是该模块化系统所需要的,并且只在该模块是该模块化系统所需要的 情况下,才对该模块实施配置。
13. 根据前述权利要求之一所述的、用于配置微处理器程序的方 法的应用。
14. 用于配置包含至少一个模块的系统(模块化系统)的软件系统,其特征在于, 所述软件系统包括 -至少一个配置规则文件; -至少一个与实施无关的配置文件;-具有配置数据的配置数据集,和/或用于根据在所述至少一个与 实施无关的配置文件中所存储的信息来生成配置数据集的装置;-用于改变和/或从所述配置数据集中读出配置数据的装置;以及-用于根据在所述配置数据集中所存储的配置数据来自动配置所 述至少一个模块的装置;-根据权利要求13所述的软件系统,其中用于根据在所述配置数 据集中所存储的配置数据来自动配置所述至少一个函数单元的装置包 含有-用于根据在所述配置数据集中所存储的配置数据来自动生成至 少一个与实施有关的配置文件的装置;以及-用于根据在所述与实施有关的配置文件中所存储的信息来自动 配置所述至少 一个模块的装置。
15. 根据权利要求13或者所述的软件系统, 其特征在于,所述软件系统包含有用于实施根据权利要求l至12之一所述方法 的装置。
16. 具有程序编码装置的软件系统,以在考虑配置规则的情况下来生成或改变与实施无关的配置文件。
17. 软件系统产品, 其特征在于,根据权利要求13至15之一所述软件系统被存储在存储器单元上。
18. 计算机单元、尤其具有一个微处理器的控制设备, 其特征在于,所述计算机单元被编程以实施根据权利要求1至12之一所述方法。
19. 根据前述权利要求之一所述方法、软件系统、软件系统产品 或计算机单元在汽车制造领域中的应用。
全文摘要
为了尤其简单而灵活地配置包含至少一个模块的系统,提供具有以下步骤的方法生成至少一个与实施无关的配置文件(1),和/或改变在所述至少一个与实施无关的配置文件(1)中所存储的信息;根据在所述至少一个与实施无关的配置文件(1)中所存储的信息来自动构建和/或自动修改在一个配置数据集(3)中所存储的配置数据;根据在所述配置数据集(3)中所存储的配置数据来自动配置所述至少一个模块;应用配置规则。
文档编号G06F9/445GK101223506SQ200680025494
公开日2008年7月16日 申请日期2006年6月30日 优先权日2005年7月14日
发明者B·维彻尔, F·纽卡姆 申请人:罗伯特·博世有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1