KR101016776B1 - 상위 호환성 보장형 압축 및 복원 방법 및 장치 - Google Patents

상위 호환성 보장형 압축 및 복원 방법 및 장치 Download PDF

Info

Publication number
KR101016776B1
KR101016776B1 KR1020090089075A KR20090089075A KR101016776B1 KR 101016776 B1 KR101016776 B1 KR 101016776B1 KR 1020090089075 A KR1020090089075 A KR 1020090089075A KR 20090089075 A KR20090089075 A KR 20090089075A KR 101016776 B1 KR101016776 B1 KR 101016776B1
Authority
KR
South Korea
Prior art keywords
data
compressed
header
unit
extended field
Prior art date
Application number
KR1020090089075A
Other languages
English (en)
Inventor
오윤식
Original Assignee
(주)이스트소프트
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 (주)이스트소프트 filed Critical (주)이스트소프트
Priority to KR1020090089075A priority Critical patent/KR101016776B1/ko
Priority to JP2012522771A priority patent/JP5223037B2/ja
Priority to PCT/KR2010/005882 priority patent/WO2011034299A2/ko
Priority to US13/380,734 priority patent/US8572054B2/en
Application granted granted Critical
Publication of KR101016776B1 publication Critical patent/KR101016776B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction

Abstract

상위 호환성 보장형 압축 및 복원 방법 및 장치가 제공된다. 본 발명에 의한 데이터 압축 복원 장치는 압축 데이터 복원 장치는 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 압축 파일 파싱부 및 상기 압축 데이터를 복원하여 원본 파일을 생성하는 원본 파일 생성부를 포함한다. 다만, 상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하는 것이 바람직하다. 또한, 상기 압축 파일 파싱부는 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 필드 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 필드 유닛을 처리하지 않고 넘어가는 것이 바람직하다.
상위 호환성, 압축, 포맷, 복원, 버전

Description

상위 호환성 보장형 압축 및 복원 방법 및 장치{Forward compatibility guaranteed data compression and decompression method and apparatus thereof}
본 발명은 상위 호환성 보장형 압축 및 복원 방법 및 장치에 관한 것이다. 더욱더 자세하게는, 원본 파일을 압축하여 압축 파일을 생성하고, 압축 파일의 압축을 복원하는 방법 및 장치에 있어서, 상위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 압축한 파일을 하위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 복원하는 경우에도 기본 적인 데이터의 압축 복원은 정상적으로 수행할 수 있도록 하는 압축 및 복원 방법 및 장치에 관한 것이다.
데이터 압축 기술은 데이터를 전송하거나 기억시키는 경우 불필요한 부분을 제거하여 전송시간의 단축이나 기억 공간(space)의 절약을 꾀하는 기술을 말한다. 예를 들면, 팩시밀리로 서류를 전송하는 경우 문자와 문자 사이나 행간의 공백부분까지 함께 보내게 되면 시간이 걸린다. 이 때문에 공백부분의 위치나 크기를 다른 간략화 한 신호로 전송하거나 반복하여 나오는 데이터를 간략화 함으로써 데이터를 압축하여 전송시간을 단축한다. 자기 테이프나 디스크에 데이터를 기억시킬 때 이 기술을 쓰면 기억매체가 절약된다.
데이터 압축 및 복원 기술은 압축 알고리즘 및 압축 파일의 포맷을 그 주된 구성요소로 한다. 즉, 어떤 알고리즘을 이용하여 데이터가 차지하는 공간을 감소시킬지 및 압축 시킨 데이터에 대한 정보를 어떠한 구성으로 저장할 지가 중요하다.
압축 파일의 포맷은 제공하는 기술이 추가되고, 성능이 개선됨에 따라 여러 개의 버전(version)이 존재하게 된다. 일반적으로 하위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 압축한 파일은 상위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 문제 없이 복원된다. 이는 압축 파일의 버전 업을 진행하면서 하위 버전을 기초로 하여 하위 호환성을 염두에 두고 압축 파일의 구성을 설계하기 때문이다.
그러나, 반대의 경우, 즉, 상위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 압축한 파일을 하위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 복원하는 것은 문제가 있을 수 있다. 상위 버전에서 새로 추가한 압축 파일 포맷 구성 등이 포함된 압축 파일을 하위 버전에서 인식할 수 없는 경우가 발생하기 때문이다. 따라서, 상위 버전의 압축 파일 포맷에 의해 저장된 압축 파일이라도 기본적인 데이터 복원이 가능한, 상위 호환성이 보장되는 압축 파일 포맷의 제공이 요구되고 있다.
본 발명이 해결하고자 하는 기술적 과제는 상위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 압축한 파일을 하위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 복원하는 경우에도 기본 적인 데이터의 압축 복원은 정상적으로 수행할 수 있도록 하는 압축 파일을 생성하는 데이터 압축 장치 및 방법을 제공하는 것이다.
본 발명이 해결하고자 하는 다른 기술적 과제는 상위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 압축한 파일을 하위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 복원하는 경우에도 기본 적인 데이터의 압축 복원은 정상적으로 수행할 수 있도록 하는 압축 데이터 복원 장치 및 방법을 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해 될 수 있을 것이다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 태양에 따른 데이터 압축 장치는 압축 대상 데이터에 대하여 압축 알고리즘을 적용하여 압축 데이터를 생성하는 압축부 및 상기 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 생성하는 압축파일 생성부를 포함한다. 상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하는 것이 바람직하다.
상기 기술적 과제를 달성하기 위한 본 발명의 다른 태양에 따른 압축 데이터 복원 장치는 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 압축 파일 파싱부 및 상기 압축 데이터를 복원하여 원본 파일을 생성하는 원본 파일 생성부를 포함한다. 다만, 상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하는 것이 바람직하다. 또한, 상기 압축 파일 파싱부는 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 필드 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 필드 유닛을 처리하지 않고 넘어가는 것이 바람직하다.
상기 기술적 과제를 달성하기 위한 본 발명의 또 다른 태양에 따른 압축 데이터 복원 방법은 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 단계 및 상기 압축 데이터를 복원하여 원본 파일을 생성하는 단계를 포함하되, 상기 확 장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하고, 상기 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 단계는 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 필드 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 필드 유닛을 처리하지 않고 넘어가는 단계를 포함한다.
상기 기술적 과제를 달성하기 위한 본 발명의 또 다른 태양에 따른 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체는 압축 대상 데이터에 대하여 압축 알고리즘을 적용하여 압축 데이터를 생성하는 기능 및 상기 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 생성하는 기능을 포함하되, 상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하는 프로그램을 기록한 것이다.
상기 기술적 과제를 달성하기 위한 본 발명의 또 다른 태양에 따른 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체는 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 기능 및 상기 압축 데이터를 복원하여 원본 파일을 생성하는 기능을 포함하되, 상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하고, 상기 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 기능은 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 필드 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 필드 유닛을 처리하지 않고 넘어가는 기능을 더 포함 프로그램을 기록한 것이다.
상기와 같은 본 발명에 따르면, 상위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 압축한 파일을 하위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 복원하는 경우에도 기본 적인 데이터의 압축 복원은 정상적으로 수행할 수 있도록 하는 효과가 있다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이하, 본 발명의 실시예들에 의하여 상위 호환성 보장형 압축 및 복원 방법 및 장치를 설명하기 위한 블록도 또는 처리 흐름도에 대한 도면들을 참고하여 본 발명에 대해 설명하도록 한다. 이 때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재 되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
이하, 본 발명의 일 실시예에 따른 데이터 압축 장치의 구성 및 동작을 도 1을 참조하여 설명하기로 한다. 도 1은 본 실시예에 따른 데이터 압축 장치의 구성도이다. 본 실시예에 따른 데이터 압축 장치는 범용 컴퓨터 시스템에 특정 기능을 수행하는 프로그램이 실행 중인 상태를 의미하는 것으로 이해될 수 있을 것이다.
도 1에 도시된 바와 같이, 본 실시예에 따른 데이터 압축 장치는 사용자 인터페이스(100), 제어부(102), 저장부(106), 압축부(108) 및 압축파일 생성부(110)를 포함한다.
사용자 인터페이스(100)는 데이터 압축 장치의 사용자로부터 압축 대상인 원본 파일을 지정 받아 상기 원본 파일의 정보를 제어부(102)에 제공한다. 이하, '원본 파일'은 압축하고자 하는 데이터 그룹을 지칭하는 용어로 사용되며, 범용 컴퓨터 시스템에서 데이터를 저장하는 단위로 사용하는 파일(file)과 동의어로 해석되어서는 안 된다는 것을 주의해야 한다. 즉, '원본 파일'은 한 그룹의 압축 대상 데이터를 의미하는 것이다. 상기 원본 파일은 예를 들면 운영 체제가 지원하는 파일 시스템(File System) 상의 저장 단위인 파일, 메모리에 임시로 저장된 데이터 일 수 있다.
제어부(102)는 블록 설정부(104)에 상기 원본 파일에 대한 정보를 전달하고, 압축부(108)로 하여금 저장부(106)로부터 상기 원본 파일을 로딩하여 압축하도록 제어한다.
저장부(106)는 원본 파일 및 압축파일 생성부(110)이 생성한 압축 파일을 저장한다. 저장부(106)는 캐쉬(Cache), 롬(Read Only Memory; ROM), 피롬(Programable ROM; PROM), 이피롬(Erasable Programmable ROM; EPROM), 이이피롬(Electrically Erasable Programmable ROM; EEPROM) 및 플래쉬 메모리(Flash memory)와 같은 비휘발성 메모리 소자, 램(Random Access Memory; RAM)과 같은 휘발성 메모리 소자, 및 하드디스크 드라이브(Hard disk drive)와 같은 저장매체로 중 적어도 하나로 구현될 수 있으나 이에 한정되지는 않는다. 또한, 도 1에는 저장부(106)가 압축부(108) 및 압축파일 생성부(110)와 직접 연결된 것으로 도시되어 있으나, 저장부(106)는 본 실시예에 따른 데이터 압축 장치와 분리되어 있으며, 네 트워크를 통하여 압축부(108) 및 압축파일 생성부(110)와 연결될 수 있다.
압축부(108)는 압축 대상 데이터에 대하여 압축 알고리즘을 적용하여 압축 데이터를 생성한다.
압축파일 생성부(110)는 압축부(108)에 의해 생성된 상기 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 하나 이상의 확장 필드 유닛과 확장 필드 종결코드로 구성된 확장 필드를 포함하는 압축 파일을 생성한다. 상기 압축 파일은 저장부(106)에 제공되어 저장될 수 있다. 이때, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하는 것이 바람직하다.
즉, 압축파일 생성부(110)가 생성하는 압축파일은 상기 헤더, 상기 확장 필드 및 상기 압축 데이터의 세가지 구성요소로 이루어질 수 있음을 쉽게 이해할 수 있을 것이다. 이때, 상기 헤더 및 상기 확장 필드는 저장하고 있는 정보의 종류에 따라 둘 이상 존재할 수 있다.
예를 들면, 상기 헤더는 포함하는 정보에 따라 제 1 헤더, 제 2 헤더, 제 3 헤더로 구분되고, 상기 확장 필드 역시 포함하는 정보에 따라 제 1 확장 필드, 제 2 확장 필드, 제 3 확장 필드 및 제 4 확장 필드로 구분될 수 있다. 이때, 상기 제 1 확장 필드는 상기 제 1 헤더 뒤에 연결되고, 상기 제 2 확장 필드는 상기 제 2 헤더 뒤에 연결되며, 상기 제 3 확장 필드는 상기 제 3 헤더 뒤에 연결되고, 상기 제 4 확장 필드는 상기 압축 파일의 맨 뒤에 위치하는 것이 바람직하다. 보다 자세 하게는, 상기 압축 파일은 압축 포맷을 식별할 수 있도록 하는 상기 제 1 헤더, 상기 제 1 헤더에 연관된 정보를 포함하는 상기 제 1 확장 필드, 상기 압축 파일에 포함된 원본 파일에 대한 정보를 포함하는 상기 제 2 헤더, 상기 제 2 헤더에 연관된 정보를 포함하는 제 2 확장 필드, 상기 원본 파일 내의 각 블록에 대한 정보를 포함하는 상기 제 3 헤더, 상기 제 3 헤더에 연관된 정보를 포함하는 상기 제 3 확장 필드, 상기 제 3 헤더에 대응하는 블록의 상기 압축 데이터, 상기 압축 파일의 종결을 인식 시킬 수 있는 상기 제 4 확장 필드가 순서대로 위치하는 구성을 가질 수 있다.
이하, 도 2를 참조하여 압축파일 생성부(110)가 생성하는 압축 파일의 구성을 보다 자세히 설명하기로 한다. 도 2는 본 실시예에 따른 데이터 압축 장치가 생성하는 압축 파일의 구성을 나타낸 도면이다.
도 2에 도시된 바와 같이, 압축파일 생성부(110)가 생성하는 압축 파일은 압축 파일의 포맷을 식별 할 수 있는 정보를 포함하는 제 1 헤더(200), 본 압축 파일이 분할 압축 되었는지, 솔리드(solid) 압축 되었는지에 대한 정보를 포함할 수 있는 제 1 확장 필드(202), 본 압축 파일에 포함된 원본 파일에 대한 정보를 포함하는 제 2 헤더(204), 제 2 헤더(204)에 포함되지 않은 상기 원본 파일에 대한 추가 정보를 포함하는 제 2 확장 필드(206), 블록에 대한 정보를 포함하는 제 3 헤더(208), 상기 블록에 대한 추가 정보가 포함될 수 있는 제 3 확장 필드(210), 상기 블록의 데이터가 포함되는 압축 데이터(212), 본 압축 파일에 대한 코멘트 또는 본 압축 파일이 종결 됨을 알리는 코드를 포함하는 제 4 확장 필드(214)를 포함할 수 있다.
도 2를 해석함에 있어서 다음을 유의해야 한다. 제 1 확장 필드(202), 제 2 확장 필드(206), 제 3 확장 필드(210)는 각각 제 1 헤더(200), 제 2 헤더(204), 제 3 헤더(208)에 기재되지 못한 관련 내용을 기재하는 영역을 지칭한다. 따라서, 제 1 확장 필드(202), 제 2 확장 필드(206), 제 3 확장 필드(210)에 각각 포함될 수 있는 정보는 도 2에 도시된 것에 국한되지 않으며, 도 2에 도시되지 않은 데이터를 새로 정의 하여 해당 영역에 위치 시킬 수 있다.
즉, 도 2의 제 1 확장 필드(202)에 포함된 분할 압축 정보, 솔리드 압축 정보 등의 경우, 미리 정의된 구성을 가진 확장 필드 유닛(unit)이며, 제 1 확장 필드(202), 제 2 확장 필드(206), 제 3 확장 필드(210), 종결 확장 필드(214)는 상기 확장 필드 유닛이 위치 할 수 있는 영역을 지칭하는 것으로 이해할 수 있을 것이다. 또한, 도 2에 도시된 바와 같이 확장 필드는 확장 필드 종결 코드로 마무리 됨을 알 수 있다.
즉, 상기 확장 필드는 반드시 확장 필드 종결 코드로 마무리 되고 하나 이상의 상기 확장 필드 유닛을 포함할 수 있다. 그러나 상기 확장 필드 유닛을 포함하지 않고 확장 필드 종결 코드만 포함하고 있는 상기 확장 필드도 존재할 수 있음을 유의해야 한다.
도 2를 해석함에 있어서 다음 사항 역시 유의해야 한다. 각 데이터 구성 요소의 오른쪽 셀에 도시된 숫자는 해당 데이터 구성 요소가 해당 압축 파일 내에 존재 할 수 있는 개수이다.
예를 들어, 제 2 헤더(204)는 각 원본 파일 마다 하나 존재 할 수 있으므로, 본 압축 파일 내에는 본 압축 파일의 압축을 복원하면 생성되는 원본 파일의 개수만큼의 제 2 헤더(204)가 존재 할 수 있다. 또한, 각각의 원본 파일은 하나 이상의 블록으로 구분될 수 있으므로, 하나의 제 2 헤더(204)에 연결되는 제 3 헤더(208) 및 블록 바디(212)의 쌍은 상기 원본 파일 헤더 내에 존재하는 블록의 수만큼 존재할 수 있다. 다만, 상기 원본 파일이 폴더 내지는 디렉토리인 경우, 상기 원본 파일은 블록의 수가 0임을 주의해야 한다.
예를 들어, 압축 파일이 3개의 원본 파일, 즉 X 파일, Y 파일, Z 파일을 포함하고, X 파일은 가, 나 블록, Y 파일은 다, 라, 마 블록, Z 파일은 바 블록으로 각각 구성된다고 가정하면, 도 2의 압축 파일 구성 예에 따른 상기 압축 파일은 다음 순서로 구성될 수 있다. 제 1 헤더(200) -> X 제 2 헤더(204) -> 가 제 3 헤더(208) -> 가 블록 바디(212) -> 나 제 3 헤더(208) -> 나 블록 바디(212) -> Y 제 2 헤더(204) -> 다 제 3 헤더(208) -> 다 블록 바디(212) -> 라 제 3 헤더(208) -> 라 블록 바디(212) -> 마 제 3 헤더(208) -> 마 블록 바디(212) -> Z 제 2 헤더(204) -> 바 제 3 헤더(208) -> 바 블록 바디(212).
이하, 상기 헤더와 상기 확장 필드 유닛의 구성을 도 3 및 도 4를 참조하여 비교 설명하기로 한다.
도 3은 상기 헤더 중 하나인 제 2 헤더(204)의 구성을 도시한 도면이다. 도 3에 도시된 바와 같이, 처음 4 바이트로 원본 파일 헤더 식별 코드라는 데이터 식별코드가 위치하고 있는 것을 알 수 있다. 상기 확장 필드 유닛 중 하나인 파일 경 로 데이터의 확장 필드 유닛의 구성을 도시한 도 4를 살펴보면 상기 헤더와 마찬가지로 처음 4 바이트가 원본 파일 경로 식별 코드라는 데이터 식별코드인 것을 알 수 있다. 즉, 초기의 일정 바이트에 위치하는 상기 데이터 식별코드를 통하여 데이터의 종류를 알 수 있는 것이다. 다시 말하면, 미리 정해진 제 1 헤더(200), 제 2 헤더(204), 제 3 헤더(208)의 초기 일정 바이트에는 미리 정해진 해당 헤더의 데이터 식별코드가 위치하고, 그 외의 데이터 식별코드가 인식된다면 그 데이터는 상기 확장 필드 유닛 인 것으로 판정할 수 있을 것이다. 그런데, 데이터 식별코드가 상기 헤더의 것도 아니고 상기 확장 필드 유닛의 것도 아니라면, 해당 압축 파일은 상위 버전의 압축 파일로, 해당 확장 필드 유닛은 처리하지 않고 뛰어 넘어야 할 것이다. 이하, 관련 동작은 보다 자세히 설명하기로 한다.
이하, 본 발명의 다른 실시예에 따른 압축 데이터 복원 장치의 구성 및 동작을 도 5를 참조하여 설명하기로 한다. 도 5는 본 실시예에 따른 압축 데이터 복원 장치의 구성도이다. 본 실시예에 따른 압축 데이터 복원 장치는 상기 데이터 압축 장치에 의해 생성된 압축 파일을 복원할 수 있다. 본 실시예에 따른 압축 데이터 복원 장치는 도 1에 도시된 구성을 더 포함함으로써 상기 데이터 압축 장치의 기능도 수행할 수 있음을 이해할 수 있을 것이다.
도 5에 도시된 바와 같이, 본 실시예에 따른 압축 데이터 복원 장치는 사용자 인터페이스(500), 제어부(502), 압축 파일 파싱부(504), 저장부(506) 및 원본파일 생성부(508)를 포함할 수 있다.
사용자 인터페이스(500)는 데이터 압축 장치의 사용자로부터 압축 복원 대상 인 압축 파일을 지정 받아 상기 압축 파일의 정보를 제어부(502)에 제공한다.
제어부(502)는 압축 파일 파싱부(504)에 상기 압축 파일에 대한 정보를 전달한다.
압축 파일 파싱부(504)는 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 하나 이상의 확장 필드 유닛과 확장 필드 종결코드로 구성된 확장 필드를 포함하는 압축 파일을 파싱 하여 상기 압축 데이터를 추출한다. 이때, 상기 헤더 및 상기 확장 데이터 유닛은 같은 바이트 수의 데이터 식별코드로 시작하고, 상기 확장 데이터 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하는 것이 바람직하다. 압축 파일 파싱부(504)는 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 데이터 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 데이터 유닛을 처리하지 않고 넘어가는 것이 바람직하다.
압축 파일 파싱부(504)는 상기 데이터 식별코드를 파싱 함으로써 상기 헤더 및 상기 확장 데이터 유닛의 종류를 식별할 수 있을 것이다. 상기 데이터 식별코드를 인식하기 위해, 상기 데이터 식별코드의 바이트 수는 압축 파일 포맷의 버전이 변경되더라도 일정하게 유지되어야 하며, 그 위치 또한 일정하게 유지되어야 함을 명확하게 이해할 수 있을 것이다.
상기 데이터 식별코드가 이미 알려진 헤더의 것이라면 압축 파일 파싱부(504)는 뒤에 위치하는 데이터가 헤더인 것으로 판정하고, 해당 헤더의 형식에 따라 데이터를 언패킹(unpacking) 하여 원본 파일 생성에 참조할 수 있도록 해당 언패킹 된 데이터를 원본파일 생성부(508)에 제공할 수 있다.
상기 데이터 식별코드가 이미 알려진 헤더의 것이 아니고, 알려진 확장 데이터 유닛의 것이라면, 압축 파일 파싱부(504)는 뒤에 위치하는 데이터가 확장 데이터 유닛인 것으로 판정하고, 해당 확장 데이터 유닛의 형식에 따라 데이터를 언패킹(unpacking) 하여 원본 파일 생성에 참조할 수 있도록 해당 언패킹 된 데이터를 원본파일 생성부(508)에 제공할 수 있다.
압축 파일 파싱부(504)는 상기 데이터 식별코드가 확장 데이터 유닛의 것으로 판정하여 상기 확장 필드에 진입한 것으로 판정한 경우, 상기 확장 필드 종결코드가 발견될 때까지 상기 확장 데이터 유닛에 포함된 데이터 중 상기 원본 파일 생성에 반영할 데이터를 원본 파일 생성부(508)에 제공하고, 원본 파일 생성부(508)는 압축 파일 파싱부(504)가 제공한 상기 확장 데이터 유닛에 포함된 데이터를 반영하여 상기 원본 파일을 생성할 수 있다.
한편, 상기 데이터 식별코드가 이미 알려진 헤더의 것이 아니고, 알려진 확장 데이터 유닛의 것도 아니라면, 압축 파일 파싱부(504)는 뒤에 위치하는 데이터가 상위 버전의 압축 포맷에서 새로 지원된 확장 데이터 유닛인 것으로 판정하고, 상기 길이 데이터를 이용하여 해당 확장 데이터 유닛을 처리하지 않고 넘어가는 것이 바람직하다. 예를 들어, 도 4에 도시된 원본 파일의 경로 정보에 관련된 확장 데이터 유닛이 알려지지 않은 것이라면, 압축 파일 파싱부(504)는 1바이트(Bit flag)를 건너뛰고 그 다음 2 바이트에 걸쳐서 존재하는 상기 확장 데이터 유닛의 길이 데이터를 이용하여, 그 다음의 확장 데이터 유닛 또는 확장 필드 종결 코드로 건너 뛰어서 상위 버전에서 새로 지원된 기능을 이용하여 압축했다는 이유 만으로 기본적인 압축 복원도 불가능해지는 문제점을 해결할 수 있다. 다만, 모든 확장 데이터 유닛은 압축 포맷의 버전에 관계 없이 같은 위치에 해당 확장 데이터 유닛의 길이 데이터를 포함하고 있어야 함을 주의하여야 한다.
저장부(506)는 압축 파일 및 원본파일 생성부(508)가 생성한 원본 파일을 저장한다.
원본 파일 생성부(508)은 상기 압축 데이터를 복원하여 원본 파일을 생성한다.
이하, 본 발명의 또 다른 실시예에 따른 압축 데이터 복원 방법에 대하여 설명하기로 한다. 본 실시예에 따른 압축 데이터 복원 방법은 상기 설명한 본 발명의 다른 실시예에 따른 압축 데이터 복원 장치의 기술적 특징이 적용될 수 있음을 유의해야 한다.
먼저, 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 하나 이상의 확장 필드 유닛과 확장 필드 종결코드로 구성된 확장 필드를 포함하는 압축 파일을 파싱 하여 상기 압축 데이터를 추출한다.
상기 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 단계는 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 데이터 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 데이터 유닛을 처리하지 않고 넘어가는 단계를 포함할 수 있다.
보다 자세하게는, 상기 헤더 및 상기 확장 필드 유닛의 처음에 위치하는 데 이터 식별코드를 추출하여 인식한 후, 상기 데이터 식별코드가 이미 알려진 헤더의 것이라면 뒤에 위치하는 데이터가 헤더인 것으로 판정하고, 해당 헤더의 형식에 따라 데이터를 언패킹(unpacking) 하여 원본 파일 생성에 참조할 수 있도록 한다.
또한, 상기 데이터 식별코드가 이미 알려진 헤더의 것이 아니고, 알려진 확장 데이터 유닛의 것이라면, 뒤에 위치하는 데이터가 확장 데이터 유닛인 것으로 판정하고, 해당 확장 데이터 유닛의 형식에 따라 데이터를 언패킹(unpacking) 하여 원본 파일 생성에 참조할 수 있도록한다. 상기 데이터 식별코드가 확장 데이터 유닛의 것으로 판정하여 상기 확장 필드에 진입한 것으로 판정한 경우, 상기 확장 필드 종결코드가 발견될 때까지 상기 확장 데이터 유닛에 포함된 데이터를 상기 원본 파일 생성에 반영한다.
한편, 상기 데이터 식별코드가 이미 알려진 헤더의 것이 아니고, 알려진 확장 데이터 유닛의 것도 아니라면, 뒤에 위치하는 데이터가 상위 버전의 압축 포맷에서 새로 지원된 확장 데이터 유닛인 것으로 판정하고, 상기 길이 데이터를 이용하여 해당 확장 데이터 유닛을 처리하지 않고 넘어가는 것이 바람직하다.
상기 헤더 및 상기 확장 데이터 유닛은 같은 바이트 수의 데이터 식별코드로 시작하고, 상기 확장 데이터 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하는 것이 바람직하다.
다음으로, 상기 헤더 및 확장 데이터 유닛에서 추출된 데이터에 기반하여 압축 데이터를 복원하여 원본 파일을 생성한다.
이하, 본 발명의 또 다른 실시예에 따른 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체에 대하여 설명하기로 한다. 상기 설명한 본 발명의 다른 실시예에 따른 데이터 압축 장치 및 압축 데이터 복원 장치의 기술적 특징이 적용될 수 있음을 유의해야 한다.
상기 기록 매체는 캐쉬(Cache), 롬(Read Only Memory; ROM), 피롬(Programable ROM; PROM), 이피롬(Erasable Programmable ROM; EPROM), 이이피롬(Electrically Erasable Programmable ROM; EEPROM) 및 플래쉬 메모리(Flash memory)와 같은 비휘발성 메모리 소자, 램(Random Access Memory; RAM)과 같은 휘발성 메모리 소자, 및 하드디스크 드라이브(Hard disk drive)와 같은 저장매체로 중 적어도 하나일 수 있다.
본 실시예에 따른 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체는 압축 대상 데이터에 대하여 압축 알고리즘을 적용하여 압축 데이터를 생성하는 기능 및 상기 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 하나 이상의 확장 필드 유닛과 확장 필드 종결코드로 구성된 확장 필드를 포함하는 압축 파일을 생성하는 기능을 포함하되, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하는 프로그램을 기록한 것이다.
본 실시예에 따른 프로그램을 기록한 컴퓨터로 읽을 수 있는 또 다른 기록 매체는 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 하나 이상의 확장 필드 유닛과 확장 필드 종결코드로 구성된 확장 필드를 포함하는 압축 파 일을 파싱 하여 상기 압축 데이터를 추출하는 기능 및 상기 압축 데이터를 복원하여 원본 파일을 생성하는 기능을 포함하되, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하고, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하며, 상기 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 기능은 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 필드 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 필드 유닛을 처리하지 않고 넘어가는 기능을 더 포함하는 프로그램을 포함한 것이다.
이상 첨부된 도면을 참조하여 본 발명의 실시 예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
도 1은 본 발명의 일 실시 예에 따른 데이터 압축 장치의 구성도이다.
도 2는 본 발명의 일 실시 예에 따른 데이터 압축 장치가 생성하는 압축 파일의 구성을 나타낸 도면이다.
도 3은 본 발명의 일 실시 예에 따른 데이터 압축 장치가 생성하는 압축 파일의 구성 중 헤더 중 하나인 제 2 헤더의 구성을 도시한 도면이다.
도 4는 본 발명의 일 실시 예에 따른 데이터 압축 장치가 생성하는 압축 파일의 구성 중 확장 필드에 포함되는 확장 필드 유닛 중 하나인 파일 경로 데이터의 확장 필드 유닛의 구성을 도시한 도면이다.
도 5는 본 발명의 일 실시 예에 따른 압축 데이터 복원 장치의 구성도이다.

Claims (9)

  1. 압축 대상 데이터에 대하여 압축 알고리즘을 적용하여 압축 데이터를 생성하는 압축부; 및
    상기 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 생성하는 압축파일 생성부를 포함하되,
    상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하는 데이터 압축 장치.
  2. 제 1 항에 있어서,
    상기 헤더는 포함하는 정보에 따라 제 1 헤더, 제 2 헤더, 제 3 헤더로 구분되고, 상기 확장 필드 역시 포함하는 정보에 따라 제 1 확장 필드, 제 2 확장 필드, 제 3 확장 필드 및 제 4 확장 필드로 구분되며,
    상기 제 1 확장 필드는 상기 제 1 헤더 뒤에 연결되고, 상기 제 2 확장 필드는 상기 제 2 헤더 뒤에 연결되며, 상기 제 3 확장 필드는 상기 제 3 헤더 뒤에 연결되고, 상기 제 4 확장 필드는 상기 압축 파일의 맨 뒤에 위치하는 데이터 압축 장치.
  3. 제 2 항에 있어서,
    상기 압축 파일은,
    압축 포맷을 식별할 수 있도록 하는 상기 제 1 헤더, 상기 제 1 헤더에 연관된 정보를 포함하는 상기 제 1 확장 필드, 상기 압축 파일에 포함된 원본 파일에 대한 정보를 포함하는 상기 제 2 헤더, 상기 제 2 헤더에 연관된 정보를 포함하는 제 2 확장 필드, 상기 원본 파일 내의 각 블록에 대한 정보를 포함하는 상기 제 3 헤더, 상기 제 3 헤더에 연관된 정보를 포함하는 상기 제 3 확장 필드, 상기 제 3 헤더에 대응하는 블록의 상기 압축 데이터, 상기 압축 파일의 종결을 인식 시킬 수 있는 상기 제 4 확장 필드가 순서대로 위치하는 구성을 가지는 데이터 압축 장치.
  4. 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 압축 파일 파싱부; 및
    상기 압축 데이터를 복원하여 원본 파일을 생성하는 원본 파일 생성부를 포함하되,
    상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신 의 길이 데이터를 더 포함하고,
    상기 압축 파일 파싱부는 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 필드 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 필드 유닛을 처리하지 않고 넘어가는 압축 데이터 복원 장치.
  5. 제 4 항에 있어서,
    상기 압축 파일 파싱부는,
    상기 데이터 식별코드를 파싱 함으로써 상기 헤더 및 상기 확장 필드 유닛의 종류를 식별하는 압축 데이터 복원 장치.
  6. 제 5 항에 있어서,
    상기 압축 파일 파싱부는,
    상기 확장 필드 종결코드가 발견될 때까지 상기 확장 필드 유닛에 포함된 데이터 중 상기 원본 파일 생성에 반영할 데이터를 상기 원본 파일 생성부에 제공하고,
    상기 원본 파일 생성부는,
    상기 압축 파일 파싱부가 제공한 상기 확장 필드 유닛에 포함된 데이터를 반영하여 상기 원본 파일을 생성하는 압축 데이터 복원 장치.
  7. 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 단계; 및
    상기 압축 데이터를 복원하여 원본 파일을 생성하는 단계를 포함하되,
    상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하고,
    상기 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 단계는 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 필드 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 필드 유닛을 처리하지 않고 넘어가는 단계를 포함하는 압축 데이터 복원 방법.
  8. 압축 대상 데이터에 대하여 압축 알고리즘을 적용하여 압축 데이터를 생성하는 기능; 및
    상기 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 생성하는 기능을 포함하되,
    상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하는 것인 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
  9. 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 기능; 및
    상기 압축 데이터를 복원하여 원본 파일을 생성하는 기능을 포함하되,
    상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하고,
    상기 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 기능은 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 필드 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 필드 유닛을 처리하지 않고 넘어가는 기능을 더 포함하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020090089075A 2009-09-21 2009-09-21 상위 호환성 보장형 압축 및 복원 방법 및 장치 KR101016776B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020090089075A KR101016776B1 (ko) 2009-09-21 2009-09-21 상위 호환성 보장형 압축 및 복원 방법 및 장치
JP2012522771A JP5223037B2 (ja) 2009-09-21 2010-08-31 上位互換性を保証する圧縮及び復元方法並びに装置
PCT/KR2010/005882 WO2011034299A2 (ko) 2009-09-21 2010-08-31 상위 호환성 보장형 압축 및 복원 방법 및 장치
US13/380,734 US8572054B2 (en) 2009-09-21 2010-08-31 Forward compatibility guaranteed data compression and decompression method and apparatus thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090089075A KR101016776B1 (ko) 2009-09-21 2009-09-21 상위 호환성 보장형 압축 및 복원 방법 및 장치

Publications (1)

Publication Number Publication Date
KR101016776B1 true KR101016776B1 (ko) 2011-02-25

Family

ID=43759144

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090089075A KR101016776B1 (ko) 2009-09-21 2009-09-21 상위 호환성 보장형 압축 및 복원 방법 및 장치

Country Status (4)

Country Link
US (1) US8572054B2 (ko)
JP (1) JP5223037B2 (ko)
KR (1) KR101016776B1 (ko)
WO (1) WO2011034299A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113590551A (zh) * 2021-07-30 2021-11-02 广东时谛智能科技有限公司 一种材料数字化扩展格式系统、方法、介质及设备

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101074010B1 (ko) 2009-09-04 2011-10-17 (주)이스트소프트 블록 단위 데이터 압축 및 복원 방법 및 그 장치
GB201321821D0 (en) * 2013-12-10 2014-01-22 Ibm Opague message parsing
US9531847B2 (en) * 2014-05-22 2016-12-27 International Business Machines Corporation Skipping and parsing internet protocol version 6 (IPv6) extension headers to reach upper layer headers
GB2575436B (en) 2018-06-29 2022-03-09 Imagination Tech Ltd Guaranteed data compression
CN111026736B (zh) * 2019-12-13 2024-03-12 中盈优创资讯科技有限公司 数据血缘管理方法及装置、数据血缘解析方法及装置
CN111245723B (zh) * 2020-03-10 2022-06-24 苏州盛科通信股份有限公司 一种分段路由ipfix的芯片实现方法及装置
CN111400348B (zh) * 2020-03-25 2023-08-08 贵阳块数据城市建设有限公司 一种多种标识编码规则的异构数据处理方法
CN111628995B (zh) * 2020-05-26 2023-06-16 新华三信息安全技术有限公司 基于SRv6的SID压缩方法、装置、设备及存储介质
US11681659B2 (en) * 2021-05-21 2023-06-20 Red Hat, Inc. Hybrid file compression model

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05313904A (ja) * 1992-05-13 1993-11-26 Kobe Nippon Denki Software Kk プログラムファイル圧縮方式
KR100418349B1 (ko) 2001-09-05 2004-02-11 (주) 한국인프라 데이터 압축 및 복원 방법
KR20040038271A (ko) * 2002-10-31 2004-05-08 주식회사 현대시스콤 파일 압축 및 해제 방법
KR20090068787A (ko) * 2007-12-24 2009-06-29 (주)이스트소프트 압축포맷의 파일 압축과 복원 장치 및 방법

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5455629A (en) * 1991-02-27 1995-10-03 Rca Thomson Licensing Corporation Apparatus for concealing errors in a digital video processing system
JPH04359315A (ja) 1991-06-05 1992-12-11 Matsushita Electric Ind Co Ltd データ圧縮制御装置及びデータ復元制御装置
US5873097A (en) * 1993-05-12 1999-02-16 Apple Computer, Inc. Update mechanism for computer storage container manager
US5579316A (en) * 1994-05-02 1996-11-26 Adtran Communications technique for transmitting limited size digital data frames using macro headers to represent multiple header code patterns associated with encapsulation protocols and signal processing operations to which transmitted data are subjected
EP0716370A3 (en) * 1994-12-06 2005-02-16 International Business Machines Corporation A disk access method for delivering multimedia and video information on demand over wide area networks
US6081262A (en) * 1996-12-04 2000-06-27 Quark, Inc. Method and apparatus for generating multi-media presentations
JP3647200B2 (ja) 1997-05-01 2005-05-11 オリンパス株式会社 情報再生システム
US7570645B2 (en) * 2000-01-18 2009-08-04 Viasat, Inc. Frame format and frame assembling/disassembling method for the frame format
US6091772A (en) * 1997-09-26 2000-07-18 International Business Machines, Corporation Black based filtering of MPEG-2 compliant table sections
US7933295B2 (en) * 1999-04-13 2011-04-26 Broadcom Corporation Cable modem with voice processing capability
US6750918B2 (en) * 2000-05-12 2004-06-15 Thomson Licensing S.A. Method and system for using single OSD pixmap across multiple video raster sizes by using multiple headers
DE60018927T2 (de) * 2000-09-07 2005-07-28 Matsushita Electric Industrial Co. Ltd., Kadoma Verfahren und Vorrichtung zur Datenpaketenübertragung
EP1233522A1 (en) 2001-02-14 2002-08-21 Siemens Aktiengesellschaft A data compression/decompression method and apparatus
US7076108B2 (en) * 2001-12-11 2006-07-11 Gen Dow Huang Apparatus and method for image/video compression using discrete wavelet transform
US7969306B2 (en) * 2002-01-11 2011-06-28 Sap Aktiengesellschaft Context-aware and real-time item tracking system architecture and scenarios
US6993196B2 (en) * 2002-03-18 2006-01-31 Eastman Kodak Company Digital image storage method
JP4317403B2 (ja) * 2002-08-09 2009-08-19 パナソニック株式会社 ヘッダ圧縮装置及びヘッダ圧縮方法
US7058783B2 (en) 2002-09-18 2006-06-06 Oracle International Corporation Method and mechanism for on-line data compression and in-place updates
US7362780B2 (en) * 2002-12-11 2008-04-22 Nokia Corporation Avoiding compression of encrypted payload
JP3997428B2 (ja) * 2003-09-25 2007-10-24 ソニー株式会社 記録装置、ファイル管理方法、ファイル管理方法のプログラム及びファイル管理方法のプログラムを記録した記録媒体
JP4347724B2 (ja) * 2004-03-05 2009-10-21 富士フイルム株式会社 画像ファイル生成装置および方法ならびに画像ファイル再生装置および方法
US20050238008A1 (en) * 2004-04-23 2005-10-27 Fraser Alexander G Method and apparatus for the encapsulation of control information in a real-time data stream
KR100773539B1 (ko) * 2004-07-14 2007-11-05 삼성전자주식회사 멀티채널 오디오 데이터 부호화/복호화 방법 및 장치
JP2007043595A (ja) 2005-08-05 2007-02-15 Nec Corp 可変長符号復号化方法および装置ならびにデータ伸長装置
US7701981B2 (en) * 2005-10-27 2010-04-20 Qualcomm Incorporated System and method for improving robust header compression (ROHC) efficiency
US7307552B2 (en) * 2005-11-16 2007-12-11 Cisco Technology, Inc. Method and apparatus for efficient hardware based deflate
JP4546387B2 (ja) * 2005-11-17 2010-09-15 富士通株式会社 バックアップシステム、方法及びプログラム
US7843823B2 (en) * 2006-07-28 2010-11-30 Cisco Technology, Inc. Techniques for balancing throughput and compression in a network communication system
JP4415978B2 (ja) 2006-08-02 2010-02-17 ソニー株式会社 画像信号処理装置、画像信号処理方法
US8102853B2 (en) * 2006-08-09 2012-01-24 Samsung Electronics Co., Ltd. System and method for wireless communication of uncompressed video having fixed size MAC header with an extension
KR100823287B1 (ko) 2007-01-03 2008-04-21 삼성전자주식회사 전역 차이 벡터를 이용한 다시점 영상의 부호화, 복호화방법 및 장치
US20080310452A1 (en) * 2007-06-14 2008-12-18 Texas Instruments Incorporated Data link layer headers
JP4976971B2 (ja) 2007-09-28 2012-07-18 コニカミノルタビジネステクノロジーズ株式会社 画像形成システム、画像形成装置及びプログラム
US8059651B2 (en) * 2007-12-17 2011-11-15 Motorola Solutions, Inc. Method for recovering lost header
WO2010082916A1 (en) * 2008-04-28 2010-07-22 Xg Technology, Inc. Header compression mechanism for transmitting rtp packets over wireless links
CN101582067A (zh) * 2008-05-15 2009-11-18 国际商业机器公司 解压压缩文件时减小存储需求的方法和系统
KR101074010B1 (ko) * 2009-09-04 2011-10-17 (주)이스트소프트 블록 단위 데이터 압축 및 복원 방법 및 그 장치
CN101707616B (zh) * 2009-11-27 2013-11-06 中兴通讯股份有限公司 一种用户数据报协议数据包压缩、解压缩的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05313904A (ja) * 1992-05-13 1993-11-26 Kobe Nippon Denki Software Kk プログラムファイル圧縮方式
KR100418349B1 (ko) 2001-09-05 2004-02-11 (주) 한국인프라 데이터 압축 및 복원 방법
KR20040038271A (ko) * 2002-10-31 2004-05-08 주식회사 현대시스콤 파일 압축 및 해제 방법
KR20090068787A (ko) * 2007-12-24 2009-06-29 (주)이스트소프트 압축포맷의 파일 압축과 복원 장치 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113590551A (zh) * 2021-07-30 2021-11-02 广东时谛智能科技有限公司 一种材料数字化扩展格式系统、方法、介质及设备
CN113590551B (zh) * 2021-07-30 2023-09-01 广东时谛智能科技有限公司 一种材料数字化扩展格式系统、方法、介质及设备

Also Published As

Publication number Publication date
US8572054B2 (en) 2013-10-29
US20120271802A1 (en) 2012-10-25
JP2013500676A (ja) 2013-01-07
WO2011034299A3 (ko) 2011-06-30
JP5223037B2 (ja) 2013-06-26
WO2011034299A2 (ko) 2011-03-24

Similar Documents

Publication Publication Date Title
KR101016776B1 (ko) 상위 호환성 보장형 압축 및 복원 방법 및 장치
KR101074010B1 (ko) 블록 단위 데이터 압축 및 복원 방법 및 그 장치
AU2019257524B2 (en) Managing operations on stored data units
KR20120134916A (ko) 저장 장치 및 저장 장치를 위한 데이터 처리 장치
JP2002529849A (ja) データ処理リソースを供給された内蔵システムにおいて実行可能な中間オブジェクトコードプログラムのためのデータ圧縮方法、および、この方法に対応しかつマルチアプリケーションを備えた内蔵システム
KR20150125010A (ko) 저장된 데이터 유닛들의 동작 관리
US9577666B2 (en) Method and system
CA2902869C (en) Managing operations on stored data units
CN105704215A (zh) 文件共享系统及相应的文件发送、接收方法及装置
US9496895B2 (en) Compression method and decompression method
JP2010079535A (ja) データアクセス装置
CN106293542B (zh) 一种文件解压缩的方法及装置
KR100938277B1 (ko) 압축포맷의 파일 압축과 복원 장치 및 방법
JPWO2005101210A1 (ja) データ解析装置およびデータ解析プログラム
JP2004258865A (ja) 情報処理方法
JP5674974B2 (ja) 圧縮データ処理プログラム、圧縮データ編集プログラム
JP2007293461A (ja) データ圧縮プログラム
JP3190855B2 (ja) 圧縮データの復元方式
CN115952133A (zh) 一种富文本数据处理方法、系统及相关设备
CN115033381A (zh) 压缩文件的处理方法、装置、计算机设备及存储介质
JP2017211844A (ja) 情報処理装置、圧縮処理方法、及びプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140205

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170210

Year of fee payment: 9