CN1167014C - 文件处理方法和数据处理装置 - Google Patents

文件处理方法和数据处理装置 Download PDF

Info

Publication number
CN1167014C
CN1167014C CNB998169056A CN99816905A CN1167014C CN 1167014 C CN1167014 C CN 1167014C CN B998169056 A CNB998169056 A CN B998169056A CN 99816905 A CN99816905 A CN 99816905A CN 1167014 C CN1167014 C CN 1167014C
Authority
CN
China
Prior art keywords
data
section
mentioned
compression
file
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
CNB998169056A
Other languages
English (en)
Other versions
CN1367896A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of CN1367896A publication Critical patent/CN1367896A/zh
Application granted granted Critical
Publication of CN1167014C publication Critical patent/CN1167014C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0677Optical disk device, e.g. CD-ROM, DVD
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00007Time or data compression or expansion
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

一种文件处理方法、数据处理装置,把文件分割为多个区段从而防止对文件中的数据分割不均,通过对每个分割区段使用一个字符出现概率来确定每个区段的压缩参数,用相应的压缩参数压缩文件的各区段,并且如果压缩是有效的,则记录压缩数据,并且如果压缩是无效的,则记录非压缩数据,并且同时记录表示每个区段被记录的方法数据的信息。

Description

文件处理方法和数据处理装置
                       技术领域
本发明涉及文件处理方法、数据处理装置以及存储介质,特别涉及用高压缩率压缩文件,将其存储在存储介质中或者从存储介质中读出的文件处理方法及数据处理装置以及存储被压缩的文件的存储介质。
                       背景技术
近年,盛行把词典或百科全书等的信息预先存储在CD-ROM等的存储介质中,通过使用计算机访问CD-ROM,读出并显示词典或百科全书等的信息。由此,可以把词典或百科全书等中的巨大信息存储在非常紧致的1张CD-ROM中。此外,因为可以在使用计算机的过程中从CD-ROM中读取需要的信息,代替打开词典或百科全书等获取需要的信息的方法,所以可以大幅度减轻获取所需要信息而必须的工作。
在存储有词典或百科全书等的信息的以往的CD-ROM中,词典文件由词典数据以及索引的数据(以下,称为索引数据)组成。例如,对于百科全书来说,在词典数据中,包含说明词语意义的文本数据(以下,称为文本数据),如果词语是动物,则包含表示该动物的图像的数据(以下,称为图像数据),例如如果词语是鸟,则包含表示该鸟的叫声的声音数据(以下,称为声音数据)等。所使用的索引是为了从词典文件中检索出所希望的词典数据,该索引与词典数据对应设置,也被称为关键字。在索引数据中,包含标题指针和项目指针等。在标题的数据中,包含词条。另外,在项目的数据中,包含词条和解说文等。
以往,因为CD-ROM的存储容量比较大,所以文本数据和索引数据不经压缩地被存储在CD-ROM中。另一方面,图像数据以及声音数据,特别是图像数据的信息量也很多,它们各自以适宜的压缩方式压缩后存储在CD-ROM中。
但是,因为对于每一本词典和每一本百科全书需要1张CD-ROM,所以词典数据的使用方便性轮差。因而,希望在1张CD-ROM上存储多本词典或百科全书等的信息,这种情况下,即使压缩词典数据,也存在要存储的信息量有可能超过1张CD-ROM的存储容量的问题。另外,要存储在CD-ROM中的词典文件即使是在是单一词典或百科全书等的情况下,如果词典文件的信息量增大,即便压缩了词典数据也有可能超过1张CD-ROM的存储容量。
因此,虽然不仅考虑了压缩词典数据,而且考虑了压缩包含索引数据的全部词典文件来将其存储在CD-ROM中,但至今还没有提出以比较简单的方法高效率地压缩词典文件全体,同时可以在短时间内解压缩压缩词典文件的方法。特别是词典或百科全书等,因为索引数据的信息量比较大,如果在词典文件的解压缩时,复原索引数据所需要的处理时间较长,则在词典文件的解压缩时复原索引时间所需要的时间变得很长,访问所希望的索引数据或者词典数据的时间变长,致使词典或百科全书等的使用方便性变差。
此外,例如在用索引的项目单位或者固定长度单位压缩词典数据的情况下,特别是在词典或百科全书等中,因为索引数据的信息量多,所以和上述情况一样,在词典文件的解压缩时需要处理时间,词典或百科全书等的使用性变差。例如,在特开平9-26969号公报中,提出了使用与之类似方法的电话本检索系统,但在该方法中,索引数据未被压缩。这是因为对于电话本来说,索引数据的信息量,和与词典数据对应的电话号码一姓、名、法人名、住址信息量相比比较小,即使压缩,作为全体的信息压缩效率也不会有大的提高的缘故。因此,即使在存储介质中存储词典或百科全书等的信息时使用该方法,作为词典文件全体的信息压缩效率也不会有大的提高。
因而,现有技术中,当索引数据的信息量与词典数据的信息量相比比较大的情况下,例如词典或百科全书等中,想以高效率压缩词典文件并将其存储在存储介质中,同时可以用比较简单的处理在短时间内访问压缩词典文件是不可能的。
因此,例如在根据专利合作条约公开的国际申请(国际申请号PCT/JPP98/04736号,国际公开号WO99/21092号)的公开公报中,提出了把数据以及针对数据的索引数据分割到多个区段中的方法。如果采用此方法,即使在索引数据的信息量与词典数据的信息量相比比较大的情况下,如词典或百科全书等中,也可以在高效率地压缩词典文件等的文件并将其存储在存储介质中的同时,可以用比较简单的处理短时间内访问压缩词典文件等的压缩文件。
但是,如果采用上述现有技术中的方法以及上述提案的方法,因为检索速度高,所以压缩、解压缩方式采用了基于霍夫曼压缩的方法。另外,它们使用单一的压缩参数进行数据压缩。因此,存在如下的问题。
首先,如果在词典或百科全书等中的数据压缩中采用霍夫曼压缩,则应该收录在存储介质中的单词数增多,而随着用于解说的单词种类的增加,带来数据压缩率降低的问题。
此外,虽然压缩了数据,但还存在压缩数据一方比未压缩数据一方信息量大的独特的区段这一问题。
进而,在数据各区段的末尾,因为需要附加表示区段结束的结束信息,所以存在限制大幅度提高整体的数据压缩率的问题。
另一方面,在压缩由词典或百科全书等的数据以外的数据组成的文件时,在文件装置等的领域中同样希望提高数据压缩率。
                       发明内容
因而,本发明的主要目的在于解决上述的问题,提供一种新的,有用的文件处理方法、数据处理装置以及存储介质。
本发明提供一种文件处理方法,包括以下步骤:把文件分割为由数据和在检索该数据时使用的索引数据构成的多个区段,使用多个压缩参数压缩文件的各区段,以压缩该数据和该索引数据的压缩步骤;把压缩后的文件存储在存储介质中的存储步骤。
本发明提供一种数据处理装置,包括:压缩处理单元,把文件分割为由数据和在检索该数据时使用的索引数据构成的多个区段,使用多个压缩参数压缩文件的各区段,以压缩该数据和该索引数据;存储处理单元,把压缩后的文件存储在存储介质中。
本发明提供一种文件处理方法,包含:读出步骤,用于访问记录有压缩文件的存储介质,该压缩文件由多个压缩参数、使用该多个压缩参数把原文件分割为由数据和在检索该数据时使用的索引数据构成的多个区段并对每个区段进行压缩后形成的多个区段数据组成;解压缩步骤,使用与该区段数据对应的压缩参数,解压缩由该读出步骤从该存储介质中读出的区段数据。
本发明提供一种数据处理装置,具备以下单元:读取处理单元,用于控制访问记录有压缩文件的存储介质,该压缩文件由多个压缩参数、使用多个压缩参数把原文件分割为由数据和在检索该数据时使用的索引数据构成的多个区段并对每个区段进行压缩后形成的多个区段数据组成;解压缩处理单元,使用与该区段数据对应的压缩参数解压缩由该读取处理单元从该存储介质中读出的区段数据。
本发明提供一种数据处理装置,包含:读取处理单元,根据来自应用软件的读出要求,控制对记录有压缩文件的存储介质进行访问,该压缩文件由多个压缩参数、使用该多个压缩参数把原文件分割为由数据和在检索该数据时使用的索引数据构成的多个区段并对每个区段进行压缩后形成的多个区段数据组成;解压缩处理单元,用与该区段数据对应的压缩参数,解压缩用该读取处理单元从该存储介质读出的区段数据,并提供给该应用软件。
本发明的另一目的在于,提供一种文件处理方法,它包含:压缩步骤,把文件分成多个区段,使用多个压缩参数压缩文件的各区段;存储步骤,把被压缩后的文件存储在存储介质中。如果采用本发明,则可以大幅度提高数据压缩率。
本发明的再一目的在于,提供一种数据处理装置,它包含:压缩处理单元,把文件分成多个区段,使用多个压缩参数压缩文件的各区段;存储处理单元,把被压缩后的文件存储在存储介质中。如果采用本发明,则可以大幅度提高数据处理装置的数据压缩率。
本发明的再一目的在于,提供一种存储介质,它是存储计算机可以读取的信息的存储介质,存储有包含以下单元的程序:压缩处理单元,使计算机把文件分成多个区段,用多个压缩参数压缩文件的各区段;存储处理单元,使计算机把经压缩的文件存储在存储装置中。如果采用本发明,则可以大幅度提高计算机的数据压缩率。
本发明的再一目的在于,提供一种存储介质,它是存储计算机可以读取的信息的存储介质,包含:把分割为多个区段的文件用多个压缩参数压缩各区段并存储的区域、存储上述压缩参数的区域。如果采用本发明,则可以把大幅度提高了数据压缩率的压缩数据文件存储在存储介质中。
本发明的再一目的在于,提供一种存储介质,它进一步存储与计算机的应用程序软件相互独立的驱动软件,上述驱动软件,包含具备使计算机解压缩从存储介质中读出的压缩文件的解压缩处理单元的程序。如果采用本发明,则不需要使应用程序软件的构成和各压缩文件匹配,通过只改变驱动软件,使用现有的应用软件也可以进行压缩文件的读取/解压缩处理。
本发明的另一目的在于,提供一种文件处理方法,它包含:读出步骤,用于访问存储介质,该存储介质上记录有由多个压缩参数和多个区段数据组成的压缩文件,其中多个区段数据是用多个压缩参数把原文件分割为多个区段并压缩在每个区段上的数据而形成的;解压缩步骤,采用与区段数据对应的压缩参数解压缩由读出步骤从存储介质中读出的区段数据。如果采用本发明,则可以很好地解压缩压缩文件,这些压缩文件是用比较简单的构成以及处理、以高的数据压缩率压缩的文件。
本发明的再一目的在于,提供一种数据处理装置,它包含:读取处理单元,它控制对存储介质的访问,该存储介质记录有由多个压缩参数和多个区段数据构成的压缩文件,其中区段数据是用多个压缩参数把原文件分割为多个区段并压缩在每个区段上的数据;解压缩处理单元,用与区段数据对应的压缩参数,解压缩由读取处理单元从存储介质读出的区段数据。如果采用本发明,则可以很好地解压缩压缩文件,这些压缩文件是用比较简单的构成以及处理、用高的数据压缩率压缩的文件。
本发明的另一目的在于,提供一种数据处理装置,它包含:读取处理单元,它响应来自应用程序软件的读取要求,控制对存储介质的访问,该存储介质记录有由多个压缩参数和多个区段数据构成的压缩文件,其中该区段数据是用多个压缩参数把原文件分割为多个区段并压缩在每个区段上的数据;解压缩处理单元,用与区段数据对应的压缩参数,解压缩由读取处理单元从存储介质读出的区段数据,提供给该应用程序软件。如果采用本发明,则可以很好地解压缩压缩文件,这些压缩文件是用比较简单的构成以及处理、以高的数据压缩率压缩的文件。
本发明的再一目的在于,提供一种存储介质,是存储有计算机可以读取的信息的存储介质,存储有具备读取处理单元和解压缩处理单元的程序。其中,读取处理单元,控制对存储介质的访问,该存储介质记录有由多个压缩参数和多个区段数据构成的压缩文件,其中区段数据是用多个压缩参数把原文件分割为多个区段并压缩在每个区段上的数据;解压缩处理单元,用与区段数据对应的压缩参数,使计算机解压缩由读取处理单元中从存储介质读出的区段数据。如果采用本发明,则可以很好地解压缩压缩文件,这些压缩文件是用比较简单的构成以及处理、以高的数据压缩率压缩的文件。
本发明的另一目的在于,提供一种存储介质,是存储有计算机可以读取的信息的存储介质,它存储包含读取处理单元和解压缩处理单元的程序。其中,读取处理方法是,它根据来自应用程序软件的读取要求,控制计算机对存储介质的访问,该存储介质记录有由多个压缩参数和多个区段数据构成的压缩文件,其中区段数据是用多个压缩参数把原文件分割为多个区段并压缩在每个区段上的数据;解压缩处理方法是,用与区段数据对应的压缩参数,使计算机解压缩由读取处理单元从存储介质读出的区段数据,提供给应用程序软件。如果采用本发明,则可以很好地解压缩压缩文件,这些压缩文件是用比较简单的构成以及处理、以高的数据压缩率压缩的压缩文件。
进而,本发明的其他目的和特点可以参照以下附图的说明变得更加清楚。
                       附图说明
图1是展示采用文件处理方法的实施例1的计算机系统的概略构成的方框图。
图2是展示在数据处理装置的实施例1中的,构成的文件压缩系统的功能方框图。
图3是说明区域分割处理以及出现频率计算处理的流程图。
图4是说明区域分割处理以及出现频率计算处理的流程图。
图5是说明压缩参数计算处理的流程图。
图6是展示压缩参数的数据构造的图。
图7是说明数据压缩处理以及地址信息计算处理的流程图。
图8是说明压缩文件合成处理的流程图。
图9是说明压缩文件的合成的图。
图10是说明压缩数据形式的图。
图11是展示在数据处理装置1的实施例1中构成的文件检索、显示系统的功能方框图。
图12是说明索引读取处理的流程图。
图13是说明数据解压缩处理的流程图。
图14是说明文本读取处理的流程图。
图15是展示在本发明的数据处理装置的实施例2中的检索、显示控制单元构成的方框图。
图16是说明文件的读取处理的流程图。
图17是说明读取、解压缩处理的流程图。
                       具体实施方式
下面说明本发明的文件处理方法以及数据处理装置的实施例1。文件处理方法以及数据处理装置的实施例1,使用本发明的存储介质的实施例1。此外,在存储介质的实施例1中,本发明适用于CD-ROM中,但存储介质并不限于CD-ROM,毫无疑问,本发明同样可以适用于光磁盘等的光磁盘存储介质、软盘等的磁记录介质、各种半导体存储设备等。
图1是展示采用文件处理方法的实施例1的计算机系统的概略构成的方框图,它与数据处理装置的实施例1对应。图中,计算机系统大致由以下装置组成:用总线9连接的中央处理装置(CPU)1;由随机存取存储器(RAM)等组成的主存储装置2;由硬盘驱动器等组成的辅助存储装置3;由键盘和鼠标等组成的输入装置4;显示装置5以及由CD-ROM驱动器等组成的CD-ROM输入输出装置6。构成计算机系统的各要素自身,可以用公知的结构组成。
输入装置4,用于向CPU1输入指示或数据,CPU1通过根据这些指示或数据执行被存储在辅助存储装置3中的程序,执行用户要求的处理。被存储在辅助存储装置3中的程序,可以预先安装,也可以从被装入CD-ROM输入输出装置6的CD-ROM6a加载。主存储装置2,是用于暂时存储CPU1进行的计算处理等的中间结果或在计算中使用的数据的存储装置。显示装置5,显示CPU1进行的处理结果或催促用户输入指示或数据的信息。进而,代替显示装置5,或者除显示装置5以外,还可以在总线9上连接打印机(未图示),打印CPU1的处理结果等。
首先,说明被装入CD-ROM输入输出装置6中的CD-ROM6a存储词典或百科全书等的词典文件的文件存储处理。文件存储处理,大致由压缩参数计算处理、索引或文本等的数据压缩处理、地址信息计算处理、压缩文件合成处理、压缩文件存储处理组成。在本实施例中,为了便于说明,假设CD-ROM6a存储CPU用于进行文件存储处理的程序,CPU1用公知的方法从CD-ROM6a中读取该程序装入辅助存储装置3。此外,假设词典或百科全书等的词典文件,从主机装置(未图示)被传输,经由总线9被存储在辅助存储装置3中,或者,用CD-ROM输入输出装置6从与CD-ROM6a不同的CD-ROM中读取,经由总线9被存储在辅助存储装置3中。
图2是展示在数据处理装置的实施例1中构成的文件压缩系统的功能方框图。在图中,和图1相同的部分赋予同一符号,并省略其说明。
图2所示的文件压缩系统,大致由文件压缩控制单元11、CD-ROM电子版的词典文件12、压缩文件13、数据文件14、15组成。文件压缩控制单元11,由图1所示的CPU1构成,包含:区域分割处理单元21、出现频率计算处理单元22、压缩参数计算处理单元23、数据压缩处理单元24、地址信息计算处理单元25以及压缩文件合成单元26。在本实施例中,词典文件12以及压缩文件13,例如由CD-ROM6a构成,数据文件14、15例如由辅助存储装置3构成。
区域分割处理单元21,把词典文件12分割为多个区域,把区域分割数存储在数据文件14中。出现频率计算处理单元22,通过计算求出词典文件12的各区域的字符的出现频率,把区域/出现频率计数值存储在数据文件14中。另外,输出频率计算处理单元22,通过计算求出每个区域的字符的出现偏差,把偏差标志、偏差计数值存储在数据文件14中。进而,分割区域的数目,被设定为用于压缩的压缩参数的种类数的例如十几倍。
压缩参数计算处理单元23,在词典文件12的每个区域上,通过计算求出多个压缩参数,并存储在数据文件15中。数据压缩处理单元24,根据各压缩参数压缩词典文件12的数据,把压缩数据存储在数据文件15中。地址信息计算处理单元25,为词典文件12的每个区域生成地址信息,并存储在数据文件15中。压缩文件合成处理单元26,合成被存储在数据文件14、15中的数据,生成压缩文件,存储在压缩文件13中。
1a)区域分割处理以及出现频率计算处理:
图3以及图4是说明文件压缩控制单元11的区域分割处理单元21以及出现频率计算处理单元22,即CPU1进行的区域分割处理以及出现频率计算处理的流程图。
在图3中,在步骤S1,访问CD-ROM6a打开词典文件12,在步骤S2,输入从输入装置4通过敲击键盘输入的压缩参数的数量。在步骤S3,输入从输入装置键盘输入的词典文件12的分割区域的数量。在步骤S4,判定是否个别指定区域的地址,如果判定结果是是,则处理进入步骤S5,如果判定结果是否则处理进入步骤S6。在步骤S5,输入每个区域的起始地址,处理进入步骤S8。
在步骤S6,获取词典文件12的文件大小,在步骤S7,用分割区域的数量等分词典文件12。在步骤S7或者步骤S5后,在步骤S8,初始化CPU1内的区域/出现频率计数器的区域/出现频率计数值。在步骤S9,判定是否因区域改变而移至新区域处理,在判定结果是是时,处理进入步骤S10,如果判定结果是否,则处理进入步骤S11。在步骤S10,把区域/出现频率计数器切换为新区域的区域/出现频率计数器。
在步骤S10之后,或者在步骤S9的判定结果是否的情况下,在步骤S11,从词典文件12中读出与1个字符对应的16位代码。此外,在步骤S12,把该代码的出现频率计数器的出现频率计数值增加1。在步骤S13,判定是否处理词典文件12的结束字符,在判定结果是否时,处理返回步骤S9,在判定结果是是时,进入步骤S14,关闭词典文件12。
在步骤S15,对每个分割区域为1个字符排序出现频率顺序,在步骤S16,出现频率顺序例如可以选择1024个字符。在步骤S17,对起始分割区域中具有最高出现频率的字符进行初始化,在步骤S18,比较该字符在另一分割区域中的出现频率和在上述起始分割区域上的出现频率,算出出现频率的偏差。在步骤S19,判定出现频率有偏差的字符是否存在,当判定结果是是的情况下,处理进入步骤S20,当判定结果是否的情况下,处理进入步骤S22。
在步骤S20,把偏差标志设置在各分割区域的每个字符上,在步骤S21,在每个分割区域增加偏差计数器的偏差计数值。在步骤S19的判定结果是否,或者,在步骤S21后,在步骤S22,切换为具有次高出现频率的字符。在步骤S23,判定是否超过了第1024个字符,当判定结果是否的情况下,处理返回步骤S18。另一方面,当步骤S23的判定结果是是的情况下,在步骤S24,切换到下一分割区域,在步骤S25判定是否超过了最终分割区域。如果步骤S25的判定结果是否,则处理返回步骤S18。如果步骤S25的判定结果是是时,在步骤S26,根据偏差计数值排序各分割区域,处理进入图4所示的步骤S27。
在图4中,在步骤S27,设置偏差最大的分割区域的压缩模式的初始值。在步骤S28,判定偏差次高的分割区域的偏差是否类似以前的压缩模式。如果步骤S28的判定结果是否,则在步骤S29中,判断是否有压缩模式的剩余,当判定结果是是的情况下,在步骤S30,对该分割区域设置压缩模式的下一个值。
另一方面,如果步骤S28的判定结果是是,或者,在步骤S29的判定结果是否,则在步骤S31中,在该分割区域设置类似分割区域的压缩模式的值。在步骤S30或者步骤S31之后,在步骤S32,判定是否是最终分割区域。如果步骤S32的判定结果是否,则处理返回步骤S28,如果判定结果是是,则处理结束。
1b)压缩参数计算处理:
图5是说明文件压缩控制单元11的压缩参数计算处理单元23,即CPU1进行的压缩参数计算处理的流程图。
在图5中,在步骤S41访问CD-ROM6a打开词典文件。在步骤S42,设置压缩模式的初始值,在步骤S43,设置分割区域的初始值。在步骤S44,判定处理的分割区域是否属于该压缩模式,当判定结果是是时,处理进入步骤S46,当判定结果是否时,处理进入步骤S45。在步骤S45,跳过非对应分割区域。
在步骤S46,读出与1个字符对应的16位代码。在步骤S47,使该16位代码的出现频率计数器的出现频率计数值增加1,在步骤S48,判定是否处理了最终分割区域,当判定结果是否时,处理返回步骤S44。当步骤S48的判定结果是是时,在步骤S49,更新压缩模式。在步骤S50,判定是否处理了最终压缩模式,如果判定结果是否,则处理返回到步骤S44。
另一方面,如果步骤S50的判定结果是是,则在步骤S51设置压缩模式的初始值,在步骤S52,初始化使用该压缩模型的压缩参数的分割区域。在步骤S53,把16位代码按出现频率顺序进行排序,在步骤S54,按照出现频率顺序选择1024个16位代码。在步骤S55,对剩下的16位代码,分解成8位代码,算出其出现频率,在步骤S56,8位代码的出现频率设置成约1/2,进行和16位代码的补正。
在步骤S57,例如访问辅助存储装置3,在数据文件15内打开压缩参数的转移文件。在步骤S58,把1024个16位代码和它们的出现频率,写入数据文件15内的压缩参数转移文件。另外,在步骤S59,把256个8位代码和它们的出现频率,写入数据文件15内的压缩参数转移文件。在步骤S60,关闭数据文件15内的压缩参数转移文件,在步骤S61,更新压缩模式。在步骤S62,判定是否处理了最终压缩模式,当判定结果是否时,处理返回步骤S52,当判定结果是是时,处理结束。
图6是展示压缩参数的数据结构的图。当采用霍夫曼码(Huffmancode)压缩时,如同一图所示,各压缩参数,例如由1024种每16位代码的256种出现频率以及每8位的256种出现频率组成。这些出现频率,成为用于生成霍夫曼树的数据。进而,在采用通用码进行压缩时的压缩参数,由试验(トテイ)树或者用于生成压缩参数的登录符号和其参照号码等的数据构成。
1c)数据压缩处理以及地址信息计算处理:
图7是说明文件压缩控制单元11的数据压缩处理单元24以及地址信息计算处理单元25,即,CPU1进行的数据压缩处理以及地址信息计算处理的流程图。
图7中,在步骤S71,根据多个压缩参数制成变换表,即,在本实施例中因为进行霍夫曼压缩所以制成霍夫曼树。在步骤S72,访问CD-ROM6a,打开词典文件12。在步骤S73,访问辅助存储装置3,打开数据文件15内压缩数据的转移文件以及地址信息的转移文件。在步骤S74,设置起始分割区域。
在步骤S75,从词典文件12中读出1个区段。该区段,可以是固定长度,也可以是可变长度,在本实施例中假设是可变长度。进而,上述区段,也被称为块。在步骤S76,用霍夫曼树计算1个区段的压缩数据。在该压缩数据计算之际,使用与各分割区域对应的压缩参数。在步骤S77,判断1个区段是否是固定长度,如果判定结果是否则进入步骤S80。另一方面,如果步骤S77的判定结果是是,在步骤S78,判定压缩数据的长度是否比压缩前的非压缩数据的长度长,如果判定结果是否,则处理进入步骤S80。如果步骤S78的判定结果是是,则在步骤S79中,生成包含表示数据是非压缩数据的非压缩标志的控制信息以及非压缩数据,处理进入步骤S81。这种情况下,如果区段是最终区段,则在区段的最后附加结束信息(EOB:End Of Block),如果区段是最终区段以外的途中区段,则取代不追加EOB的操作,在控制信息中包含表示删除了EOB的EOB删除标志。
在步骤S80,与各标志或压缩参数种类对应地生成控制信息、压缩数据、EOB等,处理进入步骤S81。这种情况下,如果区段是最终区段,则在区段最后附加EOB,如果区段是最终区段以外的途中区段,则取代不附加EOB,在控制信息中包含表示删除了EOB的EOB删除标志。在步骤S81,把压缩数据写入数据文件15内的转移文件中。
进而,参照后述的图9以及图10更详细地说明控制信息和EOB。
在步骤S82,计算该区段存储的地址信息。例如,当区段是固定长度的情况下,地址信息根据附加给各区段的区段号码计算。在步骤S83,把地址信息写入数据文件15内的地址信息转移文件中。在步骤S84,判定判断是否处理了该分割区域的最终区段,如果判定结果是否则处理返回步骤S75。是否处理了最终区段,例如可以根据区段号码或附加给最终区段的最终区段符号进行判定。
另一方面,当步骤S84的判定结果是是的情况下,在步骤S85,更新分割区域,在步骤S86,判定是否处理了词典文件12的最终区段。如果步骤S86的判定结果是否,则处理返回步骤S75,如果判定结果是是,则处理进入步骤S87。在步骤S87,分别关闭压缩数据的转移文件以及地址信息的转移文件。另外,在步骤S88,关闭词典文件12,结束处理。
1d)压缩文件合成处理:
图8是说明文件压缩控制单元11内的压缩文件合成处理单元26,即,CPU1进行的压缩文件合成处理的流程图。
图8中,在步骤S91,打开压缩文件13。在步骤S92,编辑压缩文件的起始识别用的标题数据。在步骤S93,打开辅助存储装置3的数据文件15内的压缩参数的转移文件,在步骤S94,把压缩参数的转移文件的压缩参数复制在压缩文件13中。在步骤S95,关闭压缩参数的转移文件。
在步骤S96,打开辅助存储装置3的数据文件15内的地址信息转移文件,在步骤S97,把地址信息的转移文件的地址信息复制在压缩文件13中。在步骤S98,关闭地址信息的转移文件。进而,在步骤S99,打开辅助存储装置3的数据文件15内的压缩数据的转移文件,在步骤S100,把压缩数据的转移文件的压缩数据复制到压缩文件13中。在步骤S101,关闭压缩数据的转移文件。在步骤S102,编辑压缩文件的末尾识别用的尾部数据,在步骤S103,把压缩文件13存储在CD-ROM6a中。另外,在步骤S104,关闭压缩文件13,结束处理。
图9是说明采用如上述1a)的区域分割处理以及出现频率计算处理、采用1b)的压缩参数计算处理、采用1c)的数据压缩处理以及地址信息计算处理以及1d)的压缩文件合成处理的压缩文件的合成的图。在同一图中,(a)表示压缩参数,是在本实施例中采用霍夫曼码进行压缩所使用的压缩参数。同一图中,(b)表示词典文件的区段,在本实施例中各区段例如是2k字节,各区段由词典数据以及索引数据组成。例如当是百科全书的情况下,在词典数据中,包含说明词语意义的文本数据,例如如果词语是动物,则包含表示该动物的图像数据,如果词语是鸟,则包含表示该鸟的鸣叫声音的声音数据等。索引,用于从词典文件中检索所希望的词典数据,对应于词典数据而设置,也可以称为关键字。在索引数据中,包含标题的指针或项目的指针等。在标题的数据中,包含词条。此外,在项目数据中,包含词条和解说文等。
在图9中,(c)表示压缩数据,表示各区段用可变长度压缩的状态。另外,在同一图中,(d)表示对各区段计算的地址信息,(e)表示合成压缩参数、地址信息、压缩数据,把管理信息附加在起始得到的压缩文件。管理信息包含在检索词典文件名、词典文件的种类、词典文件的压缩种类等的压缩文件时使用的信息。进而,在同一图中,(f)表示标题以及附加了尾部的压缩文件。
图10是说明压缩文件内的压缩数据形式的图。在同一图中,(a)表示压缩参数,在本实施例中是用霍夫曼码进行压缩所使用的压缩参数。另外,在同一图中,(b)表示压缩数据,表示各区段用可变长度压缩的状态。各区段,在同一图中,如(c)所示,由控制信息、压缩数据、EOB组成。控制信息,如同一图(d)所示,由EOB删除标志、非压缩标志、压缩参数种类等组成。
表示各区段结束的EOB,例如是18位~24位。但是,在把各区段设置成固定长度的情况下,在最终区段以外,可以省略EOB。因而,为了进一步提高数据压缩率,设置EOB删除标志,表示EOB是否被删除。
此外,在出现频率低的单词多的特殊区段中,存在产生压缩数据比非压缩数据长的现象。因而,为了进一步提高这种情况下的数据压缩率,如上所述把非压缩数据代替压缩数据存储在压缩文件中。非压缩标志表示是否代替压缩数据存储着非压缩数据。
压缩参数的种类(或者,压缩参数识别号码)表示,在相应区段的压缩中使用的,例如1~n的n种压缩参数中的1个。由此,可以从被设置在各区段的起始的控制信息中知道在各区段的压缩中使用的压缩参数。
图11是展示在数据处理装置的实施例1中构成的文件检索/显示系统的功能方框图。在同一图中,和图1相同的部分标注相同的符号,并省略其说明。
图11所示的文件检索/显示系统大致由以下部分构成:检索/显示控制单元31;压缩文件13;输入单元33;检索结果显示单元35。检索/显示控制单元31,由图1所示的CPU1构成,包含:输入处理单元41、检索控制单元42、读取处理单元43、44、解压缩处理单元45以及显示处理单元46。压缩文件13,例如由图1所示的CD-ROM6a构成。输入单元33,由图1所示的输入装置4构成。另外,检索结果显示单元35,由图1所示的显示装置5构成。
各处理的内容和控制过程,根据从输入单元33输入的检索模式、关键字等,由输入处理单元41以及检索控制单元42确定。从输入单元33输入的与索引数据对应的索引指针,用读取处理单元43从压缩文件13中读出,索引指针的数据由解压缩处理单元45解压缩。相应的文本数据,根据已获得的索引指针的值用读取处理单元44读出,文本的文本数据用解压缩处理单元45解压缩。通过如上述那样一连串的检索处理得到检索结果,用显示处理单元46显示在检索结果显示单元35上。
以下,说明读取存储在CD-ROM6a中的压缩文件13,检索/显示所希望数据的文件检索/显示处理,其中CD-ROM6a被装在CD-ROM输入输出装置6中。文件检索/显示处理,大致由索引读取处理和文本读取处理构成,调用数据解压缩处理执行。在本实施例中,为了易于说明,假设在CD-ROM6a中存储了在CPU1中进行文件检索/显示处理的程序,CPU1用公知的方法从CD-ROM6a中读取该程序以及压缩文件,加载到辅助存储装置3。
2a)索引读取处理:
图12是说明检索/显示处理单元31的读取处理单元43以及解压缩处理单元45,即,图1所示的CPU1进行的索引读取处理的流程图。在同一图中,在步骤S111,根据用户从输入单元33输入的索引数据,设定最上位索引的地址信息。在步骤S112,调用数据解压缩处理,通过从进行辅助存储装置3内的文件检索处理的程序中,读出进行数据解压缩处理的程序,解压缩压缩文件13内的最上位索引的地址。在步骤S113,根据上述索引数据,获得最上位索引的开始字符的上位索引的地址,在步骤S114,调用数据解压缩处理,解压缩压缩文件13内的上位索引的地址。在步骤S115,根据上述索引数据,取得下一级的下位索引地址。在步骤S116,调用数据解压缩处理,解压缩压缩文件13内的上述下一级的下位索引地址。在步骤S117,判定最下位索引的地址解压缩是否结束,如果判定结果是否,则处理返回步骤S115。另一方面,当步骤S117的判定结果是是的情况下,处理结束。
2b)数据解压缩处理:
图13是说明检索/显示控制单元31的解压缩处理单元45,即,图1所示的CPU1进行的数据解压缩处理的流程图。数据解压缩处理,通过索引读取处理以及文本读取处理调出。
在图13中,在步骤S121,根据用户从输入单元33输入的索引数据,把所要求的解压缩地址、数据大小和存储区域存储在辅助存储装置3中,在辅助存储装置3内准备相对被解压缩的数据足够大的存储区域。在步骤S122,判定从CD-ROM6a中读取并被装入辅助存储装置3中的压缩文件13是否已打开,如果判定结果是否,则打开辅助存储装置3内的压缩文件13,在步骤S124,判定是否已设置标题和尾部,如果判定结果是否则移至公知的错误处理。
另一方面,如果步骤S124的判定结果是是,则在步骤S125中,从压缩文件13中读取压缩参数,读取压缩参数内的8位代码的出现频率以及16位代码和其出现频率。在步骤S126,根据8位代码的出现频率以及16位代码的出现频率,制成与多个压缩参数的各自对应的霍夫曼树,处理进入后述的步骤S127。进而,在霍夫曼树的叶数据上,附加8位代码或者16位代码的判定用标记。
在步骤S122的判定结果是是或者在步骤S126之后,在步骤S127从压缩文件13中读取与所要求的解压缩地址对应的地址信息。在步骤S128,根据地址信息,从压缩文件13中读取对应的压缩数据的区段。在步骤S129,判定控制信息内的非压缩标志是否已设置并有效。如果步骤S129的判定结果是是,则处理进入后述的步骤S132,如果判定结果是否,则进入步骤S130。
在步骤S130,根据与控制信息内的压缩参数种类对应的霍夫曼树解压缩压缩数据的区段,在步骤S131,根据8位代码或者16位代码的判定用标记,把已解压缩的数据复制到上述存储区域上,处理进入步骤S133。这种情况下,如果区段是最终区段,因为在区段的最后附加EOB,所以解压缩至EOB为止的可变长度的区段的数据并复制,如果区段不是最后区段而是中途区段,因为在控制信息中包含表示删除EOB的EOB删除标记,所以解压缩2k字节的固定长度区段的数据并复制。
另一方面,在步骤S132,根据8位代码或者16位代码的判定用标记,把非压缩数据复制到上述存储区域,处理进入步骤S133。这种情况下,如果区段是最后区段,因为在区段在最后附加EOB,所以直接复制至EOB为止的可变长度区段的非压缩数据,如果区段不是最后区段而是中途区段,因为在控制信息中包含表示删除EOB的EOB删除标记,所以直接复制2k字节的固定长度区段的非压缩数据。
在步骤S133,更新区段的地址信息,在步骤S134,判定对压缩文件要求的数据大小的解压缩是否已结束。当步骤S134的判定结果是否的情况下,在步骤S127,从压缩文件13中读取与下一区段的解压缩地址对应的地址信息,在步骤S128,根据与该下一区段的解压缩地址对应的地址信息,从压缩文件13中读取对应的压缩数据的区段,处理进入步骤S129,另一方面,如果步骤S134的判定结果是是,则处理结束。
2c)文本读取处理:
图14是说明检索/显示控制单元31的读取处理单元44以及解压缩处理单元45,即,图1所示的CPU1进行的文本读取处理的流程图。
在图14中,在步骤S141,根据用户从输入单元33输入的索引数据,在已解压缩的数据中,计数和索引一致的项目。在步骤S142,根据已输入的索引数据,把索引项目的指针值设定为地址。在步骤S143,调用数据解压缩处理,从进行辅助存储装置3内的文件检索处理的程序中,读出进行数据解压缩处理的程序,由此,解压缩1个区段的用压缩文件13内的项目指针表示的文本,即,词典数据。
步骤S144,判定用项目指针表示的词典数据是否已结束,如果判定结果是否,则在步骤S145中,设定下一区段的地址。另外,在步骤S146,调用数据解压缩处理,解压缩该下一区段的用压缩文件13内的项目指针表示的词典数据,处理返回步骤S144。另一方面,当步骤S144的判定结果是是的情况下,在步骤S147根据已输入的索引数据,判定对全部项目的处理是否已结束,如果判定结果是否,则处理返回步骤S142。如果步骤S147的判定结果是是,则步骤S148把对于全部项目已解压缩的词典数据显示在检索结果显示单元35上,处理结束。
进而在步骤S148,也可以在步骤S147之前进行。这种情况下,在步骤S148,每次把对各项目解压缩后的词典数据相应地显示在检索结果显示单元35上。
在上述实施例中,为了便于说明,假设区段是可变长度的区段。如果区段是可变长度,则可以提高数据解压缩速度。这是因为可以与数据的种类和分割对应地设定适宜长度的区段,不需要解压缩多余的数据的缘故。
另一方面,如果区段是固定长度,则数据压缩效率高,另外,即使未把区段压缩前的地址信息存储在压缩文件中,也可以从压缩文件中复原地址信息。这是因为,由于区段是固定长度,在各区段上附加了区段号码,因而可以算出各区段相对于其他区段的相对位置的缘故。
进而,在假设区段是可变长度的情况下,需要把区段压缩前的地址信息存储在压缩文件中。因而,把区段设置成固定长度,或者可变长度,可以根据是数据压缩率优先、还是数据解压缩速度优先确定。
此外,被存储在CD-ROM6a中的词典文件也可以是1个以上。即使把与多个词典或百科全书等有关的多个词典文件存储在CD-ROM6a中的情况下,也可以从图9中(e)所示的管理信息内的词典文件名或词典文件的种类中,特定想要检索的词典文件。
在上述实施例中,在压缩数据时使用了霍夫曼码,但也可以使用通用码等,如果是可以用通用的压缩参数高效率地对每个区段压缩词典数据的数据压缩方式,则不限于霍夫曼码。此外,成为数据压缩或解压缩的对象的数据,不限于词典数据,还包含由索引和数据组成的数据库的数据。
另外,在上述实施例中,说明了把文件检索处理程序以及压缩文件拷贝到辅助存储装置3中进行检索处理的过程,但也可以不把它们拷贝到辅助存储装置3中,而把程序和压缩文件在主存储装置2中展开,从而进行和上述一样的处理。
进而,通过使用在上述实施例中使用的压缩算法,采用使用通常的8位霍夫曼码的数据压缩处理提高压缩率,可以使被记录在CD-ROM和作为辅助存储装置说明的硬盘等的存储介质中的压缩文件的区域减少。虽然使用压缩算法提高压缩率,但用于解压缩压缩文件的处理时间和通常使用霍夫曼码进行压缩时相比几乎没有改变。
检索处理花费的时间,包含读取装置(驱动器)所需的查找时间和压缩文件所需的读时间和解压缩时间。
如上所述,由于采用压缩算法提高了压缩率,因而被存储在存储介质中的压缩文件的存储区域变少,致使检索程序的检索处理所花费时间的检索时间减少,其结果,检索速度提高。其效果随着硬件性能的提高更加显著。
以下,说明本发明的文件处理方法以及数据处理装置的实施例2。文件处理方法以及数据处理装置的实施例2,使用成为本发明的存储介质的实施例2。进而,在存储介质的实施例2中,本发明适用于CD-ROM,但存储介质自身并不限于CD-ROM,毫无疑问,本发明也可以适用于CD-ROM以外的光学信息存储介质、光磁盘等的光磁性存储介质、软盘等的磁记录介质、各种半导体存储设备等。
采用了文件处理方法的实施例2的计算机系统的概略构成和图1所示的方框图相同,与数据处理装置的实施例2对应。在数据处理装置的实施例2中,检索/显示控制单元,具有如图15所示的构成。在图15中,和图11同样的部分标注相同的符号,并省略其说明。
在图15中,检索/显示控制单元大致由CD-ROM应用程序51、操作系统(OS)52、随机文件管理软件(FM)53、顺序文件管理软件(FM)54、CD-ROM6a用驱动软件(DV)55、构成辅助存储装置3的硬盘3a用的驱动软件(DV)56、57以及显示装置5用驱动软件(DV)58组成。
CD-ROM应用程序51,由应用程序控制单元61、输入处理单元62、读取处理单元63以及显示处理单元64组成。另外,在DV55中,加入图11所示的读取处理单元43、44以及与解压缩处理单元45对应的读/解压缩处理单元71。应用程序控制单元61,与图11所示的检索控制单元42对应,确定各处理的内容和控制过程。输入处理单元62,与图11所示的输入处理单元41对应,进行动作模式的输入和对象文件的选择。读取处理单元63以及被加入DV55中的读/解压缩处理单元71,从压缩文件13中读出并解压缩相应的压缩数据。根据被解压缩的数据进行各种处理,用显示处理单元64把检索结果显示在检索结果显示单元35上。显示处理单元64,与图11所示的显示处理单元46对应。在本实施例中,被存储在压缩文件13中的数据,并不限于如实施例1那样的由词典、百科全书的索引和实际数据组成的数据,任何数据都可以。另外,数据处理装置构成文件控制装置。
CD-ROM应用程序51,可以被预先安装在辅助存储装置3中,也可以从CD-ROM6a等中读出后安装到辅助存储装置3中。另外,DV55,和DV56~58一样,可以被预先安装在辅助存储装置3中,也可以从CD-ROM6a等中读出后安装到辅助存储装置3中。进而,为了便于说明,假设OS52以及FM53、54,预先被安装在辅助存储装置3中。
因而,存储介质的实施例2,存储压缩文件13以及DV55的至少一方,还可以存储CD-ROM应用程序51。
这样,在本实施例中,由于在DV55中加入了解压缩程序库(读/解压缩处理单元71),因而不需要把应用程序软件与各压缩文件合并构成,通过只改变DV55,使用现有的应用程序也可以进行压缩文件的读/解压缩处理。
图16是说明CD-ROM应用程序51的读取处理单元63和DV55的读/解压缩处理单元71一同进行的读取处理,即图1所示的CPU1的读取处理的流程图。
在图16中,在步骤S151,初始化CPU1内的读取缓冲存储器。在步骤S152,设置压缩文件13的读取地址(逻辑地址)。在步骤S153,设置区段的读取长度。另外,在步骤S154,调用读取/解压缩处理,处理结束。
图17是说明DV55的读取/解压缩处理单元71进行的读取/解压缩处理,即,图1所示的CPU1的读取/解压缩处理的流程图。
在图17中,在步骤S161,根据用户从输入单元33输入的索引数据,把所要求的解压缩地址、数据大小和存储区域存储在辅助存储装置3中,在辅助存储装置3内准备对于被解压缩的数据大小足够大的存储区域。在步骤S162,判定从CD-ROM6a中读取并被装入辅助存储装置3的压缩文件是否已打开,如果判定结果是否,则在步骤S163中,打开辅助存储装置3内的压缩文件13。在步骤S164,判定是否已设置了标题和尾部,如果判定结果是否,则转移至公知的一般的文件处理。
另一方面,如果步骤S164的判定结果是是,则在步骤S165中,从压缩文件13中读取压缩参数,读取压缩参数内的8位代码的出现频率以及16位代码和其出现频率。在步骤S166,根据8位代码的出现频率以及16位代码的出现频率,制成与多个压缩参数的各自对应的霍夫曼树,处理进入后述的步骤S127。进而,在霍夫曼树的叶数据上,附加是8位代码还是16位代码的判定用标志。
在步骤S162的判定结果是是或者在步骤S166之后,在步骤S167,从压缩文件13中读取与所要求的解压缩地址对应的地址信息。在步骤S168,根据地址信息,从压缩文件13中读取对应的压缩数据的区段。在步骤S169,判定是否设置了控制信息内的非压缩标志并有效。如果步骤169的判定结果是是,则处理进入后述的步骤S172,如果判定结果是否,则处理进入步骤S170。
步骤S170,用与控制信息内的压缩参数种类对应的霍夫曼树解压缩压缩数据的区段,在步骤S171,根据8位代码或者16位代码的判定用标志,把解压缩后的数据复制到上述存储区域,处理进入步骤S173。这种情况下,如果区段是最终区段,因为在区段的最后附加EOB,所以解压缩并复制至EOB为止的可变长度区段的数据,如果区段不是最后区段而是中途区段,因为在控制信息中包含表示删除EOB的EOB删除标志,所以直接解压缩并复制2k字节的固定长度区段的非压缩数据。
另一方面,在步骤S172,根据8位代码或者16位代码的判定用标志,把非压缩数据复制到上述存储区域,处理进入步骤S173。这种情况下,如果区段是最后区段,因为在区段的末尾附加有EOB,所以直接复制至EOB为止的可变长度区段的非压缩数据,如果区段不是最终区段而是中途区段,因为在控制信息中包含表示删除EOB的EOB删除标志,所以直接复制2k字节的固定长度区段的非压缩数据。
在步骤S173,更新区段的地址的信息,在步骤S174,判定对压缩文件13要求的数据长度的解压缩是否已完成。当步骤S174的判定结果是否的情况下,在步骤S167,从压缩文件13中读取与下一区段的解压缩地址对应的地址信息。在步骤S168,根据与该下一区段的解压缩地址对应的地址信息,从压缩文件13中读取对应的压缩数据的区段,处理进入步骤S169。另一方面,如果步骤S174的判定结果是是,则处理结束。
在实施例2中,虽然示例了作为应用程序使用CD-ROM6a的CD-ROM应用程序51,但并不限于此,使用文件的任何应用程序,都可以适用本发明的驱动软件。
另外,虽然展示了把本发明的读/解压缩处理单元71加入CD-ROM用驱动软件的例子,但通过在与其他的存储装置对应的驱动软件(硬盘驱动用驱动软件、未图示的软盘驱动用的驱动软件等)中加入读/解压缩处理单元71,可以进行同样的处理,并得到同样的效果。
以上,通过实施例说明了本发明,但在本发明的范围内可以有各种各样的变形和改进。

Claims (27)

1.一种文件处理方法,包括以下步骤:
把文件分割为由数据和在检索该数据时使用的索引数据构成的多个区段,使用多个压缩参数压缩文件的各区段,以压缩该数据和该索引数据的压缩步骤;
把压缩后的文件存储在存储介质中的存储步骤。
2.权利要求1所述的文件处理方法,上述压缩步骤,使用基于上述文件内的每个字符出现频率的分布的多个压缩参数。
3.权利要求1所述的文件处理方法,上述压缩步骤,对于压缩数据比非压缩数据信息量多的区段的数据,在该区段的控制信息中包含表示作为非压缩数据的本身的非压缩数据的标志。
4.权利要求1所述的文件处理方法,上述压缩步骤,在各区段的控制信息中包含压缩参数的识别信息。
5.权利要求1所述的文件处理方法,上述压缩步骤,把表示上述区段的结束的结束信息附加在各区段的末尾,并且当上述区段是固定长度的情况下,只在最终区段上附加上述结束信息,在上述最终区段以外的区段中把表示删除了结束信息的标志包含在该相应区段的控制信息中。
6.权利要求1所述的文件处理方法,进一步包括使用和计算机的应用程序软件相对独立的驱动软件,解压缩从上述存储介质中读出的压缩文件的步骤。
7.一种数据处理装置,包括:
压缩处理单元,把文件分割为由数据和在检索该数据时使用的索引数据构成的多个区段,使用多个压缩参数压缩文件的各区段,以压缩该数据和该索引数据;
存储处理单元,把压缩后的文件存储在存储介质中。
8.权利要求7所述的数据处理装置,上述压缩处理单元,使用基于上述文件内的每个字符出现频率的分布的多个压缩参数。
9.权利要求7所述的数据处理装置,上述压缩处理单元,对于压缩数据比非压缩数据信息量多的区段的数据,在该区段的控制信息中包含表示作为非压缩数据本身的非压缩数据的标志。
10.权利要求7所述的数据处理装置,上述压缩处理单元,在各区段的控制信息中包含压缩参数的识别信息。
11.权利要求7所述的数据处理装置,上述压缩处理单元,把表示上述区段的结束的结束信息附加在各区段的末尾,并且当上述区段是固定长度的情况下,只在最终区段上附加上述结束信息,在上述最终区段以外的区段中使表示删除了结束信息的标志包含在该相应区段的控制信息中。
12.权利要求7所述的数据处理装置,进一步包括解压缩处理单元,使用和计算机的应用程序软件相对独立的驱动软件,解压缩从上述存储介质中读出的压缩文件。
13.一种文件处理方法,包含:
读出步骤,用于访问记录有压缩文件的存储介质,该压缩文件由多个压缩参数、使用该多个压缩参数把原文件分割为由数据和在检索该数据时使用的索引数据构成的多个区段并对每个区段进行压缩后形成的多个区段数据组成;
解压缩步骤,使用与该区段数据对应的压缩参数,解压缩由该读出步骤从该存储介质中读出的区段数据。
14.权利要求13所述的文件处理方法,上述多个压缩文件,基于上述原文件内的每个字符出现频率的分布制成。
15.权利要求13所述的文件处理方法,上述压缩文件,进一步包含表示非压缩区段数据和该区段为未压缩区段的非压缩标志,上述解压缩步骤,在用上述读出步骤从上述存储介质中读出的区段数据表示非压缩时,抑制对该区段数据进行解压缩。
16.权利要求13所述的文件处理方法,在上述各区段的控制信息中包含上述压缩参数的识别信息。
17.权利要求13所述的文件处理方法,在上述各区段的控制信息中包含删除标志,该删除标志表示在区段数据上未附加表示区段结束的结束信息,上述读出步骤,根据该删除标志判定最终区段,进行区段数据的读出。
18.权利要求13所述的文件处理方法,上述解压缩步骤,由用于访问上述存储介质的该存储介质用的驱动软件执行。
19.权利要求18所述的文件处理方法,上述存储介质用的驱动软件和计算机的应用软件相互独立。
20.一种数据处理装置,具备以下单元:
读取处理单元,用于控制访问记录有压缩文件的存储介质,该压缩文件由多个压缩参数、使用多个压缩参数把原文件分割为由数据和在检索该数据时使用的索引数据构成的多个区段并对每个区段进行压缩后形成的多个区段数据组成;
解压缩处理单元,使用与该区段数据对应的压缩参数解压缩由该读取处理单元从该存储介质中读出的区段数据。
21.权利要求20所述的数据处理装置,上述多个压缩参数,根据上述原文件内的每个字符的出现频率分布制成。
22.权利要求20所述的数据处理装置,上述压缩参数,进一步包含表示非压缩的区段数据和该区段是非压缩区段的非压缩标志,上述解压缩处理单元,在由上述读取处理单元从上述存储介质读出的区段数据表示非压缩时,抑制对该区段数据的解压缩。
23.权利要求20所述的数据处理装置,在上述各区段的控制信息中包含上述压缩参数的识别信息。
24.权利要求20所述的数据处理装置,在上述各区段的控制信息中包含删除标志,该删除标志表示在区段数据上未附加表示区段结束的结束信息,上述读取处理单元,根据该删除标记判定结束区段,控制区段数据的读出。
25.权利要求20所述的数据处理装置,上述解压缩处理单元由用于访问上述存储介质的该存储介质用的驱动软件执行。
26.权利要求25所述的数据处理装置,上述存储介质用驱动软件与数据处理装置的应用软件相互独立。
27.一种数据处理装置,包含:
读取处理单元,根据来自应用软件的读出要求,控制对记录有压缩文件的存储介质进行访问,该压缩文件由多个压缩参数、使用该多个压缩参数把原文件分割为由数据和在检索该数据时使用的索引数据构成的多个区段并对每个区段进行压缩后形成的多个区段数据组成;
解压缩处理单元,用与该区段数据对应的压缩参数,解压缩用该读取处理单元从该存储介质读出的区段数据,并提供给该应用软件。
CNB998169056A 1999-08-13 1999-08-13 文件处理方法和数据处理装置 Expired - Fee Related CN1167014C (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP1999/004387 WO2001013237A1 (fr) 1999-08-13 1999-08-13 Traitement de fichier, dispositif informatique et support memoire

Publications (2)

Publication Number Publication Date
CN1367896A CN1367896A (zh) 2002-09-04
CN1167014C true CN1167014C (zh) 2004-09-15

Family

ID=14236462

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB998169056A Expired - Fee Related CN1167014C (zh) 1999-08-13 1999-08-13 文件处理方法和数据处理装置

Country Status (7)

Country Link
US (1) US7016908B2 (zh)
EP (1) EP1211601A4 (zh)
KR (1) KR100597513B1 (zh)
CN (1) CN1167014C (zh)
AU (1) AU771959B2 (zh)
CA (1) CA2387653C (zh)
WO (1) WO2001013237A1 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003006216A (ja) * 2001-06-26 2003-01-10 Sony Corp 情報処理装置および情報処理方法、記録媒体、プログラム、並びに電子出版用データ提供システム
KR100388612B1 (ko) * 2001-07-25 2003-06-25 엘지전자 주식회사 교환 시스템에서의 패키징 압축 방법
US7162584B2 (en) * 2003-12-29 2007-01-09 Intel Corporation Mechanism to include hints within compressed data
US8099791B1 (en) * 2004-06-25 2012-01-17 Lexmark International, Inc. Method of authenticating a consumable in an imaging device
US8677123B1 (en) 2005-05-26 2014-03-18 Trustwave Holdings, Inc. Method for accelerating security and management operations on data segments
JP4256397B2 (ja) * 2006-02-17 2009-04-22 誠 後藤 ファイル格納装置
US20090112900A1 (en) * 2007-10-31 2009-04-30 Krishnamurthy Viswanathan Collaborative Compression
US8239492B2 (en) * 2007-12-20 2012-08-07 Pottenger William M System for content-based peer-to-peer indexing of data on a networked storage device
US8234310B2 (en) * 2007-12-20 2012-07-31 Pottenger William M Social networking on a website with topic-based data sharing
US8301768B2 (en) * 2007-12-20 2012-10-30 Pottenger William M Peer-to-peer indexing-based marketplace
US8572071B2 (en) * 2008-12-19 2013-10-29 Rutgers, The State University Of New Jersey Systems and methods for data transformation using higher order learning
US8229972B2 (en) * 2009-08-28 2012-07-24 International Business Machines Corporation Extended data storage system
KR101074010B1 (ko) * 2009-09-04 2011-10-17 (주)이스트소프트 블록 단위 데이터 압축 및 복원 방법 및 그 장치
CN102405622B (zh) * 2010-08-24 2014-11-05 华为技术有限公司 二叉树建立、压缩和查找的方法和装置
US8484170B2 (en) * 2011-09-19 2013-07-09 International Business Machines Corporation Scalable deduplication system with small blocks
JP5336645B1 (ja) * 2012-12-17 2013-11-06 義尚 神山 倍数乗数分割ソフトウェアを記録した記録媒体
JP6107513B2 (ja) * 2013-07-29 2017-04-05 富士通株式会社 情報処理システム、情報処理方法、および情報処理プログラム
CN106169020A (zh) * 2016-06-27 2016-11-30 臻和(北京)科技有限公司 一种数据处理方法和基于基因分型的肿瘤伴随诊断系统
JP6794782B2 (ja) * 2016-11-02 2020-12-02 富士通株式会社 情報処理装置、情報処理プログラム、及び情報処理方法
CN108509308A (zh) * 2018-02-08 2018-09-07 广州视源电子科技股份有限公司 板卡数据监控方法、系统、可读存储介质及计算机设备
CN110442489B (zh) * 2018-05-02 2024-03-01 阿里巴巴集团控股有限公司 数据处理的方法和存储介质
CN111382855B (zh) * 2018-12-28 2022-12-09 上海寒武纪信息科技有限公司 数据处理装置、方法、芯片及电子设备
CN112416315B (zh) * 2020-06-16 2024-05-14 上海哔哩哔哩科技有限公司 Css代码的压缩方法、电子设备和存储介质
CN116346940B (zh) * 2023-05-29 2023-08-22 德州禹工环保设备有限公司 一种智慧海绵城市的监测管理系统

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5333313A (en) * 1990-10-22 1994-07-26 Franklin Electronic Publishers, Incorporated Method and apparatus for compressing a dictionary database by partitioning a master dictionary database into a plurality of functional parts and applying an optimum compression technique to each part
JPH04225625A (ja) * 1990-12-27 1992-08-14 Sony Corp ディジタル変調方式
JPH04359315A (ja) * 1991-06-05 1992-12-11 Matsushita Electric Ind Co Ltd データ圧縮制御装置及びデータ復元制御装置
US5414850A (en) * 1991-08-23 1995-05-09 Stac Electronics, Inc. System for transparently compressing data files in a computer system
JPH0628150A (ja) 1992-07-08 1994-02-04 Funai Techno Syst Kk プログラム容量圧縮方法
US5442350A (en) 1992-10-29 1995-08-15 International Business Machines Corporation Method and means providing static dictionary structures for compressing character data and expanding compressed data
JP3051014B2 (ja) 1993-12-27 2000-06-12 ローム株式会社 データ記憶装置及びデータシステム
JPH08241325A (ja) 1995-03-03 1996-09-17 Matsushita Electric Ind Co Ltd 電子辞書及びその製造方法並びにインデックス圧縮・伸長装置
JPH0926969A (ja) 1995-07-10 1997-01-28 Hitachi Maxell Ltd 電話帳検索システム
JPH0926902A (ja) 1995-07-12 1997-01-28 Fujikura Ltd ファイル圧縮並びに復元方法
US5809295A (en) * 1995-09-26 1998-09-15 Microsoft Corporation Method and apparatus for storing compressed file data on a disk where each MDFAT data structure includes an extra byte
US5951623A (en) * 1996-08-06 1999-09-14 Reynar; Jeffrey C. Lempel- Ziv data compression technique utilizing a dictionary pre-filled with frequent letter combinations, words and/or phrases
US5797008A (en) * 1996-08-09 1998-08-18 Digital Equipment Corporation Memory storing an integrated index of database records
US6112208A (en) * 1997-08-25 2000-08-29 Fujitsu Limited Data compressing method and apparatus to generate bit maps in accordance with extracted data symbols
KR100495593B1 (ko) 1997-10-21 2005-06-16 후지쯔 가부시끼가이샤 파일 처리 방법, 데이터 처리 장치, 및 기억 매체
US6438556B1 (en) * 1998-12-11 2002-08-20 International Business Machines Corporation Method and system for compressing data which allows access to data without full uncompression
US6574627B1 (en) * 1999-02-24 2003-06-03 Francesco Bergadano Method and apparatus for the verification of server access logs and statistics
US6349372B1 (en) * 1999-05-19 2002-02-19 International Business Machines Corporation Virtual uncompressed cache for compressed main memory
US6879988B2 (en) * 2000-03-09 2005-04-12 Pkware System and method for manipulating and managing computer archive files

Also Published As

Publication number Publication date
CA2387653A1 (en) 2001-02-22
EP1211601A4 (en) 2004-03-10
WO2001013237A1 (fr) 2001-02-22
AU771959B2 (en) 2004-04-08
US7016908B2 (en) 2006-03-21
US20020078062A1 (en) 2002-06-20
CN1367896A (zh) 2002-09-04
KR20020020814A (ko) 2002-03-15
AU5197799A (en) 2001-03-13
EP1211601A1 (en) 2002-06-05
CA2387653C (en) 2006-11-14
KR100597513B1 (ko) 2006-07-10

Similar Documents

Publication Publication Date Title
CN1167014C (zh) 文件处理方法和数据处理装置
CN1265293C (zh) 文件管理方法
CN1288581C (zh) 用缩减大小的索引进行文献检索的设备
CN1215415C (zh) 文件管理方法和存储信息记录重放装置
CN1153142C (zh) 通过事务对多个文件实现原子更新的事务文件系统
CN1139884C (zh) 信息处理方法和装置
US9405784B2 (en) Ordered index
CN1914602A (zh) 文件名生成装置
CN1549981A (zh) 用于改进文件管理的方法和装置
CN1890644A (zh) 文件管理装置、文件管理方法、文件管理方法程序以及记录该文件管理方法程序的记录介质
CN1573753A (zh) 数据库对象脚本生成方法和系统
CN1577271A (zh) 数据的包内增量压缩的系统和方法
CN1783082A (zh) 用于与文件系统保持命名空间一致性的方法和系统
CN1910558A (zh) 半导体存储器装置及其控制方法
CN1540553A (zh) 数据处理方法与装置
CN1261880C (zh) 记录方法
CN1975721A (zh) 用于管理内容文件信息的方法和装置及存储程序的介质
CN1749990A (zh) 图像处理装置和记录了实现该装置功能的程序的记录介质
CN1920812A (zh) 语言处理系统
CN1609851A (zh) 用于识别和存储表格变化的系统和方法
CN1748215A (zh) 信息处理设备、和信息处理方法以及计算机程序
CN1853161A (zh) 用于呈现存储于计算机上条目的系统和方法
CN1900935A (zh) 访问扇区数据的方法和系统
CN1894675A (zh) 信息处理装置、信息处理方法和计算机程序
CN1374587A (zh) 取得数据库匹配性的信息管理装置和记录该库程序的媒体

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20040915

Termination date: 20140813

EXPY Termination of patent right or utility model