操作系统启动的控制方法/系统、存储介质及电子设备与流程

文档序号:15931151发布日期:2018-11-14 01:39阅读:145来源:国知局

本发明属于计算机安全技术领域,涉及一种控制方法和系统,特别是涉及一种操作系统启动的控制方法/系统、存储介质及电子设备。

背景技术

随着社会科技的发展,信息安全面临越来越严峻的考验。在一些特定的场合,需要电脑主机只能运行某种类型的操作系统,比如只能运行linux类的系统;或者要求必须不能运行windows操作系统。这样可以保证系统在规定的操作系统上运行,减少特定操作系统的漏洞引起的安全风险。

在现有的技术中,与此最相近的控制操作系统启动的方法是在启动操作系统之前读取系统主分区,找出系统所具有的关键的系统文件来作为判断操作系统类型的依据,并控制操作系统启动。但是当操作系统不是可以被允许启动的类型,而且主分区被恶意放置了一个可以被允许启动的操作系统的关键文件,上述所提到的方法就会失效,会造成十分严重的安全后果。

因此,如何提供一种操作系统启动的控制方法/系统、存储介质及电子设备,以解决现有技术非法绕过安全防线,系统的安全可控性较低等缺陷,实已成为本领域技术人员亟待解决的技术问题。



技术实现要素:

鉴于以上所述现有技术的缺点,本发明的目的在于提供一种操作系统启动的控制方法/系统、存储介质及电子设备,用于解决现有技术非法绕过安全防线,系统的安全可控性较低的问题。

为实现上述目的及其他相关目的,本发明一方面提供一种操作系统启动的控制方法,应用于运行操作系统的电子设备;所述操作系统启动的控制方法包括:基于一基本输入输出系统提供的控制界面上接收设定的控制选项,并存储控制选项的控制变量;所述控制变量为所述控制选项的设定值,用于允许或禁止特定操作系统;在所述电子设备开机过程的输入输出系统运行阶段,读取所述控制变量,并将所述控制变量分别解析成与单个特定操作系统对应的变量;加载所述特定操作系统后,操作系统调用所述基本输入输出系统提供的管理函数;所述管理函数用于管理所述特定操作系统;读取所述特定操作系统的类型信息;判断所述特定操作系统是否允许启动;若是,所述管理函数启动所述特定操作系统;若否,所述管理函数挂起所述特定操作系统。

于本发明的一实施例中,所述控制变量存储于所述电子设备的非挥发性存储模块中。

于本发明的一实施例中,所述控制变量的默认值表示允许所有的操作系统启动。

于本发明的一实施例中,所述读取所述特定操作系统的类型信息的步骤为:通过所述管理函数以询问方式向所述特定操作系统来读取所述特定操作系统的类型信息。

于本发明的一实施例中,所述管理函数为高级配置与电源接口函数。

于本发明的一实施例中,在将所述控制变量分别解析成与单个特定操作系统对应的变量的步骤后,所述操作系统启动的控制方法还包括:为单个特定操作系统对应的变量申请预留的内存空间,并将对应的变量传递至所述管理函数。

本发明另一方面提供一种操作系统启动的控制系统,应用于运行操作系统的电子设备;所述操作系统启动的控制包括:接收模块,用于基于一基本输入输出系统提供的控制界面上接收设定的控制选项,并通过一存储模块存储控制选项的控制变量;所述控制变量为所述控制选项的设定值,用于允许或禁止特定操作系统的启动;第一读取模块,用于在所述电子设备开机过程的输入输出阶段,读取所述控制变量;解析模块,用于将所述控制变量分别解析成与单个特定操作系统对应的变量;调用模块,用于加载所述特定操作系统,并调用所述基本输入输出系统提供的管理函数;所述管理函数用于管理所述特定操作系统的启动;第二读取模块,用于读取所述特定操作系统的类型信息;处理模块,用于判断所述特定操作系统是否允许启动;若是,调用所述管理函数启动所述特定操作系统;若否,调用所述管理函数挂起所述特定操作系统。

于本发明的一实施例中,所述第一读取模块用于通过所述管理函数以询问方式向所述特定操作系统来读取所述特定操作系统的类型信息。

本发明又一方面提供一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述操作系统启动的控制方法。

本发明最后一方面提供一种电子设备,包括:处理器及存储器;所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述电子设备执行所述操作系统启动的控制方法。

如上所述,本发明的操作系统启动的控制方法/系统、存储介质及电子设备,具有以下

有益效果:

本发明所述操作系统启动的控制方法/系统、计算机可读存储介质及电子设备为操作系统环境的管理添加了一道新的安全控制方法,为保密或者受控的机台提供了一种新的管理途径,可以有效防止上述非法绕过安全防线的方法,提高了系统的安全可控性。

附图说明

图1显示为本发明的操作系统启动的控制方法于一实施例中的流程示意图。

图2显示为本发明的操作系统启动的控制系统于一实施例中的原理结构示意图。

元件标号说明

2操作系统启动的控制系统

21接收模块

22存储模块

23第一读取模块

24解析模块

25调用模块

26第二读取模块

27处理模块

s11~s18步骤

具体实施方式

以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。

需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。

本发明所述操作系统启动的控制方法/系统、介质及电子设备的技术原理如下:

bios将存储在非挥发性存储模块中的控制变量读取出来,传递给acpi,在操作系统加载启动的初期读取操作系统的类型,并根据控制变量来决定是否可以继续启动操作系统。

实施例一

本实施例提供一种操作系统启动的控制方法,应用于运行操作系统的电子设备;所述操作系统启动的控制方法包括:

基于一基本输入输出系统提供的控制界面上接收设定的控制选项,并存储控制选项的控制变量;所述控制变量为所述控制选项的设定值,用于允许或禁止特定操作系统;

在所述电子设备开机过程的输入输出系统(bios)运行阶段,读取所述控制变量,并将所述控制变量分别解析成与单个特定操作系统对应的变量;

加载所述特定操作系统后,操作系统调用所述基本输入输出系统提供的管理函数;所述管理函数用于管理所述特定操作系统;

读取所述特定操作系统的类型信息;

判断所述特定操作系统是否允许启动;若是,所述管理函数启动所述特定操作系统;若否,所述管理函数挂起所述特定操作系统。

以下将结合图示对本实施例所提供的操作系统启动的控制方法进行详细描述。本实施例所述的操作系统启动的控制方法应用于可运行多种类型的操作系统的计算机,例如,linux操作系统、xp操作系统,vista操作系统,win7操作系统,win8操作系统,win8.1操作系统及win10操作系统等。请参阅图1,显示为操作系统启动的控制方法于一实施例中的流程示意图。如图1所示,所述操作系统启动的控制方法具体包括以下步骤:

s11,基于一基本输入输出系统(bios)提供的控制界面上接收设定的控制选项,并存储控制选项的控制变量于所述电子设备的非挥发性存储模块中。其中,所述控制变量为所述控制选项的设定值,用于允许或禁止特定操作系统的启动。在本实施例中,所述控制变量的默认值表示允许所有的操作系统启动。

s12,在所述电子设备开机过程的输入输出系统运行阶段(亦称bios阶段),读取存储于所述非挥发性存储模块中的控制变量。

s13,将所述控制变量分别解析成与单个特定操作系统对应的变量,为单个特定操作系统对应的变量申请预留的内存空间,并将对应的变量传递至所述管理函数。在本实施例中,所述管理函数为高级配置与电源接口函数(acpi函数)。

将所述控制变量分别解析成与单个特定操作系统对应的变量的步骤,例如为,存储于所述非挥发性存储模块中的控制变量为16bit的数据,将该数据拆分为可以控制每个特定操作系统的启动的单bit值。例如,如果特定操作系统为win97,若win97对应的单bit值设定为1,表示允许启动win97操作系统;若win97对应的单bit值设定为0,表示禁止win97操作系统启动。

s14,加载所述特定操作系统,操作系统会调用所述基本输入输出系统(bios)提供的管理函数;所述管理函数用于管理所述特定操作系统的启动。所述acpi函数具体用于判断当前正在启动的特定操作系统是否可以继续正常进入系统。

s15,读取所述特定操作系统的类型信息。在本实施例中,所述特定操作系统的类型信息包括linux操作系统、xp操作系统,vista操作系统,win7操作系统,win8操作系统,win8.1操作系统及win10操作系统。

具体地,通过所述管理函数以询问方式及所述管理函数提供的函数_osi向所述特定操作系统来读取所述特定操作系统的类型信息。

s16,判断所述特定操作系统是否允许启动;若是,所述管理函数启动所述特定操作系统;若否,所述管理函数挂起所述特定操作系统。

具体地,根据步骤s15读取到的特定操作系统的类型信息和bios阶段提供的控制变量,判断所述特定操作系统是否允许启动,若是,则执行s17;若否,则执行s18。

s17,所述管理函数启动所述特定操作系统。

s18,所述管理函数挂起所述特定操作系统。

本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述操作系统启动的控制方法。本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤通过计算机程序来完成。前述的计算机程序可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储程序代码的介质为rom。

本实施例所提供的操作系统启动的控制方法为操作系统环境的管理添加了一道新的安全控制方法,为保密或者受控的机台提供了一种新的管理途径,可以有效防止上述非法绕过安全防线的方法,提高了系统的安全可控性。

实施例二

本实施例提供一种操作系统启动的控制系统,应用于运行操作系统的电子设备;所述操作系统启动的控制包括:

接收模块,用于基于一基本输入输出系统提供的控制界面上接收设定的控制选项,并通过一存储模块存储控制选项的控制变量;所述控制变量为所述控制选项的设定值,用于允许或禁止特定操作系统;

第一读取模块,用于在所述电子设备开机过程的输入输出阶段,读取所述控制变量;

解析模块,用于将所述控制变量分别解析成与单个特定操作系统对应的变量;

调用模块,用于加载所述特定操作系统,并调用所述基本输入输出系统提供的管理函数;所述管理函数用于管理所述特定操作系统;

第二读取模块,用于读取所述特定操作系统的类型信息;

处理模块,用于判断所述特定操作系统是否允许启动;若是,调用所述管理函数启动所述特定操作系统;若否,调用所述管理函数挂起所述特定操作系统。

以下将结合图示对本实施例所提供的操作系统启动的控制系统进行详细描述。需要说明的是,应理解以下控制系统的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,x模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上x模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。

例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(applicationspecificintegratedcircuit,简称asic),或,一个或多个微处理器(digitalsingnalprocessor,简称dsp),或,一个或者多个现场可编程门阵列(fieldprogrammablegatearray,简称fpga)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(centralprocessingunit,简称cpu)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称soc)的形式实现。

本实施例可以使用表述“耦合”和“连接”连同其派生词来描述。例如,一些实施例可以使用术语“耦合”来描述,以指示两个或多个元素直接物理或者电气接触。然而,术语“耦合”也可以意指两个或多个元素并非直接彼此接触,但仍彼此协作或者交互。实施例并不限于此方面。

请参阅图2,显示为操作系统启动的控制系统于一实施例中的原理结构示意图。如图2所示,所述操作系统启动的控制系统2包括接收模块21、存储模块22、第一读取模块23、解析模块24、调用模块25、第二读取模块26及处理模块27。

所述接收模块21用于基于一基本输入输出系统(bios)提供的控制界面上接收设定的控制选项,并存储控制选项的控制变量于所述电子设备的存储模块22,具体为非挥发性存储模块22中。其中,所述控制变量为所述控制选项的设定值,用于允许或禁止特定操作系统的启动。在本实施例中,所述控制变量的默认值表示允许所有的操作系统启动。

与所述接收模块21和存储模块22耦合的第一读取模块23用于在所述电子设备开机过程的输入输出阶段(亦称bios阶段),读取存储于所述非挥发性存储模块中的控制变量。

与所述第一读取模块23和存储模块22耦合的解析模块24用于将所述控制变量分别解析成与单个特定操作系统对应的变量,为单个特定操作系统对应的变量申请预留的内存空间,并将对应的变量传递至所述管理函数。在本实施例中,所述管理函数为高级配置与电源接口函数(acpi函数)。

例如,存储于所述非挥发性存储模块中的控制变量为16bit的数据,所述解析模块24将该数据拆分为可以控制每个特定操作系统的启动的单bit值。例如,如果特定操作系统为win97,若win97对应的单bit值设定为1,表示允许启动win97操作系统;若win97对应的单bit值设定为0,表示禁止win97操作系统启动。

与所述解析模块24耦合的调用模块25用于加载所述特定操作系统,并调用所述基本输入输出系统提供的管理函数。所述管理函数用于管理所述特定操作系统的启动。所述acpi函数具体用于判断当前正在启动的特定操作系统是否可以继续正常进入系统。

与所述解析模块24和调用模块25耦合的第二读取模块26用于读取所述特定操作系统的类型信息。

具体地,所述第二读取模块26用于通过所述管理函数以询问方式及高级配置和电源管理接口(acpi)提供的函数_osi向所述特定操作系统来读取所述特定操作系统的类型信息。

与所述第二读取模块26耦合的处理模块27用于判断所述特定操作系统是否允许启动;若是,所述管理函数启动所述特定操作系统;若否,所述管理函数挂起所述特定操作系统。

实施例三

本实施例提供一种电子设备,所述电子设备包括:处理器、存储器、收发器、通信接口和系统总线;存储器和通信接口通过系统总线与处理器和收发器连接并完成相互间的通信,存储器用于存储计算机程序,通信接口用于和其他设备进行通信,处理器和收发器用于运行计算机程序,使电子设备执行如实施例一所述操作系统启动的控制方法的各个步骤。

上述提到的系统总线可以是外设部件互连标准(peripheralpomponentinterconnect,简称pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,简称eisa)总线等。该系统总线可以分为地址总线、数据总线、控制总线等。通信接口用于实现数据库访问装置与其他设备(例如客户端、读写库和只读库)之间的通信。存储器可能包含随机存取存储器(randomaccessmemory,简称ram),也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。

上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessing,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现场可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

综上所述,本发明所述操作系统启动的控制方法/系统、计算机可读存储介质及电子设备为操作系统环境的管理添加了一道新的安全控制方法,为保密或者受控的机台提供了一种新的管理途径,可以有效防止上述非法绕过安全防线的方法,提高了系统的安全可控性。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。

上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1