專利名稱:電子詞典機(jī)數(shù)據(jù)更新方法
技術(shù)領(lǐng)域:
本發(fā)明涉及的是一種電子詞典機(jī)數(shù)據(jù)更新方法,更確切地說是涉及一種將電 子詞典機(jī)數(shù)據(jù)分塊校驗(yàn)從而僅對(duì)各版本數(shù)據(jù)的差異點(diǎn)進(jìn)行更新的方法。
背景技術(shù):
隨著科技的發(fā)展,各種便攜型電子裝置在硬件方面朝向更輕薄短小發(fā)展,且 在軟件方面朝向更多功能和更人性化操作的程序。為了解決電子裝置程序的不 足或漏洞,需要不斷更新原有的舊程序來(lái)提高電子裝置的效率、功能及可靠性。 尤其像電子詞典機(jī)的更新較為頻繁,其除了需要更新原有的程序外,還常需要 將新的字詞加入以擴(kuò)充更新其詞典數(shù)據(jù)庫(kù)。
然而,現(xiàn)有的電子詞典機(jī)內(nèi)數(shù)據(jù)的更新基本上是使用 一次性完全燒錄的更新
方式,所耗費(fèi)的時(shí)間通常在20分鐘以上。而且,若在數(shù)據(jù)更新時(shí)發(fā)生不可預(yù)期 的事情(如意外停電等),造成數(shù)據(jù)更新突然中斷,既沒達(dá)到電子詞典機(jī)數(shù)據(jù) 的更新,還可能影響到電子詞典機(jī)原有的數(shù)據(jù)。因此,需要一種能夠更快速更 新電子詞典機(jī)數(shù)據(jù)的方法。
發(fā)明內(nèi)容
本發(fā)明的目的就是在提供一種電子詞典機(jī)數(shù)據(jù)更新方法,用以克服上述缺陷。
本發(fā)明提出 一種電子詞典機(jī)數(shù)據(jù)更新方法,其包括建立電子詞典機(jī)和主機(jī)的 連接,其中主機(jī)用以取得更新數(shù)據(jù)并協(xié)助電子詞典機(jī)的原始數(shù)據(jù)更新為更新數(shù) 據(jù);主機(jī)判斷原始數(shù)據(jù)是否是可辨識(shí)的版本,若原始數(shù)據(jù)是可辨識(shí)的版本,則 主機(jī)再判斷是否僅針對(duì)原始數(shù)據(jù)的程序進(jìn)行更新;若主機(jī)判定不是僅針對(duì)原始 數(shù)據(jù)的程序進(jìn)行更新,則主機(jī)再判斷是否進(jìn)行分塊校驗(yàn)更新;若主機(jī)判定進(jìn)行 分塊校驗(yàn)更新,則主機(jī)依據(jù)電子詞典機(jī)內(nèi)每個(gè)原始數(shù)據(jù)的CRC ( Cyclic Redundancy Check,循環(huán)冗余校驗(yàn))值所對(duì)應(yīng)的區(qū)塊大小將更新數(shù)據(jù)分割成多個(gè) 相應(yīng)的更新數(shù)據(jù)區(qū)塊,這些更新數(shù)據(jù)區(qū)塊各自生成相應(yīng)的CRC值;主機(jī)比較電子詞典機(jī)內(nèi)原始數(shù)據(jù)區(qū)塊的CRC值及主機(jī)內(nèi)更新數(shù)據(jù)區(qū)塊的CRC值,依據(jù)原 始數(shù)據(jù)區(qū)塊的CRC值在更新數(shù)據(jù)區(qū)塊中找出不同于原始數(shù)據(jù)區(qū)塊的CRC值的 區(qū)塊作為更新來(lái)源區(qū)塊;以及主機(jī)傳送更新來(lái)源區(qū)塊到電子詞典機(jī)進(jìn)行更新。
所述的主機(jī)判定原始數(shù)據(jù)不是可辨識(shí)的版本或不進(jìn)行分塊校驗(yàn)更新時(shí),主機(jī) 將取得的更新數(shù)據(jù)傳送到電子詞典機(jī)上以 一次性完全燒錄的方式進(jìn)行更新。所 述的主機(jī)判定是僅針對(duì)原始數(shù)據(jù)的程序進(jìn)行更新時(shí),主機(jī)將取得的更新數(shù)據(jù)的 程序傳送到電子詞典機(jī)上以 一次性完全燒錄的方式進(jìn)行更新。
本發(fā)明通過分塊校驗(yàn)更新,即由主機(jī)比較電子詞典機(jī)內(nèi)原始數(shù)據(jù)的各區(qū)塊 CRC值和主機(jī)取得的更新數(shù)據(jù)的各區(qū)塊CRC值,得到更新數(shù)據(jù)區(qū)塊中不同于原 始數(shù)據(jù)區(qū)塊的CRC值的區(qū)塊作為更新來(lái)源區(qū)塊,然后主機(jī)再將更新來(lái)源區(qū)塊傳 送到電子詞典機(jī)進(jìn)行更新,從而提高更新速度。
圖1為依照本發(fā)明一實(shí)施例所繪示電子詞典機(jī)數(shù)據(jù)更新方法的流程圖。 附圖標(biāo)記說明Sll -建立電子詞典機(jī)和主機(jī)的連接;S12 -可辨識(shí)的原始數(shù) 據(jù)版本? ; S13-主機(jī)傳送更新數(shù)據(jù)到電子詞典機(jī)進(jìn)行更新;S14-僅更新程 序? ; S15-主機(jī)傳送程序更新數(shù)據(jù)到電子詞典機(jī)進(jìn)行更新;S16-分塊校驗(yàn)更 新? ; S17 -主機(jī)產(chǎn)生更新數(shù)據(jù)區(qū)塊的CRC; S18 -主機(jī)取得電子詞典機(jī)內(nèi)原始 數(shù)據(jù)區(qū)塊的CRC; S19 -主^/L比較原始數(shù)據(jù)區(qū)塊和更新數(shù)據(jù)區(qū)塊的CRC,找出 更新來(lái)源區(qū)塊;S20 -主機(jī)傳送更新來(lái)源區(qū)塊到電子詞典機(jī)進(jìn)行更新;S21 -電 子詞典機(jī)更新成功? ; S22-提示更新失敗信息。
具體實(shí)施例方式
以下結(jié)合附圖,對(duì)本發(fā)明上述的和另外的技術(shù)特征和優(yōu)點(diǎn)作更詳細(xì)的說明。 圖1為依照本發(fā)明一實(shí)施例所繪示電子詞典機(jī)數(shù)據(jù)更新方法的流程圖。請(qǐng)參 照?qǐng)D1,首先,在步驟Sll,建立電子詞典機(jī)和主機(jī)的連接。所述的連接例如是 通過通用序列總線(USB)。所述的主機(jī)例如是電子計(jì)算器,其通過網(wǎng)絡(luò)或外接存 儲(chǔ)媒體的方式取得服務(wù)提供商所提供的更新數(shù)據(jù),然后協(xié)助電子詞典機(jī)將電子 詞典機(jī)內(nèi)的原始數(shù)據(jù)更新為更新數(shù)據(jù)。在電子詞典機(jī)內(nèi)的原始數(shù)據(jù)可以分成程 序及數(shù)據(jù)庫(kù)兩種原始數(shù)據(jù),在這里程序可由電子詞典機(jī)執(zhí)行使得電子詞典機(jī)可 運(yùn)行各種功能,而數(shù)據(jù)庫(kù)提供可被程序處理的各種數(shù)據(jù)。而用來(lái)更新電子詞典
機(jī)內(nèi)原始數(shù)據(jù)的更新數(shù)據(jù)可能僅包括程序這種更新數(shù)據(jù),亦可能同時(shí)包括程序及數(shù)據(jù)庫(kù)兩種更新數(shù)據(jù)。
在步驟S12,主機(jī)從電子詞典機(jī)上讀取部分?jǐn)?shù)據(jù)到主機(jī)內(nèi),例如原始數(shù)據(jù)的 版本信息、燒錄時(shí)間、起止地址等,這個(gè)版本信息可能分成程序及數(shù)據(jù)庫(kù)的原 始數(shù)據(jù)的版本信息,而能設(shè)計(jì)成分別針對(duì)程序及數(shù)據(jù)庫(kù)進(jìn)行更新。主機(jī)判斷讀 取到的原始數(shù)據(jù)是否是可辨識(shí)的版本,若原始數(shù)據(jù)是不可辨識(shí)的版本,則到步
驟S13。在步驟S13,主機(jī)將所取得的更新數(shù)據(jù)傳送到電子詞典機(jī)上以一次性完 全燒錄的方式進(jìn)行更新。這是因?yàn)榉?wù)提供商一般提供給主機(jī)的更新數(shù)據(jù)應(yīng)該 是最新的版本,既然電子詞典機(jī)內(nèi)的原始數(shù)據(jù)版本無(wú)法辨認(rèn),那么干脆對(duì)這個(gè) 原始數(shù)據(jù)直接進(jìn)行完全更新。
若在步驟S12主機(jī)判定讀取到的原始數(shù)據(jù)是可辨識(shí)的版本,則到步驟Sl4。 在步驟S14,主機(jī)依據(jù)所取得的更新數(shù)據(jù)內(nèi)容判斷是否僅針對(duì)原始數(shù)據(jù)的程序進(jìn) 行更新,若是僅針對(duì)原始數(shù)據(jù)的程序進(jìn)行更新,則到步驟S15。在步驟S15,主 機(jī)將取得的更新數(shù)據(jù)的程序傳送到電子詞典機(jī)上以 一次性完全燒錄的方式進(jìn)行 更新。這是因?yàn)殡娮釉~典機(jī)的數(shù)據(jù)庫(kù)的數(shù)據(jù)量極為龐大,而程序的數(shù)據(jù)量一般 都比較小,在僅需要更新原始數(shù)據(jù)的程序時(shí),采用一次性完全燒錄的方式進(jìn)行 更新即可,如此更新速度比較快。
若在步驟S14主機(jī)判定不是僅針對(duì)原始數(shù)據(jù)的程序進(jìn)行更新,即還需要針對(duì) 數(shù)據(jù)量龐大的數(shù)據(jù)庫(kù)進(jìn)行更新,則到步驟S16。在步驟S16,由使用者決定是否 進(jìn)行分塊校驗(yàn)更新, 一般設(shè)計(jì)成主機(jī)默認(rèn)采用分塊校驗(yàn)更新,主機(jī)會(huì)執(zhí)行步驟 S17到S20的分塊校驗(yàn)更新;如果使用者選擇不進(jìn)行分塊校驗(yàn)更新,主機(jī)則會(huì)執(zhí) 行步驟S13的一次性完整更新。這樣設(shè)計(jì)的原因是在于,萬(wàn)一分塊校驗(yàn)更新失 敗(即在步驟S21判定更新失敗)時(shí),使用者于再次啟動(dòng)圖l所示的數(shù)據(jù)更新 方法時(shí),可在執(zhí)行到步驟16時(shí)選擇不分塊校驗(yàn)更新,以便強(qiáng)制執(zhí)行一次性完整 更新,較能保證數(shù)據(jù)更新成功。
若在步驟S16主機(jī)判定需要進(jìn)行分塊校驗(yàn)更新,則到步驟S17。由于當(dāng)初原 始數(shù)據(jù)在被寫入電子詞典機(jī)時(shí),為了校驗(yàn)數(shù)據(jù)傳輸或者存儲(chǔ)后可能出現(xiàn)的錯(cuò)誤, 原始數(shù)據(jù)會(huì)被分成多個(gè)原始數(shù)據(jù)區(qū)塊,每個(gè)原始數(shù)據(jù)區(qū)塊生成相應(yīng)的CRC (Cyclic Redundancy Check,循環(huán)冗余校驗(yàn))值,所有原始數(shù)據(jù)區(qū)塊的CRC值 構(gòu)成一原始數(shù)據(jù)的CRC列表,最后會(huì)被存放在電子詞典機(jī)內(nèi)程序中的信息列表 區(qū)中。在步驟S17,主機(jī)則是依據(jù)所述的電子詞典機(jī)內(nèi)原始數(shù)據(jù)區(qū)塊的大小(如 128K),將更新數(shù)據(jù)分割成多個(gè)更新數(shù)據(jù)區(qū)塊,并計(jì)算生成各更新數(shù)據(jù)區(qū)塊的CRC值,而這些更新數(shù)據(jù)區(qū)塊的CRC值即構(gòu)成更新數(shù)據(jù)的CRC列表。接著, 在步驟S18,主機(jī)從電子詞典機(jī)取得其內(nèi)的原始數(shù)據(jù)區(qū)塊的CRC值(即取得原 始數(shù)據(jù)區(qū)塊的CRC列表)。
然后,在步驟S19,主機(jī)比較電子詞典機(jī)內(nèi)各原始數(shù)據(jù)區(qū)塊及主機(jī)內(nèi)各更新 數(shù)據(jù)區(qū)塊的CRC值(即比較原始數(shù)據(jù)區(qū)塊及更新數(shù)據(jù)區(qū)塊的CRC列表),在 更新數(shù)據(jù)區(qū)塊中找出不同于原始數(shù)據(jù)區(qū)塊的CRC值的更新數(shù)據(jù)區(qū)塊作為更新來(lái) 源區(qū)塊。最后,在步驟S20,主機(jī)傳送更新來(lái)源區(qū)塊到電子詞典機(jī),并僅依據(jù)這 些更新來(lái)源區(qū)塊對(duì)原始數(shù)據(jù)進(jìn)行更新,從而達(dá)到分塊校驗(yàn)更新,提高更新速度。
另外,原本CRC的作用是校驗(yàn)數(shù)據(jù)傳輸或者存儲(chǔ)后可能出現(xiàn)的錯(cuò)誤,故在 本實(shí)施例中,于步驟S13、 S15或S20中完成電子詞典機(jī)數(shù)據(jù)更新后,接著都到 步驟S21通過CRC校驗(yàn)數(shù)據(jù)傳輸或者存儲(chǔ)后是否出現(xiàn)錯(cuò)誤。尤其在傳輸或更新 的數(shù)據(jù)量比較小的時(shí)候,出現(xiàn)錯(cuò)誤的機(jī)會(huì)比較大。在步驟S21,若主機(jī)判定電子 詞典機(jī)數(shù)據(jù)更新在傳輸或者存儲(chǔ)后沒有錯(cuò)誤產(chǎn)生,即電子詞典機(jī)數(shù)據(jù)更新成功, 則結(jié)束本次更新;反之,若主機(jī)判定有錯(cuò)誤產(chǎn)生,則到步驟S22,在主機(jī)或電子 詞典機(jī)上提示更新失敗信息后結(jié)束此次更新。當(dāng)然,更新失敗時(shí),使用者可以 再次啟動(dòng)本發(fā)明的數(shù)據(jù)更新方法,或改采手動(dòng)強(qiáng)制完全更新等措施。
綜上所述,本發(fā)明的電子詞典機(jī)數(shù)據(jù)更新方法,其通過分塊校驗(yàn)更新,即由 主機(jī)比較電子詞典機(jī)內(nèi)原始數(shù)據(jù)的各區(qū)塊CRC值和主機(jī)取得的更新數(shù)據(jù)的各區(qū)
新來(lái)源區(qū)塊,然后主機(jī)再將更新來(lái)源區(qū)塊傳送到電子詞典機(jī)并僅依據(jù)這些更新 來(lái)源區(qū)塊對(duì)原始數(shù)據(jù)進(jìn)行更新,從而提高更新速度。
以上所述僅為本發(fā)明的較佳實(shí)施例,對(duì)本發(fā)明而言僅僅是說明性的,而非限 制性的。本專業(yè)技術(shù)人員理解,在本發(fā)明權(quán)利要求所限定的精神和范圍內(nèi)可對(duì) 其進(jìn)行許多改變,修改,甚至等效,但都將落入本發(fā)明的保護(hù)范圍內(nèi)。
權(quán)利要求
1、一種電子詞典機(jī)數(shù)據(jù)更新方法,其特征在于,其包括建立電子詞典機(jī)和主機(jī)的連接,其中主機(jī)用以取得更新數(shù)據(jù)并協(xié)助電子詞典機(jī)的原始數(shù)據(jù)更新為更新數(shù)據(jù);主機(jī)判斷原始數(shù)據(jù)是否是可辨識(shí)的版本,若原始數(shù)據(jù)是可辨識(shí)的版本,則主機(jī)再判斷是否僅針對(duì)原始數(shù)據(jù)的程序進(jìn)行更新;若主機(jī)判定不是僅針對(duì)原始數(shù)據(jù)的程序進(jìn)行更新,則主機(jī)再判斷是否進(jìn)行分塊校驗(yàn)更新;若主機(jī)判定進(jìn)行分塊校驗(yàn)更新,則主機(jī)依據(jù)電子詞典機(jī)內(nèi)原始數(shù)據(jù)的每個(gè)循環(huán)冗余校驗(yàn)值所對(duì)應(yīng)的區(qū)塊大小將更新數(shù)據(jù)分割成多個(gè)相應(yīng)的更新數(shù)據(jù)區(qū)塊,這些更新數(shù)據(jù)區(qū)塊各自生成相應(yīng)的循環(huán)冗余校驗(yàn)值;主機(jī)比較電子詞典機(jī)內(nèi)原始數(shù)據(jù)區(qū)塊的循環(huán)冗余校驗(yàn)值及主機(jī)內(nèi)更新數(shù)據(jù)區(qū)塊的循環(huán)冗余校驗(yàn)值,在更新數(shù)據(jù)區(qū)塊中找出不同于原始數(shù)據(jù)區(qū)塊的循環(huán)冗余校驗(yàn)值的更新數(shù)據(jù)區(qū)塊作為更新來(lái)源區(qū)塊;以及主機(jī)傳送更新來(lái)源區(qū)塊到電子詞典機(jī)進(jìn)行更新。
2、 根據(jù)權(quán)利要求1所述的電子詞典機(jī)數(shù)據(jù)更新方法,其特征在于,所述的 主機(jī)判定原始數(shù)據(jù)不是可辨識(shí)的版本時(shí),主機(jī)將取得的更新數(shù)據(jù)傳送到電子詞 典機(jī)上以 一 次性完全燒錄的方式進(jìn)行更新。
3、 根據(jù)權(quán)利要求1所述的電子詞典機(jī)數(shù)據(jù)更新方法,其特征在于,所述的 主機(jī)判定是僅針對(duì)原始數(shù)據(jù)的程序進(jìn)行更新時(shí),主機(jī)將取得的更新數(shù)據(jù)的程序 傳送到電子詞典機(jī)上以一次性完全燒錄的方式進(jìn)行更新。
4、 根據(jù)權(quán)利要求1所述的電子詞典機(jī)數(shù)據(jù)更新方法,其特征在于,所述的 主機(jī)判定不進(jìn)行分塊校驗(yàn)更新,則主機(jī)將取得的更新數(shù)據(jù)傳送到電子詞典機(jī)上 以 一 次性完全燒錄的方式進(jìn)行更新。
5、 根據(jù)權(quán)利要求l、 2、 3或4所述的電子詞典機(jī)數(shù)據(jù)更新方法,其特征在 于,所述的電子詞典機(jī)數(shù)據(jù)更新方法進(jìn)一 步包括主機(jī)判斷電子詞典機(jī)更新是否成功,若成功則結(jié)束更新,若失敗則提示更新 失敗信息。
全文摘要
本發(fā)明是一種電子詞典機(jī)數(shù)據(jù)更新方法,其首先建立電子詞典機(jī)和主機(jī)的連接,其中主機(jī)用以取得更新數(shù)據(jù)并協(xié)助電子詞典機(jī)的原始數(shù)據(jù)更新為更新數(shù)據(jù)。當(dāng)主機(jī)判定原始數(shù)據(jù)是可辨識(shí)的版本、同時(shí)對(duì)原始數(shù)據(jù)的程序及數(shù)據(jù)庫(kù)進(jìn)行更新且進(jìn)行分塊校驗(yàn)更新時(shí),主機(jī)依據(jù)電子詞典機(jī)內(nèi)原始數(shù)據(jù)的CRC所對(duì)應(yīng)的區(qū)塊大小將更新數(shù)據(jù)分割成多個(gè)區(qū)塊,這些更新數(shù)據(jù)區(qū)塊各自生成相應(yīng)的CRC。接著,主機(jī)比較電子詞典機(jī)內(nèi)原始數(shù)據(jù)區(qū)塊的CRC及主機(jī)內(nèi)更新數(shù)據(jù)區(qū)塊的CRC,在更新數(shù)據(jù)區(qū)塊中找出不同于原始數(shù)據(jù)區(qū)塊的CRC的區(qū)塊作為更新來(lái)源區(qū)塊。最后,主機(jī)傳送更新來(lái)源區(qū)塊到電子詞典機(jī),并僅依據(jù)這些更新來(lái)源區(qū)塊對(duì)原始數(shù)據(jù)進(jìn)行更新,從而提高更新速度。
文檔編號(hào)G06F17/30GK101464876SQ20071030200
公開日2009年6月24日 申請(qǐng)日期2007年12月19日 優(yōu)先權(quán)日2007年12月19日
發(fā)明者磊 吳 申請(qǐng)人:金寶電子(上海)有限公司