CN102289411B - 一种智能卡资源调度的方法和智能卡 - Google Patents
一种智能卡资源调度的方法和智能卡 Download PDFInfo
- Publication number
- CN102289411B CN102289411B CN201110174584.0A CN201110174584A CN102289411B CN 102289411 B CN102289411 B CN 102289411B CN 201110174584 A CN201110174584 A CN 201110174584A CN 102289411 B CN102289411 B CN 102289411B
- Authority
- CN
- China
- Prior art keywords
- resource
- flow process
- byte
- process unit
- merging
- 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
Images
Abstract
本发明公开了一种智能卡资源调度的方法和智能卡,用以提高智能卡中RAM资源的利用率。该方法包括:确定当前合并级别程序执行流的不同资源使用流程单元中,每个对象对应的原始资源中占用态资源字节,以及空闲态资源字节;根据同一资源使用流程单元中各个对象对应的占用态资源字节以及空闲态资源字节,进行资源合并,获得每个资源使用流程单元对应的合并资源,其中,至少一个空闲态资源字节转化为占用态资源字节;将所述合并资源进行解析,获得各个资源使用流程单元中,每个对象对应的调度资源。
Description
技术领域
本发明涉及智能卡应用技术领域,特别涉及一种智能卡资源调度的方法和智能卡。
背景技术
智能卡内的随机存取存储器(Random Access Memory,RAM)资源是有限的。对于复杂应用平台,或多应用平台,智能卡的RAM资源尤其显得珍贵。在JavaCard智能卡产品中,如果平台软件占用了较多的RAM资源,则应用软件占用的RAM资源就会很少;相反,如果平台软件占用了较少的RAM资源,则可保留更多的RAM资源供应用软件使用。提供给应用软件使用的RAM资源越多,产品的市场优势就会越大。
目前,在智能卡产品的平台软件中,各个对象一般都分配了各自独立定义的RAM资源,即每个对象与其分配的RAM资源存在一一对应的关系,即对象与原始资源存在一一对应的关系例如:表1所示:
表1
对象 | 原始资源 |
对象1 | 资源字节1-5 |
对象2 | 资源字节6-10 |
对象3 | 资源字节11-20 |
---- | ---- |
虽然,每个对象分配的原始资源是固定的,但是,智能卡在运行的过程中,每个对象并不是将其分配到的原始资源一直占用,例如:当前时刻,对象1占用了资源字节1-3,对象2占用资源字节7-10,对象3占用了资源字节11-15, 而其他的资源字节都是空闲的。由于每个对象分配的原始资源是固定的,即使其中某个对象对应的有些资源字节是空闲的,其他对象也不能使用,这样造成了RAM资源的浪费。
发明内容
本发明实施例提供一种智能卡资源调度的方法和智能卡,用以提高智能卡中RAM资源的利用率。
本发明实施例提供一种智能卡资源调度的方法,包括:
确定当前合并级别程序执行流的不同资源使用流程单元中,每个对象对应的原始资源中占用态资源字节,以及空闲态资源字节;
根据同一资源使用流程单元中各个对象对应的占用态资源字节以及空闲态资源字节,进行资源合并,获得每个资源使用流程单元对应的合并资源,其中,至少一个空闲态资源字节转化为占用态资源字节;
将所述合并资源进行拆分,获得各个资源使用流程单元中,每个对象对应的调度资源。
本发明实施例提供一种智能卡,包括:
确定单元,用于确定当前合并级别程序执行流的不同资源使用流程单元中,每个对象对应的原始资源中占用态资源字节,以及空闲态资源字节;
合并单元,用于根据同一资源使用流程单元中各个对象对应的占用态资源字节以及空闲态资源字节,进行资源合并,获得每个资源使用流程单元对应的合并资源,其中,至少一个空闲态资源字节转化为占用态资源字节;
解析单元,用于将所述合并资源进行解析,获得各个资源使用流程单元中,每个对象对应的调度资源。
本发明实施例中,确定当前合并级别程序执行流的不同资源使用流程单元中,每个对象对应的原始资源中占用态资源字节,以及空闲态资源字节,根据同一资源使用流程单元中各个对象对应的占用态资源字节以及空闲态资源字 节,进行资源合并,获得每个资源使用流程单元对应的合并资源,其中,至少一个空闲态资源字节转化为占用态资源字节,将合并资源进行解析,获得各个资源使用流程单元中,每个对象对应的调度资源。这样,在每一合并级别中,对每个对象针对各个资源使用流程单元所对应的资源字节都进行了合并,减少了空闲态资源字节,极大地提高了资源的利用率。
附图说明
图1为本发明实施例中智能卡资源调度的流程图;
图1(a)为本发明实施例中原始资源占用表的示意图;
图1(b)为本发明实施例中将资源流程2对应的资源合并后的资源占用表的示意图;
图1(c)为本发明实施例中采用一种资源合并方式后的资源占用表的示意图;
图1(d)为本发明实施例中采用另一种资源合并方式后的资源占用表的示意图;
图2为本发明具体实施例中智能卡软件平台系统的架构图;
图3为本发明具体实施例中智能卡资源调度的流程图;
图4为本发明实施例中智能卡的结构图。
具体实施方式
本发明实施例中,将智能卡软件平台系统可以分为两个或多个组件。并且,组件包括至少一个模块。还可将模块进一步细分,例如:模块包括至少一个函数。
本发明实施例通过对组件或模块对应的资源进行合并,提高资源的利用率,因此,组件、模块和函数等称为对象。初始状态,每个对象都分配并占有各自独立的资源,这里为原始资源。若合并级别是系统级,则对象为组件;若合并级别是组件级,则对象为模块。
当某一程序执行流经过一个对象时,就会对应有输入、输出接口,输入、输出接口具有外部可见性。对于每个对象,一个输入接口可能对应有一个,两个或多个输出接口,一个输出接口也可能对应有一个,两个或多个输入接口,此时,程序执行流会从对象内部出现分支的地方分开,这样,一个程序执行流包括:一个、两个或多个资源使用流程单元。
一般,组件或模块的输入接口形式是函数,输出接口形式是函数调用。
在一程序执行流的不同资源使用流程单元中,每个对象对应的原始资源中各个资源字节的生命周期状态不一定相同。生命周期状态包括:初始化状态、使用状态、保留状态、终结状态、以及闲置状态。其中,初始化状态表示资源字节第一次使用,被初始化;使用状态表示资源字节被再次使用,资源字节被读取或更新;保留状态表示资源字节暂时未被使用,但是后续会继续使用,因此不能被释放;终结状态表示资源字节被释放,可以用作他用;闲置状态是非以上状态的一种状态,处于闲置状态的资源字节没有被当前对象所使用。
可见,初始化状态、使用状态、以及保留状态都表明该资源字节被占用了,即初始化状态、使用状态、以及保留状态都为占用态,而终结状态,以及闲置状态表明该资源字节空闲,即终结状态,以及闲置状态都为空闲态。
因此,确定一程序执行流的不同资源使用流程单元中,每个对象对应的原始资源中占用态资源字节,以及空闲态资源字节,然后,根据同一资源使用流程单元中各个对象对应的占用态资源字节以及空闲态资源字节,进行资源合并,获得每个资源使用流程单元对应的合并资源,最后将合并资源进行拆分,获得各个资源使用流程单元中,每个对象对应的调度资源。
确定智能卡软件平台系统的架构后,即确定智能卡软件平台系统的合并级别,对象,以及对应的输入输出接口,并根据输入输出接口,确定各条程序执行流包括的资源使用流程单元后,可以按照从低级别往高级别的顺序逐一的对每个级别的资源进行合并。例如:确定智能卡软件平台系统的架构,系统包括组件,组件包括模块,模块又包括函数等等,因此,合并级别从高到低分别为:系统级,组件级,模块级,函数级......以此类推。在完成当前合并级别中资源调度的过程后,若还有下一合并级别,即高一级的合并级别,则将高一级的合并级别作为当前合并级别,重新根据上述流程,实现资源调度的过程。这样,在每一合并级别中,对每个对象针对各个资源使用流程单元所对应的资源字节都进行了合并,极大地提高了资源的利用率。例如,可以看出系统级高于组件级。系统级是对组件对应的资源进行合并,而组件级则是对模块对应的资源进 行合并。这样,先对组件级中各模块对应的资源进行合并,获得每个组件对应的新资源,然后对系统级中各组件对应的新资源进行合并,获得整个系统对应的新资源。
其中,每个级别的合并过程都是一致的,因此,参见图1,本发明实施例中智能卡资源调度的方法包括:
步骤101:确定当前合并级别程序执行流的不同资源使用流程单元中,每个对象对应的原始资源中占用态资源字节,以及空闲态资源字节。
对象是实施资源合并处理的原始资源的使用者,这里,对象包括:组件或模块。即合并级别不同,对象不同,若当前合并级别是组件级,对象为模块;若当前合并级别是系统级,对象为组件。
由于每条程序执行流包括:一个、两个或多个资源使用流程单元,在不同资源使用流程单元中,每个对象对应的原始资源中各个资源字节的生命周期状态不一定相同,因此,监控不同资源使用流程单元中,每个对象对应的原始资源中各个资源字节的生命周期状态,然后,根据每个资源字节的生命周期状态,配置资源使用流程单元分别与对象的占用态资源字节,以及空闲态资源字节的对应关系。其中,生命周期状态包括:初始化状态、使用状态、保留状态、终结状态、以及闲置状态。由于初始化状态、使用状态、以及保留状态都表明该资源字节被占用了,而终结状态,以及闲置状态表用该资源字节空闲,因此,本发明实施例中占用态资源字节包括:初始化状态、使用状态、以及保留状态对应的资源字节,空闲态资源字节包括:终结状态、以及闲置状态对应的资源字节。
这里,对应关系可以采用资源占用表来表示,参见图1(a),该表中,资源使用流程单元用资源流程来简称,资源字节1,2,3----直接用1,2,3----来简称。
如图1(a)所示,该表的纵坐标是程序执行流流经当前合并级别中各个对象时包括的所有的资源使用流程单元,即所有的资源流程。表的横坐标是各个对象对应的资源字节。其中,有填充的资源字节表示该资源字节被占用,即该资源字节为占用态资源字节,空白的资源字节表示该资源字节空闲,即该资源字节为空闲态资源字节。
步骤102:根据同一资源使用流程单元中各个对象对应的占用态资源字节以及空闲态资源字节,进行资源合并,获得每个资源使用流程单元对应的合并资源。
这里,按照设定的规则,进行资源合并,获得每个资源使用流程单元对应的合并资源,其中,资源合并后,至少一个空闲态资源字节转换为占用态资源字节。
本发明实施例中可将同一资源使用流程单元中各个对象对应的空闲态资源字节全部都为占用态资源字节,或者将部分空闲态资源字节全部都为占用态资源字节,即实现了占用态资源字节的拼接,该拼接包括:无缝拼接,或者,有缝拼接。
较佳地,最终的资源合并效果取决于占用态资源字节最多的资源使用流程单元,因此,本发明实施例中,首先,获取占用态资源字节最多的资源使用流程单元对应的合并资源,然后获取其他资源使用流程单元对应的合并资源。
其中,获取占用态资源字节最多的资源使用流程单元对应的合并资源包括:将占用态资源字节最多的资源使用流程单元确定为第一资源使用流程单元,从原始资源的最小地址开始,将第一资源使用流程单元中,各个对象对应的占用态资源字节首尾排列,获得第一资源使用流程单元对应的第一合并资源。
获取其他资源使用流程单元对应的合并资源可以根据第一合并资源,因此,这里还可根据第一合并资源,获取除第一资源使用流程单元以外的每个资源使用流程单元对应的合并资源,具体包括:
将除第一资源使用流程单元以外的每个资源使用流程单元中占用态资源字节的最大地址与第一合并资源的最大地址进行比较;若当前资源使用流程单元中占用态资源字节的最大地址大于第一合并资源的最大地址,则将一个、两个或多个对象对应的占用态资源字节向临近的空闲态资源字节移动,获得当前资源使用流程单元对应的当前合并资源;若当前资源使用流程单元中占用态资源字节的最大地址小于或等于第一合并资源的最大地址,则不需要移动占用态资源字节,直接获得当前资源使用流程单元对应的当前合并资源。其中,当前合并资源小于或等于第一合并资源。
可见,除第一资源使用流程单元以外的资源使用流程单元对应的合并资源中可以包括空闲态资源字节,即此时其他的合并资源中还有空闲态资源字节没有转化为占用态资源字节,可见占用态资源字节之间的拼接为有缝拼接。这种合并过程中,需要移动的占用态资源字节最少,则原始程序需要修改的内容就会最小,从而最大程度地减轻了程序修改的工作量。当然,若当前资源使用流程单元中占用态资源字节的最大地址小于或等于第一合并资源的最大地址,也可以移动占用态资源字节。
另外,本发明实施例中,获取除第一资源使用流程单元以外的各个资源使用流程单元对应的合并资源的过程也可以与获取第一资源使用流程单元对应的第一合并资源的过程一致,即从原始资源的最小地址开始,将当前资源使用流程单元中,各个对象对应的占用态资源字节首尾排列,获得当前资源使用流程单元对应的当前合并资源。这样,每个合并资源中都没有空闲态资源字节,即空闲态资源字节都转化为占用资源字节,此时占用态资源字节之间的拼接为无缝拼接。但是,需要移动的占用态资源字节很多,原始程序需要修改的内容也很多。
这里,以图1(a)为例,首先,确定资源流程2中占用态资源字节最多,则从资源字节1开始,将资源流程2各个对象的占用态资源字节进行首尾排列,获得资源流程2对应的合并资源。此时对应的资源占用表如图1(b)所示:
然后,由于第一合并资源的最大地址为资源字节11,而资源流程1占用态资源字节的最大地址为资源字节14,因此,须将资源流程1中,对象2和3的占用态资源字节分别向临近的空闲态资源字节移动,同样,资源流程3也需移动占用态资源字节。由于资源流程4中占用态资源字节的最大地址为资源字节11,正好与第一合并资源的最大地址相等,此时可以不用移动资源流程4中的占用态资源字节,移动后对应的资源占用表如图1(c)所示:
可见,资源合并后,资源使用流程1、2以及3对应的占用态资源字节实现了无缝拼接,即资源使用流程1、2以及3对应的所有空闲态资源字节全部转化为占用态资源字节。而资源使用流程4对应的资源字节中有空闲的资源字节,即还有空闲态资源字节并未转化为占用态资源字节。
当然还可以有其他的资源合并方式。仍以图1(a)为例,拼接后的资源占用表如图1(d)所示:
此时,资源使用流程1、2、3以及4对应的占用态资源字节实现了无缝拼接,即资源使用流程1、2、3以及4对应合并资源中空闲态资源字节全都转化为占用态资源字节。
步骤103:将合并资源进行解析,获得各个资源使用流程单元中,每个对象对应的调度资源。
在上述步骤102中,占用态资源字节移动了,即有一个,两个,或多个空闲态资源字节转化为占用态资源字节,这样,空闲态资源字节减少了,或者没有了,因此,每个对象对应资源改变了,因此,将拼接后的合并资源进行解析,获得各个资源使用流程单元中,每个对象对应的调度资源。
以图1(c)为例,解析后,在资源流程1中,对象1对应的调度资源为资源字节1-3,对象2对应的调度资源为资源字节4-7,对象3对应的调度资源为资源字节8-10;在资源流程2中,对象1对应的调度资源为资源字节1-4,对象2对应的调度资源为资源字节5-7,对象3对应的调度资源为资源字节8-11;在资源流程3中,对象1对应的调度资源为资源字节1-4,对象2对应的调度资源为资源字节5-7,对象3对应的调度资源为资源字节8-10;在资源流程4中,对象1对应的调度资源为资源字节2-3,对象2对应的调度资源为资源字节6-9,对象3对应的调度资源为资源字节11。
根据上述流程可以通过减少对象对应的空闲态资源字节,提高资源的利用率。
上述资源合并流程中是根据占用态资源字节最多的资源使用流程单元进行资源合并的,但是本发明实施例不限于此,进行资源合并,还可将其中一个资源使用流程单元中各个对象对应的一个、两个,或多个空闲态资源字节转化为占用态资源字节,这样,获得的合并资源中的空闲态资源字节减少了,同样也提高了资源的利用率。
在获得各个资源使用流程单元中,每个对象对应的调度资源之后,还需根据调度资源,修改各个资源使用流程单元中每个对象对应的占用态资源字节使用定义。其中,占用态资源字节使用定义包括:变量定义、缓冲区定义等。不仅要修改资源地址,数据结构也会做出相应的调整。
完成当前合并级别中资源调度的过程后,若还有高一级的合并级别,即下一合并级别,则将下一级的合并级别作为当前合并级别,重新根据上述流程,实现资源调度的过程。这样,在每一合并级别中,对每个对象针对各个资源使用流程单元所对应的资源字节都进行了合并,极大地提高了资源的利用率。
下面结合说明书附图对本发明实施例作进一步详细描述。
如图2所示,本实施例中,智能卡软件平台系统包括:组件1和组件2,组件1包括:模块1、模块2和模块3,组件2包括:模块4、模块5和模块6。其中,智能卡重启后进入组件1中的模块1执行,中断产生后进入组件2的模块6执行。
可见本实施例中,合并级别分两级,分别为:组件级与系统级。其资源调度的过程参见图3,包括:
步骤301:分别确定每个组件内,当前程序执行流的不同资源使用流程单元中,各个模块对应的原始资源中占用态资源字节,以及空闲态资源字节。
确定组件1内,程序执行流的不同资源使用流程单元中,各个模块对应的 原始资源中占用态资源字节,以及空闲态资源字节。以及确定组件2内,程序执行流的不同资源使用流程单元中,各个模块对应的原始资源中占用态资源字节,以及空闲态资源字节。
这里,合并级别为组件,则对象为模块。描绘组件1内,各个模块的资源占用表,以及描绘组件2内,各个模块的资源占用表,具体过程参见上述步骤101。
步骤302:分别根据每个组件内同一资源使用流程单元各个模块对应的占用态资源字节以及空闲态资源字节,进行资源合并,获得每个资源使用流程单元对应的合并资源。
根据组件1内同一资源使用流程单元对应的每个模块对应的占用态资源字节以及空闲态资源字节,进行资源合并,获得组件1内每个资源使用流程单元对应的合并资源,以及根据组件2内同一资源使用流程单元对应的每个模块对应的占用态资源字节以及空闲态资源字节,进行资源合并,获得组件2内每个资源使用流程单元对应的合并资源。
资源合并过程可以是占用态资源字节之间的无缝拼接,也可以是有缝拼接。即全部的空闲态资源字节转化为占用态资源字节,或部分的空闲态资源字节转化为占用态资源字节。获得的合并资源中可以没有空闲态资源字节或者有少量的空闲态资源字节。具体过程参见步骤102。
在具体的实现过程中,对于C语言编程,数据结构union可以实现资源复用,数据结构structure可以统一规划资源结构。由于数据结构structure的执行效率不是最理想的,数据结构union只能实现成员的一致对齐,因此,可以联合使用union和structure数据结构实现上述资源合并处理。
另外,C语言中的宏定义也可用于实现资源的统筹管理。
如果编译器支持如“at”等绝对地址定位功能,也可采用这些功能实现资源字节的前移和后移排版。则可实现更加灵活的资源合并,且可实现无缝拼接,进一步实现了深度合并。
步骤303:将每个组件内合并后的合并资源进行解析,获得各个资源使用流程单元中,每个模块对应的调度资源。
将组件1拼接后每个资源使用流程单元对应的合并资源进行解析,获得各个资源使用流程单元中,每个模块对应的调度资源,以及组件2拼接后每个资源使用流程单元对应的合并资源进行解析,获得各个资源使用流程单元中,每个模块对应的调度资源,具体的拆分过程参见步骤103。
步骤304:根据获得的调度资源,修改各个资源使用流程单元中每个模块对应的占用态资源字节使用定义。
步骤305:确定系统内,启动流或中断流的不同资源使用流程单元中,各个组件对应的占用态资源字节,以及空闲态资源字节。
这里,当前级别为系统级,因此,对象为组件。上述步骤302中获得的每个组件对应的合并资源作为本步骤中组件对应的原始资源。
同样,采用上述步骤101的过程描绘出组件1以及组件2的资源占用表。
步骤306:根据同一资源使用流程单元对应的每个组件对应的占用态资源字节以及空闲态资源字节,进行资源合并,获得系统每个资源使用流程单元对应的合并资源。
具体拼接过程同样参见步骤102。
步骤307:将拼接后的合并资源进行解析,获得各个资源使用流程单元内每个组件对应的调度资源。
拆分过程同样参见步骤103。
步骤308:根据获得的调度资源,修改启动流或中断流中各个资源使用流程单元中每个组件对应的占用态资源字节使用定义。
根据上述过程,逐级对智能卡中的资源进行合并,在每一合并级别中,对每个对象针对各个资源使用流程单元所对应的资源字节进行了合并,极大地提高了资源的利用率。
上述实施例中智能卡软件平台系统划分为两级,但是本发明实施例不限于 此,也可以化为多级,例如:三级,分别为:系统级、组件级、以及模块级。较佳是将智能卡软件平台系统划分为两级。当智能卡软件平台系统比较复杂时,还可以划分为多级,或者,当智能卡软件平台系统比较简单时,并不划分,只有一级。
上述实施例中第一对应关系,以及第二对应关系可以采用资源占用表来表示,但是本发明实施例不限于此,其他的形式也可以用来表示第一对应关系,以及第二对应关系。
根据上述实施例智能卡资源调度的方法,其对应的智能卡参见图4,包括:确定单元100、合并单元200和解析单元300,其中,
确定单元100,用于确定当前合并级别程序执行流的不同资源使用流程单元中,每个对象对应的原始资源中占用态资源字节,以及空闲态资源字节。
合并单元200,用于根据同一资源使用流程单元中各个对象对应的占用态资源字节以及空闲态资源字节,进行资源合并,获得每个资源使用流程单元对应的合并资源,其中,至少一个空闲态资源字节转化为占用态资源字节。
解析单元300,用于将所述合并资源进行解析,获得各个资源使用流程单元中,每个对象对应的调度资源。
其中,确定单元100包括:监控模块和配置模块。
监控模块,用于监控不同资源使用流程单元中,每个对象对应的原始资源中各个资源字节的生命周期状态;
配置模块,用于根据每个资源字节的生命周期状态,配置资源使用流程单元分别与对象的原始资源中占用态资源字节,以及空闲态资源字节之间的对应关系。
合并单元200,具体用于将占用态资源字节最多的资源使用流程单元确定为第一资源使用流程单元,从所述原始资源的最小地址开始,将第一资源使用流程单元中,各个对象对应的占用态资源字节首尾排列,获得第一资源使用流程单元对应的第一合并资源,根据所述第一合并资源,获取除所述第一资源使 用流程单元以外的每个资源使用流程单元对应的合并资源。
该合并单元200,还用于将除所述第一资源使用流程单元以外的每个资源使用流程单元中占用态资源字节的最大地址与所述第一合并资源的最大地址进行比较,若当前资源使用流程单元中占用态资源字节的最大地址大于第一合并资源的最大地址,则将至少一个对象对应的占用态资源字节向临近的空闲态资源字节移动,获得所述当前资源使用流程单元对应的当前合并资源,其中,所述当前合并资源小于或等于所述第一合并资源。
本发明实施例中,进行资源库资源调度之前,还需确定智能卡软件平台系统的架构,因此,智能卡还包括:定义单元,用于确定智能卡软件平台系统的合并级别,对象,以及对应的输入输出接口,并根据所述输入输出接口,确定各条程序执行流包括的资源使用流程单元。
在拆分获得调度资源字节后,还需修改程序执行流中各个资源使用流程单元中每个对象中对应的占用态资源字节使用定义,因此,智能卡还包括:修改单元,用于根据所述拆分资源字节后,修改所述各个资源使用流程单元中每个对象中对应的使用定义。
本发明实施例中,确定当前合并级别程序执行流的不同资源使用流程单元中,每个对象对应的原始资源中占用态资源字节,以及空闲态资源字节,根据同一资源使用流程单元中各个对象对应的占用态资源字节以及空闲态资源字节,进行资源合并,获得每个资源使用流程单元对应的合并资源,其中,至少一个空闲态资源字节转化为占用态资源字节,将合并资源进行解析,获得各个资源使用流程单元中,每个对象对应的调度资源。这样,在每一合并级别中,对每个对象针对各个资源使用流程单元所对应的资源字节都进行了合并,减少了空闲态资源字节,极大地提高了资源的利用率。
由于合并后,智能卡软件平台系统占用的资源减少了,提供给应用软件使用的资源增加了,这样,提高了智能卡的市场竞争力。对于多资源平台向少资源平台移植的产品,可提高移植的成功率,并可向更少资源平台移植,从而获 得更高的成本优势。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若对本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (13)
1.一种智能卡资源调度的方法,其特征在于,包括:
确定当前合并级别程序执行流的不同资源使用流程单元中,每个对象对应的原始资源中占用态资源字节,以及空闲态资源字节,其中,合并级别不同,对象不同;
根据同一资源使用流程单元中各个对象对应的占用态资源字节以及空闲态资源字节,进行资源合并,获得每个资源使用流程单元对应的合并资源,其中,至少一个空闲态资源字节转化为占用态资源字节;
将所述合并资源进行解析,获得各个资源使用流程单元中,每个对象对应的调度资源。
2.如权利要求1所述的方法,其特征在于,所述获得各个资源使用流程单元中,每个对象对应的调度资源之后,还包括:
将高一级的合并级别作为当前合并级别。
3.如权利要求1所述的方法,其特征在于,所述确定当前合并级别程序执行流的不同资源使用流程单元中,每个对象对应的原始资源中占用态资源字节,以及空闲态资源字节包括:
监控不同资源使用流程单元中,每个对象对应的原始资源中各个资源字节的生命周期状态;
根据每个资源字节的生命周期状态,配置资源使用流程单元分别与对象的原始资源中占用态资源字节,以及空闲态资源字节之间的对应关系。
4.如权利要求1所述的方法,其特征在于,所述进行资源合并,获得每个资源使用流程单元对应的合并资源包括:
将占用态资源字节最多的资源使用流程单元确定为第一资源使用流程单元;
从所述原始资源的最小地址开始,将第一资源使用流程单元中,各个对象对应的占用态资源字节首尾排列,获得第一资源使用流程单元对应的第一合并资源;
获取除所述第一资源使用流程单元以外的每个资源使用流程单元对应的合并资源。
5.如权利要求4所述的方法,其特征在于,所述获取除所述第一资源使用流程单元以外的每个资源使用流程单元对应的合并资源包括:
将除所述第一资源使用流程单元以外的每个资源使用流程单元中占用态资源字节的最大地址与所述第一合并资源的最大地址进行比较;
若当前资源使用流程单元中占用态资源字节的最大地址大于第一合并资源的最大地址,则将至少一个对象对应的占用态资源字节向临近的空闲态资源字节移动,获得所述当前资源使用流程单元对应的当前合并资源,其中,所述当前合并资源小于或等于所述第一合并资源。
6.如权利要求1所述的方法,其特征在于,所述确定当前合并级别程序执行流的不同资源使用流程单元中,每个对象对应的原始资源中占用态资源字节,以及空闲态资源字节之前,包括:
确定智能卡软件平台系统的合并级别,对象,以及对应的输入输出接口;
根据所述输入输出接口,确定各条程序执行流包括的资源使用流程单元。
7.如权利要求1所述的方法,其特征在于,所述获得各个资源使用流程单元中,每个对象对应的调度资源之后,还包括:
根据所述调度资源,修改所述各个资源使用流程单元中每个对象对应的占用态资源字节使用定义。
8.一种智能卡,其特征在于,包括:
确定单元,用于确定当前合并级别程序执行流的不同资源使用流程单元中,每个对象对应的原始资源中占用态资源字节,以及空闲态资源字节,其中,合并级别不同,对象不同;
合并单元,用于根据同一资源使用流程单元中各个对象对应的占用态资源字节以及空闲态资源字节,进行资源合并,获得每个资源使用流程单元对应的合并资源,其中,至少一个空闲态资源字节转化为占用态资源字节;
解析单元,用于将所述合并资源进行解析,获得各个资源使用流程单元中,每个对象对应的调度资源。
9.如权利要求8所述的智能卡,其特征在于,所述确定单元包括:
监控模块,用于监控不同资源使用流程单元中,每个对象对应的原始资源中各个资源字节的生命周期状态;
配置模块,用于根据每个资源字节的生命周期状态,配置资源使用流程单元分别与对象的原始资源中占用态资源字节,以及空闲态资源字节之间的对应关系。
10.如权利要求8所述的智能卡,其特征在于,
所述合并单元,具体用于将占用态资源字节最多的资源使用流程单元确定为第一资源使用流程单元,从所述原始资源的最小地址开始,将第一资源使用流程单元中,各个对象对应的占用态资源字节首尾排列,获得第一资源使用流程单元对应的第一合并资源,根据所述第一合并资源,获取除所述第一资源使用流程单元以外的每个资源使用流程单元对应的合并资源。
11.如权利要求10所述的智能卡,其特征在于,
所述合并单元,还用于将除所述第一资源使用流程单元以外的每个资源使用流程单元中占用态资源字节的最大地址与所述第一合并资源的最大地址进行比较,若当前资源使用流程单元中占用态资源字节的最大地址大于第一合并资源的最大地址,则将至少一个对象对应的占用态资源字节向临近的空闲态资源字节移动,获得所述当前资源使用流程单元对应的当前合并资源,其中,所述当前合并资源小于或等于所述第一合并资源。
12.如权利要求8所述的智能卡,其特征在于,还包括:
定义单元,用于确定智能卡软件平台系统的合并级别,对象,以及对应的输入输出接口,并根据所述输入输出接口,确定各条程序执行流包括的资源使用流程单元。
13.如权利要求8所述的智能卡,其特征在于,还包括:
修改单元,用于根据所述调度资源,修改所述各个资源使用流程单元中每个对象对应的占用态资源字节使用定义。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110174584.0A CN102289411B (zh) | 2011-06-27 | 2011-06-27 | 一种智能卡资源调度的方法和智能卡 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110174584.0A CN102289411B (zh) | 2011-06-27 | 2011-06-27 | 一种智能卡资源调度的方法和智能卡 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102289411A CN102289411A (zh) | 2011-12-21 |
CN102289411B true CN102289411B (zh) | 2014-03-26 |
Family
ID=45335853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110174584.0A Active CN102289411B (zh) | 2011-06-27 | 2011-06-27 | 一种智能卡资源调度的方法和智能卡 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102289411B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104766117B (zh) * | 2014-01-07 | 2019-04-26 | 国民技术股份有限公司 | 智能卡及其数据处理方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1687904A (zh) * | 2005-06-16 | 2005-10-26 | 北京航空航天大学 | 智能卡存储环境的控制方法 |
CN101122886A (zh) * | 2007-09-03 | 2008-02-13 | 杭州华三通信技术有限公司 | 分配缓存空间的方法和装置以及缓存控制器 |
CN101950273A (zh) * | 2010-09-26 | 2011-01-19 | 中国人民解放军海军工程大学 | 一种dsp数据区动态管理方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100843135B1 (ko) * | 2006-11-20 | 2008-07-02 | 삼성전자주식회사 | 비휘발성 메모리 관리 방법 및 장치 |
-
2011
- 2011-06-27 CN CN201110174584.0A patent/CN102289411B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1687904A (zh) * | 2005-06-16 | 2005-10-26 | 北京航空航天大学 | 智能卡存储环境的控制方法 |
CN101122886A (zh) * | 2007-09-03 | 2008-02-13 | 杭州华三通信技术有限公司 | 分配缓存空间的方法和装置以及缓存控制器 |
CN101950273A (zh) * | 2010-09-26 | 2011-01-19 | 中国人民解放军海军工程大学 | 一种dsp数据区动态管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102289411A (zh) | 2011-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102169500B (zh) | 一种业务流程动态展示方法及装置 | |
CN105824957A (zh) | 分布式内存列式数据库的查询引擎系统及查询方法 | |
CN111078396B (zh) | 一种基于多任务实例的分布式数据接入方法和系统 | |
CN105912339A (zh) | 一种数控系统中应用的开发与集成方法及系统 | |
CN102123084B (zh) | 云计算操作系统中资源调度方法及系统 | |
CN102968344A (zh) | 一种多虚拟机迁移调度的方法 | |
CN105094972A (zh) | 数据库操作任务的处理方法和装置 | |
CN104978228A (zh) | 一种分布式计算系统的调度方法和装置 | |
CN109840142A (zh) | 基于云监控的线程控制方法、装置、电子设备及存储介质 | |
CN104731569A (zh) | 一种数据处理方法及相关设备 | |
CN106528065B (zh) | 一种线程获取方法及设备 | |
CN105573774B (zh) | 应用程序参数管理及配置方法 | |
CN111158800B (zh) | 基于映射关系构建任务dag的方法及装置 | |
CN111083189B (zh) | 用于在运行时处理数据倾斜的系统和方法 | |
CN104182295A (zh) | 一种数据备份方法及装置 | |
CN102455903A (zh) | 一种用户应用界面的生成方法 | |
CN102289411B (zh) | 一种智能卡资源调度的方法和智能卡 | |
CN102427468A (zh) | 一种云计算操作系统及其调度方法 | |
CN102542525B (zh) | 一种信息处理设备以及信息处理方法 | |
CN101799793B (zh) | 闪存控制方法及装置 | |
CN110879753A (zh) | 基于自动化集群资源管理的gpu加速性能优化方法和系统 | |
CN104699487A (zh) | 一种易于bios代码维护管理的方法 | |
CN114238213A (zh) | 多线程文件解析方法及装置 | |
CN113849161A (zh) | 应用控制方法、装置、存储介质及电子设备 | |
CN104951346A (zh) | 一种用于嵌入式系统的进程管理方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: 100015 Beijing city Chaoyang District Dongzhimen West eight Street No. 2 room Wanhong Yan Dong Business Garden Patentee after: Beijing Watchdata Limited by Share Ltd Address before: 100015 Beijing city Chaoyang District Dongzhimen West eight Street No. 2 room Wanhong Yan Dong Business Garden Patentee before: Beijing Woqi Data System Co., Ltd. |