无盘工作站启动过程中避免发生资源竞争的系统及方法

文档序号:7762981阅读:271来源:国知局
专利名称:无盘工作站启动过程中避免发生资源竞争的系统及方法
技术领域
本发明涉及一种无盘工作站启动过程中避免发生资源竞争的系统及方法。
背景技术
实现无盘工作方式有多种,其中一种是下载操作系统中部份必须的文件,如,内核 (kernel)、配置文件等到无盘工作站的内存中,并通过挂载(或者说是映像)操作系统的文件系统,然后启动无盘工作站。此种工作方式的特点是多台无盘工作站共享同一个文件系统。然而,若多台无盘工作站同时启动,会有资源竞争问题,例如,无盘工作站A及无盘工作站B同时启动,调用服务器中文件系统的同一个文件,由于有资源竞争,会造成无盘工作站启动缓慢,延长了无盘工作站的启动时间,浪费了服务器资源。

发明内容
鉴于以上内容,有必要提供一种无盘工作站启动过程中避免发生资源竞争的系统,其可以避免多台无盘工作站同时启动时发生资源竞争的问题,节约了服务器资源,缩短了无盘工作站的启动时间。此外,还有必要提供一种无盘工作站启动过程中避免发生资源竞争的方法,其可以避免多台无盘工作站同时启动时发生资源竞争的问题,节约了服务器资源,缩短了无盘工作站的启动时间。一种无盘工作站启动过程中避免发生资源竞争的系统,该系统包括发送模块,用于发送含有无盘工作站的网际协议地址的广播包给服务器,以建立通信连接;下载模块, 用于当无盘工作站与服务器之间建立通信连接之后,从服务器下载操作系统的引导程序、 内核、镜像文件及配置文件到该无盘工作站的内存中;执行模块,用于执行引导程序,并根据配置文件及镜像文件启动内核,在内核启动过程中创建一个临时文件目录,将服务器中操作系统的文件系统挂载到操作系统的系统根目录中,再将所创建的临时文件目录挂载到系统根目录下的临时文件目录中,完成操作系统的文件系统挂载到无盘工作站中;创建模块,用于在上述创建的临时文件目录下创建用于存放操作系统启动过程中所产生的信息的子目录,及在所创建的子目录下创建用于记录操作系统启动过程中所产生的信息的记录文件。一种无盘工作站启动过程中避免发生资源竞争的方法,该方法包括如下步骤发送含有无盘工作站的网际协议地址的广播包给服务器,以建立通信连接;当无盘工作站与服务器之间建立通信连接之后,从服务器下载操作系统的引导程序、内核、镜像文件及配置文件到该无盘工作站的内存中;执行引导程序,并根据配置文件及镜像文件启动内核,在内核启动过程中创建一个临时文件目录,将服务器中操作系统的文件系统挂载到操作系统的系统根目录中,再将所创建的临时文件目录挂载到系统根目录下的临时文件目录中,完成操作系统的文件系统挂载到无盘工作站中;在上述创建的临时文件目录下创建用于存放操作系统启动过程中所产生的信息的子目录,及在所创建的子目录下创建用于记录操作系统启动过程中所产生的信息的记录文件。相较于现有技术,所述的无盘工作站启动过程中避免发生资源竞争的系统及方法,其可以避免多台无盘工作站同时启动时发生资源竞争的问题,节约了服务器资源,缩短了无盘工作站的启动时间。


图1是本发明无盘工作站启动过程中避免发生资源竞争的系统的较佳实施例的硬件框架图。图2是图1中无盘工作站的功能模块图。图3是本发明无盘工作站启动过程中避免发生资源竞争的方法的较佳实施例的流程图。主要元件符号说明
无盘工作站|~TF
~20~
服务器30"
发送模块100
下载模块 0
执行模块120
创建模块130
具体实施例方式如图1所示,是本发明一种无盘工作站启动过程中避免发生资源竞争的系统较佳实施例的硬件架构图。该系统包括无盘工作站10、网络20及服务器30。该服务器30可以是个人计算机、网络服务器,还可以是任意其它适用的计算机。无盘工作站10(图1以两个为例)通过网络20与服务器30相连,该无盘工作站 10从服务器30下载启动程序、配置文件、内核及镜像文件,并通过挂载服务器30上的文件系统到无盘工作站10的内存中,以实现无盘工作站10的启动,所述无盘工作站10为无盘 (即不包括硬盘)个人计算机、笔记本电脑以及其它任意能够实现无盘启动的设备或系统。所述网络20可以是互联网、局域网或者无线通讯网络。该服务器30通过网络20与无盘工作站10连接,在本较佳实施例中,该服务器为动态主机分配协议(Dynamic Host Conf igurationProtocol, DHCP)服务器30,该服务器30 在预启动执行环境(PrebootExecution Environment, PXE)下与无盘工作站10进行通信连接。如图2所示,是图1中无盘工作站10的功能模块图。该无盘工作站10包括发送模块100、下载模块110、执行模块120及创建模块130。所述发送模块100用于发送含有该无盘工作站10的网际协议(Internet Protocol, IP)地址的广播包给服务器30,以建立通信连接。具体而言,发送模块100发送 IP地址的广播包给服务器30,服务器30接收到该广播包之后,对广播包中的IP地址进行确认,以判断该IP地址是否有效,若判断结果为有效,服务器30发送一个反馈信息给无盘工作站10,说明无盘工作站10与服务器30之间已经建立通信连接,可以进行数据交互。所述下载模块110用于当无盘工作站10与服务器30之间建立通信连接之后,从服务器30下载操作系统的引导程序、内核、镜像文件及配置文件到无盘工作站10的内存中。在本较佳实施例中,所述操作系统为Linux操作系统。其中,所述引导程序为Linux操作系统中的boot loader,所述内核为Linux操作系统中的kernel,所述镜像文件为Linux 操作系统中包含init文件的initrd压缩文件,所述配置文件包括kernel的名称,kernel 的具体位置,镜像文件的名称,镜像文件的具体位置,以及启动kernel的参数(例如,IP设置参数、启动模式参数、热插拔设备参数)。所述执行模块120用于执行引导程序,并根据配置文件及镜像文件启动内核,在内核启动过程中创建一个临时文件目录,将服务器30中操作系统的文件系统挂载到操作系统的系统根目录中,再将所创建的临时文件目录挂载到系统根目录下的临时文件目录中,完成操作系统的文件系统挂载到无盘工作站10中。具体而言,在启动内核的过程中需要调用配置文件中的参数(例如,IP设置参数、启动模式参数、热插拔设备参数)以及镜像文件中的init文件,从而才能启动内核。在内存空间创建临时文件目录,在本较佳实施例中,所述临时文件目录的名称为var,具体创建方式如下mkdir-p/Var。其中mkdir为目录创建命令,var为临时文件目录名称。将服务器30中操作系统的文件系统挂载到无盘工作站10的方式如下首先,根据文件系统在服务器30中的路径获得服务器30中的文件系统,将文件系统挂载到操作系统的系统根目录下,具体获取方式为m0unt-n-tmpfS 192. 168. 49. 1:/ tftpboot/pxeboot/sysroot。其中,mount 为挂载命令,tmpfs (temporary file storage facility)为临时文件系统,即该无盘工作站10所挂载的文件系统的文件格式为临时文件系统的格式,“192. 168. 49. 1” 为服务器 30 的 IP 地址,“ /tftpboot/pxeboot/sysroot” 为将临时文件系统挂载到操作系统的系统根目录/sysroot下。其次,将所创建的临时文件目录挂载到操作系统的系统根目录下的临时文件目录中,从而完成将服务器30中操作系统的文件系统挂载到无盘工作站10中。一般而言,操作系统的系统根目录下都有一个临时文件目录,例如,/sysroot/var,其中,/sysroot/var是系统根目录/sysroot下的临时文件目录。具体代码如下mount-n-omode = 0755,size = 64m,rw-t tmpfs/var/sysroot/var,其中 mount 为挂载命令,“mode = 0755”为所挂载的文件系统的工作模式,在本较佳实施例中,数字0755中的7为可读可写模式,5为可读可执行模式,数字的位置关系还可以表示不同的权限,“size = 6細”为该文件系统的大小,rw为可读可写,“tmpfs/var/sysr00t/var”表示将临时文件目录/var挂载到系统根目录下的临时文件目录/sysroot/var中。通过挂载服务器30中的文件系统,使无盘工作站10能够远程调用服务器30中的文件系统。此外,执行模块120还用于将无盘工作站10的操作权限从内核层切换到用户层,即从内核级操作权限到用户级使用权限,使用户能够对无盘工作站10进行操作,切换的方式是通过执行SWitchroot切换命令来实现。所述创建模块130用于在用户层,在上述创建的临时文件目录下创建用于存放操作系统启动过程中所产生的信息的子目录,及在所创建的子目录下创建用于记录操作系统启动过程中所产生的信息的记录文件。在临时文件目录/Var下创建子目录及在每个子目录中创建一个记录文件,使得操作系统启动过程中所产生的信息记录到所对应的子目录下的记录文件中。具体而言,以如下代码为例mkdir-p/var/run/netreportmkdir-p/var/lock/subsysmkdir-p/var/empty/sshd/etcmkdir-p/var/{spool, lib, log}touch/var/lib/random-seedtouch/var/log/{dmesg, wtmp}touch/var/run/utmptouch/var/lock/subsys/{network, portmap, netfs, pcscd, autofs, crond, local}其中mkdir为目录创建命令,touch为文件创建命令,都是在临时文件目录var下进行创建。创建完成之后,无盘工作站10会将操作系统启动过程中所产生的信息(例如, 日志)记录到所创建的子目录下的记录文件中。如图3所示,是本发明一种无盘工作站启动过程中避免发生资源竞争的方法的较佳实施例的流程图。步骤S10,发送模块100发送含有该无盘工作站10的IP地址的广播包给服务器 30,以建立通信连接。具体而言,发送模块100发送IP地址的广播包给服务器30,服务器 30接收到该广播包之后,对广播包中的IP地址进行确认,以判断该IP地址是否有效,若判断结果为有效,服务器30发送一个反馈信息给无盘工作站10,说明无盘工作站10与服务器 30之间已经建立通信连接,可以进行数据交互。步骤S11,当无盘工作站10与服务器30之间建立通信连接之后,下载模块110从服务器30下载操作系统的引导程序、内核、镜像文件及配置文件到无盘工作站10的内存中。在本较佳实施例中,所述操作系统为Linux操作系统。其中,所述引导程序为Linux操作系统中的boot loader,所述内核为Linux操作系统中的kernel,所述镜像文件为Linux 操作系统中包含init文件的initrd压缩文件,所述配置文件包括kernel的名称,kernel 的具体位置,镜像文件的名称,镜像文件的具体位置,以及启动kernel的参数(例如,IP设置参数、启动模式参数、热插拔设备参数)。步骤S12,执行模块120执行引导程序,并根据配置文件及镜像文件启动内核,在内核启动过程中创建一个临时文件目录,将服务器30中操作系统的文件系统挂载到操作系统的系统根目录中,再将所创建的临时文件目录挂载到系统根目录下的临时文件目录中,完成操作系统的文件系统挂载到无盘工作站10中。具体而言,在启动内核的过程中需要调用配置文件中的参数(例如,IP设置参数、启动模式参数、热插拔设备参数)以及镜像文件中的init文件,从而才能启动内核。在内存空间创建临时文件目录,在本较佳实施例
6中,所述临时文件目录的名称为var,具体创建方式如下mkdir-p/Var。其中mkdir为目录创建命令,var为临时文件目录名称。将服务器30中操作系统的文件系统挂载到无盘工作站10的方式如下首先,根据文件系统在服务器30中的路径获得服务器30中的文件系统,将文件系统挂载到操作系统的系统根目录下,具体获取方式为m0unt-n-tmpfS 192. 168. 49. 1:/ tftpboot/pxeboot/sysroot。其中,mount 为挂载命令,tmpfs (temporary file storage facility)为临时文件系统,即该无盘工作站10所挂载的文件系统的文件格式为临时文件系统的格式,“192. 168. 49. 1” 为服务器 30 的 IP 地址,“ /tftpboot/pxeboot/sysroot” 为将临时文件系统挂载到操作系统的系统根目录/sysroot下。其次,将所创建的临时文件目录挂载到操作系统的系统根目录下的临时文件目录中,从而完成将服务器30中操作系统的文件系统挂载到无盘工作站10中。一般而言,操作系统的系统根目录下都有一个临时文件目录,例如,/sysroot/var,其中,/sysroot/var是系统根目录/sysroot下的临时文件目录。具体代码如下mount-n-omode = 0755, size = 64m,rw-t tmpfs/var/sysroot/var,其中 mount 为挂载命令,“mode = 0755”为所挂载的文件系统的工作模式,在本较佳实施例中,数字0755中的7为可读可写模式,5为可读可执行模式,数字的位置关系还可以表示不同的权限,“size = 6細”为该文件系统的大小,rw为可读可写,“tmpfs/var/sysr00t/var”表示将临时文件目录/var挂载到系统根目录下的临时文件目录/sysroot/var中。通过挂载服务器30中的文件系统,使无盘工作站10能够远程调用服务器30中的文件系统。此外,执行模块120还用于将无盘工作站10的操作权限从内核层切换到用户层, 即从内核级操作权限到用户级使用权限,使用户能够对无盘工作站10进行操作,切换的方式是通过执行SWitchroot切换命令来实现。步骤S13,在用户层,创建模块130在上述创建的临时文件目录下创建用于存放操作系统启动过程中所产生的信息的子目录,及在所创建的子目录下创建用于记录操作系统启动过程中所产生的信息的记录文件。在目录/Var下创建子目录及在每个子目录中创建一个记录文件,使得操作系统启动过程中所产生的信息记录到所对应的子目录下的记录文件中。具体而言,以如下代码为例mkdir-p/var/run/netreportmkdir-p/var/lock/subsysmkdir-p/var/empty/sshd/etcmkdir-p/var/{spool, lib, log}touch/var/1ib/random-seedtouch/var/log/ {dmesg,wtmp}touch/var/run/utmptouch/var/lock/subsys/{network, portmap, netfs, pcscd, autofs, crond, local}其中mkdir为目录创建命令,touch为文件创建命令,都是在临时文件目录var下进行创建。创建完成之后,无盘工作站10会将操作系统启动过程中所产生的信息(例如, 日志)记录到所创建的子目录下的记录文件中。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照以上较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
权利要求
1.一种无盘工作站启动过程中避免发生资源竞争的系统,其特征在于,该系统包括发送模块,用于发送含有无盘工作站的网际协议地址的广播包给服务器,以建立通信连接;下载模块,用于当无盘工作站与服务器之间建立通信连接之后,从服务器下载操作系统的引导程序、内核、镜像文件及配置文件到该无盘工作站的内存中;执行模块,用于执行引导程序,并根据配置文件及镜像文件启动内核,在内核启动过程中创建一个临时文件目录,将服务器中操作系统的文件系统挂载到操作系统的系统根目录中,再将所创建的临时文件目录挂载到系统根目录下的临时文件目录中,完成操作系统的文件系统挂载到无盘工作站中;及创建模块,用于在上述创建的临时文件目录下创建用于存放操作系统启动过程中所产生的信息的子目录,及在所创建的子目录下创建用于记录操作系统启动过程中所产生的信息的记录文件。
2.如权利要求1所述的无盘工作站启动过程中避免发生资源竞争的系统,其特征在于,所述操作系统为Linux操作系统。
3.如权利要求1所述的无盘工作站启动过程中避免发生资源竞争的系统,其特征在于,所述操作系统的引导程序为boot loader,所述操作系统的内核为kernel,所述操作系统中的镜像文件为包含init文件的initrd压缩文件及所述操作系统的配置文件包括kernel的名称、kernel的具体位置、镜像文件的名称、镜像文件的具体位置以及启动 kernel的参数。
4.如权利要求1所述的无盘工作站启动过程中避免发生资源竞争的系统,其特征在于,所述执行模块还用于将操作系统的使用权限从内核层切换到用户层。
5.一种无盘工作站启动过程中避免发生资源竞争的方法,其特征在于,该方法包括如下步骤发送含有无盘工作站的网际协议地址的广播包给服务器,以建立通信连接;当无盘工作站与服务器之间建立通信连接之后,从服务器下载操作系统的引导程序、 内核、镜像文件及配置文件到该无盘工作站的内存中;执行引导程序,并根据配置文件及镜像文件启动内核,在内核启动过程中创建一个临时文件目录,将服务器中操作系统的文件系统挂载到操作系统的系统根目录中,再将所创建的临时文件目录挂载到系统根目录下的临时文件目录中,完成操作系统的文件系统挂载到无盘工作站中;及在上述创建的临时文件目录下创建用于存放操作系统启动过程中所产生的信息的子目录,及在所创建的子目录下创建用于记录操作系统启动过程中所产生的信息的记录文件。
6.如权利要求5所述的无盘工作站启动过程中避免发生资源竞争的方法,其特征在于,所述操作系统为Linux操作系统。
7.如权利要求5所述的无盘工作站启动过程中避免发生资源竞争的方法,其特征在于,所述操作系统的引导程序为boot loader,所述操作系统的内核为kernel,所述操作系统中的镜像文件为包含init文件的initrd压缩文件及所述操作系统的配置文件包括kernel的名称、kernel的具体位置、镜像文件的名称、镜像文件的具体位置以及启动 kernel的参数。
全文摘要
一种无盘工作站启动过程中避免发生资源竞争的系统及方法,该方法包括如下步骤发送含有无盘工作站的网际协议地址的广播包给服务器,以建立通信连接;从服务器下载操作系统的引导程序、内核、镜像文件及配置文件到该无盘工作站的内存中;执行引导程序,并根据配置文件及镜像文件启动内核,在内核启动过程中创建一个临时文件目录,并实现将操作系统的文件系统挂载到无盘工作站中;在上述创建的临时文件目录下创建用于存放操作系统启动过程中所产生的信息的子目录,及在所创建的子目录下创建用于记录操作系统启动过程中所产生的信息的记录文件。利用本法发明可以避免多台无盘工作站同时启动时发生资源竞争,缩短了无盘工作站的启动时间。
文档编号H04L29/08GK102457541SQ20101051791
公开日2012年5月16日 申请日期2010年10月25日 优先权日2010年10月25日
发明者罗探科 申请人:鸿富锦精密工业(深圳)有限公司, 鸿海精密工业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1