一种设备操作的实现方法及装置制造方法及图纸

技术编号:28134734 阅读:30 留言:0更新日期:2021-04-21 19:00
本发明专利技术公开了一种设备操作的实现方法及装置,涉及计算机技术领域,该方法通过文件方式共享了激活的Shell进程的唯一标识,使得每一个未激活的Shell进程能够通过定期读取该文件判断自己是否可以切换为激活的Shell进程。本发明专利技术方法降低了在多个Shell进程之间进行切换的复杂度,具有很好的通用性和可移植性。具有很好的通用性和可移植性。具有很好的通用性和可移植性。

【技术实现步骤摘要】
一种设备操作的实现方法及装置


[0001]本专利技术涉及计算机
,尤其涉及一种设备操作的实现方法及装置。

技术介绍

[0002]在嵌入式设备中Shell进程作为命令解析器与控制台“/dev/console”相连,通过读、写控制台,向管理人员提供命令行界面。通常嵌入式设备只有一个控制台,该控制台同一时刻只能和一个Shell进程相连进行信息的交互。当系统中有多个Shell进程需要同时进行输入输出时,有限的控制台资源往往成为系统的瓶颈。现有的解决方案中,如需实现多个Shell进程之间的切换,需要使用复杂的编程才能完成对控制台的抢占,通用性和可移植性差。如何采用简单易行的方法实现多个Shell进程之间的切换,成为当前亟待解决的问题。

技术实现思路

[0003]本专利技术提供一种设备操作的实现方法及装置,解决了嵌入式设备实现多个Shell进程之间切换时,复杂度高、通用性和可移植性差的问题。
[0004]第一方面,本专利技术提供一种设备操作的实现方法,应用于嵌入式设备,包括以下步骤:
[0005]启动指定数量的Shell进程;在所述指定数量的Shell进程中任选一个Shell进程设置为激活的Shell进程,更新该激活的Shell进程的唯一标识至第一文件中;
[0006]任一未激活的Shell进程定期读取所述第一文件中的唯一标识,判断该未激活的Shell进程是否能切换为激活的Shell进程;若是,该未激活的Shell进程切换为激活的Shell进程并与控制台建立连接,等待对用户指令进行解析处理。
[0007]其中,所述启动指定数量的Shell进程,包括:
[0008]每启动一个Shell进程时,如果当前被启动的Shell进程是启动的第一个Shell进程,创建所述第一文件,将该Shell进程的唯一标识写入所述第一文件,设置该Shell进程为激活的Shell进程,并将该Shell进程与所述控制台建立连接;否则,设置该Shell进程为未激活的Shell进程,并为该Shell进程打开一个定时器。
[0009]优选的,所述启动指定数量的Shell进程,包括:
[0010]每启动一个Shell进程时,如果当前被启动的Shell进程是启动的第一个Shell进程,设置当前被启动的Shell进程的索引值为初始索引值,创建第二文件和所述第一文件,将该Shell进程的索引值分别写入所述第二文件和所述第一文件,设置该Shell进程为激活的Shell进程,并将该Shell进程与所述控制台建立连接;否则,读取所述第二文件中的索引值,将该索引值按照设定的规则更新后的值设置为当前被启动的Shell进程的索引值,将该Shell进程的索引值更新至所述第二文件中,设置该Shell进程为未激活的Shell进程,并为该Shell进程打开一个定时器。
[0011]所述在所述指定数量的Shell进程中任选一个Shell进程设置为激活的Shell进程,更新该激活的Shell进程的唯一标识至第一文件中,包括:
[0012]输入用户指令将所述指定数量的Shell进程中任选一个Shell进程设置为激活的Shell进程时,如果设置为激活的Shell进程的唯一标识不等于当前与所述控制台建立连接的Shell进程的唯一标识,则当前与所述控制台建立连接的Shell进程将设置为激活的Shell进程的唯一标识更新至所述第一文件中,且当前与所述控制台建立连接的Shell进程将自身设置为未激活的Shell进程,断开与所述控制台的连接,并启动所述定时器。
[0013]所述任一未激活的Shell进程定期读取所述第一文件中的唯一标识,判断该未激活的Shell进程是否能切换为激活的Shell进程,包括:
[0014]所述任一未激活的Shell进程的定时器到期后,该Shell进程读取所述第一文件中的唯一标识,判断该Shell进程的唯一标识与所述第一文件中的唯一标识是否相同;若相同,关闭该Shell进程的定时器;否则,再次打开该Shell进程的定时器。
[0015]第二方面,本专利技术提供一种设备操作的实现装置,应用于嵌入式设备,具体包括:
[0016]启动模块,用于启动指定数量的Shell进程;
[0017]Shell进程模块,用于在所述指定数量的Shell进程中任选一个Shell进程设置为激活的Shell进程,更新该激活的Shell进程的唯一标识至第一文件中;以及用于任一未激活的Shell进程定期读取所述第一文件中的唯一标识,判断该未激活的Shell进程是否能切换为激活的Shell进程;若是,该未激活的Shell进程切换为激活的Shell进程并与控制台建立连接,等待对用户指令进行解析处理;
[0018]控制台模块,用于将输入的用户指令转发到与所述控制台建立连接的Shell进程上进行解析处理;以及用于将解析处理后的结果转发到与所述控制台建立连接的Shell进程上进行输出。
[0019]其中,所述启动模块具体用于:每启动一个Shell进程时,如果当前被启动的Shell进程是启动的第一个Shell进程,创建所述第一文件,将该Shell进程的唯一标识写入所述第一文件,设置该Shell进程为激活的Shell进程,并将该Shell进程与所述控制台建立连接;否则,设置该Shell进程为未激活的Shell进程,并为该Shell进程打开一个定时器。
[0020]优选的,所述启动模块具体用于:每启动一个Shell进程时,如果当前被启动的Shell进程是启动的第一个Shell进程,设置当前被启动的Shell进程的索引值为初始索引值,创建第二文件和所述第一文件,将该Shell进程的索引值分别写入所述第二文件和所述第一文件,设置该Shell进程为激活的Shell进程,并将该Shell进程与所述控制台建立连接;否则,读取所述第二文件中的索引值,将该索引值按照设定的规则更新后的值设置为当前被启动的Shell进程的索引值,将该Shell进程的索引值更新至所述第二文件中,设置该Shell进程为未激活的Shell进程,并为该Shell进程打开一个定时器。
[0021]所述Shell进程模块具体用于:输入用户指令将所述指定数量的Shell进程中任选一个Shell进程设置为激活的Shell进程时,如果设置为激活的Shell进程的唯一标识不等于当前与所述控制台建立连接的Shell进程的唯一标识,则当前与所述控制台建立连接的Shell进程将设置为激活的Shell进程的唯一标识更新至所述第一文件中,且当前与所述控制台建立连接的Shell进程将自身设置为未激活的Shell进程,断开与所述控制台的连接,并启动所述定时器。
[0022]进一步的,所述Shell进程模块具体用于:所述任一未激活的Shell进程的定时器到期后,该Shell进程读取所述第一文件中的唯一标识,判断该Shell进程的唯一标识与所
述第一文件中的唯一标识是否相同;若相同,关闭该Shell进程的定时器;否则,再次打开该Shell进程的定时器。
[0023本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种设备操作的实现方法,其特征在于,应用于嵌入式设备,所述方法包括:启动指定数量的Shell进程;在所述指定数量的Shell进程中任选一个Shell进程设置为激活的Shell进程,更新该激活的Shell进程的唯一标识至第一文件中;任一未激活的Shell进程定期读取所述第一文件中的唯一标识,判断该未激活的Shell进程是否能切换为激活的Shell进程;若是,该未激活的Shell进程切换为激活的Shell进程并与控制台建立连接,等待对用户指令进行解析处理。2.如权利要求1所述的方法,其特征在于,所述启动指定数量的Shell进程,包括:每启动一个Shell进程时,如果当前被启动的Shell进程是启动的第一个Shell进程,创建所述第一文件,将该Shell进程的唯一标识写入所述第一文件,设置该Shell进程为激活的Shell进程,并将该Shell进程与所述控制台建立连接;否则,设置该Shell进程为未激活的Shell进程,并为该Shell进程打开一个定时器。3.如权利要求1所述的方法,其特征在于,所述启动指定数量的Shell进程,包括:每启动一个Shell进程时,如果当前被启动的Shell进程是启动的第一个Shell进程,设置当前被启动的Shell进程的索引值为初始索引值,创建第二文件和所述第一文件,将该Shell进程的索引值分别写入所述第二文件和所述第一文件,设置该Shell进程为激活的Shell进程,并将该Shell进程与所述控制台建立连接;否则,读取所述第二文件中的索引值,将该索引值按照设定的规则更新后的值设置为当前被启动的Shell进程的索引值,将该Shell进程的索引值更新至所述第二文件中,设置该Shell进程为未激活的Shell进程,并为该Shell进程打开一个定时器。4.如权利要求2或3所述的方法,其特征在于,所述在所述指定数量的Shell进程中任选一个Shell进程设置为激活的Shell进程,更新该激活的Shell进程的唯一标识至第一文件中,包括:输入用户指令将所述指定数量的Shell进程中任选一个Shell进程设置为激活的Shell进程时,如果设置为激活的Shell进程的唯一标识不等于当前与所述控制台建立连接的Shell进程的唯一标识,则当前与所述控制台建立连接的Shell进程将设置为激活的Shell进程的唯一标识更新至所述第一文件中,且当前与所述控制台建立连接的Shell进程将自身设置为未激活的Shell进程,断开与所述控制台的连接,并启动所述定时器。5.如权利要求2或3所述的方法,其特征在于,所述任一未激活的Shell进程定期读取所述第一文件中的唯一标识,判断该未激活的Shell进程是否能切换为激活的Shell进程,包括:所述任一未激活的Shell进程的定时器到期后,该Shell进程读取所述第一文件中的唯一标识,判断该Shell进程的唯一标识与所述第一文件中的唯一标识是否相同;若相同,关闭该Shell进程的定时器;否则,再次打开该Shell进程的定时器。...

【专利技术属性】
技术研发人员:舒弋
申请(专利权)人:迈普通信技术股份有限公司
类型:发明
国别省市:

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

1