KR101644145B1 - 고밀도 하이퍼 io 디지털 보유를 위한 장치 및 방법 - Google Patents

고밀도 하이퍼 io 디지털 보유를 위한 장치 및 방법 Download PDF

Info

Publication number
KR101644145B1
KR101644145B1 KR1020160045779A KR20160045779A KR101644145B1 KR 101644145 B1 KR101644145 B1 KR 101644145B1 KR 1020160045779 A KR1020160045779 A KR 1020160045779A KR 20160045779 A KR20160045779 A KR 20160045779A KR 101644145 B1 KR101644145 B1 KR 101644145B1
Authority
KR
South Korea
Prior art keywords
data
block
uncoded
bit
memory
Prior art date
Application number
KR1020160045779A
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 심볼릭 아이오 코퍼레이션
Application granted granted Critical
Publication of KR101644145B1 publication Critical patent/KR101644145B1/ko

Links

Images

Classifications

    • 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
    • G06F3/0611Improving I/O performance in relation to response time
    • 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
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30043LOAD or STORE instructions; Clear instruction
    • 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
    • G06F3/064Management of blocks
    • 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/0614Improving the reliability of 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/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
    • 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/0676Magnetic disk device
    • 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
    • H03M7/3082Vector coding
    • 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
    • H03M7/55Compression Theory, e.g. compression of random number, repeated compression
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/40Specific encoding of data in memory or cache
    • G06F2212/401Compressed data

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)
  • Software Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)
  • Power Sources (AREA)
  • Retry When Errors Occur (AREA)

Abstract

원시 데이터를 인코딩 및 디코딩하기 위한 시스템 및 방법. 인코딩하기 위한 방법은 코딩되지 않은 데이터의 블록을 수신하는 단계, 코딩되지 않은 데이터의 블록을 복수의 데이터 벡터로 분해하는 단계, 복수의 데이터 벡터의 각각을 비트 마커에 매핑하는 단계, 및 코딩되지 않은 데이터의 인코딩된 표현을 산출하도록 메모리에 비트 마커를 저장하는 단계를 포함한다. 인코딩은 코딩되지 않은 데이터의 블록을 디폴트 데이터 및 비-디폴트 데이터로 분해하는 단계, 및 비-디폴트 데이터만을 매핑하는 단계를 더 포함한다. 일부 실시예에 있어서, 비트 마커는 시드 값 및 복제 규칙, 또는 프랙탈 방식 패턴을 포함할 수 있다.

Description

고밀도 하이퍼 IO 디지털 보유를 위한 장치 및 방법{METHOD AND APPARATUS FOR DENSE HYPER IO DIGITAL RETENTION}
관련 출원에 대한 상호-참조
본 출원은 2015년 4월 15일자로 출원된 미국 가특허출원 제62/148,160호의 이익을 주장하며, 그 전체 내용은 참고로 그의 전문이 본 명세서에 편입된다.
1980년대 초에, 신생 컴퓨터 산업은 수학자이자 물리학자인 존 폰 노이만(John Von Neumann)의 분산 이론 컴퓨팅 모델을 편입하였다. 폰 노이만의 이론은 그의 시대를 앞선 방법이었고 퍼스널 컴퓨팅 시대가 현실이 되기 전에 오래 생각되었다. 폰 노이만 모델은 많은 더 작은 컴퓨터가 단일 중앙집중형 값비싼 컴퓨터(예를 들어, 메인프레임)보다 더 높은 컴퓨터 능력을 스케일링 및 산출할 수 있다는 관념을 가능하게 하였다. 디지털 시대가 시작됨에 따라, 퍼스널 컴퓨터는 강력하게 되었을 뿐만 아니라 성장하여 가정 및 사무실에 있게 되어, 애플리케이션의 유용성을 가져왔다. 시간의 흐름에 따라, 퍼스널 컴퓨터(PC)는 단지 데스크톱 디바이스인 것보다 더 커져 데이터 센터로 확장되고 서버로 모핑되었다. 존 폰 노이만이 45년 이전에 이론화한 주지의 분산형 컴퓨팅 모델 및 클라이언트-서버 마켓으로 변환된 데이터 센터 내 서버는 현실이 되었다.
수십년 동안, PC, 랩톱 및 서버는 프로세싱 능력(CPU), 제한된 메모리(예를 들어, 램(RAM)) 및 저장 매체용 하드 디스크(HDA) 디바이스에 대해 RISC, 파워PC(PowerPC), ARM(등록상표) 및 x86 아키텍처를 사용한다고 알려져 왔다. 디지털 시대가 계속 확장됨에 따라서, 컴퓨터가 생성한 컨텐트는 계속 더 풍부해지고, 밀도가 더 커졌고 컴퓨터 프로세싱 능력(CPU), RAM 용량 및 하드 드라이브 밀도에서 해마다의 혁신 및 업그레이드를 몰아갔다. 이러한 접근법에는 계속 수개의 손해가 있다; (1) 모든 컴포넌트가 밀도를 얻으면서 성능을 얻고 있는 것은 아니다[무어의 법칙(Moore's Law)]; (2) 이들 구성요소의 I/O 인터페이스가 동일한 속도가 아니어서, I/O 병목을 생성한다[크라이더의 법칙(Kryder's Law)].
컴퓨터 산업에서의 주지의 업그레이드 기술은 머신으로부터 더 많은 성능을 얻어내기 위해 컴퓨터 메모리(RAM)를 업그레이드하는 것이었다. 반대로, 메모리(RAM) 용량은 수개의 핵심 인자, CPU 프로세서, 실리콘의 나노미터 밀도 한계, 및 전력 소산에 의해 제한되어 왔다. 오늘날의 표준에 의해, 이용가능한 가장 큰 메모리 모듈은 용량이 단지 128GB일 뿐인데 가장 큰 컴퓨터 하드 드라이브가 용량이 6TB인 것과는 대조적이다. 이러한 예에 있어서, 하드 드라이브는 메모리 모듈보다 93.75X 더 크다; 이것은 밀도 문제이다. 대조적으로, 메모리 모듈(즉, RAM)에 대한 최대 입/출력(I/O) 전송 속도는 현재 초당 56.7GB이고, 직렬 배속 SCSI(SAS-II) 인터페이스에 대한 최대 I/O 전송 속도는 현재 초당 750MB이다. 그리하여, 메모리 모듈은 오늘날의 SAS-II 하드 드라이브보다 76.8X 더 고속이다.
가벼운 컴퓨팅 부하 하에서는, 이러한 밀도 대 성능 불균형 또는 싸움을 알아차리지 못하였을 수 있다. 그렇지만, 심한 컴퓨팅 부하 하에서는, 이러한 심각한 밀도 대 성능 불균형을 등화하고 있지 않고 I/O 병목이 불가피하게 일어날 것이다. 이것들은 결국에는 컴퓨팅 연산 전체의 속도를 하드 드라이브의 속도로 늦출 것이다. 이것을 회피하려는 무익한 시도는 그 문제의 시스템을 더 많이 부가하고 더 많은 프로세서 코어에 걸쳐 애플리케이션을 더 분산시키도록 애플리케이션을 재기록하는 것이다.
이러한 본질적 문제에 대한 답은 더 많은 메모리(RAM)를 부가하고 병목을 경감하도록 애플리케이션 알고리즘을 기록하는 것이다.
그럼에도 불구하고, 다음 도전과제는 비용을 구체화한다. 메모리(RAM)는 일반적으로는 RAM 모듈의 밀도에 의존하여 매우 비쌀 수 있다. RAM이 얼마나 비싼가의 현실 세계 예는 현재 이용가능한 가장 큰 이용가능한 메모리 모듈이 64GB라는 것이다. 단일 64GB RAM 모듈은 현재 모듈당 약 $1,000.00 USD로 판매된다. 평균 x86 서버 마더보드는 현재 약 $700.00 USD로 판매되고 16개 또는 24개까지의 RAM 모듈을 사용할 수 있다. 저렴한 x86 마더보드에 16개의 모듈을 완전 실장함으로써 현재 약 $16,000.00 USD의 비용이 들 것이다; 이것은 저렴한 마더보드보다 RAM 비용이 약 20배 더 들게 하고 단지 1TB의 RAM을 내놓을 뿐일 것이다.
무결점 세계에서, 컴퓨터는 메모리(RAM)와 고속 프로세서만을 필요로 할 것이다. 밀도 및 비용의 도전과제가 존재하지 않았으면, 그때는 저장 디바이스 없는 컴퓨터가 가능하였을 것이다. 장애물은 메모리 모듈(RAM)이 어떻게 기능하는가가 된다. 모든 메모리 모듈은 오늘날 휘발성 기술이라고 생각되는데, 컴퓨터 시스템의 전원을 끌 때, 메모리는 전력을 상실하고 메모리가 소거되게 됨을 의미한다. 오늘날의 저장 디바이스 매체는 이러한 문제를 갖지 않는다 - 전원이 제거될 때, 저장 디바이스 매체는 그것들에 기록되었던 정보를 보유하고 있다. 밀도, 성능, 비용 및 휘발성이라는 인자 전부를 조합할 때, CPU 및 RAM만을 갖는 컴퓨터의 현실은 달성불가능하였음을 곧 추론할 수 있다.
필요로 되는 것은 위에서 설명된 관용적 기술의 결함을 극복하기 위한 개선된 컴퓨팅 시스템이다.
본 발명에 따른 실시예는, 관용적 회전 하드 드라이브와 같은 자기 저장 디바이스에 대한 필요성 없이, CPU 및 RAM에 의존하는 저렴한 컴퓨터 컴퓨팅 및 저장 장치를 제공한다. 실시예는 컴퓨팅 및 저장을 둘러싼 상기 장애물을 너머 비약적 발전을 제공하는 컴퓨팅 및 저장 장치 및 시스템을 제공한다. 본 발명에 따른 실시예는 오늘날 존재하는 어느 x86 및 고성능 컴퓨터보다도 76.8X 더 고속인 57.6GB 일정 I/O 레벨을 가질 수 있는 컴퓨터를 가능하게 한다.
본 발명에 따른 실시예는 원시 데이터를 인코딩 및 디코딩하기 위한 시스템 및 방법을 제공한다. 인코딩하기 위한 방법은 코딩되지 않은 데이터의 블록을 수신하는 단계, 코딩되지 않은 데이터의 블록을 복수의 데이터 벡터로 분해하는 단계, 복수의 데이터 벡터의 각각을 비트 마커에 매핑하는 단계, 및 코딩되지 않은 데이터의 인코딩된 표현을 산출하도록 메모리에 비트 마커를 저장하는 단계를 포함한다. 디코딩하기 위한 방법은 메모리로부터 복수의 비트 마커를 검색하는 단계, 복수의 비트 마커에서의 비트 마커를 각각의 데이터 벡터에 매핑하는 단계, 복합 코딩되지 않은 데이터 블록을 산출하도록 각각의 데이터 벡터를 코딩되지 않은 데이터의 블록과 조합하는 단계, 및 코딩되지 않은 복합 데이터 블록을 디코딩된 데이터로서 산출하는 단계를 포함한다.
상기의 것은 본 발명의 일부 태양의 이해를 제공하기 위한 그 개시의 실시예의 단순화된 개요이다. 이 개요는 본 발명 및 그 다양한 실시예의 광범위한 개관도 총망라한 개관도 아니다. 그것은 본 발명의 핵심 또는 중대 구성요소를 식별시키려는 것도 아니고 본 발명의 범위를 상술하려는 것도 아니며, 본 발명의 선택된 개념을 아래에 제시되는 더 상세한 설명으로의 도입으로서 단순화된 형태로 제시하려는 것이다. 인식될 바와 같이, 위에서 제시되거나 또는 아래에서 상세히 설명되는 특징 중 하나 이상을, 단독으로 또는 조합하여, 이용하여 본 발명의 다른 실시예가 가능하다.
본 발명의 상기 및 더 추가적 특징 및 이점은, 특히 다양한 도면에서 유사한 참조 숫자가 유사한 컴포넌트를 지명하도록 이용되는 수반 도면과 함께 취해질 때, 그 실시예의 이하의 상세한 설명을 고려하여 분명하게 될 것이다.
도 1은 당업계에 알려져 있는 바와 같은 퍼스널 컴퓨터(PC) 시스템의 기능적 블록 선도의 예시도;
도 2는 본 발명의 일 실시예에 따른 PC 시스템의 기능적 블록 선도의 예시도;
도 3a는 본 발명의 일 실시예에 따라 데이터를 인코딩하기 위한 방법의 예시도; 및
도 3b는 본 발명의 일 실시예에 따라 데이터를 디코딩하기 위한 방법의 예시도.
여기에서 사용되는 제목은 단지 편성 목적일 뿐이고 청구범위 또는 설명의 범위를 제한하도록 사용됨을 의미하지는 않는다. 본 출원의 곳곳에서 사용될 때, 단어 "할 수 있다"는 의무적 의미(즉, 필수를 의미)보다는 허용적 의미(즉, 잠재성을 가짐을 의미)로 사용된다. 유사하게, 단어 "포함한다" 및 그 활용형은 포함하지만 국한되지는 않음을 의미한다. 이해를 용이하게 하기 위하여, 도면에 공통인 유사한 구성요소를 지명하도록, 가능한 경우, 유사한 참조 부호가 사용되었다. 도면 중 옵션 부분은, 사용 맥락이 달리 나타내지 않는 한, 파선 또는 점선을 사용하여 예시될 수 있다.
이하의 설명에 있어서는, 수많은 특정 상세가 여기에 설명되는 실시예 또는 다른 예들의 철저한 이해를 제공하기 위해 제시된다. 일부 경우에 있어서, 주지의 방법, 프로시저, 컴포넌트 및 회로는, 이하의 설명을 모호하게 하지 않도록, 상세하게 설명되지는 않았다. 더욱, 개시되는 예들은 단지 예시적 목적을 위한 것이며, 개시된 예들을 대신하여 또는 그와 조합하여 다른 예들이 채용될 수 있다. 또한, 여기에 제시되는 예들은, 동등한 효과의 다른 예들이 가능하고 마찬가지이므로, 본 발명의 실시예의 범위를 제한하는 것으로 해석되어서는 안됨을 유념하여야 한다.
여기서 사용될 때, 용어 "모듈"은 일반적으로는 단계, 프로세스 또는 컴포넌트의 논리적 시퀀스 또는 연관을 지칭한다. 예를 들어, 소프트웨어 모듈은 컴퓨터 프로그램 내 연관된 루틴 또는 서브루틴 세트를 포함할 수 있다. 대안으로, 모듈은 실질적으로 자체-포함된 하드웨어 디바이스를 포함할 수 있다. 모듈은 또한 어떠한 소프트웨어 또는 하드웨어 구현과도 무관한 논리적 프로세스 세트를 포함할 수 있다.
기능을 수행하는 모듈은 또한 그 기능을 수행하도록 구성된다고 지칭될 수도 있다, 예를 들어, 데이터를 수신하는 데이터 모듈은 또한 데이터를 수신하도록 구성된다고 설명될 수도 있다. 기능을 수행하기 위한 구성은, 예를 들어: 기능을 수행하는 컴퓨터 코드를 제공 및 실행하는 것; 모듈의 능력을 제어하거나, 제한하거나, 가능 또는 불능으로 하는 프로비저닝가능한 구성 파라미터를 제공하는 것(예를 들어, 플래그 설정, 허가 설정, 결정 포인트에서 사용되는 임계 레벨 설정 등); 옵션을 가능/불능으로 하거나 옵션을 선택하도록 점퍼와 같은 물리적 접속을 제공하는 것; 물리적 통신 링크를 배속시키는 것; 무선 통신 링크를 가능으로 하는 것; 기능을 수행하는 회로에 에너지를 공급하는 것(예를 들어, 데이터를 수신하기 위해 트랜시버 회로에 전력을 제공하는 것) 등을 포함할 수 있다.
도 1은 당업계에 알려져 있는 바와 같은 관용적 컴퓨터 시스템(100)의 기능적 블록 선도를 예시하고 있다. 시스템(100)은, 예를 들어, 인텔(Intel)(등록상표)-호환가능한 아키텍처에 기반하는 컴퓨터 시스템에서 사용될 수 있다. 제조 기술이 진전됨에 따라, 다양한 기능적 컴포넌트는, 칩셋의 세대, 표적 고객의 가격-대-성능 비, 표적 애플리케이션(예를 들어, 모바일 디바이스, 서버 등) 등과 같은 인자에 의존하여, 여러 다른 집적 회로(IC) 구성으로 제조될 수 있다. 소정 기능은 IC(116)와 같은 단일 IC와 같은 다양한 구성으로 조합될 수 있다.
시스템(100)은 제온(Xeon)(등록상표), 인텔 코어 i7(Intel Core i7)(등록상표), i5(등록상표), i3(등록상표), 또는 애슬론64(Athlon64)(등록상표)와 같은 어드밴스트 마이크로 디바이시스(Advanced Micro Devices)(등록상표)(AMD)로부터의 프로세서 등과 같은 범용 프로세서일 수 있는 프로세서(102)를 포함한다. 다른 실시예에 있어서, 프로세서(102)는 그래픽 프로세싱 유닛(GPU)일 수 있다. 도 1의 기능적 블록 선도에 있어서, 여기에서 사용되는 바와 같은 프로세서(102)는 프로세서의 기능을 지칭하고, 그리고/또는 프로세서의 하나 이상의 하드웨어 코어를 지칭할 수 있다. 프로세서(102)는 멀티-GHz 속도로 동작하는 다중 프로세싱 코어를 포함할 수 있다. 프로세서(102)는 캐시 메모리(103)(예를 들어, L1 또는 L2 캐시)를 포함할 수 있다. 프로세서(102)는 또한 운영 체제(104)를 포함하도록 구성 또는 프로그래밍될 수 있다. 운영 체제(104)의 예는 다양한 버전의 윈도우즈(Windows)(등록상표), Mac OS(등록상표), 리눅스(Linux)(등록상표), 및/또는 본 발명의 일 실시예에 따른 운영 체제 또는 운영 체제 확장 등을 포함한다. 등록된 상표 윈도우즈(Windows)는 마이크로소프트(Microsoft)사의 상표이다. 등록된 상표 맥 OS(Mac OS)는 애플(Apple)사의 상표이다. 등록된 상표 리눅스(Linux)는 전-세계 기반으로 마크의 소유자, 리누스 토발즈(Linus Torvalds)의 전용 실시권자, LMI로부터의 이차 라이선스에 따라 사용된다. 운영 체제(104)는 애플리케이션 프로그램(도 1에는 도시되지 않음)이 실행을 포함하는 관용적 기능을 수행한다. 기능적으로, 운영 체제(104)는 프로세서(102)의 일부분인 것으로 예시되어 있지만, 운영 체제(104)의 부분들은 도 1에는 예시되지 않은 비-휘발성 메모리(예를 들어, 하드 디스크)에 물리적으로 상주할 수 있고, 적어도 운영 체제(104)의 부분들은 프로세서(102)에 의한 실행을 위해 필요로 될 때 RAM 메모리 내로 판독될 수 있다.
프로세서(102)는 다양한 기능적 컴포넌트와 인터페이싱하도록 수개의 내부 및 외부 버스를 사용할 수 있다. 시스템(100)은 프로세서(102)를 메모리 컨트롤러(106)에 링크하는 통신 버스(105)를 포함한다. 메모리 컨트롤러(106)는 노스브리지라고 지칭될 수도 있다. 통신 버스(105)는 프론트 사이드 버스(FSB), 불균일 메모리 액세스(NUMA) 버스, EV6 버스, 주변 컴포넌트 상호접속(PCI) 버스 등 중 하나로서 구현될 수 있다.
시스템(100)은 프로세서(102)에 결합된 비휘발성 메모리(122)(예를 들어, CMOS 메모리)를 더 포함한다. CMOS 메모리(122)는 컴퓨터 컴포넌트들 간 저-레벨 통신을 관리하는 것을 돕는 기본 입/출력 시스템(BIOS)(124)을 포함할 수 있고, 파워-온 셀프-테스트를 수행할 컴퓨터 코드의 저장을 포함할 수 있다. 관용적으로, 파워-온 셀프-테스트는 설치된 RAM의 데이터 무결성의 테스트를 포함할 수 있다.
메모리 컨트롤러 허브(106)는 전형적으로는 통신 버스(109)를 통하여 비디오 그래픽 카드(110), 그리고 통신 버스(107)를 통하여 듀얼 인-라인 메모리 모듈(DIMM) 슬롯(108a, 108b)에 설치된 외부 RAM 메모리와 같은 다양한 고속 기능적 컴포넌트와 프로세서(102) 간 통신을 취급한다. 통신 버스(107, 109)는, 주변 컴포넌트 상호접속 익스프레스(PCIe) 또는 가속 그래픽 포트(AGP)와 같은, 고속 인터페이스일 수 있다. 메모리 컨트롤러 허브(106)는 또한, 통신 버스(112)를 통하여, 컨트롤러 허브(114)와 프로세서(102) 간 통신을 취급할 수 있다. 컨트롤러 허브(114)는 또한 사우스브리지, I/O 컨트롤러 허브(ICH), 퓨전 컨트롤러 허브(FCH), 플랫폼 컨트롤러 허브(PCH) 등과 같은 다른 명칭으로 알려져 있을 수 있다. 컨트롤러 허브(114)는 순차로 USB 포트(131), 표준 인터페이스(예를 들어, ATA/SATA, mSATA, SAS 등)를 갖는 디스크 드라이브(132), 이더넷 트랜시버(133), 오디오 포트(134), 다른 PCI 디바이스(135) 등과 같은 부가적 및/또는 더 저속의 I/O 디바이스 또는 인터페이스와의 추가적 통신을 관리한다.
시스템(100)의 일부 구성(예시되지 않음)에 있어서, 프로세서(102)는 메모리 컨트롤러(106)를 우회하고 다이렉트 미디어 인터페이스(DMI)를 통하여 컨트롤러 허브(114)와 직접 통신하도록 설계된다. 그러한 구성은 또한 프로세서(102)와 메모리 컨트롤러(106)의 기능들을 단일 IC(116) 내에 집적할 수 있다. 그러한 구성에 있어서, 컨트롤러 허브(114)는 전형적으로는 플랫폼 컨트롤러 허브(PCH)이다.
DIMM 슬롯(108a, 108b)에 설치된 RAM 메모리를 구성하는 메모리 칩이 매우 높은 최대 액세스 속도(예를 들어, 약 57 기가바이트/초)를 가질 수 있기는 하지만, 통신 버스(109)는 보통은 그러한 고속의 속도를 지원할 수 없다. 예를 들어, 16-레인 슬롯에서의 PCIe 4.0의 속도는 31.508 기가바이트/초로 제한된다. AGP는 PCIe보다 여전히 더 저속이다. 그래서, 통신 버스(107)는 더 고속의 메모리 액세스를 방지하는 병목이다.
메모리 액세스의 병목은 관용적 기술의 하나의 결함이다. 관용적 컴퓨터의 위에서 설명된 다른 결함은 RAM 메모리의 사이즈(전형적으로는 수 기가바이트의 차수)와 관용적 하드 디스크의 저장 사이즈(전형적으로는 수 테라바이트의 차수) 간 저장 사이즈에서의 부정합, 및 관용적 하드 디스크의 저장 사이즈 대비 RAM 메모리의 비교적 작은 저장 사이즈를 포함한다. 관용적 기술의 또 다른 결함은 RAM 메모리의 휘발성 본성이다.
본 발명에 따른 실시예는 RAM이 오늘날 갖고 있는 밀도 문제를 깨뜨린다. 본 발명에 따른 실시예는 저장 유닛용 신규 하드웨어 인터페이스, 및 하드웨어 인터페이스용 신규 드라이버 인터페이스를 제공함으로써 관용적 기술의 이들 결함을 다룬다.
CPU 외에는, RAM이 x86 및 x64 컴퓨팅 시스템에서 가장 고속의 소자이고, 그래서 실시예는 밀도를 얻는 신규 방법과 오늘날의 고속 RAM 성능의 정렬이 가능하게 된다. 이러한 효과가 적용될 때, 그것은 비용 패러다임을 완전히 변화시키고 저비용 메모리 모듈이 고밀도, 고비용 메모리 모듈에 대한 필요성을 대체할 수 있게 한다.
나머지 문제는 표준 메모리 모듈의 휘발성이다. 모든 RAM이 휘발성이므로, 그것은 장기간 저장 매체가 되기에는 적합하지 않다. 실시예는 비-휘발성 RAM(NVRAM) 기술과 유사하지만 다르며, 표준 DIMM 디바이스에서 보이는 휘발성 문제를 피해간다.
본 발명에 따른 실시예는 인텔(Intel)(등록상표) 또는 AMD(등록상표) CPU 프로세서에 의해 작동될 수 있는 기본의 저렴한 x64 마더보드를 사용한다. 마더보드는 비-휘발성 메모리 인식이도록 필요한 지능을 그것에 부여하는 수정된 CME 및 BIOS를 갖는다. 부가적으로, 마더보드는 환경적으로-안전한 저-부하, 저속-드레인 커패시터를 충전하도록 사용될 수 있는 DC 전원 전압(예를 들어, 1.2v, 1.35v, 1.5v 등)을 각각의 메모리 모듈에 제공한다. 이러한 설계는 셧다운 상태(예를 들어, 전력 상실 또는 안전한 셧다운)가 메모리 모듈 내에서 데이터 영속성을 유지할 수 있게 하고, 그리하여 메모리 모듈이 자립가능한 장기간 저장 디바이스이게 한다.
도 2는 본 발명의 일 실시예에 따른 컴퓨터 시스템(200)의 기능적 블록 선도를 예시하고 있다. 도 1에서 이미 설명된 기능적 컴포넌트에는 도 1에 도시된 것과 동일한 참조 번호가 도 2에서 배정된다. 시스템(200)은, Molex(등록상표) 커넥터와 같은 커넥터(208)의 사용에 의해 DIMM 슬롯(예를 들어, DIMM 슬롯(108b))에 물리적으로 결합될 수 있는, 메모리 인터페이스(218)를 포함한다. 메모리 인터페이스(218)는 통신 서브(107) 상에서 관용적 프로토콜의 사용에 의해 DIMM 슬롯(108b)을 통해 프로세서(202)와 통신한다. 메모리 인터페이스(218)는 RAM 저장 유닛(220)에 물리적으로 그리고 통신가능하게 결합된다. 메모리 인터페이스(218)의 기능은 RAM 저장 유닛(220)을 통신 버스(107)에 통신 결합시키는 것, RAM 저장 유닛(220)과 관련된 건강의 상태와 같은 소정 이벤트, 다른 하드웨어 이벤트에 대해 모니터링하는 것, 검출된 신호 또는 하드웨어 이벤트에 기반하여 소정 액션을 취하는 것 등을 포함한다. 메모리 인터페이스(218)의 기능은 또한 메모리 주소를 분해하는 것, 메모리 사이즈를 보고하는 것, I/O 제어, 총 전력 사이클, 시간 내 런 타임을 추적하고 보고하는 것, DIMM의 수를 보고하는 것, 울트라 커패시터(캡) 전류 전압, 버스 준비, 최종 복원 성공 또는 실패, 디바이스 준비, NAND 에어리어의 플래시 상황, 캡 접속됨, 캡 충전 상황, 유효 이미지 존재함, DIMM 이니트 수행됨, 판독된 레지스터와 같은 상황을 보고하는 것 등과 같은 단순 프로세싱 및 하우스키핑 기능을 포함할 수 있다. NAND는 데이터를 보유하는데 전력을 필요로 하지 않는 비-휘발성 IC-기반 저장 기술의 일 유형으로서 알려져 있을 수 있다.
시스템(200)은 프로세서(202)에 결합된 비휘발성 메모리(222)(예를 들어, CMOS 메모리)를 더 포함한다. CMOS 메모리(222)는 컴퓨터 컴포넌트들 간 저-레벨 통신을 관리하는 것을 돕는 기본 입/출력 시스템(BIOS)(224)을 포함할 수 있고, 파워-온 셀프-테스트를 수행할 컴퓨터 코드의 저장을 포함할 수 있다. 관용적으로, 파워-온 셀프-테스트는 설치된 RAM의 데이터 무결성의 테스트를 포함할 수 있다. 본 발명에 따른 실시예는, 예를 들어, 테스트가 미리 결정된 메모리 모듈에 저장된 데이터의 본성과 호환불가능할 것이면 파워-온 셀프-테스트가 적어도 일부의 미리 결정된 메모리 모듈에 대해 테스트를 스킵할 수 있게 되도록, (BIOS(124)의 파워-온 셀프-테스트에 비해) 수정된 파워-온 셀프-테스트를 포함할 수 있다.
본 발명에 따른 실시예는 에너지 소스(219)를 RAM 저장 유닛(220)과 결합시킴으로써 기지의 기술의 RAM 휘발성 단점을 다룬다. 에너지 소스(219)는 메모리 인터페이스(218)와 편입될 수 있다. 에너지 소스(219)는, (예를 들어, 컴퓨팅 시스템(200) 전체에 영향을 미치는 AC 전력 고장, 모바일 시스템(200)에 전력을 공급하는 배터리의 제거, 마더보드 고장 등에 의해) RAM 저장 유닛(220)으로의 외부 전원이 상실되면, 에너지 소스(219)가 RAM 저장 유닛(220)에 저장된 데이터의 무결성을 유지하고 있기 위해 충분한 전력을 제공할 수 있게 되도록, 백업 전력 소스이다.
디스테이지 프로세스(destage process)는 물리적 매체들 간 데이터를 전송하는 것을 수반한다. 본 발명에 따른 실시예는 하드웨어 및 소프트웨어 컴포넌트 양자의 사용에 의해 디스테이지 프로세스를 구현한다. 하드웨어 컴포넌트는 커넥터(208), 메모리 인터페이스(218), 에너지 소스(219) 및 RAM 저장 유닛(220)을 포함한다. 커넥터(208)는 메모리 인터페이스(218)에 동작 전력을 공급하도록 사용되는 미리 결정된 핀을 포함할 수 있다. 메모리 인터페이스(218)는 에너지 소스(219)의 충전 상황, 이상 검출에 대해서 그리고 LED 광(예를 들어, 녹색, 황색, 적색)에 대해서와 같이 검출 및 통지 프로세스를 관리하도록 제한된 프로세싱 능력(예를 들어, 작은 CPU)을 포함할 수 있다. 전력 상실을 나타내면, 스위치는 시스템 동작에 중대한 메모리 인터페이스(218)에서의 데이터(예를 들어, 구성 정보, 시스템 상태 등)의 보호된 저장소로의 전송을 개시하도록 활성화될 수 있다. 디스테이지가 완료되고 나면, 메모리 인터페이스(218)는 감축된-전력 모드에 들어가고, 그리고/또는 전원이 꺼질 수 있다. 디스테이지 프로세스를 수행하기 위한 전력은 적어도 부분적으로 에너지 소스(219)에 의해 공급될 수 있다. 데이터 무결성은 에너지 소스(219)로부터의 전력의 사용에 의해 유지될 수 있다.
커넥터(208)가 그 각각의 DIMM 슬롯(108)으로부터 제거될 때, 커넥터(208) 및/또는 메모리 인터페이스(218)는 커넥터(208)가 미리 결정된 DIMM 슬롯(108)으로부터 제거될 때/제거되면 그 커넥터(208)가 재삽입될 때 동일한 각각의 DIMM 슬롯(108)에 재삽입될 것임을 보장하는 것을 돕는 특징을 포함할 수 있다. 이들 특징은, 틀린 재삽입이 일어나면, 효과적으로 저장된 비트가 스크램블링되고 판독불가능하게 렌더링되게 되도록, 보안 특징으로서 역할할 수 있다.
본 발명에 따른 실시예는 또한 복원 프로시저를 제공한다. 복원 프로시저는 완전 시스템 고장 또는 전력 상실로부터의 복구에 사용가능하다. 예를 들어, 마더보드가 고장나면, 실시예는 저-전력 모드 및 시스템 수리(예를 들어, 마더보드 교체) 또는 컴포넌트의 구조(예를 들어, 새로운 유닛에 배치를 위해 커넥터(208), 메모리 인터페이스(218), 에너지 소스(219) 및 RAM 저장 유닛(220)의 제거)에 들어간다. 복원 프로세스는 메모리 모듈을 그것들이 결함 있는 유닛에서 점유한 동일한 각각의 슬롯 장소에 재설치하는 것을 포함한다. 메모리 모듈은 메모리 모듈이 교체 유닛 내에서 다른 슬롯 장소에 설치되면 사용불가능하게 되도록 물리적 또는 논리적 키잉을 포함할 수 있다. 예를 들어, 다른 슬롯 장소에 설치된 메모리 모듈은 그렇게 삽입된 메모리 모듈로부터 데이터를 판독하려는 시도가 이루어지면 스크램블링된 비트를 산출할 수 있다(즉, "비트 스크램블링"). 서명은 슬롯에서 모듈과 연관된다. 그래서, 예를 들어, 메모리 모듈을 B1 슬롯에 원래 설치되게 하였고 그것을 E1 슬롯에 재삽입하려고 하거나, 또는 그 역으로 하면, 그때 머신은 시작하지 않을 것이다. 데이터 모듈은 슬롯 번호에 매칭된다. 메모리 모듈과 슬롯 번호 간 하드 연관에 대한 근거는 잘못된 슬롯에 설치된 메모리 모듈로 데이터를 복원하려는 시도는 데이터를 파괴할 수 있다는 것이고, 그래서 실시예는 잘못된 슬롯 조건을 검출하고 데이터 액세스를 방지한다.
백업 및 복원 프로시저는 모듈 API(즉, "칩 호출")에 의해 구현될 수 있다. API 기능은 백업 및 복원을 포함할 수 있다. API 기능은 소정의 미리 결정된 이벤트, 예를 들어, "온-트리거" API 호출의 발생시 트리거링될 수 있다. 예를 들어, 애플리케이션 프로그램은, 시스템이 데이터에 위험을 제기할 수 있는 이벤트 또는 조건의 발생에 대해 체크하는, 체크포인트를 포함할 수 있다. 그러한 검출시, NAND 메모리와 같은 보호된 비휘발성 메모리에 소정의 중대한 데이터, 구성 정보, 메타데이터 등을 복사할 수 있는 백업 API가 트리거링될 수 있다. 백업을 트리거링할 수 있는 이벤트의 예는 부팅 프로세스의 개시, 하드웨어 또는 소프트웨어 장애로부터의 복구 등을 포함한다.
시스템 초기화시에, 회로 전력이 공급되고 시스템 컴포넌트는 전력을 받는다. 에너지 소스(219)는 재충전하기 시작할 것이다. 상황 표시자(예를 들어, 녹색, 황색, 적색 등과 같은 다양한 색상의 LED)가 사용자의 시각적 혜택을 위해 제공될 수 있다. 상황 표시자는 제1 스테이지에서의 진행(예를 들어, 체크섬을 수행)을 나타낼 수 있다. 문제가 나타날 수 있으면, 실시예는 대체의 그리고/또는 더 포괄적인 프로시저, 예를 들어, 모든 비트 및 바이트마다 주의깊게 비교하도록 데이터 이미지를 체크하는 것을 진행한다. 관용적 방법을 사용하면, 이것은 NAND 속도 한계에 기인하여 매우 느릴 수 있다, 예를 들어, 10분 부팅. 장애 조건이 검출되고 시스템 멈춤, 모듈 빠짐, 모듈 부정합 등을 야기할 수 있다. 앞서 언급된 바와 같이, 메모리 인터페이스(218) 및 RAM 저장 유닛(220)이 올바르게 교체되지 않거나(예를 들어, 잘못된 슬롯 또는 잘못된 순서), 잘못된 시스템(즉, 필요한 비트마커가 없는 것) 상에 설치되면, 데이터는 복구될 수 없다. 이러한 거동은 강력한 보안을 제공하기 위해 필요로 된다. 별개의 표시자는 API 기능이 완료된 때를 나타낼 수 있다.
전압 및 전력 흐름(예를 들어, 1.2v, 1.35v, 1.5v 등)은 커넥터(208)를 통해 지정된 DIMM 핀 또는 대체 구성요소에 인가되어, 순차로 정규 동작 하에서는 에너지 소스(219)에 에너지를 공급한다. 메모리 인터페이스(218)의 열적 설계는, 예를 들어, 히트 싱크의 사용에 의해 에너지 소스(219)를 냉각시키는 구성요소를 포함할 수 있다.
에너지 소스(219)는 적어도 수개월의 시간 기간 동안 데이터 무결성을 유지하고 있기에 충분한 에너지를 갖고 있을 수 있다. 에너지 소스(219)는 "슈퍼 캡"이라고 알려져 있는 대용량-커패시턴스 커패시터, 예를 들어, 적어도 600 패럿일 수 있다. 대안으로, 에너지 소스(219)는 배터리일 수 있다. 그렇지만, 리튬 배터리와 같은 배터리-기반 에너지 소스는 손상되면 또는 내부 단락-회로 전개 시 파국 고장(예를 들어, 아킹(arcing), 화재)나기 쉽다. 에너지 소스(219)는 에너지 소스(219)가 RAM 저장 유닛(220)에 전력을 공급하고 있지 않을 때 시스템(200)으로의 주 전력에 의해 정규 조건 하에서는 연속적으로 충전될 수 있다.
시스템 상태는, 시스템 상태가 RAM 저장 유닛(220)에 저장되어 있는 한, 복원될 수 있다. 일부 실시예에 있어서, 별개의 백업 에너지 소스는, 시스템 상태 또는 다른 부가적 상태가 전력 정지 동안 보존될 수 있도록, 컴퓨팅 시스템의 다른 부분(예를 들어, 프로세서 및 캐시)에 에너지를 제공할 수 있다. 외부 전원이 복원될 때, 컴퓨팅 시스템은 영속적 또는 상태유지 상태로부터 재시작 또는 복원될 수 있다. 일부 실시예에 있어서, 시스템은 시스템 상태가 백업 에너지 소스에 의해 보존되면서 감축된 전력 소모의 상태에 진입 또는 존재할 수 있다.
메모리 인터페이스(218)의 기능은 에너지 소스(219)의 건강 상태, 예를 들어, 전압 레벨이 시간의 흐름에 따라 또는 고장에 앞서 감쇠할 수 있으므로 전압 레벨을 모니터링하는 것을 더 포함할 수 있다. 그러한 건강 상태는 통신 버스(107)를 통하여 모니터링 시스템에 다시 통신될 수 있다. 메모리 인터페이스(218) 및 RAM 저장 유닛(220)은 캐시 메모리(103)에 대한 수정을 필요로 함이 없이 동작할 수 있다.
시스템(200)은, RAM 저장 유닛(220)으로/으로부터 데이터를 저장 및 검색하도록 적응되는, 운영 체제(204)를 더 포함한다. 운영 체제(204)는 신규 드라이버 인터페이스의 일부분으로서 데이터 적응 모듈(211)을 포함한다. 데이터 적응 모듈(211)은, 여기에서 설명되는 데이터 적응 모듈(211)의 기능을 제공하는, 비트 발생기 소프트웨어를 실행한다. 비트 발생 소프트웨어는 프로세서(202)의 초기화 프로세스 동안 실시간으로 로딩될 수 있다. 관용적 RAM 메모리(예를 들어, DIMM 슬롯(108a)에 결합된 메모리) 및/또는 캐시 메모리(103)는 데이터 적응 모듈(211)의 기능을 지원하도록 사용될 수 있다. 데이터를 저장할 때, 데이터 적응 모듈(211)은 원시 데이터를 인코딩된 데이터로 인코딩하고 그 후 그 인코딩된 데이터를 RAM 저장 유닛(220)에 저장함으로써 RAM 저장 유닛(220)에 저장될 데이터를 적응시킨다. 전형적으로, 미리 결정된 사이즈의 원시 데이터(즉, 미리 결정된 수의 원시 데이터 비트)에 대해, 인코딩된 데이터는 더 작다, 즉, 인코딩된 데이터는 원시 데이터 비트의 수보다 더 작은 수의 인코딩된 데이터 비트로 표현될 수 있다. 데이터 적응 모듈(211)은, 그 원시 형태로 표현되었으면, RAM 저장 유닛(220)의 저장 용량을 초과하였을 소정 양의 데이터를 RAM 저장 유닛(220)에 저장할 수 있다. 예를 들어, 원시 데이터 비트와 등가의 수에 의해 측정되는 바와 같은, RAM 저장 유닛(220)의 실효 저장 용량은 RAM 저장 유닛(220)의 물리적 저장 용량을 초과할 수 있다. 프로세서(202)는, 예를 들어, 서버로서 관용적 기능에 대해 프로세서(202)의 동작을 지원하기 위해 관용적 RAM 메모리 및/또는 캐시 메모리(103)를 이용할 수 있다.
RAM 저장 유닛(220)에 데이터 적응 모듈(211)에 의해 인코딩된 데이터의 전송은, 등가 원시 데이터 비트의 전송에 의해 표현되었으면, 프로세서, RAM 저장 유닛(220), 및 프로세서를 RAM 저장 유닛(220)에 링크하는 통신 버스의 최대 데이터 전송 레이트를 초과하였을 전송 레이트로 일어날 수 있다.
유사하게, RAM 저장 유닛(220)으로부터 저장된 데이터를 검색할 때, 데이터 적응 모듈(211)은 인코딩된 데이터를 원시 데이터로 디코딩하고 그 후, 예를 들어, 프로세서(202) 또는 프로세서(202) 상에서 실행 중인 애플리케이션 프로그램에 의한 다른 사용에 원시 데이터를 제공함으로써 RAM 저장 유닛(220)으로부터 판독된 데이터를 적응시킨다.
데이터 적응 모듈(211)은 데이터를 인코딩하는데 들인 자원(예를 들어, 프로세서(202)에 의한 프로세싱 시간)이 RAM 저장 유닛(220)에 원시 데이터보다는 인코딩된 데이터의 송신에 의해 절약된 자원(예를 들어, 통신 버스(107)) 상에서의 송신 시간)보다 더 작게 되도록 충분히 고속으로 데이터를 적응시킨다. 유사하게, 데이터를 디코딩하는데 들인 프로세싱 시간은 RAM 저장 유닛(220)으로부터 원시 데이터보다는 인코딩된 데이터의 송신으로부터 초래되는 절약 시간보다 더 작다.
본 발명에 따른 실시예는, 생산 중에 있을 때, 플랫폼이 하이브리드 컴퓨팅 및 저장 시스템이 될 수 있게 하는 데이터 적응 모듈(211)에서의 전문 씬 OS를 실행시킬 수 있다. OS는 또한 수개의 가상 머신이 플랫폼 상에서 동시에 실행될 수 있게 하도록 매립형 서버 가상화 플랫폼을 제공할 것이다. 이들 많은 예 중 하나는 10개 내지 15개 이상의 마이크로소프트 윈도우즈 인스턴스를 독립적으로 그리고 동시에 실행하는 단일 시스템일 것이며, 그 모두는 관용적 기지의 가상 컴퓨팅 플랫폼에는 내재하였을 I/O 지연을 경험하지 않는다.
본 발명에 따른 실시예는 또한 복합 데이터베이스 시스템에서 보이는 극도의 고성능 트랜잭션 프로세싱을 실행할 때 사용될 수 있다. 그러한 애플리케이션은 순수히 RAM에서 시스템 데이터베이스의 많은 부분 또는 전체를 실행할 수 있는 가능성을 가능하게 한다.
실시예의 예비 테스트 및/또는 시뮬레이션은 적당하게 구성된 시스템이 그렇게 적은 48GB의 NVRAM으로 4TB 이상의 극도의 고속 RAM 저장을 달성할 수 있음을 나타내고 있다.
원시 데이터를 인코딩하기 위한 그리고 원시 데이터를 산출하도록 프로세싱된 데이터를 디코딩하기 위한 프로세스는, 여기에서 설명되는 바와 같이, 데이터 적응 모듈(211) 내의 모듈들을 인보크함으로써 수행될 수 있다. 이들 모듈은 운영 체제(204), 또는 프로세서(202) 상에서 실행되는 다른 애플리케이션 프로그램에 의해 인보크될 수 있다.
원시 데이터의 인코딩의 일 실시예는, 본 출원과 공동 양도된, Ignomirello로의 미국 특허 출원 공개 공보 제2014/0223118호("'118 공개 공보")에 설명되어 있으며, 그 전체 내용은 참조에 의해 여기에 편입된다.
다른 실시예는, RAM 저장 유닛(220)의 실효 저장 용량이 더 탄력적으로 될 수 있게 하고 실효 저장 용량 및 밀도가 매우 신속히 성장할 수 있게 하는, '118 공개 공보에 설명된 바와 같은, 비트 마커 방법의 사용에 의해 원시 데이터를 인코딩할 수 있다. 저장 용량은, 저장될 수 있는 원시 데이터와 등가의 양이 고정 값이 아니고 원시 데이터의 특성, 예를 들어, 원시 데이터가 비트 마커에 얼마나 잘 매칭하는가에 의존하여 변화될 수 있다는 의미에서, 탄력적일 수 있다. 원시 데이터 용량은 기본 입/출력 시스템(BIOS)과 같은 하위-레벨 소프트웨어에 의해 또는 운영체제에 의해 미리 알려져 있거나 제어되지 않는다. 실시예는 매우 높은 물리적 용량 및 부수적 초고밀도 나노미터 특징 설계의 RAM 칩에 대한 필요성을 감축할 수 있고, 그리하여 RAM 저장 유닛(220)용으로 더 저-밀도의 그리고/또는 더 구세대의 RAM 칩의 사용이 가능하다.
비트 마커는 원시 데이터의 특성 또는 원시 데이터로부터 유도된 특성으로부터, 또는 그로부터 적어도 부분적으로 기반하여 유도될 수 있다. 원시 데이터의 특성은, 예를 들어, 원시 데이터의 유형(예를 들어, 오디오 파일, 그래픽 파일, 비디오 파일, ZIP 파일, 워드 파일, PDF 등), 파일 포맷(예를 들어, 그래픽 파일에 대해서는, 비트맵형, GIF, TIF, JPEG 등), 파일의 컨텐트(예를 들어, MP3 오디오 파일에 대해서는, 그것이 클래식 음악, 재즈, 랩, 록 음악, 오디오 북과 같은 구어 등의 MP3인지), 파일의 속성(예를 들어, MP3 오디오 파일에 대해서는, 비트 레이트, 모노 또는 스테레오, 메타데이터, 총 길이, 사용된 인코더, 다이나믹 레인지, 시간 길이 등), 파일의 통계(예를 들어, 사이즈, 연령, 수정일, 파일 내 바이트 또는 바이트 시퀀스의 확률 분포 등) 등일 수 있다. 예를 들어, MP3 파일은 다른 유형의 파일(예를 들어, JPG 파일)보다 더 자주 소정 원시 데이터 비트들(즉, 바이트의 시퀀스)을 포함하고 있을 수 있고, 그래서 파일이 MP3 파일이라는 지식은 선택되는 비트 마커 및 각각의 비트 마커가 표현하는 원시 데이터 비트에 영향을 미칠 수 있다. 데이터 적응 모듈(211)은, 시간의 흐름에 따라 또는 프로세싱되는 원시 데이터의 양에 걸쳐, 예를 들어, 원시 데이터의 특성이 더 잘 알려져 있게 되거나 통계적 의미에서 정태적이지 않으면 원시 데이터의 특성에서의 변화에 응답하여 원시 데이터를 표현하는데 사용되는 비트 마커를 적응적으로 변화시킬 수 있다.
비트 마커는 원시 데이터의 벡터, 즉, 원시 데이터 비트의 미리 결정된 시퀀스를 표현할 수 있다. 원시 데이터 벡터는 데이터 세그먼트라고 지칭될 수도 있다. 다른 비트 마커들은 다른 길이의 벡터들을 표현할 수 있다. 원시 데이터는 원시 데이터의 벡터들로 분해될 수 있고, 그 후 벡터는 비트 마커에 매핑된다. 일부 실시예에 있어서, 연접된 벡터들은 원시 데이터를 표현할 수 있다. 다른 실시예에 있어서, 벡터는 벡터의 조합(예를 들어, 불 AND, OR, XOR, NAND 등)이 원시 데이터를 표현할 수 있게 되도록 겹칠 수 있다. 원시 데이터는 복수의 계층(예를 들어, 그래픽 파일에 대해서는, R, G, B 또는 C, Y, M, K 또는 다른 논리적 계층 등과 같은 각각의 색상 성분에 대한 별개의 계층)에 의해 표현될 수 있고, 비트 마커는 각각의 색상 계층 내에서 원시 데이터 비트들을 별개로 표현하도록 사용될 수 있다. 일부 실시예에 있어서, 원시 데이터는 다차원 데이터 구조(예를 들어, 2-D 어레이, 3-D 큐브, N-차원 구조 등)로서 표현될 수 있고, 벡터는 다차원 데이터 구조의 인접 연속 부분(예를 들어, 원시 데이터의 2-D 어레이의 직사각형 부분)을 표현할 수 있다. 비트 마커는 벡터 포인터와 원시 벡터 데이터 자체 간 번역하는 번역 함수로서 보일 수 있다.
일부 실시예에 있어서, 비트 마커(예를 들어, 원시 데이터로부터 유도된 특성)의 지식은 원시 데이터에 매칭하도록 모델 벡터를 발생시키기에 충분할 수 있다. 예를 들어, 소정 세트의 원시 비트(예를 들어, 통신 링크로부터 수신된 파일 또는 정보)가 비디오 스트리밍 미디어를 표현한다고 가정하라. 원시 비트가 특정 특성(예를 들어, 프레임 레이트, 해상도, 픽셀 치수, 색상 팔레트 등)을 갖는 비디오 스트리밍 미디어를 표현한다고 추측, 추론, 아니면 구성될 수 있고, 비트 마커는 데이터가 그들 특성의 비디오 스트리밍 미디어임을 나타내도록 선택될 수 있다. 비트 마커가 그들 특성의 비디오 스트리밍 미디어를 표현한다는 지식은 비디오 스트리밍 미디어의 특성, 예를 들어, 프레임 레이트, 해상도, 픽셀 치수, 색상 팔레트 등에 예측적으로 매칭되는 모델 벡터를 발생시키도록 사용될 수 있다. 그러한 일 실시예의 혜택은 비트 마커가 알려져 있고 나면, 예를 들어, 스트리밍 미디어를 실시간으로 프로세싱함으로써 인코딩이 온 더 플라이로 성취될 수 있다는 것이다. 파일(예를 들어, MP3 파일, DVD 비디오 디스크 등) 프로세싱에 대해, 프로세싱은 (예를 들어, 섹션-대-섹션 기반으로) 전체 파일에서 판독할 필요 없이 성취될 수 있고, 비교적 보통 사이즈의 버퍼만을 필요로 한다. 인코딩된 데이터는 그것이 산출될 때 RAM 저장 유닛(220)에 저장될 수 있다.
일부 실시예에 있어서, 객체는 합성 객체, 즉, 하나의 파일 유형의 객체이고 그리고 또 다른 파일 유형을 아우를 수 있다. 예를 들어, 이메일 객체는 그 안에 첨부된 PDF, 첨부된 ZIP 파일, 첨부된 워드 문서, 또 다른 이메일 객체 등과 같은 매립된 객체를 포함할 수 있다. 객체가 합성 객체라는 지식은 객체의 매립된 유형에 대해 그리고 합성 객체의 별개의 부분에 대해 적합한 벡터 및 비트 마커를 선택하는 것을 돕는데 유용할 수 있다.
일부 실시예에 있어서, 원시 데이터는 파티셔닝 이전에 다양한 섹션들 간 유용한 경계를 결정하도록 원시 데이터를 분석함으로써 일-차원 구조로부터 다차원 구조로 변환될 수 있다. 파티셔닝 후 다양한 섹션들은 다차원 구조를 형성한다. 일부 실시예에 있어서, 분석은, 예를 들어, 분석이 신속하게 수행될 수 있음을 보장하는 것을 돕기 위해 이용가능한 프로세서 캐시 사이즈를 고려할 수 있다.
일부 실시예에 있어서, 비트 마커는, 예를 들어, 핵을 임의의 많은 수의 원시 데이터 비트로 확장하도록 시드(seed)로부터 부가적 데이터를 어떻게 산출하는가에 대한 복제 규칙과 함께 핵(즉, 비교적 작은 세트의 시드 원시 데이터 비트, 시작 값, 시작 패턴 등)을 표현할 수 있다. 부가적 데이터를 산출하기 위한 규칙은, 예를 들어, 미리 결정된 수의 시간 또는 미리 결정된 길이로 복제, 프랙탈-기반 복제(fractal-based replication), 런 길이 복제 등을 포함할 수 있다. 그러한 표현은, 예를 들어, 2-D 다차원 원시 데이터 구조의 일부가 프랙탈 패턴에 의해 표현될 수 있으면 특정 사이즈로 렌더링된 프랙탈 패턴으로의 원시 데이터 비트의 프랙탈-기반 매핑에 유용할 수 있다. 실시예에 의해 사용되는 바와 같이, 데이터 인코딩 및 디코딩을 위한 프랙탈 패턴은 다른 차원, 예를 들어, 1-D(선형 패턴), 3-D 등에서의 원시 데이터에 대해 존재할 수 있다.
일부 실시예에 있어서, 비트 마커는, DNA 서브마커를 조합하기 위한 규칙과 함께, 하나 이상의 DNA 서브마커를 표현할 수 있다. 예를 들어, 비트 마커는 V3와 V1의 XOR 적과 연접된 벡터 V4를 표현할 수 있다. 그 후 결과적 비트 마커는 다른 마커를 형성하도록 다른 서브마커와 조합하기 위한 서브마커로서 역할할 수 있다.
처음에, 벡터 및 그들 대응하는 비트 마커는 벡터 필드에 저장될 수 있다. 벡터 필드는 보통은, RAM 저장 유닛(220)과는 따로, 별개의 메모리에 저장된다. 예를 들어, RAM 저장 유닛(220)이 DIMM 소켓(108b)에 결합되면, 그때 벡터 필드는 DIMM 소켓(108a)에 결합된 관용적 DIMM 메모리에 또는 캐시 메모리(103)에 등에 저장될 수 있다. 소정 그룹의 원시 데이터 비트는, 후에 원시 데이터 비트 또는 그 일부를 벡터 필드에서의 벡터에 매핑 또는 상관시키는, 데이터 적응 모듈(211)에 송신될 수 있다. 그 후, 대응하는 비트 마커는 벡터 필드로부터 검색되고 등가 원시 데이터 비트 대신에 RAM 저장 유닛(220)에 저장될 수 있다. 비트 마커는, 원시 데이터가 원시 데이터 비트의 다중 인스턴스를 포함하면, 대응하는 비트 마커가 그것이 원시 데이터 바이트의 다중 인스턴스에 사용된다는 표시로 RAM 저장 유닛(220)에 저장될 수 있게 되도록, 재사용 또는 "증폭"될 수 있다. 증폭은 (예를 들어, 비트 또는 바이트의 수에 의해 측정되는 바와 같은) 비트 마커의 사이즈와 비트 마커의 사용의 인스턴스에 의해 교체된 등가 원시 데이터 비트(또는 바이트)의 사이즈 간 비를 지칭한다.
일부 실시예에 있어서, RAM 저장 유닛(220)은, RAM 저장 유닛(220)의 일부(예를 들어, 하나의 물리적으로 어드레싱가능한 부분)가 비트 마커를 저장할 수 있는 한편 RAM 저장 유닛(220)의 다른 일부가 전통적 메모리로서 동작할 수 있게 되도록, 논리적으로 파티셔닝될 수 있다. 일부 실시예에 있어서, DIMM 슬롯 중 하나(예를 들어, DIMM 슬롯(108b))에 결합된 RAM 저장 유닛(220)은 비트 마커를 저장하도록 동작할 수 있고, 다른 DIMM 슬롯(예를 들어, DIMM 슬롯(108a))에 결합된 RAM 모듈은 관용적 메모리로서 동작할 수 있다.
본 발명에 따른 다른 실시예는 데이터 파퓰레이션 동안 긴 형태 데이터를 짧은 형태 비트 마커로 인코딩하고 요청될 때 온 더 플라이로 짧은 형태 비트 마커를 긴 형태 데이터로 디코딩하는 비트 발생기를 포함한다.
일부 실시예에 있어서, 하나 이상의 패턴이 소정 세트의 원시 데이터에서 분간될 수 있다. 패턴은, 예를 들어, 원시 비트가 "0"과 "1"의 선형 시리즈로서 표현될 때 원시 비트에서의 주기성일 수 있다. 패턴은 또한 원시 데이터가 바이트의 선형 시리즈로서 표현될 때 원시 데이터에서의 주기성, 또는 원시 데이터가 원시 데이터의 다차원 세트로서 표현될 때 다차원 주기성의 형태일 수 있다. 주기성은 원시 데이터에서 미리 결정된 패턴의 빈도로서 표현될 수 있다. 주기성의 특성은 빈도 및 위상을 포함할 수 있다. 다차원 데이터는 각각의 차원에서 독립적으로 특징지어질 수 있다. 주기(또는 반대로 빈도)는 미리 결정된 패턴의 반복 사이클당 원시 비트, 예를 들어, 사이클당 256 비트, 사이클당 65,536 비트로서 표현될 수 있다. 위상은 미리 결정된 패턴의 참조 사본(예를 들어, 사전 사본)에 대한 패턴의 시작 포인트를 나타낼 수 있다. 실시예는 식별 특성(예를 들어, 비트 마커, 지문 등)으로서 빈도 및 위상 특성을 사용할 수 있다.
일부 실시예에 있어서, 일-차원 원시 데이터에서의 주기성은 다차원 원시 데이터로서 모델링 또는 분석될 수 있다. 예를 들어, 심전도를 표현하는 데이터 트레이스는 심박수에 의해 표현된 고유 주기성을 포함한다. 빈도(예를 들어, 분당 박동)는 시간의 흐름에 따라 바뀔 수 있고 심전도의 정확한 형상은 박동마다 바뀔 수 있기 때문에 주기성은 완벽하지 않다. 그럼에도 불구하고, 심전도 트레이스는 다차원 구조로서 모델링될 수 있으며, 하나의 박동(예를 들어, 제1 박동, 또는 참조 박동, 또는 이상적 박동 등)에 대한 심전도는 전압 대 시간의 하나의 평면(즉, 2개의 축)을 표현하고 제3 차원은 서수 박동 번호를 표현한다. 데이터는, 위에서 언급된 빈도와 같은 인자에서의 변화를 처리한 후에, 부분적으로 제3 차원에서의 차이를 분석함으로써 인코딩될 수 있다.
일부 실시예에 있어서, 패턴은 하나 이상의 기저 함수 또는 기저 벡터의 선형 조합을 표현할 수 있다. 수학에 있어서, 기저 함수는 함수 공간에 대한 특정 기저의 원소이다. 함수 공간에서의 모든 연속 함수는 기저 함수의 선형 조합으로서 표현될 수 있다. 유사하게, 벡터 공간에서의 모든 벡터는 기저 벡터의 선형 조합으로서 표현될 수 있다. 기저 벡터는 벡터 공간에서 소정 세트의 선형 독립 벡터로서 알려져 있고, 벡터 공간에서의 모든 다른 벡터는 이들 벡터에 선형 종속적이다.
예를 들어, 원시 데이터는 기저 벡터의 조합으로 분해될 수 있다. 각각의 기저 벡터는 측정가능한 2진 패턴이다. 바람직하게는, 기저 벡터는 기저 벡터에 참조표시하도록 사용되는 비트 마커(즉, 벡터 맵에서의 기저 벡터로의 포인터)에 비해 매우 길어야 하지만, 기저 벡터는 전체 원시 데이터보다는 더 짧을 수 있다. 기저 벡터로서 원시 데이터의 표현은 하나 이상의 데이터 쌍의 (a) 기저 벡터에 대한 비트 마커 및 (b) 기저 벡터의 원시 데이터에서의 시작 위치를 포함할 수 있다. 유전자 풀은, 유전자 풀이 벡터로부터 원시 데이터를 어떻게 복원하는가에 관한 정보를 포함할 수 있다는 점에서, 벡터 맵과 관련된다. 예를 들어, 유전자 풀은 복원될 파일의 유형(예를 들어, MP3 파일)을 나타낼 수 있고, 그 지식은 파일을 복원하는데 유용할 것이다. 조각 그림 맞추기와 유사하게, 벡터는 조각 그림 맞추기의 개개의 조각을 표현할 수 있고, 유전자 풀은 전체 조각 그림 맞추기가 완성될 때 같아 보여야 하는 사진을 표현할 수 있다.
일부 실시예에 있어서, 기저 벡터에 의해 표현되지 않는 원시 데이터는 미리 결정된 값, 예를 들어, 0x00 또는 0xFF 바이트라고 여겨질 수 있다. 이것은 원시 데이터가 미리 결정된 값의 많은 수의 연이은 비트 또는 바이트, 예를 들어, 많은 수의 연이은 0x00 바이트를 갖고 있으면 유용할 수 있다.
일부 실시예에 있어서, 원시 데이터는 적어도 부분적으로 겹칠 수 있는 기저 벡터로 분해될 수 있다. 겹치는 기저 벡터는 디폴트로 불 OR로서 조합될 수 있지만, 다른 불 함수가 사용될 수도 있다(예를 들어, AND, XOR, NAND 등).
일부 실시예에 있어서, 벡터 사전은 원시 데이터의 통계에서의 변화에 적응적일 수 있다. 예를 들어, 저장되는 정보의 유형이 (예를 들어, 비디오로부터 MP3로) 바뀌면, 원시 데이터의 통계도 바뀔 수 있다. 그러한 변화는 소정 기저 벡터가 덜 자주 사용되고 다른 기저 벡터가 더 자주 사용될 수 있음을 의미할 수 있다. 실시예는 사용에서의 변화를 인식하고, 예를 들어, 일부 기저 벡터를 도태시키고 다른 기저 벡터를 추가함으로써 적합하게 기저 사전을 업데이트할 수 있다. 디코더는, 예를 들어, 사전 업데이트의 포함에 의해 벡터 사전에서의 변화를 알고 있을 것이다.
일부 실시예에 있어서, 벡터 사전에서의 엔트리는 여러 다른 그러나 고정된 길이를 가질 수 있다. 길이는 원시 데이터의 통계에 의존한다. 예를 들어, 비트 마커는, 원시 데이터에서 더 공통적으로-발생하는 벡터에 대응하는 비트 마커가 원시 데이터에서 덜 공통적으로-발생하는 벡터에 대응하는 비트 마커보다 더 짧을 수 있도록(즉, 비트 마커가 더 적은 비트를 포함함), 여러 다른 길이를 가질 수 있다. 대안으로, 비트 마커는 동등한 길이를 가질 수 있지만, 일부 비트 마커는 원시 데이터의 더 짧지만 덜 공통적으로-발생하는 벡터를 표현하는 다른 비트 마커보다 원시 데이터의 더 길지만 더 공통적으로-발생하는 벡터에 대응할 수 있다.
일부 실시예에 있어서, 비트 마커는, 고유하게 계층적일 수 있는, 트리 및 리프 패러다임(tree and leaf paradigm)으로 표현될 수 있다. 이러한 패러다임에 있어서, 각각의 비트 마커는 리프에 의해 표현되며, 트리에서의 리프의 위치 및/또는 사이즈는 그것이 표현하는 비트 마커의 특성에 대응한다. 예를 들어, 더 공통적으로-발생하는 비트 마커는 더 작은 리프 또는 트리의 루트에 더 가까운 리프로서 표현될 수 있다. 반대로, 덜 공통적으로-발생하는 비트 마커는 더 큰 리프 또는 트리의 루트로부터 더 먼 리프로서 표현될 수 있다. 목적은 가능한 작은 리프를 사용하는 것, 또는 가능한 루트에 가까운 리프를 사용하는 것, 또는, 리프가 사용되는 횟수 곱하기 리프의 사이즈의 적과 같은, 수학적 함수를 최소화하려는 경향이 있는 리프를 사용하는 것일 수 있다.
데이터를 디코딩하는 것은 인코딩된 데이터를 RAM 저장 유닛(220)으로부터 판독하는 것, 및 그 후 인코딩 프로세스를 역으로 하는 기능을 수행하는 것을 수반한다. 디코딩 기능은 데이터 적응 모듈(211) 내의 모듈들에 의해 제공될 수 있다. 예를 들어, 데이터를 복원하기 위해, 인코딩된 데이터의 블록은 RAM 저장 유닛(220)으로부터 판독될 수 있다. 인코딩된 데이터의 블록은 디코딩 프로세스가 수행되는 동안 고속 메모리에 일시적으로 저장될 수 있다. 디코딩 프로세스는 데이터 적응 모듈(211) 내의 모듈들에 의해 제공될 수 있다. 이들 모듈은 운영체제(204)에 의해 호출될 수 있다.
더 구체적으로, RAM 저장 유닛(220)으로부터 데이터를 검색하고 그것을 디코딩할 때, 데이터 적응 모듈(211)은 원시 데이터를 디코딩된 데이터로 디코딩함으로써 RAM 저장 유닛(220)에 저장될 데이터를 적응시킨다. 관용적 RAM 메모리(예를 들어, DIMM 슬롯(108a)에 결합된 메모리) 및/또는 캐시 메모리(103)는 데이터 적응 모듈(211)의 디코딩 기능을 지원하도록 사용될 수 있다.
도 3a는 본 발명의 일 실시예에 따른 인코딩 프로세스(300)를 예시하고 있다. 프로세스(300)는 운영 체제(204) 및 데이터 적응 모듈(211)에 의해 수행될 수 있다.
프로세스(300)는, 저장될 원시 데이터의 블록이 원시 데이터를 저장하도록 의도하는 애플리케이션 프로그램으로부터 수신되는, 단계(301)에서 시작한다. 원시 데이터는 파일, 스트리밍 미디어, 고정-사이즈 또는 가변-사이즈 블록의 데이터 등의 형태일 수 있다.
다음으로, 프로세스(300)는, 단계(301)에서 수신된 원시 데이터의 부분들이 원시 데이터의 후보 벡터들에 매핑 또는 매칭될 수 있는, 단계(303)로 이행한다. 후보 벡터는 관용적 메모리에 (마커, 벡터) 쌍의 테이블로서 저장될 수 있다. 목표는 적어도 하나의 벡터에 의해 원시 데이터에서의 각각의 비트 또는 바이트를 표현하는 것이다. 0x00 또는 0xFF와 같은 소정 원시 데이터 바이트는 디폴트 값이라고 여겨질 수 있고, 디폴트 값과 동등한 어느 원시 데이터 바이트에 대해서라도, 벡터로 디폴트 바이트를 표현하는 것은 옵션이다.
다음으로, 프로세스(300)는, 단계(303)에서 결정된 벡터가 (마커, 벡터) 쌍의 테이블로부터의 각각의 비트 마커에 매핑될 수 있는, 단계(305)로 이행한다. 비트 마커는 연관된 벡터를 가리키는 지름길이다.
다음으로, 프로세스(300)는, (마커, 벡터) 쌍의 테이블로부터의 비트 마커가 RAM 저장 유닛(220)과 같은 메모리에 저장되는, 단계(307)로 이행한다.
도 3b는 본 발명의 일 실시예에 따른 디코딩 프로세스(350)를 예시하고 있다. 프로세스(350)는 운영 체제(204) 및 데이터 적응 모듈(211)에 의해 수행될 수 있다.
프로세스(350)는, 디코딩될 인코딩된 데이터의 블록이 RAM 저장 유닛(220)과 같은 메모리로부터 판독되는, 단계(351)에서 시작한다. 주소는, 당업자에게 알려져 있는 바와 같은, 가상 주소 조절 방법 및 테이블에 의해 관리될 수 있다.
다음으로, 프로세스(350)는, 비트 마커가 인코딩된 데이터로부터 추출되는, 단계(353)로 이행한다.
다음으로, 프로세스(350)는, 단계(353)로부터의 추출된 비트 마커가 (마커, 벡터) 쌍의 테이블에서 검색되는, 단계(355)로 이행한다.
다음으로, 프로세스(350)는, 단계(353)로부터의 추출된 비트 마커에 대응하여, 원시 데이터 벡터가 (마커, 벡터) 쌍의 테이블에서의 엔트리로부터 추출되는, 단계(357)로 이행한다.
다음으로, 프로세스(350)는, 단계(357)로부터의 추출된 원시 데이터 벡터가 복원된 디코딩된 데이터를 형성하도록 조합되는, 단계(359)로 이행한다. 조합된 원시 데이터 벡터가 복원된 디코딩된 데이터의 전체 예상된 주소 범위 내에서 모든 주소를 커버하지는 않으면, 커버되지 않은 주소는 디코딩된 데이터에서 디폴트 값, 예를 들어, 0x00 또는 0xFF 바이트를 띤다고 여겨질 수 있다.
I/O 능력을 분석할 때, 관용적 시스템은 초당 57.6GB까지의 연속 I/O 속도가 가능할 수 있다. 대조적으로, 본 발명의 일 실시예에 따른 시스템, 인텔 아이비 브리지 2697 v2 프로세서로 테스트된 시스템에 대해, 실시예는 모두 5.4GHz에서 7.6GHz의 부스트 능력을 갖는 24개의 물리적 프로세스 코어 및 40개까지의 하이퍼 스레드형 코어, 6144KB의 L2 프로세서 캐시, 60MB의 L3 프로세서 캐시를 가질 수 있다. 본 실시예 대 어느 다른 아이비 브리지 2697 v2 서버의 성능을 비교하면 76.8X 더 고속의 I/O 증가를 보여준다. 상응하는 성능 이득은, 하스웰 마더보드 아키텍처 및 DDR4 메모리를 포함하는, 다른 컴퓨팅 환경으로 달성가능하다.
전술한 것은 본 발명의 실시예에 관한 것이지만, 본 발명의 다른 그리고 추가적 실시예가 그 기본 범위로부터 벗어남이 없이 고안될 수 있다. 여기서 설명된 다양한 실시예가, 여기에 포함된 범위로부터 벗어남이 없이, 설명된 어느 다른 실시예와도 조합하여 이용될 수 있다고 이해된다. 더욱, 전술한 설명은 본 발명을 개시된 바로 그 형태로 제한하거나 총망라한 것으로 의도되는 것은 아니다. 수정 및 변형은 위 교시에 비추어 가능하거나 본 발명의 실시로부터 취득될 수 있다. 소정 대표적 실시예는 리스트 아이템이 실시예를 대표함 및 리스트가 추가적 실시예를 배제하는 폐쇄형 리스트를 표현하려는 의도가 아님을 나타내는 자구를 포함하는 개방-단 리스트의 사용에 의해 식별될 수 있다. 그러한 자구는 "예를 들어", "등", "와 같은", "예컨대", "기타 등등", "따위" 등 및 주변 맥락으로부터 분명하게 될 바와 같은 다른 자구를 포함할 수 있다.
본 출원의 설명에서 사용된 구성요소, 동작 또는 명령어는 본 발명에 중대하거나 필수적인 것으로, 그처럼 명시적으로 설명되지 않는 한, 그렇게 해석되어서는 안 된다. 또한, 여기서 사용될 때, 부정 관사는 하나 이상의 아이템을 포함하려는 의도이다. 하나의 아이템만이 의도되는 경우, 용어 "하나" 또는 유사한 언어가 사용된다. 더욱, 여기서 사용될 때, 복수의 아이템 및/또는 복수의 아이템 카테고리의 열거가 뒤따르는 용어 "중 어느 하나"는 아이템 및/또는 아이템 카테고리 "중 어느 하나", "중 어느 조합", "중 어느 다수" 및/또는 "중 다수의 어느 조합"을, 개별적으로 또는 다른 아이템 및/또는 다른 아이템 카테고리와 함께, 포함하려는 의도이다.
더욱, 청구범위는 설명된 순서 또는 구성요소로 한정되는 것으로, 그 효과로 서술되지 않는 한, 그렇게 읽혀서는 안 된다. 부가적으로, 어느 청구항에서 용어 "수단"의 사용은 35 U.S.C. §112, ¶6을 들려는 의도이고, 단어 "수단"이 없는 어느 청구항도 그렇게 의도되지 않는다.

Claims (26)

  1. 인코딩 방법으로서,
    코딩되지 않은 데이터의 블록을 수신하는 단계;
    상기 코딩되지 않은 데이터의 블록을 복수의 데이터 벡터로 분해하는 단계;
    상기 코딩되지 않은 데이터의 특성으로부터 비트 마커를 유도하는 단계;
    상기 복수의 데이터 벡터의 각각을 각각의 유도된 비트 마커에 매핑하는 단계; 및
    상기 코딩되지 않은 데이터의 인코딩된 표현을 산출하도록 메모리에 상기 유도된 비트 마커를 저장하는 단계를 포함하는, 인코딩 방법.
  2. 인코딩 방법으로서,
    코딩되지 않은 데이터의 블록을 수신하는 단계;
    상기 코딩되지 않은 데이터의 블록을 디폴트 데이터 및 비-디폴트 데이터(non-default data)로 분해하는 단계;
    상기 비-디폴트 데이터를 복수의 데이터 벡터에 매핑하는 단계;
    상기 복수의 데이터 벡터의 각각을 각각의 비트 마커에 매핑하는 단계; 및
    상기 코딩되지 않은 데이터의 인코딩된 표현을 산출하도록 메모리에 상기 비트 마커를 저장하는 단계를 포함하는, 인코딩 방법.
  3. 인코딩 방법으로서,
    코딩되지 않은 데이터의 블록을 수신하는 단계;
    상기 코딩되지 않은 데이터의 블록을 복수의 데이터 벡터로 분해하는 단계;
    상기 복수의 데이터 벡터의 각각을 각각의 비트 마커에 매핑하는 단계; 및
    상기 코딩되지 않은 데이터의 인코딩된 표현을 산출하도록 메모리에 상기 비트 마커를 저장하는 단계를 포함하되,
    상기 복수의 데이터 벡터 중 적어도 일부는 상기 코딩되지 않은 데이터의 블록을 표현할 때 서로 겹치는, 인코딩 방법.
  4. 인코딩 방법으로서,
    코딩되지 않은 데이터의 블록을 수신하는 단계;
    상기 코딩되지 않은 데이터의 블록을 복수의 데이터 벡터로 분해하는 단계;
    상기 복수의 데이터 벡터의 각각을 각각의 비트 마커에 매핑하는 단계; 및
    상기 코딩되지 않은 데이터의 인코딩된 표현을 산출하도록 메모리에 상기 비트 마커를 저장하는 단계를 포함하되,
    상기 비트 마커는 시드 값(seed value) 및 복제 규칙을 포함하는, 인코딩 방법.
  5. 인코딩 방법으로서,
    코딩되지 않은 데이터의 블록을 수신하는 단계;
    상기 코딩되지 않은 데이터의 블록을 복수의 데이터 벡터로 분해하는 단계;
    상기 복수의 데이터 벡터의 각각을 각각의 비트 마커에 매핑하는 단계; 및
    상기 코딩되지 않은 데이터의 인코딩된 표현을 산출하도록 메모리에 상기 비트 마커를 저장하는 단계를 포함하되,
    상기 비트 마커는 복수의 다른 비트 마커 및 조합 규칙을 포함하는, 인코딩 방법.
  6. 인코딩 방법으로서,
    코딩되지 않은 데이터의 블록을 수신하는 단계;
    상기 코딩되지 않은 데이터의 블록을 복수의 데이터 벡터로 분해하는 단계;
    상기 복수의 데이터 벡터의 각각을 각각의 비트 마커에 매핑하는 단계; 및
    상기 코딩되지 않은 데이터의 인코딩된 표현을 산출하도록 메모리에 상기 비트 마커를 저장하는 단계를 포함하되,
    상기 데이터 벡터는 프랙탈 방식 패턴(fractalized pattern)을 포함하는, 인코딩 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서, 상기 코딩되지 않은 데이터의 블록은 합성 객체를 표현하는, 인코딩 방법.
  8. 제1항 내지 제6항 중 어느 한 항에 있어서, 상기 코딩되지 않은 데이터의 블록은 다-차원 데이터 객체를 표현하는, 인코딩 방법.
  9. 디코딩 방법으로서,
    메모리로부터 복수의 비트 마커를 검색하는 단계;
    상기 복수의 비트 마커에서의 비트 마커를 각각의 데이터 벡터에 매핑하는 단계;
    복합 코딩되지 않은 데이터 블록을 산출하도록 상기 각각의 데이터 벡터를 코딩되지 않은 데이터의 블록과 조합하는 단계; 및
    디코딩된 데이터를 산출하도록 상기 복합 코딩되지 않은 데이터 블록을 디폴트 데이터와 조합하는 단계를 포함하는, 디코딩 방법.
  10. 디코딩 방법으로서,
    메모리로부터 복수의 비트 마커를 검색하는 단계;
    상기 복수의 비트 마커에서의 비트 마커를 각각의 데이터 벡터에 매핑하는 단계;
    복합 코딩되지 않은 데이터 블록을 산출하도록 상기 각각의 데이터 벡터를 코딩되지 않은 데이터의 블록과 조합하는 단계; 및
    상기 코딩되지 않은 복합 데이터 블록을 디코딩된 데이터로서 산출하는 단계를 포함하되,
    상기 복수의 데이터 벡터 중 적어도 일부는 상기 디코딩된 데이터를 형성할 때 서로 겹치는, 디코딩 방법.
  11. 디코딩 방법으로서,
    메모리로부터 복수의 비트 마커를 검색하는 단계;
    상기 복수의 비트 마커에서의 비트 마커를 각각의 데이터 벡터에 매핑하는 단계;
    복합 코딩되지 않은 데이터 블록을 산출하도록 상기 각각의 데이터 벡터를 코딩되지 않은 데이터의 블록과 조합하는 단계; 및
    상기 코딩되지 않은 복합 데이터 블록을 디코딩된 데이터로서 산출하는 단계를 포함하되,
    비트 마커는 시드 값 및 복제 규칙을 포함하는, 디코딩 방법.
  12. 디코딩 방법으로서,
    메모리로부터 복수의 비트 마커를 검색하는 단계;
    상기 복수의 비트 마커에서의 비트 마커를 각각의 데이터 벡터에 매핑하는 단계;
    복합 코딩되지 않은 데이터 블록을 산출하도록 상기 각각의 데이터 벡터를 코딩되지 않은 데이터의 블록과 조합하는 단계; 및
    상기 코딩되지 않은 복합 데이터 블록을 디코딩된 데이터로서 산출하는 단계를 포함하되,
    비트 마커는 복수의 다른 비트 마커 및 조합 규칙을 포함하는, 디코딩 방법.
  13. 디코딩 방법으로서,
    메모리로부터 복수의 비트 마커를 검색하는 단계;
    상기 복수의 비트 마커에서의 비트 마커를 각각의 데이터 벡터에 매핑하는 단계;
    복합 코딩되지 않은 데이터 블록을 산출하도록 상기 각각의 데이터 벡터를 코딩되지 않은 데이터의 블록과 조합하는 단계; 및
    상기 코딩되지 않은 복합 데이터 블록을 디코딩된 데이터로서 산출하는 단계를 포함하되,
    상기 데이터 벡터는 프랙탈 방식 패턴을 포함하는, 디코딩 방법.
  14. 제9항 내지 제13항 중 어느 한 항에 있어서, 상기 디코딩된 데이터는 합성 객체를 표현하는, 디코딩 방법.
  15. 제9항 내지 제13항 중 어느 한 항에 있어서, 상기 디코딩된 데이터는 다-차원 데이터 객체를 표현하는, 디코딩 방법.
  16. 데이터를 인코딩하기 위한 시스템으로서,
    코딩되지 않은 데이터의 블록을 수신하기 위한 데이터 인터페이스; 및
    메모리에 결합된 프로세서를 포함하되, 상기 프로세서는,
    상기 코딩되지 않은 데이터의 블록을 복수의 데이터 벡터로 분해하고;
    상기 코딩되지 않은 데이터의 특성으로부터 복수의 비트 마커를 유도하고;
    상기 복수의 데이터 벡터의 각각을 상기 복수의 비트 마커 중 하나에 매핑하고; 그리고
    상기 코딩되지 않은 데이터의 인코딩된 표현을 산출하도록 상기 메모리에 상기 복수의 비트 마커를 저장하도록 구성된, 데이터를 인코딩하기 위한 시스템.
  17. 데이터를 인코딩하기 위한 시스템으로서,
    코딩되지 않은 데이터의 블록을 수신하기 위한 데이터 인터페이스; 및
    메모리에 결합된 프로세서를 포함하되, 상기 프로세서는,
    상기 코딩되지 않은 데이터의 블록을 디폴트 데이터 및 비-디폴트 데이터로 분해하고;
    상기 비-디폴트 데이터를 복수의 데이터 벡터에 매핑하고;
    상기 복수의 데이터 벡터의 각각을 각각의 비트 마커에 매핑하고; 그리고
    상기 코딩되지 않은 데이터의 인코딩된 표현을 산출하도록 상기 메모리에 상기 각각의 비트 마커를 저장하도록 구성된, 데이터를 인코딩하기 위한 시스템.
  18. 데이터를 인코딩하기 위한 시스템으로서,
    코딩되지 않은 데이터의 블록을 수신하기 위한 데이터 인터페이스; 및
    메모리에 결합된 프로세서를 포함하되, 상기 프로세서는,
    상기 코딩되지 않은 데이터의 블록을 복수의 데이터 벡터로 분해하고;
    상기 복수의 데이터 벡터의 각각을 각각의 비트 마커에 매핑하고; 그리고
    상기 코딩되지 않은 데이터의 인코딩된 표현을 산출하도록 상기 메모리에 상기 각각의 비트 마커를 저장하도록 구성되며,
    상기 복수의 데이터 벡터 중 적어도 일부는 상기 코딩되지 않은 데이터의 블록을 표현할 때 서로 겹치는, 데이터를 인코딩하기 위한 시스템.
  19. 제16항 내지 제18항 중 어느 한 항에 있어서, 상기 코딩되지 않은 데이터의 블록은 합성 객체를 표현하는, 데이터를 인코딩하기 위한 시스템.
  20. 제16항 내지 제18항 중 어느 한 항에 있어서, 상기 코딩되지 않은 데이터의 블록은 다-차원 데이터 객체를 표현하는, 데이터를 인코딩하기 위한 시스템.
  21. 제16항 내지 제18항 중 어느 한 항에 있어서, 상기 비트 마커는 시드 값 및 복제 규칙을 포함하는, 데이터를 인코딩하기 위한 시스템.
  22. 제16항 내지 제18항 중 어느 한 항에 있어서, 상기 비트 마커는 복수의 다른 비트 마커 및 조합 규칙을 포함하는, 데이터를 인코딩하기 위한 시스템.
  23. 제16항 내지 제18항 중 어느 한 항에 있어서, 상기 데이터 벡터는 프랙탈 방식 패턴을 포함하는, 데이터를 인코딩하기 위한 시스템.
  24. 데이터를 디코딩하기 위한 시스템으로서,
    메모리로부터 복수의 비트 마커를 검색하기 위한 데이터 인터페이스; 및
    메모리에 결합된 프로세서를 포함하되, 상기 프로세서는,
    상기 복수의 비트 마커에서의 비트 마커를 각각의 데이터 벡터에 매핑하고;
    복합 코딩되지 않은 데이터 블록을 산출하도록 상기 각각의 데이터 벡터를 코딩되지 않은 데이터의 블록과 조합하고; 그리고
    상기 코딩되지 않은 복합 데이터 블록을 디코딩된 데이터로서 산출하도록 구성되며,
    상기 비트 마커는 복수의 다른 비트 마커 및 조합 규칙을 포함하는, 데이터를 디코딩하기 위한 시스템.
  25. 데이터를 디코딩하기 위한 시스템으로서,
    메모리로부터 복수의 비트 마커를 검색하기 위한 데이터 인터페이스; 및
    메모리에 결합된 프로세서를 포함하되, 상기 프로세서는,
    상기 복수의 비트 마커에서의 비트 마커를 각각의 데이터 벡터에 매핑하고;
    복합 코딩되지 않은 데이터 블록을 산출하도록 상기 각각의 데이터 벡터를 코딩되지 않은 데이터의 블록과 조합하고; 그리고
    상기 코딩되지 않은 복합 데이터 블록을 디코딩된 데이터로서 산출하도록 구성되며,
    상기 데이터 벡터는 프랙탈 방식 패턴을 포함하는, 데이터를 디코딩하기 위한 시스템.
  26. 데이터를 디코딩하기 위한 시스템으로서,
    메모리로부터 복수의 비트 마커를 검색하기 위한 데이터 인터페이스; 및
    메모리에 결합된 프로세서를 포함하되, 상기 프로세서는,
    상기 복수의 비트 마커에서의 비트 마커를 각각의 데이터 벡터에 매핑하고;
    복합 코딩되지 않은 데이터 블록을 산출하도록 상기 각각의 데이터 벡터를 코딩되지 않은 데이터의 블록과 조합하고; 그리고
    상기 코딩되지 않은 복합 데이터 블록을 디코딩된 데이터로서 산출하도록 구성되며,
    상기 복수의 데이터 벡터 중 적어도 일부는 상기 디코딩된 데이터를 형성할 때 서로 겹치는, 데이터를 디코딩하기 위한 시스템.
KR1020160045779A 2015-04-15 2016-04-14 고밀도 하이퍼 io 디지털 보유를 위한 장치 및 방법 KR101644145B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562148160P 2015-04-15 2015-04-15
US62/148,160 2015-04-15
US14/804,175 US9304703B1 (en) 2015-04-15 2015-07-20 Method and apparatus for dense hyper IO digital retention
US14/804,175 2015-07-20

Publications (1)

Publication Number Publication Date
KR101644145B1 true KR101644145B1 (ko) 2016-07-29

Family

ID=55588963

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160045779A KR101644145B1 (ko) 2015-04-15 2016-04-14 고밀도 하이퍼 io 디지털 보유를 위한 장치 및 방법

Country Status (13)

Country Link
US (2) US9304703B1 (ko)
EP (1) EP3082265A1 (ko)
JP (2) JP6224762B2 (ko)
KR (1) KR101644145B1 (ko)
CN (2) CN106055270B (ko)
AR (1) AR104277A1 (ko)
AU (1) AU2016202284B2 (ko)
BR (1) BR102016008182A2 (ko)
CA (1) CA2926692C (ko)
MX (1) MX349483B (ko)
PH (1) PH12016000140A1 (ko)
TW (1) TWI560548B (ko)
WO (1) WO2016168007A1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9228785B2 (en) 2010-05-04 2016-01-05 Alexander Poltorak Fractal heat transfer device
US9304703B1 (en) 2015-04-15 2016-04-05 Symbolic Io Corporation Method and apparatus for dense hyper IO digital retention
US10133636B2 (en) 2013-03-12 2018-11-20 Formulus Black Corporation Data storage and retrieval mediation system and methods for using same
US9817728B2 (en) 2013-02-01 2017-11-14 Symbolic Io Corporation Fast system state cloning
US10061514B2 (en) 2015-04-15 2018-08-28 Formulus Black Corporation Method and apparatus for dense hyper IO digital retention
US10157157B2 (en) * 2016-09-19 2018-12-18 Dell Products, L.P. Component population optimization
US11436087B2 (en) * 2017-05-31 2022-09-06 Everspin Technologies, Inc. Systems and methods for implementing and managing persistent memory
CN111433549A (zh) 2017-07-17 2020-07-17 分形散热器技术有限责任公司 多重分形散热器系统及方法
US10572186B2 (en) 2017-12-18 2020-02-25 Formulus Black Corporation Random access memory (RAM)-based computer systems, devices, and methods
CN108829351B (zh) * 2018-06-04 2021-10-12 成都傲梅科技有限公司 一种mbr磁盘转gpt磁盘的方法
CN108833575B (zh) * 2018-06-29 2020-09-25 中国人民解放军战略支援部队信息工程大学 一种Web通信数据传输方法、服务器、客户端及系统
WO2020142431A1 (en) 2019-01-02 2020-07-09 Formulus Black Corporation Systems and methods for memory failure prevention, management, and mitigation
CN110611508B (zh) * 2019-09-02 2020-07-03 中国石油天然气集团有限公司 一种用于石油钻井的基于组合码的编码和解码方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6614369B1 (en) * 2002-03-05 2003-09-02 International Business Machines Corporation DC balanced 7B/8B, 9B/10B, and partitioned DC balanced 12B/14B, 17B/20B, and 16B/18B transmission codes
US6621935B1 (en) * 1999-12-03 2003-09-16 Microsoft Corporation System and method for robust image representation over error-prone channels
US20140223118A1 (en) * 2013-02-01 2014-08-07 Brian Ignomirello Bit Markers and Frequency Converters

Family Cites Families (410)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3016527A (en) 1958-09-04 1962-01-09 Bell Telephone Labor Inc Apparatus for utilizing variable length alphabetized codes
FR2076559A5 (ko) 1970-01-20 1971-10-15 Fortin Bernard
AT328113B (de) 1974-02-19 1976-03-10 Voest Ag Einrichtung zur positionseinstellung eines v-formigen zwischengefasses bei zweistrangigen stranggiessanlagen
GB1564563A (en) 1977-05-25 1980-04-10 Int Computers Ltd Data sotrage apparatus
US4420767A (en) 1978-11-09 1983-12-13 Zilog, Inc. Thermally balanced leadless microelectronic circuit chip carrier
USD264844S (en) 1979-06-28 1982-06-08 Inteo Incorporated Electronic system housing for printed circuit boards and power source
US4286256A (en) 1979-11-28 1981-08-25 International Business Machines Corporation Method and means for arithmetic coding utilizing a reduced number of operations
US4560977A (en) * 1982-06-11 1985-12-24 Mitsubishi Denki Kabushiki Kaisha Vector quantizer
US4635141A (en) 1982-10-13 1987-01-06 United States Design Corporation Method and apparatus for storing data on magnetic or optical media
JPS618597A (ja) 1984-06-21 1986-01-16 Sumitomo Chem Co Ltd 蓄熱材パネル用中空板状体および蓄熱材パネルの製造方法
JPS62111837U (ko) 1985-12-28 1987-07-16
CA59272S (en) 1986-08-21 1987-09-08 Mitel Corp Cartridge
USD308671S (en) 1988-03-15 1990-06-19 International Business Machines Corporation Panel for storage devices in a data processing system
USD319765S (en) 1988-09-26 1991-09-10 Vermont American Corporation V-shaped cup hook driver
AU5702290A (en) 1989-06-12 1990-12-13 Otis Elevator Company Elevator electroluminescent (el) display system
FR2668867B1 (fr) 1990-11-02 1993-01-29 Burger Jacques Procede de codage binaire a taux de basculement des elements binaires sensiblement uniforme, et procedes d'incrementation et de decrementation correspondants.
JPH04111095U (ja) * 1991-03-04 1992-09-28 三洋電機株式会社 メモリバツクアツプ回路
US5168171A (en) 1991-03-04 1992-12-01 Tracewell Larry L Enclosure for circuit modules
JP2582489B2 (ja) * 1991-08-21 1997-02-19 株式会社テック 電子機器の停電回復装置
GB9204360D0 (en) * 1992-02-28 1992-04-08 Monro Donald M Fractal coding of data
USD341866S (en) 1992-05-26 1993-11-30 Ross Peter L V-shaped personal floatation device
JP3069819B2 (ja) 1992-05-28 2000-07-24 富士通株式会社 ヒートシンク並びに該ヒートシンクに用いるヒートシンク取付具及びヒートシンクを用いた可搬型電子装置
USD353182S (en) 1992-09-03 1994-12-06 Funrise Toys Ltd. Sling shot handle
JPH0787497A (ja) * 1993-09-09 1995-03-31 Canon Inc 画像の符号化方法および符号化装置
USD357461S (en) 1993-11-30 1995-04-18 Motorola, Inc. Front panel for electronic equipment
USD366246S (en) 1994-02-24 1996-01-16 Motorola, Inc. Front panel for enclosing electronic circuit packs
USD362243S (en) 1994-03-17 1995-09-12 Emc Corp. Electronics cabinet fold-up computer storage tray
MY112145A (en) 1994-07-11 2001-04-30 Ibm Direct attachment of heat sink attached directly to flip chip using flexible epoxy
US5784611A (en) 1994-12-19 1998-07-21 Seagate Technology, Inc. Device and process for in-system programming electrically erasable and programmable non-volatile memory
US5878240A (en) 1995-05-11 1999-03-02 Lucent Technologies, Inc. System and method for providing high speed memory access in a multiprocessor, multimemory environment
USD372909S (en) 1995-06-28 1996-08-20 Motorola, Inc. Computer backpanel portion
JPH09116764A (ja) * 1995-10-19 1997-05-02 Konica Corp 画像処理装置
USD377482S (en) 1995-11-13 1997-01-21 Eccs, Inc. Enclosure for a disk drive
USD391938S (en) 1995-11-23 1998-03-10 Exponent Italia S.R.L. Computer-based organizer with loudspeaker support brackets
USD397097S (en) 1995-12-11 1998-08-18 Mcnally Mark P Electrol magnetic interference shield
US5748921A (en) 1995-12-11 1998-05-05 Advanced Micro Devices, Inc. Computer system including a plurality of multimedia devices each having a high-speed memory data channel for accessing system memory
US5797143A (en) 1996-01-29 1998-08-25 Buxton; Bradly J. Vest pack with back and neck supports
JP3277792B2 (ja) 1996-01-31 2002-04-22 株式会社日立製作所 データ圧縮方法および装置
USD396690S (en) 1996-02-23 1998-08-04 3Com Limited Enclosure for electronic circuitry
US5818877A (en) 1996-03-14 1998-10-06 The Regents Of The University Of California Method for reducing storage requirements for grouped data values
US5890794A (en) 1996-04-03 1999-04-06 Abtahi; Homayoon Lighting units
US5751549A (en) 1996-06-26 1998-05-12 Sun Microsystems, Inc. Hard disk drive assembly which has a plenum chamber and a fan assembly that is perpendicular to a rack chamber
USD382880S (en) 1996-07-09 1997-08-26 Motorola, Inc. Front panel for messaging equipment
US6297742B1 (en) 1996-08-22 2001-10-02 Csi Technology, Inc. Machine monitor with status indicator
US5867180A (en) 1997-03-13 1999-02-02 International Business Machines Corporation Intelligent media memory statically mapped in unified memory architecture
US6401807B1 (en) 1997-04-03 2002-06-11 Silent Systems, Inc. Folded fin heat sink and fan attachment
US5923860A (en) 1997-06-25 1999-07-13 Compaq Computer Corp. Apparatus, method and system for remote peripheral component interconnect bus using accelerated graphics port logic circuits
US6067225A (en) 1997-08-04 2000-05-23 Sun Microsystems, Inc. Disk drive bracket
US6465969B1 (en) 1997-08-04 2002-10-15 Lumimove, Inc. Electroluminescent display intelligent controller
US6052785A (en) 1997-11-21 2000-04-18 International Business Machines Corporation Multiple remote data access security mechanism for multitiered internet computer networks
USD409171S (en) 1998-03-19 1999-05-04 Commercial & Industrial Design Co., Inc. Computer rack housing
USD407079S (en) 1998-03-19 1999-03-23 Commercial & Industrial Design Company, Inc. Computer hard drive tray
US6182601B1 (en) 1998-05-01 2001-02-06 Floscan Instrument Company, Inc. Meter with microprocessor control of pointer and multi-status indicator
JP3991249B2 (ja) * 1998-07-15 2007-10-17 ソニー株式会社 符号化装置および符号化方法、復号装置および復号方法、情報処理装置および情報処理方法、並びに記録媒体
JP2000059227A (ja) 1998-08-07 2000-02-25 Matsushita Electric Ind Co Ltd 符号化/復号化装置、及び符号化/復号化方法
USD423479S (en) 1998-09-24 2000-04-25 International Business Machines Corporation Disk drive tray bezel
USD415747S (en) 1998-09-28 1999-10-26 Commercial & Industrial Design Co., Inc. Combined drive tray face plate and locking arm
USD421428S (en) 1998-10-26 2000-03-07 Commercial & Industrial Design Co., Inc. Stackable drive tray support bracket
US6243831B1 (en) 1998-10-31 2001-06-05 Compaq Computer Corporation Computer system with power loss protection mechanism
US6326781B1 (en) 1999-01-11 2001-12-04 Bvr Aero Precision Corp 360 degree shaft angle sensing and remote indicating system using a two-axis magnetoresistive microcircuit
US6297753B1 (en) 1999-01-29 2001-10-02 Victor Company Of Japan, Ltd. Eight-to-fifteen modulation using no merging bit and optical disc recording or reading systems based thereon
USD439566S1 (en) 1999-02-19 2001-03-27 Inet Technologies, Inc. Circuit card cage
USD422993S (en) 1999-03-01 2000-04-18 General Instrument Corporation Front bezel for a digital cable terminal
USD431241S (en) 1999-03-01 2000-09-26 Sun Microsystems, Inc. Computer subsystem enclosure
TW419581B (en) 1999-03-08 2001-01-21 Acer Comm & Multimedia Inc Rotary encoder
JP2000029636A (ja) * 1999-03-12 2000-01-28 Fujitsu Ltd I/oサブシステム及びi/oサブシステムにおけるデ―タ記憶、メモリイニシャライズ方法
JP2000284138A (ja) 1999-03-31 2000-10-13 Fujikura Ltd 光ファイバ用v溝
US6785815B1 (en) 1999-06-08 2004-08-31 Intertrust Technologies Corp. Methods and systems for encoding and protecting data using digital signature and watermarking techniques
US6359334B1 (en) 1999-06-08 2002-03-19 Micron Technology, Inc. Thermally conductive adhesive tape for semiconductor devices and method using the same
US6560599B1 (en) 1999-06-30 2003-05-06 Microsoft Corporation Method and apparatus for marking a hash table and using the marking for determining the distribution of records and for tuning
GB2353611B (en) 1999-08-24 2004-03-17 Ibm Disk image backup/restore with data preparation phase
WO2001016756A1 (fr) 1999-08-31 2001-03-08 Fujitsu Limited Systeme de fichier et procede d'acces a un fichier
US6829695B1 (en) 1999-09-03 2004-12-07 Nexql, L.L.C. Enhanced boolean processor with parallel input
US6483439B1 (en) 1999-10-14 2002-11-19 Star Headlight And Lantern Co., Inc. Multi color and omni directional warning lamp
JP2001135102A (ja) 1999-11-05 2001-05-18 Zeni Lite Buoy Co Ltd Led式灯具
US6626557B1 (en) 1999-12-29 2003-09-30 Spx Corporation Multi-colored industrial signal device
US6904484B1 (en) 2000-03-30 2005-06-07 Intel Corporation Low pin count (LPC) firmware hub recovery
US7030837B1 (en) 2000-04-24 2006-04-18 Microsoft Corporation Auxiliary display unit for a computer system
US7550935B2 (en) 2000-04-24 2009-06-23 Philips Solid-State Lighting Solutions, Inc Methods and apparatus for downloading lighting programs
US20050099319A1 (en) 2000-08-29 2005-05-12 Hutchison Michael C. Traffic signal light with integral sensors
US6373695B1 (en) 2000-09-22 2002-04-16 Mace Tech Corp. Mobile rack mounting structure for computer
US6605778B2 (en) 2000-10-02 2003-08-12 Siemens Aktiengesellschaft Circuit carrier, in particular printed circuit board
US7274697B2 (en) 2000-11-16 2007-09-25 Tensilica, Inc. Fast IP route lookup with 16/K and 16/Kc compressed data structures
DE10060574A1 (de) 2000-12-06 2002-06-13 Heidenhain Gmbh Dr Johannes Multiturn-Codedrehgeber
USD471912S1 (en) 2001-01-16 2003-03-18 Richard J. Camarota Laptop port
JP3661594B2 (ja) 2001-02-07 2005-06-15 ソニー株式会社 データストリーム生成装置とその方法、可変長符号化データストリーム生成装置とその方法、および、カメラシステム
JP4817510B2 (ja) * 2001-02-23 2011-11-16 キヤノン株式会社 メモリコントローラ及びメモリ制御装置
USD462075S1 (en) 2001-06-29 2002-08-27 Intel Corporation Server face plate
US6442031B1 (en) 2001-07-06 2002-08-27 Cheng Kuo Liu Retaining structure for industrial console
US20030018759A1 (en) 2001-07-17 2003-01-23 International Business Machines Corporation Method and system for performing computer system cloning
US6396027B1 (en) 2001-07-31 2002-05-28 Tsann Kuen Usa, Inc. Pressing iron with electroluminescent temperature status indicator
US6494780B1 (en) 2001-09-14 2002-12-17 Cary Products Company, Inc. Louver with slidable face plate
US8290160B1 (en) 2001-10-17 2012-10-16 Appalachian Technologies Corporation of Pennsylvania Method and apparatus for secured facsimile transmission
US6541921B1 (en) 2001-10-17 2003-04-01 Sierra Design Group Illumination intensity control in electroluminescent display
US20030115447A1 (en) 2001-12-18 2003-06-19 Duc Pham Network media access architecture and methods for secure storage
CA2364820A1 (en) 2001-12-11 2003-06-11 Ibm Canada Limited-Ibm Canada Limitee Variable length encoding and decoding of ascending numerical sequences
US8639849B2 (en) 2001-12-17 2014-01-28 Sutech Data Solutions Co., Llc Integrated circuits for high speed adaptive compression and methods therefor
US6926972B2 (en) 2002-01-10 2005-08-09 Basf Corporation Method of providing an electroluminescent coating system for a vehicle and an electroluminescent coating system thereof
USD475061S1 (en) 2002-02-08 2003-05-27 James Jyh Chian Huang Fixing device for removable hard drive
US6644481B2 (en) 2002-02-11 2003-11-11 Hewlett-Packard Development Company, L.P. Apparatus and method for rackmounting a chassis
AU2003213722A1 (en) 2002-03-21 2003-10-08 David J. Payne Method and system for storing and retrieving data using hash-accessed multiple data stores
US6674908B1 (en) * 2002-05-04 2004-01-06 Edward Lasar Aronov Method of compression of binary data with a random number generator
JP4304360B2 (ja) 2002-05-22 2009-07-29 日本電気株式会社 音声符号化復号方式間の符号変換方法および装置とその記憶媒体
TW527053U (en) 2002-07-26 2003-04-01 Hon Hai Prec Ind Co Ltd Computer enclosure
USD490083S1 (en) 2002-08-20 2004-05-18 Commercial & Industrial Design Co., Inc. Computer hard drive tray
US7433824B2 (en) * 2002-09-04 2008-10-07 Microsoft Corporation Entropy coding by adapting coding between level and run-length/level modes
US6785133B2 (en) 2002-09-27 2004-08-31 International Business Machines Corporation High density modular input/output package in a data processing system
KR100989686B1 (ko) * 2002-10-24 2010-10-26 에이전시 포 사이언스, 테크놀로지 앤드 리서치 데이터 소스에 의해 생성된 비트 심볼들을 처리하기 위한 방법 및 장치, 컴퓨터 판독가능 매체, 컴퓨터 프로그램 요소
US7111961B2 (en) 2002-11-19 2006-09-26 Automatic Power, Inc. High flux LED lighting device
USD483374S1 (en) 2002-12-02 2003-12-09 Chun Long Metal Co., Ltd. Removable hard drive frame
US7371975B2 (en) 2002-12-18 2008-05-13 Intel Corporation Electronic packages and components thereof formed by substrate-imprinting
US7065619B1 (en) 2002-12-20 2006-06-20 Data Domain, Inc. Efficient data storage system
US7298535B2 (en) 2003-01-03 2007-11-20 Tommi Lennart Kuutti Digital situation indicator
US20040143733A1 (en) 2003-01-16 2004-07-22 Cloverleaf Communication Co. Secure network data storage mediator
US20040190210A1 (en) * 2003-03-26 2004-09-30 Leete Brian A. Memory back up and content preservation
US7516272B2 (en) 2003-03-28 2009-04-07 Emc Corporation Midplane-independent implementations of data storage system enclosures
US7383378B1 (en) 2003-04-11 2008-06-03 Network Appliance, Inc. System and method for supporting file and block access to storage object on a storage appliance
US8209680B1 (en) 2003-04-11 2012-06-26 Vmware, Inc. System and method for disk imaging on diverse computers
US8322040B2 (en) 2003-05-23 2012-12-04 Exceptional Ip Holdings Llc Handle including two handgrips and/or a hand alignment mechanism
USD483378S1 (en) 2003-05-28 2003-12-09 Panasas, Inc. Single door computer blade cover
GB0312569D0 (en) * 2003-06-02 2003-07-09 Accelerated Logic B V Data storage device
US6956745B2 (en) 2003-06-27 2005-10-18 International Business Machines Corporation Handling system for use with a blade in a blade server system
US7143251B1 (en) 2003-06-30 2006-11-28 Data Domain, Inc. Data storage using identifiers
US6889908B2 (en) 2003-06-30 2005-05-10 International Business Machines Corporation Thermal analysis in a data processing system
US7996361B1 (en) 2003-06-30 2011-08-09 Symantec Operating Corporation Method and system of providing replica files within a fileset
US7174436B1 (en) 2003-10-08 2007-02-06 Nvidia Corporation Method and system for maintaining shadow copies of data using a shadow mask bit
US7849063B2 (en) 2003-10-17 2010-12-07 Yahoo! Inc. Systems and methods for indexing content for fast and scalable retrieval
DE10349266B4 (de) 2003-10-20 2015-06-18 Trützschler GmbH & Co Kommanditgesellschaft Verwendung einer Vorrichtung zur optischen Signalanzeige, bei der mindestens zwei Lichtquellen als Leuchtdioden (LED) vorhanden sind
US7120743B2 (en) 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
JP4723178B2 (ja) 2003-10-28 2011-07-13 エルピーダメモリ株式会社 メモリシステム及びメモリモジュール
US20070164875A1 (en) 2003-11-21 2007-07-19 Fredericks Thomas M LED aircraft anticollision beacon
USD503717S1 (en) 2003-11-28 2005-04-05 Mitsumi Electric Co., Ltd. Rotary encoder
US7145776B2 (en) 2003-12-22 2006-12-05 Emc Corporation Midplane-less data storage enclosure
DE102004010145A1 (de) 2004-02-27 2005-09-15 H.C. Starck Gmbh Verformbare elektrolumineszierende Anordnung
USD529915S1 (en) 2004-03-15 2006-10-10 Xyratec Technology Limited Disk drive carrier
JP2005267038A (ja) 2004-03-17 2005-09-29 Hitachi Ltd ストレージシステムの運用方法
USD535298S1 (en) 2004-08-23 2007-01-16 Stealthdrive Llc Face plate for portable hard disk drive container
US7064265B2 (en) 2004-03-19 2006-06-20 Stealthdrive Llc Reduced-gasket EMI-shielding solutions for hard disk drives and other computer components
US7464581B2 (en) 2004-03-29 2008-12-16 Tokyo Electron Limited Vacuum apparatus including a particle monitoring unit, particle monitoring method and program, and window member for use in the particle monitoring
TWM255963U (en) 2004-04-06 2005-01-21 Tatung Co Improved structure of supporting stand
US7231560B2 (en) 2004-04-16 2007-06-12 Via Technologies, Inc. Apparatus and method for testing motherboard having PCI express devices
EP1600559A1 (en) 2004-05-26 2005-11-30 3M Innovative Properties Company Carriageway-marking device and system
US20050288800A1 (en) 2004-06-28 2005-12-29 Smith William D Accelerating computational algorithms using reconfigurable computing technologies
US7290116B1 (en) 2004-06-30 2007-10-30 Sun Microsystems, Inc. Level 2 cache index hashing to avoid hot spots
US8444436B1 (en) 2004-07-01 2013-05-21 Amphenol Corporation Midplane especially applicable to an orthogonal architecture electronic system
KR100630690B1 (ko) 2004-07-08 2006-10-02 삼성전자주식회사 열 소산 경로를 구비한 멀티 칩 패키지
CA2574101C (en) 2004-07-19 2013-06-25 Eberle Design, Inc. Methods and apparatus for an improved signal monitor
JP5432450B2 (ja) 2004-07-29 2014-03-05 オセ−テクノロジーズ ビーブイ エントロピー符号化を利用したカラー画像データの可逆圧縮
USD513751S1 (en) 2004-08-05 2006-01-24 International Business Machines Corporation Disk drive bezel tray
US7463163B2 (en) 2004-08-10 2008-12-09 Inventec Corporation Visualized computer platform operating condition displaying device
US20060049956A1 (en) 2004-09-09 2006-03-09 Edwards Systems Technology, Inc. Explosion-proof multi-status multi-color visual indicator
US7457800B2 (en) 2004-10-06 2008-11-25 Burnside Acquisition, Llc Storage system for randomly named blocks of data
US20060073709A1 (en) 2004-10-06 2006-04-06 Teradyne, Inc. High density midplane
US20120285738A1 (en) 2004-12-07 2012-11-15 Paul Douglas Cochrane Shielding Polymers Formed into Lattices Providing EMI Protection for Electronics Enclosures
US7330322B2 (en) 2005-01-28 2008-02-12 Seagate Technology Llc Utilizing a combination of physical tracks and virtual tracks to store data on a data storage medium
EP1845654A1 (en) 2005-01-31 2007-10-17 Matsushita Electric Industrial Co., Ltd. Backup management device, backup management method, computer program, recording medium, integrated circuit, and backup system
US7360104B2 (en) 2005-01-31 2008-04-15 Hewlett-Packard Development Company, L.P. Redundant voltage distribution system and method for a memory module having multiple external voltages
USD656250S1 (en) 2005-03-11 2012-03-20 Connor Sport Court International, Llc Tile with wide mouth coupling
JP4802527B2 (ja) 2005-03-18 2011-10-26 株式会社日立製作所 計算機システム
US20060212644A1 (en) 2005-03-21 2006-09-21 Acton John D Non-volatile backup for data cache
USD530704S1 (en) 2005-04-04 2006-10-24 Pelco Front plate for an electronics enclosure
US7617370B2 (en) 2005-04-29 2009-11-10 Netapp, Inc. Data allocation within a storage system architecture
US8054882B2 (en) 2005-05-13 2011-11-08 Streaming Networks (Pvt.) Ltd. Method and system for providing bi-directionally predicted video coding
US7492607B2 (en) 2005-06-08 2009-02-17 Lineage Power Corporation Ejector faceplate for electronics module
CN2809708Y (zh) 2005-06-17 2006-08-23 鸿富锦精密工业(深圳)有限公司 数据存储器防护装置
US7357530B2 (en) 2005-07-15 2008-04-15 Bwt Property, Inc. Lighting apparatus for navigational aids
US7921088B1 (en) 2005-07-22 2011-04-05 X-Engines, Inc. Logical operations encoded by a function table for compressing index bits in multi-level compressed look-up tables
US7827345B2 (en) 2005-08-04 2010-11-02 Joel Henry Hinrichs Serially interfaced random access memory
US20070081320A1 (en) 2005-08-08 2007-04-12 Mark Gilbert Electroluminescent illumination for audio components
US7587314B2 (en) * 2005-08-29 2009-09-08 Nokia Corporation Single-codebook vector quantization for multiple-rate applications
DE112006002300B4 (de) * 2005-09-02 2013-12-19 Google, Inc. Vorrichtung zum Stapeln von DRAMs
US7326067B2 (en) 2005-10-18 2008-02-05 Vadatech Inc. Method and apparatus for minimizing the installation height of electrical components
USD530052S1 (en) 2005-12-15 2006-10-10 The Libman Company Handle for a bucket
USD530343S1 (en) 2005-12-21 2006-10-17 Hitachi Global Storage Technologies Netherlands B.V. Housing for a storage device
US20070180207A1 (en) 2006-01-18 2007-08-02 International Business Machines Corporation Secure RFID backup/restore for computing/pervasive devices
US20080005380A1 (en) 2006-02-21 2008-01-03 Pacific Star Communications, Inc. Integrated configuration and management of hardware devices
USD555159S1 (en) 2006-02-23 2007-11-13 International Business Machines Corporation Bezel for network attached storage drawer
USD565573S1 (en) 2006-03-23 2008-04-01 International Business Machines Corporation Blade filler blank for a computer server system
US20070236334A1 (en) 2006-03-31 2007-10-11 Borovoy Richard D Enhancing face-to-face communication
JP2007272826A (ja) 2006-03-31 2007-10-18 Sharp Corp 情報処理装置、情報処理方法、情報処理プログラム、および記録媒体
JP2007281763A (ja) * 2006-04-05 2007-10-25 Sony Corp 画像処理方法、画像処理方法のプログラム、画像処理方法のプログラムを記録した記録媒体及び画像処理装置
TWM299404U (en) 2006-04-17 2006-10-11 Jason Auto Technology Co Ltd Luminescent embodied panel for charger
USD570851S1 (en) 2006-05-05 2008-06-10 Emc Corporation Front panel for an electronic cabinet
CA2546148A1 (en) 2006-05-09 2007-11-09 Nikolajs Volkovs Method, system and computer program for polynomial based hashing and message authentication coding with separate generation of spectrums
USD556204S1 (en) 2006-05-16 2007-11-27 Sun Microsystems, Inc. Filler panel with integrated dust cover
US7620784B2 (en) 2006-06-09 2009-11-17 Microsoft Corporation High speed nonvolatile memory device using parallel writing among a plurality of interfaces
US7925389B2 (en) 2006-06-15 2011-04-12 International Business Machines Corporation Method of detecting recirculation of heated air within a rack enclosure
US7539026B2 (en) 2006-08-16 2009-05-26 Technobox, Inc. Sub-mezzanine structure for printed circuit card assemblies
WO2008020538A1 (fr) 2006-08-18 2008-02-21 Kyocera Corporation Dispositif électronique portable et son procédé de commande
US7962499B2 (en) 2006-08-18 2011-06-14 Falconstor, Inc. System and method for identifying and mitigating redundancies in stored data
US8238840B2 (en) 2006-08-25 2012-08-07 Kyocera Corporation Communication apparatus
JP4741673B2 (ja) 2006-08-25 2011-08-03 京セラ株式会社 携帯電子機器および携帯電子機器の制御方法
JP4898813B2 (ja) 2006-08-25 2012-03-21 京セラ株式会社 携帯電子機器
TWM315379U (en) 2006-08-29 2007-07-11 Carry Technology Co Ltd Portable storage apparatus with operation state display
AU2006204634B2 (en) 2006-08-31 2009-10-29 Canon Kabushiki Kaisha Runlength encoding of leading ones and zeros
JP4578451B2 (ja) 2006-09-15 2010-11-10 京セラ株式会社 電子機器
US7485510B2 (en) 2006-10-03 2009-02-03 International Business Machines Corporation Field effect device including inverted V shaped channel region and method for fabrication thereof
JP4885234B2 (ja) 2006-10-23 2012-02-29 パナソニック株式会社 可視光及び赤外光を用いた光空間伝送システム
JP2008107615A (ja) * 2006-10-26 2008-05-08 Yamaha Corp データ圧縮装置
US8259806B2 (en) * 2006-11-30 2012-09-04 Dolby Laboratories Licensing Corporation Extracting features of video and audio signal content to provide reliable identification of the signals
US8935302B2 (en) 2006-12-06 2015-01-13 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume
CN101202528B (zh) 2006-12-11 2012-10-10 丹佛斯传动有限公司 电子装置及电动机变频器
JP2008165293A (ja) 2006-12-27 2008-07-17 Seiko Epson Corp データ検索装置、デバイス管理装置、データ検索方法、およびコンピュータプログラム
US8139945B1 (en) 2007-01-20 2012-03-20 Centrak, Inc. Methods and systems for synchronized infrared real time location
US8010711B2 (en) 2007-01-26 2011-08-30 Digital Video Chip, Llc Universal multimedia
WO2008095201A1 (en) 2007-02-02 2008-08-07 Psimast, Inc. Processor chip architecture having integrated high-speed packet switched serial interface
USD609236S1 (en) 2007-03-09 2010-02-02 Brother Industries, Ltd. Image display device
JP4987536B2 (ja) 2007-03-28 2012-07-25 京セラドキュメントソリューションズ株式会社 給紙カセットおよび画像形成装置
JP2008262501A (ja) * 2007-04-13 2008-10-30 Fujifilm Corp 記録装置、記録装置に記録されたデータの機密保持方法及びプログラム
USD590831S1 (en) 2007-04-23 2009-04-21 Eads Defence And Security Systems Limited Encryption device
US7515413B1 (en) 2007-04-27 2009-04-07 Cisco Technology, Inc. Fan field replaceable unit
US8904098B2 (en) 2007-06-01 2014-12-02 Netlist, Inc. Redundant backup using non-volatile memory
US8209540B2 (en) 2007-06-28 2012-06-26 Apple Inc. Incremental secure backup and restore of user settings and data
US7893822B2 (en) 2007-08-09 2011-02-22 Allen Gerber Hybrid drive mode indicator
US20090040065A1 (en) 2007-08-10 2009-02-12 Federal Signal Corporation Class 1, division 1 led warning light
JP4990066B2 (ja) 2007-08-21 2012-08-01 株式会社日立製作所 論理ボリュームのペアを利用したデータ保存の方式を変更する機能を備えたストレージシステム
USD579455S1 (en) 2007-08-28 2008-10-28 Hon Hai Precision Industry Co., Ltd. Notebook computer cooling pad
US9681587B2 (en) 2007-08-30 2017-06-13 Pce, Inc. System and method for cooling electronic equipment
US7794124B2 (en) 2007-09-25 2010-09-14 Michael Hulsey Bi-directional boat running and emergency light apparatus and method
US8154417B2 (en) 2007-10-05 2012-04-10 Itt Manufacturing Enterprises, Inc. Compact self-contained condition monitoring device
US20090100236A1 (en) 2007-10-15 2009-04-16 Ricardo Spencer Puig Copying data onto a secondary storage device
US8348010B2 (en) 2007-10-19 2013-01-08 Apple Inc. Invertible ear tips for an ear piece
US9413825B2 (en) 2007-10-31 2016-08-09 Emc Corporation Managing file objects in a data storage system
GB0721648D0 (en) 2007-11-05 2007-12-19 Roke Manor Research Internet data processing systems
US8112807B2 (en) 2007-11-07 2012-02-07 Qualcomm Incorporated Systems, methods, and apparatuses for erasing memory on wireless devices
US8006108B2 (en) 2007-11-08 2011-08-23 International Business Machines Corporation Dynamic selection of group and device power limits
US20090141435A1 (en) 2007-11-29 2009-06-04 Barrett Kreiner Containers for transporting data from a first physical location to a second physical location
US20120191982A1 (en) 2007-12-06 2012-07-26 Levin Timothy Evert Non-volatile storage of encrypted data
US20090169001A1 (en) 2007-12-28 2009-07-02 Cisco Technology, Inc. System and Method for Encryption and Secure Transmission of Compressed Media
US8715127B2 (en) 2008-01-04 2014-05-06 American Axle & Manufacturing, Inc. Axle assembly with axle housing assembly having air scoops for cooling
US7726837B2 (en) 2008-01-07 2010-06-01 C-R Control Systems, Inc. Sealed lighting assembly employing side-emitting lenses
JP2009163557A (ja) 2008-01-08 2009-07-23 Seiko Epson Corp 情報処理装置
US7991941B2 (en) 2008-01-15 2011-08-02 Alcatel Lucent Memory access assist
US8214425B2 (en) 2008-01-29 2012-07-03 Mitel Networks Corporation System and method for storing a program using partial compression
WO2009095956A1 (ja) 2008-01-31 2009-08-06 Fujitsu Limited データ圧縮・復元方法及び圧縮・復元プログラム
US8001079B2 (en) 2008-02-29 2011-08-16 Double-Take Software Inc. System and method for system state replication
US8129742B2 (en) 2008-03-25 2012-03-06 Bridge Semiconductor Corporation Semiconductor chip assembly with post/base heat spreader and plated through-hole
JP2009251725A (ja) 2008-04-02 2009-10-29 Hitachi Ltd 記憶制御装置及び記憶制御装置を用いた重複データ検出方法。
US8745336B2 (en) 2008-05-29 2014-06-03 Vmware, Inc. Offloading storage operations to storage hardware
GB0810226D0 (en) 2008-06-04 2008-07-09 Weatherley Richard Blended colour LED lamp
US8527482B2 (en) 2008-06-06 2013-09-03 Chrysalis Storage, Llc Method for reducing redundancy between two or more datasets
TWI537900B (zh) 2008-08-19 2016-06-11 索爾維美國有限公司 使用者可組態之鑲嵌發光裝置
JP5414223B2 (ja) 2008-09-16 2014-02-12 株式会社日立ソリューションズ インターネットバックアップにおける転送データ管理システム
USD593565S1 (en) 2008-10-07 2009-06-02 Dell Products L.P. Information handling system bezel
USD694758S1 (en) 2008-11-05 2013-12-03 Phoenix Contact Gmbh & Co., Kg Display and control panel faceplate for electronic devices
US8566821B2 (en) 2008-11-11 2013-10-22 Netapp Inc. Cloning virtual machines
EP2350910B1 (en) 2008-11-24 2018-07-25 Certicom Corp. System and method for hardware based security
US8412677B2 (en) 2008-11-26 2013-04-02 Commvault Systems, Inc. Systems and methods for byte-level or quasi byte-level single instancing
JP5450647B2 (ja) 2008-12-02 2014-03-26 オスラム・シルバニア・インコーポレイテッド 主照明とは区別される様相を有するランプ
US8055937B2 (en) 2008-12-22 2011-11-08 QuorumLabs, Inc. High availability and disaster recovery using virtualization
US8200923B1 (en) 2008-12-31 2012-06-12 Emc Corporation Method and apparatus for block level data de-duplication
JP5413948B2 (ja) 2009-01-27 2014-02-12 日本電気株式会社 ストレージシステム
EP2214315A1 (en) 2009-01-30 2010-08-04 Thomson Licensing Method and device for encoding a bit sequence
CN201426214Y (zh) 2009-03-23 2010-03-17 沈李豪 一种具有可导热及散热油墨的散热结构的pcb板
US8140491B2 (en) 2009-03-26 2012-03-20 International Business Machines Corporation Storage management through adaptive deduplication
US20100245665A1 (en) 2009-03-31 2010-09-30 Acuity Systems Inc Hybrid digital matrix
US8229898B1 (en) 2009-03-31 2012-07-24 Symantec Corporation Methods and systems for utilizing redundant data
EP2435890A4 (en) 2009-05-28 2014-12-03 N A T Gmbh MICROTCA DEVICE
US8812570B2 (en) 2009-05-28 2014-08-19 Red Hat, Inc. String hashing using a number generator
CN101923884B (zh) 2009-06-09 2012-09-26 国基电子(上海)有限公司 硬盘抽取装置及使用其的电子装置
EP2464018A4 (en) * 2009-08-06 2012-08-01 Panasonic Corp CODING METHOD, DECODING METHOD, CODING DEVICE AND DECODING DEVICE
JP2011039589A (ja) 2009-08-06 2011-02-24 Fujitsu Ltd 復元制御装置、復元制御方法、コンピュータ可読記憶媒体、及び、復元制御プログラム
JP5360218B2 (ja) 2009-08-25 2013-12-04 富士通株式会社 送信機、符号化装置、受信機、及び、復号化装置
US8566288B1 (en) 2009-08-31 2013-10-22 Cms Products, Inc. Organized data removal or redirection from a cloning process to enable cloning a larger system to a smaller system
USD619108S1 (en) 2009-09-09 2010-07-06 Chyng Hong Electronic Co. Control panel
US8508928B2 (en) 2009-09-24 2013-08-13 Jabil Circuit, Inc. Incorporation of multiple, 2.5-inch or smaller hard disk drives into a single drive carrier with a single midplane or baseboard connector
USD646954S1 (en) 2009-09-30 2011-10-18 The Clorox Company Face plate
USD631630S1 (en) 2009-10-01 2011-01-25 The Libman Company Handle for a bucket or container
JP2011082878A (ja) 2009-10-09 2011-04-21 Sony Corp 符号化装置、復号装置、情報処理システム、符号化方法およびプログラム
USD659137S1 (en) 2009-10-19 2012-05-08 Brother Industries, Ltd. Image display device
USD659136S1 (en) 2009-10-19 2012-05-08 Brother Industries, Ltd. Image display device
USD676852S1 (en) 2009-10-23 2013-02-26 Clamco Invest Ab Case for electronic equipment
US8560501B2 (en) 2009-10-27 2013-10-15 Cms Products Inc Method for a cloning process to enable cloning a larger system drive to a smaller system
US9900150B2 (en) 2009-10-30 2018-02-20 International Business Machines Corporation Dispersed storage camera device and method of operation
US9145055B2 (en) 2009-12-03 2015-09-29 Volkswagen Ag Systems and methods for presenting information to an automobile driver
EP2510442B1 (en) 2009-12-08 2014-11-12 Safend Ltd System and method for secured backup of data
WO2011070980A1 (ja) * 2009-12-11 2011-06-16 日本電気株式会社 辞書作成装置
EP2515239B1 (en) 2009-12-14 2017-03-29 Panasonic Intellectual Property Management Co., Ltd. Information processing apparatus
USD646686S1 (en) 2009-12-30 2011-10-11 Sanford, L.P. Capture bar
KR101656525B1 (ko) 2010-01-08 2016-09-12 삼성전자주식회사 가시광 통신을 이용한 동기화된 데이터 제공 장치 및 방법
USD631480S1 (en) 2010-03-19 2011-01-25 Hewlett-Packard Development Company, L.P. Computer having a front bezel
JP4892072B2 (ja) 2010-03-24 2012-03-07 株式会社東芝 ホスト装置と連携して重複データを排除するストレージ装置、同ストレージ装置を備えたストレージシステム、及び同システムにおける重複排除方法
US20150163060A1 (en) 2010-04-22 2015-06-11 Martin Tomlinson Methods, systems and apparatus for public key encryption using error correcting codes
JP5594828B2 (ja) 2010-07-21 2014-09-24 学校法人東京電機大学 データ分散保管装置及び方法及びプログラム及び記録媒体
US8839112B2 (en) 2010-08-10 2014-09-16 Microsoft Corporation Cloning or extending a computer desktop on a wireless display surface
USD643434S1 (en) 2010-09-24 2011-08-16 International Business Machines Corporation Storage device cover
US8831221B2 (en) 2010-09-28 2014-09-09 Lsi Corporation Unified architecture for crypto functional units
JP5652101B2 (ja) * 2010-10-05 2015-01-14 富士通株式会社 画像処理装置及び画像処理方法
US8601201B2 (en) 2010-11-09 2013-12-03 Gridcentric Inc. Managing memory across a network of cloned virtual machines
US9104326B2 (en) 2010-11-15 2015-08-11 Emc Corporation Scalable block data storage using content addressing
US9952565B2 (en) 2010-11-15 2018-04-24 Guang Liu Networked, channelized power distribution, monitor and control for security and life safety applications
US8918607B2 (en) 2010-11-19 2014-12-23 International Business Machines Corporation Data archiving using data compression of a flash copy
US8803698B1 (en) 2010-11-23 2014-08-12 Fluke Corporation Removable stand alone vibration monitor with automatically configured alarm thresholds
US8976861B2 (en) * 2010-12-03 2015-03-10 Qualcomm Incorporated Separately coding the position of a last significant coefficient of a video block in video coding
JP2012129785A (ja) * 2010-12-15 2012-07-05 Fujitsu Ltd 可変長符号化装置及び可変長復号化装置
US20120239860A1 (en) 2010-12-17 2012-09-20 Fusion-Io, Inc. Apparatus, system, and method for persistent data management on a non-volatile storage media
US8832493B2 (en) 2010-12-22 2014-09-09 Cleversafe, Inc. Storing directory metadata in a dispersed storage network
US9639543B2 (en) 2010-12-28 2017-05-02 Microsoft Technology Licensing, Llc Adaptive index for data deduplication
TW201228541A (en) 2010-12-30 2012-07-01 Hon Hai Prec Ind Co Ltd Enclosure of electronic device
US8954645B2 (en) 2011-01-25 2015-02-10 International Business Machines Corporation Storage writes in a mirrored virtual machine system
TW201232285A (en) 2011-01-25 2012-08-01 Acer Inc Mezzanine card, server and server system
US8996192B2 (en) 2011-02-16 2015-03-31 Signalogic, Inc. Thermal management for integrated circuits
US9020655B2 (en) 2011-02-16 2015-04-28 Signalogic, Inc. Thermal management for integrated circuits
JP5561425B2 (ja) 2011-02-28 2014-07-30 日本電気株式会社 ストレージシステム
US8793684B2 (en) 2011-03-16 2014-07-29 International Business Machines Corporation Optimized deployment and replication of virtual machines
USD682267S1 (en) 2011-03-18 2013-05-14 Brother Industries, Ltd. Image display device
JP5621675B2 (ja) 2011-03-18 2014-11-12 富士通株式会社 署名装置、署名方法、および署名プログラム
US8930647B1 (en) 2011-04-06 2015-01-06 P4tents1, LLC Multiple class memory systems
US8474994B2 (en) 2011-04-13 2013-07-02 Grace Industries, Inc. Multi purpose visual and audible signaling baton
USD661696S1 (en) 2011-04-15 2012-06-12 Kabushiki Kaisha Toshiba Arithmetic operation control machine for computer
US8938643B1 (en) 2011-04-22 2015-01-20 Symantec Corporation Cloning using streaming restore
US20120278553A1 (en) 2011-04-28 2012-11-01 Mudhiganti Devender R System and method for migration of data clones
US8539008B2 (en) 2011-04-29 2013-09-17 Netapp, Inc. Extent-based storage architecture
USD685373S1 (en) 2011-05-06 2013-07-02 Hewlett-Packard Development Company, L.P. Computing device protector
USD676039S1 (en) 2011-05-07 2013-02-12 Lenovo (Singapore) Pte. Ltd. Server drive tray
CN102789264A (zh) * 2011-05-18 2012-11-21 鸿富锦精密工业(深圳)有限公司 计算机装置的主板
USD659653S1 (en) 2011-06-06 2012-05-15 Chyng Hong Electronic Co. Control panel for power supply (II)
USD663299S1 (en) 2011-06-09 2012-07-10 Gnodal Limited Container for electronic equipment
JP5842274B2 (ja) 2011-06-09 2016-01-13 株式会社オプトデザイン 照明装置
US8620865B2 (en) 2011-06-24 2013-12-31 Netapp, Inc. System and method for providing a unified storage system that supports file/object duality
US8547825B2 (en) 2011-07-07 2013-10-01 International Business Machines Corporation Switch fabric management
US8366464B1 (en) 2011-08-25 2013-02-05 Dell Products L.P. Retraction arm to extract a mezzanine circuit board connector from a motherboard connector
US8868860B2 (en) 2011-09-23 2014-10-21 International Business Machines Corporation Restore in cascaded copy environment
EP3346386B1 (en) 2011-09-30 2020-01-22 Intel Corporation Non-volatile random access memory (nvram) as a replacement for traditional mass storage
WO2013051136A1 (ja) 2011-10-06 2013-04-11 株式会社日立製作所 仮想サーバ処理制御方法、システムおよび仮想サーバ処理制御管理サーバ
EP2766659B1 (en) 2011-10-09 2017-05-17 Stryker Corporation Illuminable indicator for a bed
USD704247S1 (en) 2011-10-24 2014-05-06 Google Inc. Display device component
USD678273S1 (en) 2011-10-25 2013-03-19 Hewlett-Packard Development Company, L.P. Hard drive carrier
US8782463B1 (en) 2011-10-27 2014-07-15 Seagate Technology Llc Restoring a failed storage volume after removal of a storage device from an array
US9304843B2 (en) 2011-11-01 2016-04-05 Cleversafe, Inc. Highly secure method for accessing a dispersed storage network
US8899787B2 (en) 2011-11-02 2014-12-02 Tsmc Solid State Lighting Ltd. Thermal protection structure for multi-junction LED module
US20150015405A1 (en) 2011-12-20 2015-01-15 Aktiebolaget Skf Warning device for monitoring a health status of a bearing mounted to a piece of rotating industrial machinery
US9417889B2 (en) 2011-12-29 2016-08-16 Vmware, Inc. Fast provisioning of a centralized virtual desktop using linked clones with overlaid centralized virtual desktop layers
US8621644B2 (en) 2011-12-29 2013-12-31 Elwha Llc System and method for protecting data stored on a removable data storage device
US20130171903A1 (en) 2012-01-03 2013-07-04 Andrew Zsinko Electroluminescent devices and their manufacture
WO2013120108A1 (en) 2012-02-10 2013-08-15 Farrell Richard C Remotely controlling dc powered multi-channel devices
CN103313579A (zh) 2012-03-15 2013-09-18 鸿富锦精密工业(深圳)有限公司 电子装置及其风扇模组
US9137225B2 (en) 2012-04-23 2015-09-15 Raghavendra Kulkarni Seamless remote storage of uniformly encrypted data for diverse platforms and devices
USD681635S1 (en) 2012-04-26 2013-05-07 Kuo-Hsin Wang Disk drive tray
US9500355B2 (en) 2012-05-04 2016-11-22 GE Lighting Solutions, LLC Lamp with light emitting elements surrounding active cooling device
US8832352B2 (en) 2012-05-30 2014-09-09 Red Hat Israel, Ltd. Hypervisor-driven protection of data from virtual machine clones
US8847797B1 (en) * 2012-05-31 2014-09-30 Google Inc. Byte-aligned dictionary-based compression and decompression
EP2883029A4 (en) 2012-06-22 2016-06-15 Skf Ab WARNING AND METHOD FOR MONITORING THE ALARM STATUS OF THE VIBRATION LEVEL OF A PART OF A TURNING MACHINE WITH ADAPTIVE ALARM INDICATOR
WO2014003720A1 (en) 2012-06-26 2014-01-03 Hewlett Packard Development Company, L.P. Apparatus for actuating a lift plate of a media tray
USD699212S1 (en) 2012-08-10 2014-02-11 Yamaha Corporation Amplifier
USD734754S1 (en) 2012-08-28 2015-07-21 Middle Atlantic Products, Inc. Vent panel with elongated slot pattern
US9119269B2 (en) 2012-08-30 2015-08-25 Juno Manufacturing, LLC Lumen depreciation management
US20140082324A1 (en) 2012-09-14 2014-03-20 Reuven Elhamias Method and Storage Device for Using File System Data to Predict Host Device Operations
US9035786B2 (en) 2012-09-24 2015-05-19 Checkers Industrial Products, Llc LED strobe light with peripheral pattern display
US8964385B2 (en) 2012-10-05 2015-02-24 Cisco Technology, Inc. Air flow system
USD722995S1 (en) 2012-10-05 2015-02-24 Bigben Interactive Sa Music player
KR102049281B1 (ko) * 2012-10-23 2019-11-27 삼성전자주식회사 불휘발성 메모리 및 컨트롤러를 포함하는 메모리 시스템, 그리고 불휘발성 메모리에 데이터를 프로그램하는 프로그램 방법
USD711382S1 (en) 2012-11-27 2014-08-19 Asetek A/S Server cooling distribution unit
JP6025530B2 (ja) 2012-11-29 2016-11-16 三菱電機株式会社 空気調和機用コントローラー
US9398715B2 (en) 2013-01-27 2016-07-19 General Electric Company Electronic module shelf assembly and methods
US9304703B1 (en) 2015-04-15 2016-04-05 Symbolic Io Corporation Method and apparatus for dense hyper IO digital retention
US9467294B2 (en) * 2013-02-01 2016-10-11 Symbolic Io Corporation Methods and systems for storing and retrieving data
US9628108B2 (en) 2013-02-01 2017-04-18 Symbolic Io Corporation Method and apparatus for dense hyper IO digital retention
US9817728B2 (en) 2013-02-01 2017-11-14 Symbolic Io Corporation Fast system state cloning
US10133636B2 (en) * 2013-03-12 2018-11-20 Formulus Black Corporation Data storage and retrieval mediation system and methods for using same
USD730307S1 (en) 2013-03-01 2015-05-26 GDC Technology Limited Portable storage device for cinema playback system
US9069608B2 (en) 2013-03-06 2015-06-30 Vmware, Inc. Method and system for providing a roaming remote desktop
US9251010B2 (en) 2013-03-13 2016-02-02 International Business Machines Corporation Caching backed-up data locally until successful replication
USD694240S1 (en) 2013-03-15 2013-11-26 Creative Technology Ltd Shield
USD702650S1 (en) 2013-03-15 2014-04-15 General Electric Company Electrical component faceplate
USD697111S1 (en) 2013-03-15 2014-01-07 KM Fashion Eyewear, LLC V-shaped eyeglass lens with semi-shape aperture
USD719128S1 (en) 2013-04-18 2014-12-09 Qsc Audio Products, Llc Amplifier
USD726180S1 (en) 2013-04-18 2015-04-07 Vuzix Corporation Video eyewear device
FR3004876A1 (fr) * 2013-04-18 2014-10-24 France Telecom Correction de perte de trame par injection de bruit pondere.
US9116619B2 (en) 2013-05-10 2015-08-25 Seagate Technology Llc Displaying storage device status conditions using multi-color light emitting diode
USD706780S1 (en) 2013-05-23 2014-06-10 Recon Instruments Inc. Modular heads-up display system
USD720357S1 (en) 2013-05-24 2014-12-30 Western Digital Technologies, Inc. Faceplate for a server
CN203327301U (zh) 2013-05-24 2013-12-04 浙江农林大学 户外活动场所空气质量led指示灯
USD729809S1 (en) 2013-06-09 2015-05-19 Apple Inc. Component for an electronic device
CN104238682A (zh) 2013-06-19 2014-12-24 鸿富锦精密工业(深圳)有限公司 硬盘托架
USD722060S1 (en) 2013-06-20 2015-02-03 Western Digital Technologies, Inc. Faceplate for a server
US11663025B2 (en) 2013-09-23 2023-05-30 Bankvault Pty Ltd Maintenance of and caching of suspended virtual computers in a pool of suspended virtual computers
US9297675B2 (en) 2013-10-04 2016-03-29 Tactotek Oy Illuminated indicator structures for electronic devices
US9389937B2 (en) 2013-11-19 2016-07-12 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Managing faulty memory pages in a computing system
RU2700306C2 (ru) 2014-01-20 2019-09-16 Ирсап Спа Способ обеспечения визуальной индикации установленной комнатной температуры в электронном термостате и соответствующий электронный термостат
USD719571S1 (en) 2014-01-22 2014-12-16 Olympus Corporation Head mounted display prism
TWM481324U (zh) 2014-01-29 2014-07-01 Hsu Hsiu Yu Led裝飾燈具
JP1518036S (ko) 2014-02-19 2015-02-23
USD723554S1 (en) 2014-02-21 2015-03-03 Lg Electronics Inc. Head mounted display device
USD723555S1 (en) 2014-02-26 2015-03-03 Lg Electronics Inc. Head mounted display device
USD729242S1 (en) 2014-04-21 2015-05-12 Samsung Electronics Co., Ltd. Display device
US9569108B2 (en) 2014-05-06 2017-02-14 International Business Machines Corporation Dataset replica migration
JP1511167S (ko) 2014-05-21 2014-11-10
US9003144B1 (en) 2014-06-04 2015-04-07 Pure Storage, Inc. Mechanism for persisting messages in a storage system
USD731010S1 (en) 2014-06-18 2015-06-02 Nadine Bernecker Levitt U-shaped exercise weight bar
US9454308B2 (en) * 2014-06-27 2016-09-27 International Business Machines Corporation Page compression strategy for improved page out process
US9880754B2 (en) 2014-07-09 2018-01-30 Dell Products, Lp System and method for enabling transportability of a non volatile dual inline memory module
US9325086B2 (en) 2014-08-05 2016-04-26 International Business Machines Corporation Doubling available printed wiring card edge for high speed interconnect in electronic packaging applications
USD742883S1 (en) 2014-08-27 2015-11-10 Apple Inc. Component for an electronic device
USD741333S1 (en) 2014-08-29 2015-10-20 Apple Inc. Component for electronic device
US9946013B2 (en) 2014-09-18 2018-04-17 Cooper Technologies Company Indicator lights
US9430223B2 (en) 2014-09-25 2016-08-30 International Business Machines Corporation Live operating system update mechanisms
US20160232839A1 (en) 2015-02-09 2016-08-11 Symbolic Io Corporation Electroluminescent status display
USD735726S1 (en) 2015-02-13 2015-08-04 inXtron, Inc. Hard disk drive bracket
USD740817S1 (en) 2015-07-22 2015-10-13 Symbolic Io Corporation Front ear assembly—left
USD742887S1 (en) 2015-07-22 2015-11-10 Symbolic Io Corporation Tray
USD743404S1 (en) 2015-07-22 2015-11-17 Symbolic Io Corporation Media tray
USD740818S1 (en) 2015-07-23 2015-10-13 Symbolic Io Corporation Assembly kit
USD742876S1 (en) 2015-07-27 2015-11-10 Symbolic Io Corporation Rack equipment handle
US20170220498A1 (en) 2016-02-01 2017-08-03 Symbolic Io Corporation Apparatus for personality and data transfer via physical movement of a fast memory transfer device
US20170221322A1 (en) 2016-02-01 2017-08-03 Brian M. Ignomirello System and method of multimodal status indication
USD768135S1 (en) 2016-02-10 2016-10-04 Symbolic Io Corporation Bezel
US9603251B1 (en) 2016-03-09 2017-03-21 Symbolic Io Corporation Apparatus and method of midplane panel connections
USD768136S1 (en) 2016-06-01 2016-10-04 Symbolic Io Corporation Bezel
USD786258S1 (en) 2016-11-04 2017-05-09 Symbolic Io Corporation Face plate

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6621935B1 (en) * 1999-12-03 2003-09-16 Microsoft Corporation System and method for robust image representation over error-prone channels
US6614369B1 (en) * 2002-03-05 2003-09-02 International Business Machines Corporation DC balanced 7B/8B, 9B/10B, and partitioned DC balanced 12B/14B, 17B/20B, and 16B/18B transmission codes
US20140223118A1 (en) * 2013-02-01 2014-08-07 Brian Ignomirello Bit Markers and Frequency Converters

Also Published As

Publication number Publication date
US9304703B1 (en) 2016-04-05
CA2926692C (en) 2017-02-14
BR102016008182A2 (pt) 2016-10-18
JP2018050301A (ja) 2018-03-29
JP2017011677A (ja) 2017-01-12
TWI560548B (en) 2016-12-01
CN108616281A (zh) 2018-10-02
AU2016202284A1 (en) 2016-11-03
TW201636855A (zh) 2016-10-16
US10120607B2 (en) 2018-11-06
JP6224762B2 (ja) 2017-11-01
MX2016004852A (es) 2016-10-18
MX349483B (es) 2017-08-01
CN106055270A (zh) 2016-10-26
CA2926692A1 (en) 2016-08-04
US20180196605A1 (en) 2018-07-12
AU2016202284B2 (en) 2017-05-25
AR104277A1 (es) 2017-07-12
EP3082265A1 (en) 2016-10-19
CN106055270B (zh) 2018-05-22
PH12016000140A1 (en) 2017-10-30
WO2016168007A1 (en) 2016-10-20

Similar Documents

Publication Publication Date Title
KR101644145B1 (ko) 고밀도 하이퍼 io 디지털 보유를 위한 장치 및 방법
US10606482B2 (en) Method and apparatus for dense hyper IO digital retention
US9628108B2 (en) Method and apparatus for dense hyper IO digital retention
US9886200B2 (en) Concurrent upgrade and backup of non-volatile memory
CN103995578B (zh) 一种具有数据持续模式的器件驱动器
CN106852175B (zh) 可配置易失性存储器数据保存触发器
US9977719B1 (en) Fast system state cloning
US20160070474A1 (en) Data-Retention Controller/Driver for Stand-Alone or Hosted Card Reader, Solid-State-Drive (SSD), or Super-Enhanced-Endurance SSD (SEED)
TW201738759A (zh) 快速系統狀態仿製
US10929251B2 (en) Data loss prevention for integrated memory buffer of a self encrypting drive
US20120159047A1 (en) Computing device and method for merging storage space of usb flash drives
CN205193779U (zh) 一种基于多路服务器的raid卡
WO2016186632A1 (en) Enabling low output voltage to loads
KR20240070391A (ko) 스토리지 장치의 오류 예측 방법 및 장치
CN116225787A (zh) 一种ssd的元数据恢复方法、装置、设备及介质
Liu et al. Research and Implementation of SSD Lifespan Protection Mechanism

Legal Events

Date Code Title Description
GRNT Written decision to grant