CN100469005C - 软件预装系统及方法 - Google Patents

软件预装系统及方法 Download PDF

Info

Publication number
CN100469005C
CN100469005C CNB2005100805957A CN200510080595A CN100469005C CN 100469005 C CN100469005 C CN 100469005C CN B2005100805957 A CNB2005100805957 A CN B2005100805957A CN 200510080595 A CN200510080595 A CN 200510080595A CN 100469005 C CN100469005 C CN 100469005C
Authority
CN
China
Prior art keywords
disk
data
information
execution
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2005100805957A
Other languages
English (en)
Other versions
CN1893358A (zh
Inventor
张玥
陈玄同
刘文涵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huaibei Shanda Intellectual Property Operation Co., Ltd
Original Assignee
Inventec Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inventec Corp filed Critical Inventec Corp
Priority to CNB2005100805957A priority Critical patent/CN100469005C/zh
Publication of CN1893358A publication Critical patent/CN1893358A/zh
Application granted granted Critical
Publication of CN100469005C publication Critical patent/CN100469005C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种软件预装系统及方法,其中该软件预装方法包括以下步骤:服务端的磁盘管理模块添加作为数据源的磁盘设备标识,并添加一用户列表;该服务端的用户请求管理模块接收客户端模块发送的请求,并将该请求加入到该用户列表中;该服务端的数据提取与分发模块依照该用户列表的信息,提取该磁盘的数据发送给该客户端模块;及该客户端模块接收该磁盘数据并将其相应的写入本地磁盘中。本发明直接从磁盘上提取有效数据传送给客户端,减少了处理和传输的数据量,提高系统复制速度。

Description

软件预装系统及方法
技术领域
本发明涉及一种软件预装系统及方法,尤其是一种直接从磁盘上提取数据传送给客户端的软件预装系统及方法。
背景技术
操作系统是所有计算机系统和计算机化设备的核心。操作系统提供一个环境使设计出的应用软件和硬件能够在其中运行。为实现这个目的,操作系统管理和调度它所在的计算机或设备的资源,并提供不同的功能模块和接口让应用程序能够用来完成他们的任务。
在企业环境中,以前的技术软件和操作系统的安装通常是使用镜像安装法,此方法先把一个样本系统制作成一个镜像档,然后在需要的时候由客户端下载到本地并将其中的文件数据提取出来恢复至本地硬盘上。这种方法将样本系统原封不动的复制到客户端,所以对与客户端来说在经过镜像灌装之后不但成功的将软件载入,也同时完成了客户端硬盘的格式化操作,效率较佳。
然而,这种方法必不可少的步骤是制作镜像文件,当用户对操作系统及技术软件有不同需要时,更需要更改镜像档以作为对应,因此这种镜像安装方法不但因为制作步骤耗时、耗力,而且占用资源较多。
发明内容
为了解决以上问题,本发明的目的在于提供一种软件预装系统及方法,可以直接从磁盘提取有效数据传送给客户端,提高软件预装的效率。
为了实现上述目的,本发明提供了一种软件预装方法,包括以下步骤:
步骤a,服务端的磁盘管理模块添加作为数据源的磁盘设备标识,并添加一用户列表;
步骤b,所述服务端的用户请求管理模块接收客户端模块发送的请求,并将所述请求加入到所述用户列表中;
步骤c,所述服务端的数据提取与分发模块依照所述用户列表的信息,提取磁盘数据发送给所述客户端模块,所述磁盘数据包括扇区数据的开始位置信息、扇区数量信息和扇区数据;及
步骤d,所述客户端模块接收所述磁盘数据并进行解析,并根据所述开始位置信息和扇区数量信息将所述扇区数据相应的写入本地磁盘中。
为了更好的实现上述目的,本发明还提供了一种软件预装系统,包括:
一客户端;一服务端,包括:
一用户请求管理模块,监听所述客户端的请求,并把用户请求添加到相应磁盘的用户列表中;
一用户列表,记录所述用户的信息;
一磁盘列表,记录作为数据源的磁盘信息;
一数据提取与分发模块,根据所述用户列表的信息从所述磁盘列表中提取所述磁盘数据发送给所述客户端,所述磁盘数据包括扇区数据的开始位置信息、扇区数量信息和扇区数据;及
一磁盘管理模块,在所述磁盘列表中添加磁盘信息。
所述客户端向所述服务端发送所述请求,并接收所述服务端发送的所述磁盘数据并进行解析,所述客户端根据所述开始位置信息和扇区数量信息将所述扇区数据相应的写入本地磁盘中。
与现有技术相比,本发明采用高效的扇区复制技术,直接从磁盘上提取有效数据传送给客户端,减少了处理和传输的数据量,提高系统复制速度,而客户端只负责将数据复制到本地磁盘中。本发明利用多播技术将同一扇区数据发送给所有用户,减少了网络带宽的占用;复制后的磁盘与源磁盘有完全相同的数据分布,保证了系统和数据复制的精确性;在数据传输前压缩数据,在客户端接收后解压缩数据,进一步减少了网络带宽的占用;不需要制作映射档,消除了维护、更新映射档所带来的工作量,还可以避免由于映射档被破坏而遭受的损失。下面结合附图和具体实施例对本发明进行详细的说明。
附图说明
图1为本发明软件预装系统的结构示意图;
图2为本发明软件预装方法的磁盘管理模块DMM的流程图;
图3为本发明软件预装方法的用户请求管理模块CRMM的流程图;
图4为本发明软件预装方法的数据提取与分发模块DRSM的流程图;
图5为本发明软件预装方法的数据提取与分发模块从指定磁盘上提取磁盘数据发送给客户端的流程图;及
图6为本发明软件预装方法的客户端模块CLM的流程图。
具体实施方式
图1为本发明软件预装系统的结构示意图。如图1所示,本发明软件预装系统包括服务端和客户端。其中客户端包括客户端模块CLM,用于向服务端发送请求,并在得到“接收数据通知”后,进行接收数据包,之后立即将其写入硬盘中,不须等到所有数据传输完毕后即可安装。
服务端包括接收用户请求的用户请求管理模块CRMM、用户列表CL、磁盘列表DL、数据提取与分发模块DRSM和磁盘管理模块DMM。
其中用户请求管理模块CRMM用于监听客户端的请求,并负责把用户请求添加到相应磁盘的用户列表CL中。
用户列表CL用来记录用户的信息,磁盘列表DL中的每条记录都包含有一个用户列表CL,记录请求该磁盘数据的用户信息,CL中的每条记录包含以下两个部分:
用户地址:IP地址,记录用户的位置信息;和
端口号:整数,记录用户的通讯端口。
磁盘列表DL用来记录作为数据源的磁盘信息,DL中的每条记录包含以下两个部分:
磁盘设备标识:字符串,唯一标识作为数据源的磁盘信息;和
用户列表CL。
数据提取与分发模块DRSM根据用户列表CL的信息从磁盘列表DL的相应磁盘中提取数据包结构DS(图中未示出)发送给客户端模块CLM,用来表示传送的数据内容的数据包结构DS共包括以下三个部分:
绝对扇区号:整数,记录了数据包中扇区数据的开始位置信息;
扇区数量:整数,记录了数据包中包含的扇区数;和
数据区:记录了扇区的具体数据内容。
磁盘管理模块DMM管理作为数据源的磁盘,在磁盘列表DL中添加或删除作用数据源的磁盘信息。
本发明的软件预装方法根据本发明的软件预装系统实施。以下本发明一种软件预装方法的实施例将详细阐述系统管理员使用本发明的软件预装系统为100台主机安装同样的Windows2000操作系统的方法。
在本实施例中,系统管理员需要为新购进的100台PC安装同样的Windows2000操作系统。首先,管理员先在与这100台PC尺寸相同或更小的磁盘上安装Windows2000操作系统,并进入该系统做缺省配置。然后,将该磁盘插入作为服务端的计算机。管理员将新插入的磁盘加入到该服务端维护一个磁盘列表DL中,该条磁盘记录的标识名为InstallWin2000,并带有一个空的用户列表CL。
系统管理员将这100台PC连接到网络上,启动客户端程序,输入服务端地址和需要复制的磁盘标识InstallWin2000。然后这100台PC开始向服务端发送请求信息,其中包含了磁盘标识InstallWin2000。
系统管理员在服务端察看该磁盘记录的用户列表CL,当这100台PC的用户记录都存在时,系统管理员启动磁盘映像复制过程:
在磁盘映像复制过程的开始,服务端先建立一个多播组,其IP多播地址随机生成,例如为224.125.1.1。然后服务端把该多播地址放在“数据接收通知”中发送给所有的用户;
用户在接收到“数据接收通知”后,加入该多播组,在该多播组中接收来自服务端的磁盘数据;
服务端发送“数据接收通知”后,先把相应磁盘的主引导记录(下称MBR)扇区数据封装成数据包结构DS发送给用户,然后解析MBR扇区结构,得到该磁盘的分区信息,再依照分区中文件系统的位图结构,把每个分区中的保存有有效数据的扇区封装成数据包结构DS发送给用户,最后,向客户端发送结束通知;
当客户端接收到数据后,依照数据包结构DS,得到扇区数据的位置和数量信息,客户端通过这些信息把扇区数据写到磁盘中正确的位置上。
最后,当客户端收到结束通知后,磁盘映像复制过程结束,客户端退出。
其中,图2所示为本发明磁盘管理模块DMM的流程图。磁盘管理模块DMM维护一个磁盘列表DL,利用它可以在磁盘列表DL中添加、删除和查询磁盘信息,具体步骤如下:
步骤301,判断操作类型,添加磁盘执行步骤303,删除磁盘执行步骤307,检索磁盘执行步骤311;
步骤303,检测作为数据源的磁盘是否存在,存在执行步骤305,否则执行步骤313;
步骤305,在磁盘列表DL中添加一条记录,以磁盘设备名作为其标识,并添加一个空的用户列表CL,然后执行步骤315;
步骤307,检测要删除的磁盘记录是否存在,存在执行步骤309,否则执行步骤313;
步骤309,从磁盘列表DL中删除该条记录,然后执行步骤315;
步骤311,检索该磁盘是否存在,返回检索结果,执行步骤315;
步骤313,报错;
步骤315,结束。
图3所示为本发明实施例用户请求管理模块CRMM的流程图。用户请求管理模块CRMM监听客户端的请求,并负责把用户请求添加到相应磁盘的用户列表CL中,具体步骤如下:
步骤401,等待客户端请求;
步骤403,判断是否有客户端数据,有执行步骤405,否则执行步骤401;
步骤405,解析用户请求;
步骤407,查询磁盘列表DL,判断用户请求的磁盘是否存在,若存在执行步骤409,否则执行步骤411;
步骤409,在该磁盘的用户列表CL中添加一条记录,填入用户的IP地址和端口号,然后执行步骤401;
步骤411,向客户端报告错误。
图4所示为数据提取与分发模块DRSM的流程图。数据提取与分发模块DRSM可判断是否有对磁盘数据的请求,并从磁盘上提取扇区数据,以多播的形式发送给用户。其主要步骤如下:
步骤501,检查磁盘列表DL中的磁盘记录;
步骤503,判断磁盘记录中的用户列表CL是否为空,若是则执行步骤501,否则执行步骤505;
步骤505,建立一个多播组,将用户列表CL中的用户加入该多播组;
步骤507,向用户发送包括该多播组信息的“接收数据通知”;
步骤509,从指定磁盘上提取磁盘数据发送给客户端;
步骤511,结束。
其中在步骤509中,虽然分区中的文件系统类型有可能不同,但是每种文件系统都使用类似位图的机制来表示分区中空间的分配,所以利用该机制,DRSM模块只提取包含有效数据的扇区,如图5所示,其具体步骤如下:
步骤5091:读取MBR扇区数据发送给用户;
步骤5093:解析MBR扇区,得到分区信息;
步骤5095:判断是否存在下一个分区,若是执行步骤5097,否则执行步骤50915;
步骤5097:判断该分区是否存在文件系统,是则执行步骤5099,否则执行步骤50913;
步骤5099:得到文件系统的位图和每簇扇区数;
步骤50911:以位图为依据,将包含数据的簇中所有扇区发送给用户,当该文件系统处理完毕后执行步骤5095;
步骤50913:将该分区中的每个扇区都发送给用户,然后执行步骤5095;
步骤50915:向客户端发送结束通知;
步骤50917:结束。
图6为本发明实施例客户端模块CLM的流程图。客户端模块CLM可向服务端发送请求,在得到“接收数据通知”后,转入接收状态并接收服务端发送的数据,直至数据传输完毕,具体步骤如下:
步骤601:向服务端发送请求,请求中包括磁盘设备标识;
步骤603:判断是否收到磁盘标识错误的信息,若收到执行步骤617,若否执行步骤605;
步骤605:判断是否收到服务端的“接收数据通知”,若收到则执行步骤607,否则执行步骤603;
步骤607:根据“接收数据通知”中的信息加入到服务端指定的多播组中;
步骤609:判断是否收到服务端数据,若收到执行步骤611,否则执行步骤609;
步骤611:判断收到的是否是结束通知,若是执行步骤619,否则执行步骤613;
步骤613:解析数据包结构DS,得到扇区位置和数量信息;
步骤615:将扇区数据依照位置和数量信息写到本地磁盘指定位置中,然后执行609;
步骤617:报错;
步骤619:结束。
此外,可根据需要改变主机台数和操作系统。
本发明采用高效的扇区复制技术,直接从磁盘上提取有效数据传送给客户端,减少了处理和传输的数据量,提高系统复制速度,而客户端只负责将数据复制到本地磁盘中。本发明利用多播技术将同一扇区数据发送给所有用户,减少了网络带宽的占用;复制后的磁盘与源磁盘有完全相同的数据分布,保证了系统和数据复制的精确性;在数据传输前压缩数据,在客户端接收后解压缩数据,进一步减少了网络带宽的占用;不需要制作映射档,消除了维护、更新映射档所带来的工作量,还可以避免由于映射档被破坏而遭受的损失。该系统主要用于企业环境中为大批量的工作站和服务器部署新的操作系统。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (11)

1、一种软件预装方法,其特征在于,包括:
步骤a,服务端的磁盘管理模块检测作为数据源的磁盘是否存在,如果不存在则报错,如果存在,所述磁盘管理模块在磁盘列表中添加一条记录,以所述磁盘名作为其标识,并添加一空的用户列表;
步骤b,所述服务端的用户请求管理模块接收客户端模块发送的请求,并将所述请求加入到所述用户列表中;
步骤c,所述服务端的数据提取与分发模块依照所述用户列表的信息,按照磁盘的位置信息,提取所述磁盘中的有效的磁盘数据发送给所述客户端模块,所述磁盘数据为包括有扇区数据的开始位置信息、扇区数量信息和扇区数据的数据包;及
步骤d,所述客户端模块接收所述磁盘数据并进行解析,并根据所述开始位置信息和扇区数量信息将所述扇区数据相应的写入本地磁盘中。
2、根据权利要求1所述的软件预装方法,其特征在于,所述用户列表记录所述客户端模块的信息,所述客户端模块的信息包括所述客户端模块的IP地址及端口号。
3、根据权利要求1所述的软件预装方法,其特征在于,所述步骤a具体包括以下步骤:
步骤a1,所述磁盘管理模块判断操作类型,添加磁盘则执行步骤a3,删除磁盘则执行步骤a7,检索磁盘则执行步骤a11;
步骤a3,所述磁盘管理模块检测作为数据源的所述磁盘是否存在,如果存在,执行步骤a5,如果不存在,则报错;
步骤a5,所述磁盘管理模块在磁盘列表中添加一条记录,以磁盘设备名作为其标识,并添加一个空的所述用户列表,然后结束;
步骤a7,所述磁盘管理模块检测要删除的磁盘记录是否存在,存在执行步骤a9,否则报错;
步骤a9,从磁盘列表中删除所述记录,然后结束;及
步骤a11,检索所述磁盘是否存在,返回检索结果。
4、根据权利要求1所述的软件预装方法,其特征在于,所述步骤b具体包括以下步骤:
步骤b1,所述用户请求管理模块判断是否有所述客户端模块发送的请求,有执行步骤b3,否则执行步骤b1;
步骤b3,所述用户请求管理模块解析所述请求;
步骤b5,所述用户请求管理模块查询所述磁盘列表,判断所述用户请求的磁盘是否存在,若存在执行步骤b7,否则向所述客户端报错;及
步骤b7,在所述用户列表中填入所述客户端模块的IP地址和端口号,然后执行步骤b1。
5、根据权利要求4所述的软件预装方法,其特征在于,所述步骤c具体包括以下步骤:
步骤c1,所述数据提取与分发模块检查所述磁盘列表中的磁盘记录;
步骤c3,判断所述磁盘记录中的所述用户列表是否为空,若是则执行步骤c1,否则执行步骤c5;
步骤c5,建立一个多播组,将所述用户列表中的所述用户加入所述多播组;
步骤c7,向所述客户端模块发送包括所述多播组信息的接收数据通知;及
步骤c9,从所述磁盘上提取磁盘数据发送给所述客户端模块。
6、根据权利要求5所述的软件预装方法,其特征在于,所述步骤c9具体包括以下步骤:
步骤c91,所述数据提取与分发模块读取主引导记录扇区数据发送给所述客户端模块;
步骤c93,所述数据提取与分发模块解析所述主引导记录扇区,得到分区信息;
步骤c95,判断是否存在下一个分区,若是执行步骤c97,否则向所述客户端模块发送结束通知;
步骤c97,判断所述分区是否存在文件系统,是则执行步骤c99,否则执行步骤c913;
步骤c99,得到所述文件系统的位图和每簇扇区数;
步骤c911,以所述位图为依据,将包含数据的所述簇中所有扇区发送给所述客户端模块,当所述文件系统处理完毕后执行步骤c95;及
步骤c913,将所述分区中的每个扇区都发送给所述客户端模块,然后执行步骤c95。
7、根据权利要求5所述的软件预装方法,其特征在于,所述步骤d具体包括以下步骤:
步骤d1,所述客户端模块依照所述数据提取与分发模块发送的接收数据通知中的信息加入所述多播组中;
步骤d3,解析所述磁盘数据,得到开始位置信息和扇区数量信息;及
步骤d5,依照所述开始位置信息和所述扇区数量信息将所述扇区数据写到本地磁盘指定位置中。
8、一种软件预装系统,包括:
一客户端;
一服务端,包括:
一用户请求管理模块,监听所述客户端的请求,并把用户请求添加到相应磁盘的用户列表中;
一用户列表,记录所述用户的信息;
一磁盘列表,记录作为数据源的磁盘信息;
一数据提取与分发模块,根据所述用户列表的信息并依据磁盘的位置信息,从所述磁盘列表的相应磁盘中提取有效的磁盘数据发送给所述客户端,所述磁盘数据为包括扇区数据的开始位置信息、扇区数量信息和扇区数据的数据包;及
一磁盘管理模块,用于检测作为数据源的磁盘是否存在,如果不存在则报错,如果存在,在所述磁盘列表中添加磁盘信息,并添加一空的用户列表;
所述客户端向所述服务端发送所述请求,并接收所述服务端发送的所述磁盘数据并进行解析,所述客户端根据所述开始位置信息和扇区数量信息将所述扇区数据相应的写入本地磁盘中。
9、根据权利要求8所述的软件预装系统,其特征在于,所述用户列表记录有用户的位置信息和通讯端口。
10、根据权利要求8所述的软件预装系统,其特征在于,所述磁盘列表中的磁盘信息包括磁盘设备标识和所述用户列表。
11、根据权利要求8所述的软件预装系统,其特征在于,所述磁盘管理模块还删除磁盘信息。
CNB2005100805957A 2005-07-07 2005-07-07 软件预装系统及方法 Expired - Fee Related CN100469005C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100805957A CN100469005C (zh) 2005-07-07 2005-07-07 软件预装系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100805957A CN100469005C (zh) 2005-07-07 2005-07-07 软件预装系统及方法

Publications (2)

Publication Number Publication Date
CN1893358A CN1893358A (zh) 2007-01-10
CN100469005C true CN100469005C (zh) 2009-03-11

Family

ID=37597895

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100805957A Expired - Fee Related CN100469005C (zh) 2005-07-07 2005-07-07 软件预装系统及方法

Country Status (1)

Country Link
CN (1) CN100469005C (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102411696A (zh) * 2010-09-26 2012-04-11 上海杰得微电子有限公司 对外部存储器件进行量产拷贝的方法
CN108971025A (zh) * 2018-08-17 2018-12-11 上海玉嵩机器人技术有限公司 一种视觉检测方法及视觉检测系统

Also Published As

Publication number Publication date
CN1893358A (zh) 2007-01-10

Similar Documents

Publication Publication Date Title
KR100350141B1 (ko) 매체관리자,애플리케이션프로그램인터페이스와이를구현하는방법
JP3004008B1 (ja) 更新履歴管理装置及び更新履歴管理方法
US8972348B2 (en) Method and system for supporting off-line mode of operation and synchronization
US8495434B2 (en) Failure source server and mail server administrator alert management programs, systems, and methods
CN201682522U (zh) 会话信息存储系统及应用服务器
CN101416183B (zh) 保存无线设备当前数据的方法和系统
US20150120670A1 (en) Methods and apparatus for storing and transmitting historical configuration data associated with information technology assets
US20020107886A1 (en) Method and apparatus for automatic document electronic versioning system
US20100030818A1 (en) System and method for applying once a transaction delivered in a message published asynchronously in a distributed database
US20050027718A1 (en) File management method in a distributed storage system
US20040054763A1 (en) Method for minimizing connection time for data synchronization
US7809742B2 (en) Content management method, apparatus, and system
CN107688611B (zh) 一种基于saltstack的Redis键值管理系统及方法
CN105808274A (zh) 软件升级方法、系统及对应的客户端与服务器
US20030095284A1 (en) Method and apparatus job retention
JP2002032280A (ja) 分散型サーバによるコンテンツ及びソフトウェア配信サービスシステム、及び分散型サーバによるコンテンツ及びソフトウェア配信方法、並びに情報記憶媒体
CN102411598A (zh) 一种实现数据一致性的方法及其系统
CN1450465A (zh) 下载管理系统
CN105912424A (zh) 一种基于云架构的终端程序快速备份及恢复方法
WO2000073902A1 (en) Single logical clipboard for multiple computers
CN100469005C (zh) 软件预装系统及方法
CN111857862A (zh) 插件管理方法、装置、电子设备及计算机可读存储介质
JP3811615B2 (ja) 情報配信システム、装置及び方法並びに記録媒体
JP4782353B2 (ja) 情報管理装置、情報処理装置及びそれらの制御方法、情報管理システム、プログラム
US20090182887A1 (en) Data transmission and writing method using multicast data flows

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20191212

Address after: Room 103, building 1, Nanhu Yayuan, Yangzhuang street, Lieshan District, Huaibei City, Anhui Province

Patentee after: Huaibei Shanda Intellectual Property Operation Co., Ltd

Address before: Taipei City, Taiwan, China

Patentee before: Yingda Co., Ltd.

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090311

Termination date: 20190707

CF01 Termination of patent right due to non-payment of annual fee