申请/专利权人:江苏华创微系统有限公司
申请日:2023-12-26
公开(公告)日:2024-02-20
公开(公告)号:CN117573384A
主分类号:G06F9/52
分类号:G06F9/52;G06F9/48
优先权:
专利状态码:在审-实质审查的生效
法律状态:2024.03.08#实质审查的生效;2024.02.20#公开
摘要:本发明公开了一种关于一把锁在多核运行状态下的死锁破解方法,在无系统模式多核运行状态下,按照核的数量设置栅栏,将多核同步,再将工作次数大于或等于最大值的核停止测试,将工作次数小于最大值的核进行抢锁,在核完成一次工作后设置延迟时间,在延迟时间过后重新返回判断工作次数进行循环;在有系统模式多核运行状态下,也按照核的数量设置栅栏,将多核同步,再将工作次数大于或等于最大值的核停止测试,将工作次数小于最大值的核进行抢锁,然后对抢锁的每个核划分优先级,让优先级最高的核抢到锁并进行工作,然后返回判断工作次数的步骤进行循环。本发明能够破解死锁问题,保证原场景多核的运行效率,有序分配资源。
主权项:1.关于一把锁在多核运行状态下的死锁破解方法,其特征在于,包括如下步骤:S1、在无系统模式的多核运行场景中,按照核的数量设置栅栏,并利用栅栏将多核的操作同步;S2、设置一把锁及两个不同的锁值,并设置步骤S1中每个核的最大工作次数为K次,在完成步骤S1中多核的操作同步后,对每个核的工作次数进行判断,将工作次数大于或等于K次的核停止测试,将工作次数小于K次的核进行抢锁操作;S3、根据步骤S2中抢锁的每个核抢到的锁值判断是否抢锁成功,若是,则将抢锁成功的一个核进行工作,在完成工作后释放锁,并对完成工作的一个核设置延迟时间;若否,则将抢锁失败的每个核重新返回步骤S2中的抢锁操作;S4、将步骤S3中完成工作的一个核的工作次数加1,再重新返回步骤S2中判断工作次数加1后是否小于K次,若否,则工作次数加1的核停止测试;若是,则继续返回步骤S2的抢锁操作,进入循环,直至每个核的工作次数均达到K次时,无系统模式的多核运行结束。
全文数据:
权利要求:
百度查询: 江苏华创微系统有限公司 关于一把锁在多核运行状态下的死锁破解方法
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。