KR101016776B1 - 상위 호환성 보장형 압축 및 복원 방법 및 장치 - Google Patents
상위 호환성 보장형 압축 및 복원 방법 및 장치 Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
Abstract
상위 호환성 보장형 압축 및 복원 방법 및 장치가 제공된다. 본 발명에 의한 데이터 압축 복원 장치는 압축 데이터 복원 장치는 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 압축 파일 파싱부 및 상기 압축 데이터를 복원하여 원본 파일을 생성하는 원본 파일 생성부를 포함한다. 다만, 상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하는 것이 바람직하다. 또한, 상기 압축 파일 파싱부는 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 필드 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 필드 유닛을 처리하지 않고 넘어가는 것이 바람직하다.
상위 호환성, 압축, 포맷, 복원, 버전
Description
본 발명은 상위 호환성 보장형 압축 및 복원 방법 및 장치에 관한 것이다. 더욱더 자세하게는, 원본 파일을 압축하여 압축 파일을 생성하고, 압축 파일의 압축을 복원하는 방법 및 장치에 있어서, 상위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 압축한 파일을 하위 버전의 압축 파일 포맷을 지원하는 애플리케이션에서 복원하는 경우에도 기본 적인 데이터의 압축 복원은 정상적으로 수행할 수 있도록 하는 압축 및 복원 방법 및 장치에 관한 것이다.
데이터 압축 기술은 데이터를 전송하거나 기억시키는 경우 불필요한 부분을 제거하여 전송시간의 단축이나 기억 공간(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 항에 있어서,상기 헤더는 포함하는 정보에 따라 제 1 헤더, 제 2 헤더, 제 3 헤더로 구분되고, 상기 확장 필드 역시 포함하는 정보에 따라 제 1 확장 필드, 제 2 확장 필드, 제 3 확장 필드 및 제 4 확장 필드로 구분되며,상기 제 1 확장 필드는 상기 제 1 헤더 뒤에 연결되고, 상기 제 2 확장 필드는 상기 제 2 헤더 뒤에 연결되며, 상기 제 3 확장 필드는 상기 제 3 헤더 뒤에 연결되고, 상기 제 4 확장 필드는 상기 압축 파일의 맨 뒤에 위치하는 데이터 압축 장치.
- 제 2 항에 있어서,상기 압축 파일은,압축 포맷을 식별할 수 있도록 하는 상기 제 1 헤더, 상기 제 1 헤더에 연관된 정보를 포함하는 상기 제 1 확장 필드, 상기 압축 파일에 포함된 원본 파일에 대한 정보를 포함하는 상기 제 2 헤더, 상기 제 2 헤더에 연관된 정보를 포함하는 제 2 확장 필드, 상기 원본 파일 내의 각 블록에 대한 정보를 포함하는 상기 제 3 헤더, 상기 제 3 헤더에 연관된 정보를 포함하는 상기 제 3 확장 필드, 상기 제 3 헤더에 대응하는 블록의 상기 압축 데이터, 상기 압축 파일의 종결을 인식 시킬 수 있는 상기 제 4 확장 필드가 순서대로 위치하는 구성을 가지는 데이터 압축 장치.
- 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 압축 파일 파싱부; 및상기 압축 데이터를 복원하여 원본 파일을 생성하는 원본 파일 생성부를 포함하되,상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신 의 길이 데이터를 더 포함하고,상기 압축 파일 파싱부는 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 필드 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 필드 유닛을 처리하지 않고 넘어가는 압축 데이터 복원 장치.
- 제 4 항에 있어서,상기 압축 파일 파싱부는,상기 데이터 식별코드를 파싱 함으로써 상기 헤더 및 상기 확장 필드 유닛의 종류를 식별하는 압축 데이터 복원 장치.
- 제 5 항에 있어서,상기 압축 파일 파싱부는,상기 확장 필드 종결코드가 발견될 때까지 상기 확장 필드 유닛에 포함된 데이터 중 상기 원본 파일 생성에 반영할 데이터를 상기 원본 파일 생성부에 제공하고,상기 원본 파일 생성부는,상기 압축 파일 파싱부가 제공한 상기 확장 필드 유닛에 포함된 데이터를 반영하여 상기 원본 파일을 생성하는 압축 데이터 복원 장치.
- 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 단계; 및상기 압축 데이터를 복원하여 원본 파일을 생성하는 단계를 포함하되,상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하고,상기 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 단계는 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 필드 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 필드 유닛을 처리하지 않고 넘어가는 단계를 포함하는 압축 데이터 복원 방법.
- 압축 대상 데이터에 대하여 압축 알고리즘을 적용하여 압축 데이터를 생성하는 기능; 및상기 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 생성하는 기능을 포함하되,상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하는 것인 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
- 압축 데이터, 상기 압축 데이터에 대한 정보를 포함하는 헤더 및 확장 필드를 포함하는 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 기능; 및상기 압축 데이터를 복원하여 원본 파일을 생성하는 기능을 포함하되,상기 확장 필드는 확장 필드 유닛이 포함될 수 있는 영역이 끝남을 의미하는 확장 필드 종결코드 및 하나 이상의 상기 확장 필드 유닛으로 구성되고, 상기 헤더 및 상기 확장 필드 유닛은 같은 바이트 수의 데이터 식별코드로 시작하며, 상기 확장 필드 유닛은 자신의 데이터 식별코드로부터 일정 바이트 이후에 위치하는 자신의 길이 데이터를 더 포함하고,상기 압축 파일을 파싱 하여 상기 압축 데이터를 추출하는 기능은 상기 파싱을 상기 데이터 식별코드를 기준으로 수행하는 도중 상기 확장 필드 유닛의 상기 데이터 식별코드가 정의 되지 않은 것인 경우, 상기 길이 데이터를 이용하여 해당 확장 필드 유닛을 처리하지 않고 넘어가는 기능을 더 포함하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113590551A (zh) * | 2021-07-30 | 2021-11-02 | 广东时谛智能科技有限公司 | 一种材料数字化扩展格式系统、方法、介质及设备 |
Families Citing this family (9)
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)
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)
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 | 中兴通讯股份有限公司 | 一种用户数据报协议数据包压缩、解压缩的方法及装置 |
-
2009
- 2009-09-21 KR KR1020090089075A patent/KR101016776B1/ko active IP Right Grant
-
2010
- 2010-08-31 WO PCT/KR2010/005882 patent/WO2011034299A2/ko active Application Filing
- 2010-08-31 JP JP2012522771A patent/JP5223037B2/ja not_active Expired - Fee Related
- 2010-08-31 US US13/380,734 patent/US8572054B2/en not_active Expired - Fee Related
Patent Citations (4)
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)
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 |