一种MCU内程序代码保护的方法、智能终端及存储介质技术

技术编号:28707776 阅读:26 留言:0更新日期:2021-06-05 23:14
本发明专利技术所提供的一种MCU内程序代码保护的方法、智能终端及存储介质,所述方法包括:接收CPU的取指请求,并根据所述取指请求确定并记录所述CPU当前执行的程序及所述程序对应的用户,如果判断所述程序对应的用户和上一条执行的程序对应的用户不同,则将占用所述CPU的用户切换成当前所述程序对应的用户;当接收到所述CPU的数据访问请求时,根据所述数据访问请求确定访问的目标地址对应的用户空间;根据所述用户空间设置的访问权限判断是否执行所述数据访问请求对应的数据访问操作。本发明专利技术实现了对非易失性存储器中不同用户程序数据分别保护,防止程序数据被窃取。防止程序数据被窃取。防止程序数据被窃取。

【技术实现步骤摘要】
一种MCU内程序代码保护的方法、智能终端及存储介质


[0001]本专利技术涉及智能终端
,尤其涉及的是一种MCU内程序代码保护的方法、智能终端及存储介质。

技术介绍

[0002]微控制单元(MCU),是把中央处理器的频率与规格做适当缩减,并将周边接口、LED驱动电路等整合在单一芯片上,形成芯片级的计算机。MCU内部一般包含非易失性存储器,用于存储程序指令和数据,当程序开发商将程序开发出来之后,则将开发的程序编译后保存到非易失性存储器中。在MCU运行时,MCU内部的CPU会从非易失性存储器中读取指令并执行程序,然后根据程序执行的不同状态发出获取指令或者获取数据的总线请求。
[0003]但在对程序进行开发时,往往会涉及到多个开发商协同开发或者多次开发同一个程序的情形,此种情况下则会造成多个开发商开发数据在非易失性存储器中透明化,造成开发数据存在被盗用的风险,同时,用户在使用程序时也存在一定的安全隐患;再者,当未对非易失性存储器进行保护时,则易存在通过调试器窃取程序数据的风险。
[0004]因此,现有技术存在缺陷,有待改进与发展。

技术实现思路

[0005]本专利技术要解决的技术问题在于,针对现有技术的上述缺陷,提供一种MCU内程序代码保护的方法、智能终端及存储介质,旨在解决现有技术中MCU片内非易失性存储器里的程序代码被盗用或非法植入的风险的问题。
[0006]本专利技术解决技术问题所采用的技术方案如下:
[0007]一种MCU片内程序代码的保护方法,其中,包括:r/>[0008]接收CPU的取指请求,并根据所述取指请求确定并记录所述CPU当前执行的程序及所述程序对应的用户,如果判断所述程序对应的用户和上一条执行的程序对应的用户不同,则将占用所述CPU的用户切换成当前所述程序对应的用户;
[0009]当接收到所述CPU的数据访问请求时,根据所述数据访问请求确定访问的目标地址对应的用户空间;
[0010]根据所述用户空间设置的访问权限判断是否执行所述数据访问请求对应的数据访问操作。
[0011]进一步地,所述接收CPU的取指请求,并根据所述取指请求确定并记录所述CPU当前执行的程序及所述程序对应的用户,如果判断所述程序对应的用户和上一条执行的程序对应的用户不同,则将占用所述CPU的用户切换成当前所述程序对应的用户,之前还包括:
[0012]将非易失性存储器分成多个容量大小相同的页,并进行分页管理;
[0013]以所述页为单位为不同用户在非易失性存储器中分配数据和指令的用户空间,并对所述数据存储空间的不同页分别设置所述数据访问保护权限。
[0014]进一步地,所述接收CPU的取指请求,并根据所述取指请求确定并记录所述CPU当
前执行的程序及所述程序对应的用户,如果判断所述程序对应的用户和上一条执行的程序对应的用户不同,则将占用所述CPU的用户切换成当前所述程序对应的用户,还包括:
[0015]接收所述CPU的访问信号;
[0016]当所述访问信号中存在取指访问请求时,根据取指访问的目标地址确定在所述非易失性存储器中对应的所述页,并确定所述页所属的用户空间;
[0017]若所述页不属于当前用户空间,则切换占用CPU的用户为所述页所属的用户空间,并同时更新所述数据访问保护权限;
[0018]若所述页属于当前用户空间,保持占用CPU的用户不变。
[0019]进一步地,所述当接收到所述CPU的数据访问请求时,根据所述数据访问请求确定访问的目标地址对应的用户空间,包括:
[0020]接收所述CPU的访问信号;
[0021]当所述访问信号中存在数据访问请求时,确定所访问数据的目标地址在所述非易失性存储器中所属的页,并确定所述页所属的用户空间。
[0022]进一步地,所述根据所述用户空间设置的访问权限判断是否执行所述数据访问请求对应的数据访问操作,包括:
[0023]当所访问数据的目标地址所属的页属于所述用户空间或者未被其所属用户设置数据访问保护时,根据所述数据访问请求从所述数据存储空间获取数据;
[0024]当所访问数据的目标地址所属的页不属于所述用户空间且被其所属用户设置了数据访问保护时,则拒绝访问所述数据存储空间。
[0025]进一步地,所述非易失性存储器包括信息区,所述信息区用于存储所述用户空间的权限配置数据和访问保护权限数据。
[0026]进一步地,所述根据所述用户空间设置的访问权限判断是否执行所述数据访问请求对应的数据访问操作,之前还包括:
[0027]判断所述数据存储空间是否已被分配给用户;
[0028]若未分配,则根据所述数据访问请求从所述数据存储空间获取数据。
[0029]进一步地,所述当所访问数据的目标地址所属的页不属于所述用户空间且被其所述用户设置了数据访问保护时,则拒绝访问所述数据存储空间,之后还包括:
[0030]将访问所述数据存储空间的异常信息返回给所述CPU。
[0031]进一步地,所述接收CPU的取指请求,并根据所述取指请求确定并记录所述CPU当前执行的程序及所述程序对应的用户,如果判断所述程序对应的用户和上一条执行的程序对应的用户不同,则将占用所述CPU的用户切换成当前所述程序对应的用户,之后还包括:
[0032]当检测到用于改变目标用户设置的数据访问保护权限的用户请求时,擦除所述目标用户所对应程序的数据。
[0033]进一步地,所述当检测到用于改变目标用户设置的数据访问保护权限的用户请求时,擦除所述目标用户所对应程序的数据,包括:
[0034]当检测到用于改变目标用户设置的数据访问保护权限的用户请求时,判断改变权限的页是否属于所述目标用户的用户空间;
[0035]若是,则修改所述用户空间设置的数据保护权限;
[0036]若否,判断改变权限的页是否被分配给其他用户;
[0037]若未分配,则将所述页分配给发出所述用户请求的用户,并修改所述数据保护权限;
[0038]若已分配,查看所述页被分配的所述目标用户,并将所述目标用户对应程序的权限和数据擦除。
[0039]本专利技术还提供一种智能终端,其中,所述智能终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的代码保护程序,所述代码保护程序被所述处理器执行时实现如上所述的MCU片内程序代码的保护方法的步骤。
[0040]本专利技术还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有代码保护程序,所述代码保护程序被处理器执行时实现如上所述的MCU片内程序代码的保护方法的步骤。
[0041]本专利技术所提供的一种MCU内程序代码保护的方法、智能终端及存储介质,所述方法包括:接收CPU的取指请求,并根据所述取指请求确定并记录所述CPU当前执行的程序及所述程序对应的用户,如果判断所述程序对应的用户和上一条执行的程序对应的用户不同,则将占用所述CPU的用户切换成当前所述程序本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种MCU片内程序代码的保护方法,其特征在于,包括:接收CPU的取指请求,并根据所述取指请求确定并记录所述CPU当前执行的程序及所述程序对应的用户,如果判断所述程序对应的用户和上一条执行的程序对应的用户不同,则将占用所述CPU的用户切换成当前所述程序对应的用户;当接收到所述CPU的数据访问请求时,根据所述数据访问请求确定访问的目标地址对应的用户空间;根据所述用户空间设置的访问权限判断是否执行所述数据访问请求对应的数据访问操作。2.根据权利要求1所述的MCU片内程序代码的保护方法,其特征在于,所述接收CPU的取指请求,并根据所述取指请求确定并记录所述CPU当前执行的程序及所述程序对应的用户,如果判断所述程序对应的用户和上一条执行的程序对应的用户不同,则将占用所述CPU的用户切换成当前所述程序对应的用户,之前还包括:将非易失性存储器分成多个容量大小相同的页,并进行分页管理;以所述页为单位为不同用户在非易失性存储器中分配数据和指令的用户空间,并对所述数据存储空间的不同页分别设置所述数据访问保护权限。3.根据权利要求2所述的MCU片内程序代码的保护方法,其特征在于,所述接收CPU的取指请求,并根据所述取指请求确定并记录所述CPU当前执行的程序及所述程序对应的用户,如果判断所述程序对应的用户和上一条执行的程序对应的用户不同,则将占用所述CPU的用户切换成当前所述程序对应的用户,还包括:接收所述CPU的访问信号;当所述访问信号中存在取指访问请求时,根据取指访问的目标地址确定在所述非易失性存储器中对应的所述页,并确定所述页所属的用户空间;若所述页不属于当前用户空间,则切换占用CPU的用户为所述页所属的用户空间,并同时更新所述数据访问保护权限;若所述页属于当前用户空间,保持占用CPU的用户不变。4.根据权利要求3所述的MCU片内程序代码的保护方法,其特征在于,所述当接收到所述CPU的数据访问请求时,根据所述数据访问请求确定访问的目标地址对应的用户空间,包括:接收所述CPU的访问信号;当所述访问信号中存在数据访问请求时,确定所访问数据的目标地址在所述非易失性存储器中所属的页,并确定所述页所属的用户空间。5.根据权利要求4所述的MCU片内程序代码的保护方法,其特征在于,所述根据所述用户空间设置的访问权限判断是否执行所述数据访问请求对应的数据访问操作,包括:当所访问数据的目标地址所属的页属于所述用户空间或者未被其所属用户设置数据访问保护时,根据所述数据访问请求从所述数据存储空间获取数据;当所访问数据的目标地址所属的...

【专利技术属性】
技术研发人员:熊辉兵王翔刘吉平
申请(专利权)人:深圳市航顺芯片技术研发有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1