KR20100087336A - 판독전용 영역과 판독/기록 영역, 분리형 매체 구성부품, 시스템 관리 인터페이스, 네트워크 인터페이스를 가진 컴퓨터 기억장치 - Google Patents
판독전용 영역과 판독/기록 영역, 분리형 매체 구성부품, 시스템 관리 인터페이스, 네트워크 인터페이스를 가진 컴퓨터 기억장치 Download PDFInfo
- Publication number
- KR20100087336A KR20100087336A KR1020107011227A KR20107011227A KR20100087336A KR 20100087336 A KR20100087336 A KR 20100087336A KR 1020107011227 A KR1020107011227 A KR 1020107011227A KR 20107011227 A KR20107011227 A KR 20107011227A KR 20100087336 A KR20100087336 A KR 20100087336A
- Authority
- KR
- South Korea
- Prior art keywords
- file
- computer
- storage device
- storage
- processor
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0637—Permissions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0667—Virtualisation aspects at data level, e.g. file, record or object virtualisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/59—Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/15—Use in a specific computing environment
- G06F2212/154—Networked environment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/17—Embedded application
- G06F2212/174—Telecommunications system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
- G06F2212/2146—Solid state disk being detachable, e.g.. USB memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/26—Using a specific storage system architecture
- G06F2212/264—Remote server
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/30—Providing cache or TLB in specific location of a processing system
- G06F2212/304—In main memory subsystem
- G06F2212/3042—In main memory subsystem being part of a memory device, e.g. cache DRAM
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/30—Providing cache or TLB in specific location of a processing system
- G06F2212/305—Providing cache or TLB in specific location of a processing system being part of a memory device, e.g. cache DRAM
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/46—Caching storage objects of specific type in disk cache
- G06F2212/463—File
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
- G11B2220/21—Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
- G11B2220/211—Discs having both read-only and rewritable or recordable areas containing application data; Partial ROM media
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
컴퓨터와 사용을 위한 기억 장치가 공개됐다. 기억장치는 컴퓨터 인터페이스와 시스템 인터페이스를 통하여 컴퓨터에 통신적으로 연결된 프로세서를 포함한다. 컴퓨터 인터페이스는 프로세서와 컴퓨터 사이의 독점적인 통신을 가능하게 하고, 시스템 인터페이스는 컴퓨터의 하나 이상 하드웨어 구성부품을 프로세서가 관리할 수 있게 한다. 프로세서가 네트워크상의 다른 서버를 배제한 특정 파일서버와의 통신을 가능하게 하는 네트워크 인터페이스가 포함되어 있다. 기억수단은 통신적으로 프로세서에 연결되어 첫번째와 두번째로 지정된 기억영역을 포함한다. 프로세서는 두 영역에 판독/기록 접속을 가지지만, 컴퓨터는 첫번째 기억영역에는 판독전용 접속을, 두번째 기억영역에는 판독/기록 접속을 가진다. 분리 매체형 기억장치는 프로세서에 통신적으로 연결되어 있다.
Description
1. 우선권
우선권은 2007년 10월 27일 접수된 미국 임시 특허 신청 번호 60/981,866에 의한다. 전술된 우선권 문서는 아래 본문에 참고로 통합되어 있다.
2. 발명의 분야
본 발명의 분야는 컴퓨터와 컴퓨터 통신망을 위한 네트워크된 기억장치이다.
3. 관련 출원
본 신청은 2006년 6월 27일 발행된 미국 특허 7,069,351과 2001년 10월 30일에 접수된 미국 특허 신청 번호10/017,923에 관련되어 있고, 공개 사항은 아래 본문에 참고로 통합되어 있다.
전형적인 컴퓨터에는, 개인용, 사무용, 전문용, 기타 다른 용도를 위한 기성품이나 주문형 컴퓨터이던지, 많은 구성부품으로 이루어져 있다. 일반적인 구성부품으로는 프로세서, 메모리, 기억장치, 입출력장치 및 네트워크 인터페이스 등이 있다. 마이크로소프트 윈도우즈 (Microsoft Windows: 등록상표), 맥 오에스 (Mac OS: 등록상표), 유닉스 (UNIX), 리눅스(Linux) 등과 같은 운영체제는 구성부품과 이들의 기능및 상호작용을 제어한다. 특히, 운영체제는 어플리케이션이나 운영체제 자체로부터의 파일 요청을 처리한다. 파일 요청을 받았을때, 운영체제는 파일을 로컬 기억장치로부터 또는, 컴퓨터가 네트워크에 접속되어있는 경우, 네트워크 서버로부터 공급하는것을 시도한다.
기억장치와 네트워크 인터페이스를 위한 다양한 옵션이 많기 때문에, 운영체제는 전형적으로 컴퓨터에 접속될 수 있는 거의 모든 기억장치와 네트워크 인터페이스들을 접속하는데 필요한 특성을 가지도록 프로그램된다. 예를 들면, 대부분의 운영체제는 각종 기억장치의 유형 (예, 자기기억, 광기억 등), 인터페이스의 유형 (예, IDE, ATA, SCSI, SATA, PATA, SAS등) 및 물리적 파라메터 (예, 실린더수, 섹터수, 헤드수, 트랙수 등)을 수용할 수 있게 프로그램된다. 컴퓨터가 네트워크에 연결되는 경우에, 운영체제는 또한 각종 네트워크 인터페이스의 유형 (예, 이더넷, 토큰 링, ATM 등), 네트워크 프로토콜 (예, TCP/IP, IPX/SPX, Apple Talk, SNA등) 및 네트워크 자원 (예, 서버, 프린터, 스캐너, 기억장치 등)과 통신하는데 필요한 특정의 방법들로 프로그램되어야 한다.
더하여, 운영체제는 또한 기억장치상이나 네트워크상 파일서버상의 파일을 관리할 수 있어야 한다. 로컬 기억장치상에서, 운영체제는 전형적으로 파일 관리를 위하여 파일할당테이블이라 불리는 참조테이블 또는 인덱스를 사용한다. 네트워크상에서, 운영체제는 파일서버와 통신하고 파일을 입수하게 프로그램되어야 한다. 운영체제가 파일입수과정을 간단하게 하기 위하여 파일서버로부터 수신된 파일정보를 파일할당테이블과 유사한 포멧으로 번역하는 것이 종종 유리하다.
운영체제가 구성부품과 이들의 기능을 관리하는 방식은 컴퓨터에 복잡도 (complexity)를 증가시킨다. 이러한 복잡도는 컴퓨터 설정과정에서 쉽게 볼수 있다. 전형적으로, 컴퓨터는 일상의 일반적 사용을 위해 준비될때까지 (a) 선택된 운영체제의 설치를 개시할 수 있는 부팅 장치로부터의 부팅, (b) 로컬 기억장치의 파티션 생성 및 형식 지정 (partitioning and formatting), (c) 운영체제의 완전 설치, (d) 디스플레이 카드 및 네트워크 인터페이스 같은 하드웨어 부품의 구성, (e) 어플리케이션이나 다른 소프트웨어의 설치 및 구성을 포함하는 설정과정을 거치게 된다.
이러한 복잡도는 컴퓨터가 사용 중인 동안에도 자명하다. 어플리케이션과 운영체제는 어플리케이션이나 운영체제 구성요소의 기존 버전 삭제(uninstalling)를 빈번하게 포함하는 주기적인 패치나 갱신을 필요로 할수 있다. 더하여, 파일은 프로그램 오류, 사용자 과실, 또는 컴퓨터 바이러스에 의해 손상될 수 있다. 이런 일이 생기면, 손상된 파일은 교체되거나 수리될 필요가 있는데, 손상된 파일을 사용하는 어플리케이션의 재설치나 심지어 운영체제 자체의 재설치의 가능성을 포함할 수도 있다.
컴퓨터 사용에 연관된 복잡도는 일반적으로 높은 유지 및 지원 비용을 초래한다. 사업환경에서는 지원비용이 한사람당 또는 한 전산장비당 수천 달러 (US Dollar)까지 쉽게 도달할 수 있다. 더하여, 컴퓨터 관련 문제가 발생할 경우 업무 생산성이 크게, 종종 제로까지, 떨어지기 때문에 컴퓨터를 유지하기 위한 비용은 증가한다.
기억장치에 관련된 문제를 제외한 하드웨어 기능불량에 관련된 문제는 종종 짧은 시간내에 해결될 수 있다. 예를 들면, 비디오 카드나 네트워크 인터페이스 카드같은 구성부품의 파손은 동일한 구성부품으로 빨리 교체될 수 있다. 그러나, 문제가 기억장치나 기억장치에 저장된 파일에 관련되어 있으면 컴퓨터 수리는 긴 과정이 될 수 있다.
컴퓨터에 있는 하드 드라이브가 기능불량이거나 파손된 파일이 문제를 일으킬 때에는 , 수리 및 복구 과정은 하드 드라이브의 재설정, 운영체제의 재설치, 그리고/또는 어플리케이션의 재설치를 포함할 수 있다.
컴퓨터의 복잡도를 감소시키거나, 문제가 발생했을때 복구과정을 단축시키거나, 복구과정의 필요성을 전부 최소화시키는 수많은 방법이 현재 가능하다. 이들의 일반적인 방법으로 기억장치를 복제하고, 네트워크상으로 컴퓨터를 부팅하고, 전문화한 컴퓨터 관리 소프트웨어를 이용하고, 그리고/또는 파일 레벨 보안 (file level security)을 적용하는것이 있다.
기억장치를 복제함으로써, 설치과정이 단축될 수 있다. 컴퓨터는 먼저 풀세트의 어플리케이션으로 완전하게 설정된다. 다음으로, 기억장치는 "이미지" 파일로 복제되거나 복사된다. 이 이미지 파일은 컴퓨터를 초기상태로 복원시키거나 동일하게 설비된 컴퓨터들을 설정하는데 사용될 수 있다. 많은 소비자 중심 컴퓨터에는 기억장치를 공장디폴트(factory default) 상태로 복구시키는데 사용할 수 있는 공장디폴트 이미지가 저장된 회복CD가 따라온다. 이 방법의 단점은 기억장치에 저장된 운영체제, 어플리케이션, 또는 기타 다른 파일에 변경이 있을 때마다 기억장치의 이미지가 새로 만들어져야 한다는 것이다. 기억장치가 기존의 이미지로 복구된 이후 설치된 소프트웨어에 패치나 갱신이 적용될 필요가 있을 경우에 이 방법을 사용하면 복합성이 생길 수 있다. 여를 들면, 이미지가 최신으로 유지된다 하더라도, 사용자를 위한 최종적 구성의 맞춤에 몇 시간이 걸릴 수 있다.
네트워크 부팅 방법은 네트워크에 있는 파일서버로부터 필요한 파일을 내려받는 단순한 컴퓨터와 관련되어 종종 사용된다. 이러한 컴퓨터는 순차적으로 운영체제의 나머지 부분과 임의의 어플리케이션 내려받기를 시작할 수 있는 운영체제의 작은 기본부분을 내려받아 실행하는데BOOTP TFTP, 또는 PXE와 같은 공지된 네트워크 서비스를 사용한다. 이 방법의 단점은, 컴퓨터에 로컬 기억장치가 없다면, 전원공급이나 재시동시마다 필요한 파일 내려받기의 동일한 부팅 과정을 거쳐야 한다는 것이다. 만약 컴퓨터에 로컬 기억장치가 있다면, 이 과정은 내려받은 파일을 국부적으로 저장하는데서 이점을 가질수 있다. 그러나 네트워크를 통해 내려받아진 운영체제는 또다시 하드웨어 구성부품과 로컬 기억장치에 저장된 파일 관리의 복잡한 작업을 해야할 책임이 있다.
컴퓨터 관리 소프트웨어 방법은 부가적인 소프트웨어 구성요소를 에이전트(agents), 디먼(daemons), 또는 서비스로 추가함으로써 운영체제를 강화시키는데 사용된다. 이 방법을 쓰는 한 전형적인 방식은 저장된 파일을 컴퓨터 바이러스나 악성 소프트웨어(malware)의 감염에 대해 계속 스캔하는 안티바이러스 소프트웨어를 쓰는 것이다. 이 방법은 로컬 기억장치에 저장된 중요한 파일을 계속 감시하고 파손 또는 손상된 파일을 자체 치유하는 것을 시도하는 소프트웨어 요소가 추가되서 구현될 수도 있다. 부가적인 구현은 컴퓨터 관리 툴의 일부로서 서버로부터 내보내진 파일 갱신을 처리하는 소프트웨어 요소를 추가한다. 이 방법의 단점은 에이전트, 디먼, 또는 서비스로 작용하는 소프트웨어 요소가 운영체제에 크게 의존한다는 것이다. 예를 들면, 마이크로소프트 윈도우즈를 위해 쓰여진 소프트웨어 요소는 리눅스하에서는 작용하지 않는다. 따라서, 운영체제는 이러한 소프트웨어 요소가 제대로 작용하기 위해서 로컬 기억장치나 네트워크 인터페이스를 관리하는 것 같이 필요한 기능을 제공해야 한다.
많은 운영체제는 또한 중요한 파일을 손상시킬 수 있는 컴퓨터 바이러스, 악성 소프트웨어, 인가안된 접근, 사용자 과실, 또는 어플리케이션 오류에 대해 특정 수준의 보호를 제공하기 위하여 파일 레벨 또는 디렉토리 레벨(directory level) 보안을 적용할 수 있다. 이 방법의 단점은 역시 운영체제에 의존적이고, 최고 사용자(super user), 관리자(administrator), 또는 완전한 접근 특권으로 운용되는 프로세스가 로컬 기억장치에 저장된 중요한 파일을 변경, 삭제, 또는 손상시킬 수 있다는 것이다. 더우기, 완전한 접근특권을 얻어낸 바이러스와 같은 많은 악성 소프트웨어는 유해한 손해를 끼칠 수 있다.
위 방법들은, 그 자체로 또는 다른 방법과 함께, 컴퓨터가 갖는 복잡도를 감소시키는데 얼마간의 도움을 제공한다. 그러나, 이 중 어느 방법도 운영체제가 컴퓨터 구성부품을 어떻게 관리하는지를 근본적으로 바꾸지 않는다. 따라서, 컴퓨터를 관리하고 파일을 네트워크상에서 처리하고 분배하는 방법을 간단하게 하는 새로운 접근방법이 필요하다.
더하여, 오늘날의 전산환경에서 커져가는 관심사의 하나는 자료보안 하고 연관된다. 전산장치는 종종 도난당하거나, 분실되거나, 전산장치에 있는 기억장치에 민감자료가 포함된 채 버려진다. 전산장치 또는 기억장치에 물리적 접근을 획득한 자는 많은 방법에 의해 기억장치에 저장된 자료를 쉽게 접근할 수 있다. 예를 들면, 대체 운영체제로 컴퓨터를 부팅시켜서 자료에 접근할 수 있다. 암호 회복 도구를 사용해서 관리자나 사용자 계정과 암호를 깰 수 있다. 또는 회사의 전산장치에서 기억장치를 간단히 뽑아내 사용자 계정과 암호와 같이 산업 스파이적 경쟁회사에 넘겨줄 수 있다. 자료가 파일서버에 백업(backup)되지 않았거나 파일서버와 동기화되지 않았을 경우, 인가안된 상대에게 모두 잃어 버려진다.
기억장치에 저장된 파일과 자료에 인가안된 접근을 방지하는 많은 방법이 있다. 그방법은 보편적으로 2개의 종류로 분류된다: (a) 운영체제에 기반을 둔 접근제한과 (b) 외부 하드웨어에 의존한 접근제한.
운영체제에 기반을 둔 접근제한은, 운영체제는 기억장치에 저장된 자료를 암호화하기 위해 EFS (encrypted file system)를 사용할 수 있다. 그러나, 이런 방법은 운영체제에 의존적이다. 운영체제가 훼손되거나 (예, EFS용 암호화 키가 누출되거나) 사용자 계정과 암호가 깨지거나 인가안된 상대에 알져지면, 이런 운영체제에 기반을 둔 접근제한은 자료를 보호하지 못한다.
외부 하드웨어에 의존한 접근제한의 경우에, 스마트 카드(smart card)나 USB 열쇠(USB key)같은 외부 장치가 자료에의 접근을 제한하기 위하여 쓰일 수 있다. 예를 들면, 스마트 카드는 부팅 과정 도중 운영체제가 완전히 올려놓기되기 전에 사용될 수 있다. 유효한 스마트 카드가 탐지되면, 부팅 과정은 아마도 EFS에 있는 자료에의 접근을 수여할 운영체제의 올려놓기를 계속할 수 있다. 이것은 단지 운영체제에 기반을 둔 접근제한보다 더 안전하나, 외부 하드웨어에 의존하게 된다. 그래서 하드웨어가 백업없이 손상되면, 인가된 사용자 조차 자료에 접근할 수 없다. 만약 복구절차가 존재한다면, 인가안된 상대가 자료에 접근할려고 이 복구절차를 사용할 수 있다. 또한, 외부 하드웨어(예, 스마트 카드나 USB key 사본)이 기억장치와 함께 산업 스파이적 인가안된 상대에게 넘겨질 수 있다. 이런 인가안된 접근을 방지하기 위하여는, 운영체제는 또한 외부 하드웨어 이외에 “연결성 정책”("connectedness policy”)을 사용할 수 있다. 예를 들면, 부팅 과정중 스마트 카드가 확인된 후, 운영체제는 자료에의 접근을 허용하기 전에 네트워크 서버와 연결성을 검사할 수 있다. 그러나, 이 방법도 운영체제에 의존적이다. 다시 말하면, 사용자 또는 어플리케이션이 선호하는 특별한 운영체제가 이러한 접근제한을 제공하지 않으면, 이런 접근제한으로부터 혜택을 받을 방법이 없다. 그러므로, 가급적이면 전산장치에서 운용되는 운영체제에 독립적으로 기억장치에 있는 자료를 보호하는데 새로운 접근방법이 필요하다.
더욱이, 특정 정도의 자산관리 (하드웨어와 소프트웨어 자산 둘 다)와 최종 사용자 전산장치의 지원 관리는 회사 전산환경에서 매우 바람직하다. 하드웨어와 소프트웨어 자산 관리는 최종 사용자의 전산장치에 "자산 관리 에이전트"(“asset management agent”)가 설치됨으로서 종종 이루어진다. 구현에 따라, 에이전트는 하드웨어 구성부품을 조회하여 관리국에 보고할 수 있다. 에이전트는 하드웨어 구성에 어떤 변화나 전산장치 본체가 열리는것 같은 인가안된 활동을 검지할 수 있다. 에이전트는 또한 로컬 기억장치에 저장된 파일을 조회하고, 최종 사용자의 전산장치에 어떠한 소프트웨어가 설치되었나를 관리국에 보고할 수 있다. 에이전트에 의해 보고된 정보를 기반으로, 하드웨어 또는 소프트웨어 자산 보고서가 관리국에서 생성될 수 있다.
이런 자산관리 에이전트는 다시 운영체제에 상당히 의존적이다. 다시 말하면, 많은 에이전트는 운영체제 (예, Windows XP, Windows Vista, 리눅스, 유닉스, MacOS 등)의 모든 종류와 버전을 위해 개발되고 쓰여질 필요가 있다. 에이전트가 어떤 수준의 세련성(예, 소프트웨어 파일명의 검사뿐만 아니라 MD5검사합 같은 소프트웨어의 특정 특색의 검사)을 가지도록 개발되지 않으면, 에이전트는 소프트웨어 자산을 부정확하게 보고하도록 바보 취급될 수 있다. 예를 들면, 최종 사용자가 회사에 의해 공식적으로 허용되지 않거나 지원되지 않는 어플리케이션을 사용하고 싶으면, 사용자는 어플리케이션이 관리국에 보고되지 않도록 어플리케이션 실행 파일을 NOTEPAD.EXE와 같은 일반적인 것으로 개명할 수 있다. 같은 방식으로, 악성 프로그램은 자신을 인가된 어플리케이션으로 가장할 수 있다.
사용자나 악성 프로그램은 또한 시스템에서 운용되거나 사용자의 로컬 기억장치에 존재하는 특정 어플리케이션을 보유하고 있는 것처럼 보이도록 에이전트를 바보취급할 수 있다. 오늘날의 보안성 동향이 높은 전산환경에서, 특정 방화벽이나 게이트웨이/프럭시(gateway/proxy) 장치는 특정한 어플리케이션이 최종 사용자의 전산장치에서 운용되는지 아닌지(예, 안티바이러스 소프트웨어가 운용되는지 아닌지)의 검지를 시도한다. 이런 방화벽이나 게이트웨이/프럭시 장치는 요구되는 어플리케이션의 존재을 검지하기 위해 에이전트를 사용한다. 에이전트가 요구되는 어플리케이션의 모든 풍미와 버전을 검지할 수 없으면, 사용자는 어플리케이션의 이름을 바꿔서 에이전트의 조회를 우회할 수 있다. 예를 들면, 사용자는 NOTEPAD.EXE의 이중 사본을NTRTSCAN.EXE처럼 만들고, 이 날조된 NTRTSCAN.EXE를 운용하고 극소화하여 Trend Micro의 OfficeScan 어플리케이션이 운용되나 안되나를 검지할려는 에이전트의 시도를 기만할 수 있다.
이런 자산관리 에이전트는 또한 전산장치가 꺼져있으면 하드웨어 구성부품을 사정할 수 없다. 에이전트는 에이전트가 자산정보를 수집하고 관리국에 보고할 수 있기 위하여서는 전산장치상에서 운용되어야 한다. 이것은 전산장치가 완전히 기능적이어야 한다는 것을 의미한다. 운영체제는 많은 의존적 서비스/디몬(예, 네트워크 인터페이스 드라이버와 네트워크 프로토콜)과 같이 적절히 운용되어야 한다. 그렇지 않으면, 에이전트는 어떤 하드웨어 또는 소프트웨어 자산정보도 관리국에 제공할 수 없다.
현재 전산장치를 원격조정 할 (예, 전원을 키거나 끄거나할) 수많은 방법이 있다. 예를 들면, Wake-On-LAN은 관리자가 전산장치를 원격적으로 켜서 자산관리 에이전트가 관리국에 자산정보를 제공할 수 있도록 할 수 있는 방법중 하나다. 그러나 전산장치의 전원을 원격적으로 켤 수 있는 것은 전산장치가 부팅이 불가하면 (예, 운영체제가 제대로 올려놓기되지 않았거나 하드웨어 구성부품에 하자가 있으면) 어떤 유익성도 없다. 이런 경우에, 에이전트는 올려놓기가 안되고 관리국에 자산정보를 제공할 수 없다. 그러므로, 제대로 작동하지 않는 전산장치를 관리하고 수리하기 위하여, 보편적으로 “대역 외 관리”(“out-of-band management”)라 불리는, 다른 접근방법이 개발되었 있다.
대역 외 관리는 오늘날의 전산환경에서 널리 사용된다. 이것은 수리하기 위하여 전산장치 콘솔의 원격 전망을 제공할 수 있다. 대역 외 관리의 많은 구현은 전원제어와 시스템 요소의 상태 검사와 (예, 로컬 기억장치가 나쁜지, 메모리에 오류가 있는지, 전산장치의 내부 온도가 제대로 작동하기에 너무 뜨거운지 등) 같은 추가 기능과 정보를 제공한다. 이런 관리는 추가관리 기판이나 전산장치 시스템 기판에 내장된 관리부품을 사용해서 보통 이루어진다. 회사 환경에서 사용되는 많은 서버는 서버의 원격 관리를 가능하게 하는 이런 관리 옵션을 가지고 있다. 추가관리 기판이나 내장된 관리부품은 (전용 전원공급장치나 항상 켜져있는 시스템 기판으로 부터) 일정한 전원을 공급받을 수 있어, 전산장치가 꺼져있더라도 운영체제나 자산관리 에이전트와는 독립적으로 관리국에 하드웨어에 연관된 정보를 제공할 수 있다.
이런 추가 관리기판이나 내장된 관리부품은 적어도 한개의 중요한 한계성이 있다 - 로컬 기억장치를 조회하여 소프트웨어의 자산명부를 생성할 수 없다. 이 한계성은 두개 이상의 운영체제가 로컬 기억장치를 제어할 수 없는 오늘날의 전산장치의 근본적인 구조에서 비롯된다. 로컬 기억장치 관리의 책임이 있는 운영체제는 운영체제에 유일한 파일 시스템을 만든다. 예를 들면, 마이크로소프트 윈도우즈는NTFS를 사용할 수 있는데, 이 파일 시스템은 리눅스 또는 맥 오에스에 의해서는 선천적으로 인식될 수 없다. 더하여, 마이크로소프트 윈도우즈는 선천적으로 리눅스나 유닉스 운영체제에 의해 창조된 파일 시스템을 인식하지 않는다. 그러므로, 추가 관리기판이나 내장된 관리부품이 로컬 기억장치를 스캔할려면, 추가관리 기판이나 내장된 관리부품은 사용중인 파일 시스템을 이해할 수 있어야 한다. 다시 말하면, 추가 관리기판이나 내장된 관리부품상에서 운용되는 펌웨어(firmware)는 전산장치상에서 운용되는 운영체제와 호환되어야 한다. 이것은 전산장치가 사용할 운영체제에 많은 다양성이 있기 때문에 심각한 한계성이다. 비록 추가 관리기판이나 내장된 관리부품상에서 운용되는 펌웨어가 전산장치상에서 운용되는 운영체제와 완전하게 호환된다 하더라도, 운영체제와 펌웨어 사이에서 파일 시스템을 (아마도 디렉토리와 파일 레벨 보안까지) 공유하는 것은 수리에 상당한 집중이 요구되며 파일 시스템이 쉽게 손상될 수 있는 추가적 복합성을 소개하기 쉽상이다.
따라서, 관리자가 완전한 하드웨어와 소프트웨어 자산관리 기능을 가지기 위해서, 하드웨어에 기반을 둔 접근방법 (예, 추가 관리기판이나 내장된 관리부품) 및 소프트웨어에 기반을 둔 접근방법 (예, 자산관리 에이전트)의 조합이 이상적이다. 그러나, 하드웨어에 기반을 둔 접근방법은 시스템에 복잡도를 추가하고 소프트웨어에 기반을 둔 접근방법은 운영체제에 상당히 의존적이기 때문에, 새롭고 단순화된 접근방법이 필요하다.
기본적으로, 오늘날의 전산환경에 존재하는 문제의 근본 원인은 전산장치의 모든 부품을 제어하는 운영체제의 커널모드 (kernel mode)나 승격된 접근 권한(예, 관리자나 루트(root) 권한)을 가질수 있는 사용자의 능력 (그리고 필요성)에서 부각된 고유한 취약성을 가진 운영체제에 의하여 기여된다. 예를 들면, 거의 모든 전산장치는 주변장치(예, 하드 디스크 드라이브)를 제어하는 운영체제로 부팅되고, 운영체제는 운영체제 자신이나 사용자가 운영체제와 주변장치를 구성할 필요가 있을때 사용되는 승격된 접근모드를 가지고 있다. 악성 사용자 또는 프로그램은 인가안된 접근을 할려고 또는 전산장치를 기능불가하게 만들려고 끊임없이 이러한 승격된 접근모드를 착취하고 있다. 운영체제와 어플리케이션은 이런 착취를 방지하기 위하여 점점 복잡하게 되어왔지만, 효과적인 치료는 지금 기본적으로 알려지지 않았다.
근래 개발된 것 중 하나는 악성 착취를 극소화하고 관리성을 높이기 위한 시도로 사용자의 전산환경의 가상화이다. 가상화는 가상 기억장치, 가상 네트워크 연결 등을 가지고 있는 가상 기계를 제공하기 위해 전산장치를 주인 운영체제 (보통 "경화된"(hardened”) 운영체제)로 부팅하는것으로 이루어진다. 그런 뒤, 가상 기계는 사용자를 위한 손님 운영체제로 부팅된다. 예를 들면, 애플 맥 (Apple Mac: 등록상표)이 맥 오에스로 부팅되고, 버추얼 피씨 (Virtual PC: 등록상표)가 가상 기계를 만들기 위하여 시작되고, 가상 기계는 사용자가 윈도우즈 어플리케이션을 사용할 수 있게 윈도우즈 XP로 부팅된다. 또는 서버가 윈도우즈 서버 2003 (Windows Server 2003: 등록상표)로 부팅되고, 비엠웨어 (VMWare: 등록상표)가 여러 가상 기계를 만들기 위하여 시작되고, 가상 기계들은 각종 운영체제로 부팅된다. 가상 기계의 스냅 (snapshot)은 가상 기계의 상태를 저장하기 위해 만들어져서, 가상 기계가 문제를 당했을 경우 가상 기계는 빨리 복구될 수 있다. 한 서버가 사용자를 위한 다수의 가상 기계를 지원하기 위하여 구성되면, 이것은 사용자가 키보드, 마우스, 비디오 신호를 네트워크상으로 전송하면서 가산 기계를 원격적으로 접근할 수 있게 되어 중앙화 된 서버 기반 전산이나 씬클라이언트 (thin-client) 전산에 속하게 된다.
서버 하드웨어나 소프트웨어에 직접적인 사용자 접속의 제한과 사용자 단말기로 사향이 낮은 장비를 쓸 수 있는것 같은, 서버 기반 전산이나 씬클라이언트 전산이 가지는 수많은 이점이 있다. 그러나 서버 기반 전산이나 씬클라이언트 전산은 모든 사용자를 지원하기에 충분할 만큼 강력할 필요가 있어야 하고, 좀더 제한적으로, 모든 사용자의 단말기가 서버에 있는 어플리케이션을 사용자가 사용할 수 있도록 하기 위하여 항상 서버에 연결되어 있을 필요가 있어야 하는 것 같은 몇몇 불리점도 있다.
더욱이, 손님 운영체제를 운용하는 가상 기계에도 아직 악성 사용자나 프로그램에 의해 착취될 수 있는 고유한 취약성이 있다. 예를 들면, 가상 기계는 보통 전산장치와 같이 안티바이러스 소프트웨어와 파일 허가 제어 방식이 여전히 필요하다. 그리고 주인 운영체제가 최대한 강화됐다 (보호됐다) 하더라도,주인 운영체제는 아직도 착취될 수 있는 승격된 접근 모드를 가지고 있다. 예를 들면, 주인 운영체제에 관리 권한을 얻은 악성 사용자나 프로그램은 가상 기계에 가상 기억장치를 제공하는 소프트웨어 구성요소를 손상 또는 구성할 수 있어 모든 가상 기계에 접근 할수 없는 결과를 야기 할 수 있다. 그러므로, 운영체제와 어플리케이션에 의하여 사용되는 파일과 자료가 악성 사용자나 프로그램에 노출되는 것을 감소하는 것이 매우 바람직하다.
본 발명은 컴퓨터와 컴퓨터 시스템을 위한 기억 장치에 관한 것이다. 기억 장치는 컴퓨터 인터페이스와 시스템 인터페이스를 통해 컴퓨터에 통신적으로 연결된 프로세서를 포함한다 [주: 여기서 프로세서는 컴퓨터가 가지고 있는 CPU가 아니라, 기억장치에 내장된 디바이스 프로세서(device processor)를 말함]. 프로세서는 또한 네트워크 인터페이스를 통해서 네트워크에 통신적으로 연결되어 있다. 컴퓨터 인터페이스는 프로세서와 컴퓨터 사이의 통신을 독점적으로 가능하게 하고, 시스템 인터페이스는 프로세서와 컴퓨터의 한개 이상 하드웨어 구성부품을 관리하는 것을 가능하게 한다. 네트워크 인터페이스는 프로세서가 네트워크상의 다른 파일서버를 배제한 특정 파일서버와 통신을 가능하게 한다. 기억수단이 프로세서와 통신적으로 연결되어 있고, 첫번째와 두번째로 지정된 기억영역을 포함한다. 프로세서는 두 기억영역에 판독/기록 접근을 가지고 있으나, 컴퓨터는 첫번째 기억영역에는 판독전용 접근, 두번째 기억영역에는 판독/기록 접근을 가지고 있다. 분리형 매체 기억장치 또한 프로세서에 통신적으로 연결되어 있다.
기억장치는 기억장치나 연합된 컴퓨터의 기능을 개량시키기 위해서 추가적 옵션들도 형성될 수 있다. 이 옵션들은 독자적으로 또는 조합으로 구현될 수 있다. 하나의 옵션으로 기억장치는 프로세서가 한가지 이상의 암호화/복호화 기능을 위하여 쓸수 있도록 적응된 암호화 모듈을 포함할 수 있다. 이런 기능은 특정 파일서버와의 암호화된 통신, 기억수단에 파일을 암호화하여 저장, 분리형 매체 기억장치를 사용하여 파일을 암호화 하여 저장하는 것들을 포함한다. 암호화 모듈이 사용하는 암호열쇠는 특정 파일서버에서 획득할 수 있다.
다른 하나의 옵션으로, 프로세서는 컴퓨터로부터 파일요청을 받았을 때 일련의 순차적 단계를 따르도록 프로그램될 수 있다. 첫째, 프로세서는 파일이 첫번째로 지정된 기억영역에 저장되었나 판단하고, 파일이 있으면, 판독전용적으로 컴퓨터에 제공한다. 다음, 파일이 저장되 있지 않으면, 프로세서는 하나 이상의 특정 파일서버에 파일을 요청한다. 파일이 하나 이상의 특정 파일 서버에 있으면, 파일은 입수되서, 첫번째로 지정된 기억영역에 저장되고, 판독전용적으로 컴퓨터에 제공된다. 마지막으로, 파일이 다르게 얻을 수 없으면, 파일 입수불가 통보를 컴퓨터에 회신한다. 이 순차적 단계에서 추가로, 프로세서는 파일이 하나 이상의 특정 파일서버에 없으면, 파일이 분리형 매체 기억장치에 있는지 판단하도록 프로그램될 수 있다. 전과 같이, 파일이 있으면, 저장되고 판독전용적으로 컴퓨터에 제공된다.
또 다른 하나의 옵션으로, 프로세서는 두번째로 지정된 기억영역에 기록된 파일을 감시하고, 제어하고, 그리고/또는 처리하도록 프로그램될 수 있다. 또한, 컴퓨터가 네트워크 인터페이스를 통하여 네트워크에 통신적으로 연결되면, 프로세서는 네트워크 인터페이스를 통과하는 컴퓨터부터/로의 네크워크 트래픽을 감시하고, 제어하고, 그리고/또는 처리하도록 프로그램될 수 있다.
또 다른 하나의 옵션으로, 기억장치는 두번째로 지정된 기억영역에 저장된 사용자 파일을 백업이나 저장 목적으로 분리형 매체 기억장치에 복사하도록 프로그램될 수 있다. 다르게는, 아니면 추가로, 기억장치는 두번째로 지정된 기억영역에 저장된 사용자 파일을 하나 이상의 특정 파일서버에 복사하도록 프로그램될 수 있다.
또 다른 하나의 옵션으로, 프로세서는 하나 이상의 특정 파일서버로부터 저장된 파일을 제거하라는 명령을 받으면, 저장된 파일을 기억수단에서 제거하도록 적응될 수 있다. 다르게는, 저장된 파일은 파일 유효기간 표를 포함할 수 있고, 프로세서는 파일 유효기간 표에 의하여 정해진 표준에 따라 저장된 파일을 제거하도록 적응될 수 있다. 이런 표는 파일이 제거되어야할 때의 표로 절대적 시간과 날짜 표, 상대적 시간과 날짜 표, 또는 시간과 연관이 없는 여러 다른 표준을 포함할 수 있다.
그러므로, 전산장치와 전산시스템과 쓰여질 지적(列的) 기억장치가 공개됐다. 개선의 이점은 선호적 구체화의 설명과 도면에서 나올 것이다.
도면에서는 동일한 참조부호는 유사한 구성요소를 나타낸다:
도면 1은 기존 기술에 따라 자산관리 인터페이스가 있는 네트워크 컴퓨터의 개요도;
도면 2는 첫번째 네트워크 계획을 사용하는 네트워크 컴퓨터에 지적 기억장치가 통합되어 있는 개요도;
도면 3은 두번째 네트워킹 계획을 사용하여 네트워크 컴퓨터에 지적 기억장치가 통합되어 있는 개요도;
도면 4는 첫번째 지적 기억장치의 개요도;
도면 5는 두번째 지적 기억장치의 개요도;
도면 6은 지적 기억장치가 컴퓨터의 파일요청에 응하여 사용할 수 있는 셈법을 설명하는 순서도.
도면 1은 기존 기술에 따라 자산관리 인터페이스가 있는 네트워크 컴퓨터의 개요도;
도면 2는 첫번째 네트워크 계획을 사용하는 네트워크 컴퓨터에 지적 기억장치가 통합되어 있는 개요도;
도면 3은 두번째 네트워킹 계획을 사용하여 네트워크 컴퓨터에 지적 기억장치가 통합되어 있는 개요도;
도면 4는 첫번째 지적 기억장치의 개요도;
도면 5는 두번째 지적 기억장치의 개요도;
도면 6은 지적 기억장치가 컴퓨터의 파일요청에 응하여 사용할 수 있는 셈법을 설명하는 순서도.
본문 설명를 위해, "비사용자 파일"이란 단어는 컴퓨터 운영체제의 요소, 어플리케이션의 요소, 또는 사용자가 판독전용 접근만 가지고 있는 파일로 지정된 파일을 의미한다. 본문에 사용되는 것과 같이 "사용자 파일"이란 단어는 비사용자 파일로 정의되지 않는 파일을 의미하고, 보통 사용자의 전산장치 사용의 직접적인 결과로 생성된다. 이런 사용자 파일은 사용자를 위하여 운영체제 또는 어플리케이션에 의해 생성된 임시 파일을 포함할 수 있다. 이러한 정의하에, 비사용자 파일과 사용자 파일 사이의 묘사는 어떤 특정한 컴퓨터 및 네트워크의 컴퓨터나 네트워크 관리자에 의해 가급적 결정된다. 그러므로, 기술에 숙련된 사람은 다른 관리자들이 동일한 파일을 다른 종류로 구분 선택할 수 있다는 것을 인지할 수 있는데, 예로 첫번째 네트워크 관리자는 어떤 특정한 파일을 비사용자 파일로 다른 두번째 네크워크 관리자는 동일한 파일을 사용자 파일로 다룰수 있다.
더하여, "서버"라는 단어는 네트워크상에서 독립적 서버로 운영되도록 구성된 전산장치와 소프트웨어로 독립적 서버의 기능을 효과적으로 가장하고 여러 가상 서버가 네트워크된 하나의 전산장치에의해 제공되는 것을 가능케할 수 있는 “가상 서버” 둘 다 내포한다. 몇 가상 서버가 서버의 기능수행에 필요한 기능성만 가장할 수 있으면, 다른 가상 서버는 원하는 서버 기능성을 전부 복제하기 위하여 전산장치의 모든 하드웨어 구성부품을 가장할 수 있다.
도면 1로 세부적으로 돌아, 도면 1은 기존 기술로 표시된 전형적인 네트워크 컴퓨터(101)의 대표이다. 네트워크 컴퓨터(101)는 기성품이나 주문형이던지 개인용 또는 사업용 컴퓨터나 네트워크 서버일 수 있거나, 개인 휴대 정보 단말기 (PDA), 전화, 또는 임의의 네트워크된 프로그램될 수 있는 장치나 장비같은 특수장치일 수 있다. 컴퓨터(101)는 중앙처리장치(104); 각종 부품사이의 통신을 허용하고 연결하는 내부 인터페이스 버스(105); 운영체제(103)와 어플리케이션(102)이 필요한 파일을 전형적으로 저장하는 하드 디스크 드라이브나 비휘발성 RAM과 같은 보조 기억장치(107); 유선이나 무선으로 컴퓨터(101)가 파일 및 프린터 공유용 서버(101) 그리고/또한 네크워크 어플리케이션 서버(102)같은 네크워크 자료를 가지고 있는 네크워크(109)와의 연결을 위해 사용하는 네트워크 인터페이스(108); 그리고 "대역 외 관리"를 위해 사용될 수 있는 선택적인 네트워크 관리 인터페이스(106)와 같은 일반적인 구성부품을 보이고 있다. 이러한 구성부품은 네트워크된 컴퓨터에는 일반적이어서 기술에 숙련된 사람에게 잘 알려진 많은 기능을 제공한다.
운영체제(103)는 기능적인 컴퓨터를 형성하기 위하여 구성부품사이의 상호작용 관리에 책임 있다. 특히, 운영체제(103)는 어플리케이션(102) 또는 운영체제(103) 자체로부터 일어날 수 있는 파일요청을 취급한다. 이 파일요청은 어플리케이션(102) 또는 운영체제(103)이 보조 기억장치(107), 파일 및 프린터 공유용 서버(111), 또는 네트워크 어플리케이션 서버(112)에 접근을 요구할 때 생긴다. 파일요청을 취급하기 위하여, 운영체제(103)는 컴퓨터에 관련되 사용될 수 있는 다양한 기억장치와 네트워크 프로토콜을 책임지기 위하여 보조 기억장치(107) 및 네트워크 인터페이스(107)의 특성으로 프로그램 된다. 운영체제(103)는 또한 보조 기억장치(107)에 저장된 파일의 관측하고 여러 네트워크 서버(111, 112)에 있는 여러 자원을 컴퓨터 운영과 어떻게 통합하느냐의 정보로 프로그램된다. 그러므로, 정상적인 운영 상황하에서는, 컴퓨터(101)의 운영체제(103)는 많은 다른 복잡한 작업에 대처한다.
관리 인터페이스(106)는 어떤 전산장치에서든지 사용될 수 있으나, 현재 네트워크된 서버에서 널리 사용된다. 관리 인터페이스(106)는 관리자가 서버를 원격 관리하고 하드웨어 구성부품이나 운영상태의 정보를 모으는 것을 허용한다. 관리 인터페이스(106)를 사용하여, 관리자는 컴퓨터(101)를 키거나 끄거나 할 수 있고, 포스트(시동자체 시험 - 부팅전 프로세스) 메시지 순서를 볼 수 있고, 또는 키보드, 비디오, 그리고 마우스(KVM)의 연장으로 원격 콘솔의 기능을 가질 수 있다. 관리 인터페이스(106)는 또한 규칙적인 간격으로 보조 기억장치(107)나 메모리가 나빠지는것 같은 긴요한 이벤트가 있을 때 관리용 서버(110)에 운영상태를 보고하고록 프로그램될 수 있다. 관리 인터페이스는 추가 기판이거나 전산장치의 주요 시스템 기판에 내장될 수 있고 기술에 숙련된 사람들에게 잘 알려진 많은 기능을 제공할 수 있다.
도면2는 내부에 통합된 지적 기억장치(ISD)(202)를 포함하는 네트워크된 컴퓨터(201)를 설명한다. ISD(202)는 또한 분문에 설명된 어떠한 기능성을 잃어버림 없이 컴퓨터(201)에 외장될 수 있다. 이전 기술에서와 같이, 컴퓨터(201)는 CPU(104)와 인터페이스 버스(105)를 포함한다. 보조 기억장치(107)와 네트워크 인터페이스(108)가 포함되어 있지만, ISD(202)가 필요한 기능을 제공할 수 있기 때문에 어느 경우에는 선택적이다. ISD(202)와 다른 구성부품은 각 구성부품에 적합한 컴퓨터 인터페이스(204)를 사용하여 인터페이스 버스(105)에 연결된다. ISD(202)는 ISD(202)가 컴퓨터(201)의 여러 하드웨어 구성부품을 관리할수 있게 하는 관리 인터페이스(205)를 통해서 인터페이스 버스(105)에 추가 연결을 가지고 있다. 디자인에 따라서, 인터페이스 버스(105)는 기술에 숙련된 사람들에게 잘 알려졌듯이 각각의 특정한 기능성에 한정된 다수의 채널을 가질 수 있다.
도면 2의 컴퓨터(201)는, 다른 디자인에서는 다른 서버가 다른 네트워크상에 있을 수 있다 하더라도, 하나의 네트워크상에 있는 세가지의 다른 종류의 서버에 연결되어 있다. 첫번째 서버는 주로 네트워크상의 IDS와 통신하는 지적 기억장치용 서버(SISD)(203)이다. ISD가 네트워크상에서 SISD(203)과 통신하는 유일한 장치의 유형이란 것은 바람직할 수 있으나 필요하지는 않다. 다시 말해, SISD(203)는 ISD 이외의 어떤 장치와도 통신하지 않으며, ISD는 SISD(203) 이외의 어떤 서버와도 통신하지 않는다. 그러나, ISD(202)가 SISD(203)와 만의 통신으로 제한되면, ISD(202)가 컴퓨터(201)에 제공하는 어떠한 연결통과(pass-thru) 통신은SISD(203)에 제한되지 않는다. 실제로, 연결통과를 통하여, 컴퓨터(201)는 네트워크상의 두번째와 세번째 서버(111, 112)와 연락할 수 있다.
기술에 숙련된 사람은 많은 서버와 네트워크 구성이 가능하다는 것을 인식할 것이다. 예를 들면, 두개 이상의 서버가 한 전산장치에 의해 가상 서버로 제공될 수있다. 다르게는, 더 많은 서버가 네트워크 환경에서 중복성 또는 추가 기능성을 소개하기 위하여 추가될 수 있다. 네트워크는 어떤 바람직한 방법으로든지 형성될 수 있다. 예를 들면, 네트워크는 구리 배선, 광섬유, 무선 통신, 또는 아무 유형을 사용하여 형성될 수 있다.
도면 3은 ISD(202)와 컴퓨터(201)의 다른 부품사이에서 공유될 수 있는 분리형 매체 기억장치(301)와 ISD(202)를 포함하는 네트워크 컴퓨터(201)를 설명한다. 예를 들면, 분리형 매체 기억장치(301)는 어플리케이션(102), 운영체제(103), 그리고 ISD(202)가 직접 접근할 수 있는 DVD 드라이브일 수 있다. 다르게는, 어플리케이션(102)과 운영체제(103)는 ISD(202)만을 통해서 DVD 드라이브를 접근할 수 있도록 강요될 수 있어서 (예, 분리형 매체 기억장치(301)와 인터페이스 버스(105) 사이에는 직접적 인터페이스가 없다), ISD(202)가 분리형 매체 기억장치(301)의 사용을 허가하거나 불허할 수 있다. 분리형 매체 기억장치(301)는 CD와 DVD 드라이브에서, RAM 드라이브, USB 드라이브 등과 같은 어떠한 유형의 분리형 매체일수 있다.
도면 4는 ISD(202)와 이것의 6개 기본 구성부품을 설명한다. ISD(202)는 프로세서(403) (캐시 엔진), 주요 CPU 인터페이스(401), 시스템 인터페이스(402), 네트워크 인터페이스(405), 캐시(406) (기억수단), 그리고 분리형 매체 기억장치(407)를 포함한다. ISD 202는 도면 2와 3에서 보였듯이 운영체제에 의해 전형적으로 수행되는 특정 작업을 간단하게 하고 덜기 위하여 컴퓨터와 관련되 사용된다.
캐시 엔진(403)은 ISD(202)에 통신적으로 연결되어 다른 구성부품을 관리한다. 이 기능에서 조력하기 위해, 캐시 엔진(403)은 컴퓨터에 ISD(202)를 통한 네트워크 접근을 제공하기 위한 연결통과와 암호화 엔진(408)을 포함한다. 캐시 엔진(403)의 특수한 기능은 (1) 컴퓨터(201)로의 주요 CPU 인터페이스(401)과 시스템 인터페이스(402), (2) 컴퓨터(301)가 네트워크 서버(111, 112)에 접근하기 위해 사용될 수 있는 연결통과(404), (3) 캐시(406)안에 저장된 파일, (4) 분리형 매체 기억장치(407)의 운영과 (5) 네트워크로의 네트워크 인터페이스(405)를 관리하는 것을 포함한다. 캐시 엔진(403)은 또한 어플리케이션과 운영체제에서의 파일요청과 SISD에서 받은 명령을 처리한다. ISD(202)포함된 각 구성부품과 ISD(202)에 의하여 제공되는 전반적인 목표는 전산장치에서 발견되는 많은 전형적인 구성부품의 관리와 연합된, 기능의 기본적 관리, 파일 저장과 관리, 바이러스와 다른 악성 소프트웨어같은 것으로부터의 파일과 시스템 자료방어같은 의무로부터 운영체제를 구호하기 위한 것이다.
주요 CPU 인터페이스(401)와 시스템 인터페이스(402)는ISD(202)가 컴퓨터에 연결될 때 캐시 엔진(403)이 컴퓨터와 통신하는 것을 가능하게 한다. 유사하게, 네트워크 인터페이스(405)는 ISD(202)가 네트워크에 연결될 때 캐시 엔진(403)이 통신 네트워크상의 다른 네트워크된 장치와 통신하는 것을 가능하게 한다. 주요 CPU 인터페이스 (401)과 네트워크 인터페이스(405) 또한 연결통과를 통하여 서로에서 통신적으로 연결되어 있어, 캐시 엔진(403)이 컴퓨터에서 네트워크 연결을 투과성있게 제공할 수 있다. 케시 엔진(403)은 연결통과(404)를 사용하여 컴퓨터부터/로의 네크워크 통신을 선택적으로 감시하고, 제어하고, 그리고/또는 처리할 수 있다. 예를 들면, 캐시 엔진(403)은 접근제한 정책을 적용하거나 악성 네트워크 통신을 스캔할 수 있다. 캐시 엔진(403)은 또한 컴퓨터에서 운용되는 운영체제와 독립적으로 방화벽 기능을 제공하거나 바이러스나 스파이웨어(spyware)에 감염된 네트워크 통신을 제거할 수도 있다. 다른 예로, 캐시 엔진(403)은 포함된 암호화 엔진을 사용하여 네크워크 통신의 송신을 암호화하거나 수신을 복호화할 수 있다. 이런 암호화와 복호화 기능은 아무 유형의 암호화 산법을 사용하여 수행될 수 있다.
캐시 엔진(403)은 본문에 설명됐듯이 ISD(202)의 기능을 통제하기에 적합한 아무 유형의 중앙처리장치일 수 있다. 사용된 중앙처리장치의 특정한 유형은 디자인 선택의 사정이다. 허용 가능한 중앙처리장치는 여럿 중, 인텔(Intel), 에이엠디(AMD), 아이비엠(IBM), 암(ARM), 엠아이피에스(MIPS)와 같은 납품업자의 직접 회로 부서로부터 가능하다. 기술에 숙련된 사람은 캐시 엔진(403)을 위한 많은 다른 디자인이 구성부품과 ISD(202)의 원하는 기능성을 관리하기 위하여 가능하다는 것을 인식할 것이다.
예를 들면, 현재 가능한 많은 중앙처리장치는 이미 암호화 모듈을 내장하고 있다. 그런 프로세서는 캐시(406)안이나 분리형 매체 기억장치(407) 안에 저장된 파일이나 자료를 암호화하거나, 캐시 엔진(403)부터/로나 전산장치부터/로의 네트워크 통신을 보호하는데 사용될 수 있다. 암호화 모듈을 내장하지 않은 프로세서는 프로세서 외부의 암호화 모듈을 쓸 수 있다. 캐시 엔진(403)은 운영제체(103)와는 독립적으로 캐시(406)에 저장된 파일을 암호화하여 인가안된 접속으로부터 보호할 수 있다. 암호화/복호화 열쇠는 캐시 엔진(403) 자체에 내장될 수 있고, 이런 목적으로 특별히 제공된 분리 메모리(예, 불비활성 메모리나 스마트 카드같은 외장 부품)에 저장될 수 있거나, 캐시 엔진(403)에 의한 접근을 위하여 캐시(406) 안에 저장될 수 있다. 보안성이 높은 구현을 위하여, 캐시 엔진(403)은 SSID와의 “연결성”을 요구하도록 프로그램될 수도 있어, 암호화/복호화 열쇠가 SISD(202)에 의해 관리되고 공급될 수 있다. 이런 구현에서는, ISD(202)가 네트워크에 연결되어서 SSID(203)과 통신할 수 없으면, ISD(202)에 저장된 파일의 접근은 막힌다. 캐시 엔진(403)이 복호화 열쇠를 위하여 네트워크상의 SISD(203)를 접촉 못하면, 캐시 엔진(403)은 캐시(406)안의 파일을 복호화하지 않는다. 따라서, 비록 컴퓨터의 운영체제가 훼손되더라도, 캐시(406)에 저장된 파일은 캐시 엔진(403)이 운영체제(103)와는 독립적으로 파일 암호화/복호화를 관리하기 때문에 암호화되어 완전히 보호된 채 남아있을 것이다. 원하는 보안과 보호의 수준에 따라서, 캐시 엔진(403)은 “연결성”을 지속적, 미리 정해진 간격 (예, 매 15분, 매 2시간, 매일 등), 또는 암호화/복호화 기능이 개시될 때만 검사하도록 프로그램될 수 있다.
주요 CPU 인터페이스(401)와 네트워크 인터페이스(405)는 캐시 엔진(403)이 컴퓨터(201)와 네트워크(109) 각각의 통신을 가능하게 하는 적합한 인터페이스의 아무 유형일 수 있다. 컴퓨터(201)와 네트워크(109)를 ISD(202)에 상호 연결하는 특정한 방법은 디자인 선택의 사정이다. 여럿 중, IDE, SCSI, ATA, SATA, PATA, USB 및 IEEE 1394같은 일반적으로 알려진 체재를 사용하는 방법은 블록모드나 파일모드(자연적이거나 모방적)로 주요 CPU 인터페이스로 허용 가능하다. 여럿 중, 이더넷, ATM, 무선 네트워크 및 셀룰러 네트워크(cellular network) 같은 일반적으로 알려진 네트워크 인터페이스와, 어렷중, TCP/IP와 ATM같은 네트워크 프로토콜은 네트워크 인터페이스(405)로 허용 가능하다. 이런 구성부품은 독립적인 구성부품이나 통합형 중앙처리장치로 여러 컴퓨터 하드웨어 납품업자에게서 일반적으로 널리 얻을 수 있다. 컴퓨터(201)가 ISD(202)를 지닌 주변장치나 이동장치일 때, 네크워크 인터페이스(405)는 직접적 연결 인터페이스의 형식을 가질 수 있다. 예를 들면, PDA는 무선 네트워크 인터페이스 같은 네트워크 인터페이스(405)를 가질 수 있지만, SISD(203)로 작동하는 개인용 컴퓨터에 직접적 연결을 가질 수 있다.
시스템 인터페이스(402)는 컴퓨터(201)을 키거나 끌수 있는 간단한 제어기이거나, 컴퓨터(201)의 시스템 기판이나 여러 구성부품과 직접 연계되어 추가 관리기능을 제공할 수 있는 직접회로일 수 있다. 시스템 인터페이스(402)를 사용해서, 캐시 엔진(403)은 미리 계획한 이벤트나 알려진 관리서버의 전형적 기능를 통합한 SISD(203)로부터의 요구로써 컴퓨터(201)의 여러 구성부품에 관리요구를 보낼 수 있다. 예를 들면, 캐시 엔진(403)은 메모리 누출을 없애기 위해, 밤마다 백업을 시작하기 전에 닫히지 않은 어플리케이션을 종료하기 위해, 또는 어떤 다른 원하는 목적을 위해 매일 밤 컴퓨터(201)을 껏다 킬 수 있다. 다르게는, 또는 추가로, 캐시 엔진(403)은 어떤 구성부품이 고장의 증세를 보이는지 볼려고 몇분마다 컴퓨터 구성부품을 조회할 수 있다. 문제가 검출되면, 캐시 엔진(403)은 관리서버에 경고 보낼 수 있다. 캐시 엔진(403)은 또한 필요에 따라 KVM을 관리국에 보내거나 반향하기 위하여 시스템 인터페이스(402)를 사용할 수 있다. 근본적으로, 캐시 엔진(403)은 기존 기술에서 현재 실행되듯이, 관리 인터페이스(106)(추가 관리기판이나 내장된 관리 구성부품)에 의해 전형적으로 제공되는 관리기능을 제공하기 위하여 시스템 인터페이스(402)를 사용할 수 있다. 따라서, ISD(202)는 다른 관리 인터페이스의 필요성을 없앤다.
ISD(202)는 또한 추가 관리기판이나 내장된 관리 구성부품이 제공 못하는 소프트웨어 자산관리를 제공할 수 있다. 캐시 엔진(403)이 컴퓨터 구성부품 관리기능을 제공할 뿐만 아니라 운영체제(103)나 어플리케이션 (102)으로부터의 파일 요청을 관리하기 때문에, ISD(202)는 하드웨어와 소프트웨어 둘 다의 자산관리를 함께 제공할 수 있다.
더욱이, 알려진 대역 외 관리 기술을 사용하여, 캐시 엔진(403)은 또한, 컴퓨터(201)상에서 운용되는 운영체제(103)나 어플리케이션(102)과는 독립적으로, 컴퓨터(201)의 주변장치를 제어하기 위하여 시스템 인터페이스(402)를 사용할 수있다. 예를 들면, 캐시 엔진(403)은 USB 포트를 제어할 수 있어 (예, 활성화하거나 비활성화 하거나), 관리자 권한을 가진 사용자나 운영체제 조차 USB 플래쉬 메모리(USB flash memory)같은 USB장치에 접근 못한다. 이런 종류의 주변장치 제어는 ISD(202)에 필요한 명령이나 정책을 보낼수 있는 SISD(203)로부터 중앙관리될 수 있으니까, 이런 방법으로 하드웨어 구성부품이나 소프트웨어 자산을 관리해서, 운영체제는 아무것일 수 있고 운영체제에 의존하는 에이전트는 요구되시 않는다.
캐시(406)에 사용되는 특정한 유형의 기억장치 또한 디자인 선택의 사정이다. 캐시(406)는 기술에 숙련된 사람에 알려진 하드 드스크 드라이브, DRAM, SDRAM, 플래쉬 메모리 같은 아무 유형의 랜덤 액세스 매체일 수 있다. 선택은 연합된 전산장치의 예정된 용도에 일반적으로 의존되 있다. 예를 들면, 하드 디스크 드라이브는 데스크탑(desktop)이나 랩탑(laptop) 컴퓨터을 위하여 사용될 수 있고, DRAM은 컴퓨터 전원이 꺼졌다 켜질때 완전히 재시동될 필요가 있으면 사용될 수 있고, SDRAM이나 플래쉬 메모리는 컴퓨터가 저열 방산을 가진 고성능 기억장치를 필요로하면 사용될 수 있고, 또는 분리형 랜덤 액세스 매체는 사용자가 저장된 내용은 유지하면서 다른 컴퓨터로 옮겨다닐 수 있는 환경에서 사용될 수 있다. 따라서, 캐시 엔진(403)에 의해 사용된 프로그램은 선택된 랜덤 액세스 매체의 특정한 유형과 작용하도록 적응될 수 있다. 더하여, 캐시(406)는 어떤 바람직한 계획을 사용하여 두개의 부분으로 분리될 수 있다. 그중 한 부분은 컴퓨터에게 판독전용 접근이 허용되는 비사용자 파일을 위해 지정되고, 다른 부분은 컴퓨터가 판독/기록 접근이 허용되는 사용자 파일을 위해 지정된다. 예를 들면, 캐쉬(406)는 각 지정된 부분이 연속된 어드레스 영역으로 형성된다. 또 다르게는, 두 부분이 불연속 어드레스 영역으로 형성되어, 새 파일이 캐쉬(406)에 기록될때, 새 파일로 사용된 어드레스 영역이 파일이 사용자 파일인자 비사용자 파일인지에 따라서 지정된 부분중 하나로 지정된다.
분리형 매체 기억장치(407)의 특정한 유형 또한 디자인 선택의 사정이다. 분리형 매체 기억장치(407)는 CD-ROM, CD-RW, 여러 포맷 매체 유형의 DVD, 또는 USB점프 드라이브(USB jump drive)같은 아무 유형의 랜덤 액세스 매체 기억장치이거나, 자기 테이프 카트리지같은 순차적 접근 매체 기억장치일 수 있다. 분리형 매체 기억장치(407)의 주된 사용은 캐시 엔진(403)이 SISD(203)와 통신할 수 없을 때, 캐시 엔진(403)이 분리형 매체로부터 요청된 파일을 입수하기 위해서이다. SISD(203)에서 일반적으로 얻을 수 있는 선정된 비사용자 파일은 분리형 매체에 저장될 수 있어, 캐쉬 엔진이 SISD(203)와 통신할 수 없을 때때로 파일에 접근할 수 있다. 더하여, 분리형 매체 기억장치(407)는 몇몇 큰 어플리케이션이 네트워크로 다운로드 될 필요가 없도록, 캐쉬(406)의 판독전용 영역에 비사용자 파일을 미리 거주케 하기 위하여 사용될 수 있다.
분리형 매체 기억장치는 도면 3에서 보여지듯이 운영체제(103)나 어플리케이션(102)이 분리형 매체 기억장치(301)를 직접적으로 사용하는 컴퓨터의 공용 구성부품일 수 있다. 캐시(406)같이, 분리형 매체 기억장치가 공용 구성부품이어야 한다면 어떠한 바람직한 계획을 사용하여 부분적으로 분리될 수있다. 다르게는, 운영체제(103)와 어플리케이션(102)은 분리형 매체 기억장치에 직접적 접근할 수 없고, ISD(202)를 통하여 접근할 수 있어, 캐쉬 엔진(403)이 운영체제(103)나 어플리케이션(102)과 분리형 매체 기억장치와의 통신을 선택적으로 감시하고, 제어하고, 그리고/또는 처리하는 것을 가능하게 한다. 더하여, 캐시 엔진(403)은 분리형 매체 기억장치(301)의 사용을 허용하거나 불허할 수 있다. 예를 들면, 캐시 엔진(403)은 오디오 CD나 백과사전 DVD에 접근을 허용할 수 있지만, 분리형 매체에 저장된 MP3나 인가되지 않은 어플리케이션에의 접근을 불허할 수 있다.
ISD(202)는 자체 내에 내장된 아무 수의 주변장치나 인터페이스를 가질수 있고, 또한 다르게는, 운영체제(103)와 어플리케이션(102)은 이런 주변장치나 인터페이스를 ISD(202)를 통해서만 접근하도록 구성될 수도 있다. 이런 식으로, 주변장치에의 접근은, 캐쉬 엔진(403)이 관리자가 중앙적으로 관리할 수있는 접근규칙이나 정책에 따라 접근을 허용하거나 불허할 수 있으므로, 운영체제(102)와는 독립적으로 제어될 수 있다. 운영체제와는 독립적으로 주변장치의 접속을 중앙적으로 제어할 수 있다는 것은 보안성이 높은 환경에서는 값진 역량이다. 예를 들면, ISD(202)가 분리형 매체 기억장치(407)에의 접근을 허용하지 않으면, 사용자는 민감한 파일을 분리형 매체에 저장할 수 없다. ISD(202)가 어느 부팅 가능한 매체에의 접근을 허용하지 않으면, 사용자는 또한 대체 운영체제로 부팅할 수 없다. 짧게 말해서, ISD(202)는 캐시(406)에 저장된 파일을 관리하고 필요에 따라서 컴퓨터 및 네트워크와 상호작용하면서, 컴퓨터의 여러 구성부품을 제어하도록 프로그램될 수 있다.
도면 5는 전산장치에 주요한 구성부품으로 구성된 ISD(502)를 설명한다. 캐시 엔진(403)은 직접 다른 주변 장치(503)와 연계하도록 구성되고, ISD(502)는 전산장치가 캐시 엔진 (403)만을 통하여 주변장치(503)에 접근하게 구성된다. ISD(502)는 프로그램될 수 있는 전산장치의 기본 구성부품을 포함하도록 구성될 수 있는 사용자 컴퓨팅 영역(501)을 가지고 있다: 선택된 운영체제와 어플리케이션의 빠른 실행을 전달할 수 있는 효율적 CPU, CPU에 의해 사용될 전형적인 주요 랜덤 액세스 메모리, 키보드, 비디오, 그리고 마우스용 사용자 입력/출력 인터페이스. 다른 구성부픔으로의 접근은 캐시 엔진(403)에 의하여 관리되어, 사용자 컴퓨팅 영역(501) 안에서 운용되는 운영체제와 어플리케이션은 캐시(406)에 저장된 파일이나 주변장치(503)에 직접적 접근을 할 수 없다. 더하여, ISD(502)는 캐시 엔진(403)으로의 사용자 입력/출력 인터페이스를 포함하지 않아, 캐시 엔진(403)의 기능이 사용자나 사용자 컴퓨팅 영역(501) 안에서 운용되는 운영체제나 어플리케이션으로 방해되지 않는다. 그러므로, 첫번째 지정된 기억장치 부분에 저장된 비사용자 파일이 보호될 수 있고, 사용자 컴퓨팅 영역(501)안에서 허가된 것 외의 어느 부속된 주변장치에의 접근이 위에 설명된대로 제어될 수 있다.
ISD(502)의 전형적인 구현에서는, 캐시 엔진(403)으로 사용되는 프로세서는 그 의무가 파일 관리와 접근 제어에 제한됨으로 효율성 높은 프로세서일 필요가 없다. 예를 들면, 프로세서는 큰 스프레드시트(spreadsheet), 그래픽 랜더링(graphics rendering) 등 용으로의 역량을 충분히 가지지 않아도 되는데, 이런 효율성 높은 것의 요구는 사용자 컴퓨팅 영역(501)에 있는 CPU에서만 예상되기 때문이다. 그러나, 캐시 엔진(403)으로의 가상화된 컴퓨팅 영역의 직접적 접속이 분문의 개념에 따라 한정되는 한, 사용자 컴퓨팅 영역(501)은 ISD(502)의 개념을 잃어버림 없이 가상화될 수 있다. 더욱이, 사용자 컴퓨팅 영역(501)이 물질적으로 CPU와 메모리로 구성됐거나 가상화됐는지에 관계없이, 사용자 입력/출력은 로컬에 부착된 키보드, 마우스, 비디오나 네트워크상의 원격 키보드, 마우스, 비디오일 수 있다.
ISD의 프로그램은 C++, 자바(Java) 같은 어느 프로그램 언어일 수 있고, 컴파일된 프로그램은 캐시 엔진(403) 자체에 내장되든지, 이런 목적으로 특별히 제공된 분리 메모리(예, 갱신 가능한 펌웨어)에 저장될 수 있다. 다르게는, 프로그램은 캐시 엔진(403)에 의한 접근을 위하여 캐시(406) 안에 저장될 수 있다. 주로, 프로그램은 캐시(406) 안에 저장된 비사용자 파일은 판독전용으로, 사용자 파일은 판독/기록용으로 접근을 전산장치에 주면서, 캐시 엔진(403)이 연합된 전산장치와 통신하는 것을 허용한다. 주요 CPU 인터페이스(401)의 유형에 따라, 프로그램은 캐시(406)에 저장된 파일의 모방적인 블록 레벨 접근(block-level access)이나 파일 레벨 접근(file-level access)제공할 수 있다. 프로그램은 또한 캐시 엔진(403)이 어떤 적합한 네트워크 프로토콜을 사용하여 네트워크 인터페이스(405)를 통해서 네트워크와 통신하는 것을 허용할 수 있다.
도면 6은 캐시 엔진이 운영체제의 요청에 답하여 가급적 따르는 논리를 보여주는 순서도이다. 운영체제가 전형적으로 어플리케이션 프로그램 인터페이스를 통하여 판독과 기록 운영을 어플리테이션을 위하여 처리함으로, 동일한 논리는 어플리케이션의 요청에도 사용된다. 요청(602)이 운영체제로부터 수신되면, 캐시 엔진은 요청이 파일 판독인지 기록인지 판별한다(603). 만약 요청이 파일기록이면, 캐시 엔진은 파일기록 요청이 판독전용으로 지정된 영역으로인지 판독/기록으로 지정된 영역인지 검사한다. 파일 기록 요청이 판독전용으로 지정된 영역으로면, 캐시 엔진은 “무효 요청”이란 통보를 운영체제(605)로 회신하며 요청을 거절한다. 파일 기록 요청이 판독/기록으로 지정된 영역으로면, 캐시 엔진은 판독/기록으로 지정된 영역에 파일을 기록하면서(607), 바이러스 스캔, 암호화, 백업 같은 피처를 처리한다. 피처 처리의 특정한 순서는 피처의 특성에 의한다. 예를 들면, 캐시 엔진은 판독/기록 캐시에 파일을 기록하기 전에 바이러스에 대하여 파일을 스캔할 수 있다. 바이러스가 발견되면, 파일을 검역소에 두거나 기록운영을 완전히 부정하는 것같은 다음 조치를 취할 수 있다. 더하여, 캐시 엔진은 파일을 판독/기록 캐시에 기록한 뒤, 파일서버로 파일을 백업하던지, 또는 분리형 매체에 저장할 수 있다. 일단 파일이 판독/기록으로 지정된 캐시에 성공적으로 기록되고 선호된 피처가 모두 수행됐으면, 캐시 엔진은 "파일 기록 완료”란 통보를 운영체제로 회신한다(610).
캐시 엔진이 요청을 파일판독으로 판별하면(603), 캐시 엔진은 파일판독 요청이 판독전용으로 지정된 영역안에 있는 파일(예, 비사용자 파일)을 위한 것인지, 또는 판독/기록으로 지정된 영역안에 있는 파일(예, 사용자 파일)을 위한것 것인지 판별한다. 파일요청이 비사용자 파일이면, 캐시 엔진은 비사용자 파일이 판독전용으로 지정된 캐시로부터 얻을 수 있는지 판별한다(612). 요청된 비사용자 파일이 판독전용으로 지정된 캐시에서 얻을 수 있으면, 캐시 엔진은 비사용자 파일을 운영체제로 보낸다(613). 요청된 비사용자 파일이 판독전용으로 지정된 캐시에서 얻을 수 없으면, 캐시 엔진은 SISD로 비사용자 파일 요청을 보낸다. 요청은 네트워크상에 있는 모든 SISD에 방송 형태일 수 있거나, 네트워크상의 특정한 SISD로 보내질 수 있다. SISD로의 요청으로 부터, 캐시 엔진은 요청된 비사용자 파일이 네트워크상의 SISD로부터 얻을 수 있는지 판별한다. 요청된 비사용자 파일을 얻을 수 있으면, 캐시 엔진은 SISD로부터 비사용자 파일을 입수하고 판독전용으로 지정된 영역에 복사한다. 그리고 캐시 엔진은 운영체제에 비사용자 파일을 보낸다(613). 만약 요청된 비사용자 파일을 SISD로부터 얻을 수 없으면, 캐시 엔진은 “입수 불가”란 통보를 운영체제로 보내면서 운영체제에게 통지한다.
요청된 파일이 판독/기록으로 지정된 영역에 있는 사용자 파일이면, 캐시 엔진은 파일이 판독/기록으로 지정된 영역에서 얻을 수 있는지 판별한다. 요청된 사용자 파일을 얻을 수 없으면, 캐시 엔진은 파일서버로부터 파일을 입수하는 것이 가능하고 허용되는지 판별한다. 파일이 이전의 백업이나 저장 절차로 파일서버에서 얻을 수 있을지 모른다. 만약 그러하면, 캐시 엔진은 파일서버로부터 사용자 파일을 입수하고, 판독/기록으로 지정된 영역에 복사한다(623). 캐시에서 직접적으로나 파일 서버에서 복사했거나 하여 파일을 얻을 수 있을때, 캐시 엔진은 피처가 활성화 되었는지 판별하고, 활성화된 피처를 처리한다. 피처가 처리되었거나 피처가 활성화되지 않았으면, 파일은 운영체제로 보내진다(621). 다시, 피처 처리의 특정한 순서는 피처의 특성에 의한다. 예를 들면, 자동 백업이 활성화되었으면, 캐시 엔진은 우선 판독/기록으로 지정된 영역 안에 저장된 사용자 파일을 파일서버에 백업으로 저장된 사용자 파일과 비교하고, 가장 최신의 사용자 파일을 컴퓨터에 제공한다. 파일이 캐시에서 얻을수 없거나 파일서버에서 얻을수 없으면, 캐시 엔진은 “입수 불가”란 통보를 운영체제로 보내면서 운영체제에게 통지한다.
캐시 엔진이 운영체제의 요청에 응하여 따르는 실제 논리는 특정한 구현의 필요에 의하여 다른 형식을 취할 수 있다. 기술에 숙련된 사람은, 판독전용 영역과 판독/기록 영역을 분리해 유지하고 본문에 설명된 방법대로 비사용자 파일의 판독전용 접근을 안전하게 제공하며, 파일요청 관리를 하는 다른 논리가 가능한 것을 인식할 것이다.
본문에 설명된 ISD는 운영체제에 독립적이고 어떤 특정한 프로토콜이나 파일 구조를 따르는 것으로 수축되지 않는다. ISD와 상호작용하는 운영체제는 ISD에 저장된 파일을 요청하는데 필요한 프로토콜만으로 프로그램될 필요가 있고, IDS가 유일한 기억주변장치이거나 연결된 기억주변기의 유일한 근원이면, 운영체제는 파일 저장과 유지 보수 작업을 분배할 수 있다. 유리하게, 운영체제와 ISD사이의 통신은 소수 절차를 사용하여 수행될 수 있다. 이 절차만이 운영체제와 시스템 구조에 의존하는 유일한 것이고, 어떤 하드웨어 플래트홈에든지 표준화될 수 있다.
그러므로, 분리된 판독전용 영역과 판독/기록 영역, 분리형 매체 기억장치, 시트템 관리 인터페이스, 그리고 네트워크 인터페이스를 가지고 있는 지적 컴퓨터 기억장치가 공개됐다. 본 발명의 실시예가 보여졌고 설명되어, 본문의 발명 개념에서 벗어나지 않는 더 많은 수정이 가능하다란 것이 기술에 숙련된 사람에게 명백할 것이다. 그러므로, 본 발명은 이하의 청구범의를 제외하고는 제한되지 않는다.
Claims (32)
- 프로세서;
상기 프로세서에 통신적으로 연결되어 컴퓨터와 상기 프로세서 사이의 독점적 통신을 가능하게 하는 컴퓨터 인터페이스;
상기 프로세서에 통신적으로 연결되어 컴퓨터의 하나 이상의 하드웨어 구성부품을 상기 프로세서가 관리할 수 있게 하는 시스템 인터페이스;
상기 프로세서에 통신적으로 연결되어 상기 프로세서의 네크워크상의 통신을 가능하게 하고, 상기 프로세서가 특정 파일 서버와의 독점적 통신을 가능하게 하는 네트워크 인터페이스;
상기 프로세서에 통신적으로 연결되어 첫번째로 지정된 기억영역과 두번째로 지정된 기억영역으로 나눠져, 상기 프로세서는 첫번째와 두번째로 지정된 기억영역 둘 다에 판독/기록 접속이 가능하고, 컴퓨터는 첫번째로 지정된 기억영역에는 판독전용 접속을, 두번째로 지정된 기억영역에는 판독/기록 접속이 가능한 기억수단; 및
상기 프로세서에 통신적으로 연결된 분리형 매체 기억장치
를 포함하는 기억저장장치. - 제1항에 있어서, 상기 기억저장장치는 암호화 모듈이 추가되어 상기 프로세서가 암호화 모듈을 사용하여, (1) 특정 파일 서버와의 암호화된 통신, (2) 상기 기억수단에 암호화된 파일의 저장, 그리고 (3) 상기 분리형 매체 기억장치에 암호화된 파일의 저장 중 최소한 하나의 사항을 가능하게 하는 것을 특징으로 하는 기억저장장치.
- 제2항에 있어서, 상기 기억저장장치는 상기 프로세서가 상기 암호화 모듈과 특정 파일 서버에서 입수한 하나 이상의 암호화 열쇠를 사용하여 상기 기억수단에 저장된 파일을 암호화하고 복호화할 수 있는 것을 특징으로 하는 기억저장장치.
- 제1항에 있어서, 상기 기억저장장치는 상기 프로세서가 컴퓨터로부터 비사용자 파일 요청을 수신하면, 순차적으로 (1)파일이 첫번째로 지정된 기억영역에 저장되었는지 판별하여, 파일이 첫번째로 지정된 기억영역에 저장되어 있으면, 파일을 판독전용적으로 컴퓨터에 제공, (2)파일이 첫번째로 지정된 기억영역에 저장되지 않았으면, 하나 이상의 특정 파일 서버로부터 파일을 요청하여, 파일이 하나 이상의 특정 파일서버로부터 입수 가능하면, 입수한 파일을 첫번째로 지정된 기억영역에 저장하고, 입수한 파일을 판독전용적으로 컴퓨터에 제공, 그리고 (3)파일이 첫번째로 지정된 기억영역에 저장되지 않았고 다르게 입수할 수 없으면, 컴퓨터에 파일 입수 불가 통보를 회신하는 것을 특징으로 하는 기억저장장치.
- 제4항에 있어서, 상기 기억저장장치는, 상기 (2)번 후와 상기 (3)번 전에, 파일이 상기 분리형 매체 기억장치에서 입수될 수 있는지 판별하고, 파일이 상기 분리형 매체 기억장치에서 입수될 수 있으면, 상기 분리형 매체 기억장치에서 파일을 입수하고, 첫번째로 지정된 기억영역에 파일을 저장하고, 입수한 파일을 판독전용적으로 컴퓨터에 제공하는 것을 특징으로 하는 기억저장장치.
- 제1항에 있어서, 상기 기억저장장치는 상기 프로세서가 컴퓨터로부터 사용자 파일 요청을 수신하면, 상기 프로세서가 두번째로 지정된 기억영역에 판독/기록 접속을 컴퓨터에게 제공하는 것을 특징으로 하는 기억저장장치.
- 제1항에 있어서, 상기 기억저장장치는 상기 프로세서가 두번째로 지정된 기억영역에 기록되거나 판독되는 사용자 파일 전부에 대하여 감시, 제어, 그리고 처리 중 하나 이상을 수행하는 것을 특징으로 하는 기억저장장치.
- 제1항에 있어서, 상기 기억저장장치는 컴퓨터가 상기 네트워크 인터페이스를 통하여 네트워크 서버에 통신적으로 연결되어, 상기 프로세서가 상기 네트워크 인터페이스를 통과하는 컴퓨터부터/로의 네트워크 트래픽에 대하여 감시, 제어, 처리 중 하나 이상을 수행하는 것을 특징으로 하는 기억저장장치.
- 제8항에 있어서, 상기 기억저장장치는 상기 처리에 네트워크 트래픽의 암호화 또는 복호화가 포함된 것을 특징으로 하는 기억저장장치.
- 제8항에 있어서, 상기 기억저장장치는 상기 제어에 미리 정해진 규칙에 의한 네트워크 트래픽의 허용이나 불허가 포함된 것을 특징으로 하는 기억저장장치.
- 제1항에 있어서, 상기 기억저장장치는 상기 기억수단이 랜덤 액세스 매체로 구성된 것을 특징으로 하는 기억저장장치.
- 제11항에 있어서, 상기 기억저장장치는 상기 랜덤 액세스 매체 안에서 첫번째로 지정된 기억영역이 연속적인 어드레스 공간으로 구성된 것을 특징으로 하는 기억저장장치.
- 제1항에 있어서, 상기 기억저장장치는 컴퓨터에서 운용되는 소프트웨어가 두번째로 정해진 기억영역에 직접적으로 접근할 수 없는 것을 특징으로 하는 기억저장장치.
- 제1항에 있어서, 상기 기억저장장치는 상기 프로세서가 특정 파일서버 하나로부터 저장된 파일을 제거하라는 명령을 수신하여 상기 기억수단에서 저장된 파일을 제거하는 것을 특징으로 하는 기억저장장치.
- 제1항에 있어서, 상기 기억저장장치는 상기 프로세서가 저장된 파일에 연관된 파일 유효기간 표로 정해진 기간에 따라 저장된 파일을 상기 기억수단에서 제거하는 것을 특징으로 하는 기억저장장치.
- 제15항에 있어서, 상기 기억저장장치는 상기 기간이 파일 유효기간 표에 날짜와 시간으로 정해진 것을 특징으로 하는 기억저장장치.
- 제1항에 있어서, 상기 기억저장장치는 상기 프로세서가 두번째로 정해진 기억영역에 저장된 사용자 파일을 하나 이상의 특정 파일서버로 복사할 수 있는 것을 특징으로 하는 기억저장장치.
- 제1항에 있어서, 상기 기억저장장치는 상기 프로세서가 두번째로 정해진 기억영역에 있는 파일을 상기 분리형 매체 기억장치로 저장할수 있는 것을 특징으로 하는 기억저장장치.
- 하나 이상의 특정 파일서버;
네트워크 서버;
상기 네트워크 서버에 통신적으로 연결되어 하나 이상의 특정 파일서버와 상기 네트워크 서버에서 떨어진 컴퓨터; 및
상기 컴퓨터와 하나 이상의 특정 파일서버에 통신적으로 연결되어 컴퓨터와 통신하고, 프로세서, 컴퓨터 인터페이스, 시스템 인터페이스, 네트워크 인터페이스, 기억수단, 그리고 분리형 매체 기억장치로 구성되어 (1) 상기 컴퓨터 인터페이스는 상기 컴퓨터와 상기 프로세서 사이의 독점적 통신을 가능하게 하고, (2) 상기 시스템 인터페이스는 상기 프로세서가 하나 이상의 컴퓨터 하드웨어 구성부품을 관리할 수 있게 하고, (3) 상기 프로세서는 다른 파일서버를 배제한 특정 파일서버와 통신하기 위하여 상기 네트워크 인터페이스를 사용하고, (4) 상기 분리형 매체 기억장치는 상기 프로세서에 통신적으로 연결되고, (5) 상기 기억수단은 첫번째로 지정된 기억영역과 두번째로 지정된 기억영역을 포함하여, 상기 프로세서는 첫번째와 두번째로 지정된 기억영역 둘 다에 판독/기록 접속을 할수 있고, 상기 컴퓨터는 첫번째로 지정된 기억영역에는 판독전용 접속을, 두번째로 지정된 기억영역에는 판독/기록 접속을 할 수 있게 하는 기억저장장치
를 포함하는 컴퓨터 네트워크. - 제19항에 있어서, 상기 컴퓨터 네트워크는 상기 기억저장장치에 암호화 모듈이 추가되어 상기 프로세서가 암호화 모듈을 사용하여 (1) 특정 파일서버와의 암호화된 통신, (2) 저장수단에 암호화된 파일의 저장, 그리고 (3) 분리형 매체 기억장치에 암호화된 파일의 저장 중 최소한 하나의 사항을 가능하게 하는 것을 특징으로 하는 컴퓨터 네트워크.
- 제20항에 있어서, 상기 컴퓨터 네트워크는 상기 프로세서가 암호화 모듈과 특정 파일서버에서 입수한 하나 이상의 암호화 열쇠를 사용하여 상기 기억수단에 저장된 파일을 암호화하고 복호화할 수 있는 것을 특징으로 하는 컴퓨터 네트워크.
- 제19항에 있어서, 상기 컴퓨터 네트워크는 상기 프로세서가 컴퓨터로부터 비사용자 파일 요청을 수신하면, 순차적으로 (1) 파일이 첫번째로 지정된 기억영역에 저장되었는지 판별하여, 파일이 첫번째로 지정된 기억영역에 저장되어 있으면, 파일을 판독전용적으로 컴퓨터에 제공, (2) 파일이 첫번째로 지정된 기억영역에 저장되지 않았으면 하나 이상의 특정 파일서버로부터 파일을 요청하여, 파일이 하나 이상의 특정 파일서버로부터 입수 가능하면, 입수한 파일을 첫번째로 지정된 기억영역에 저장하고, 입수한 파일을 판독전용적으로 컴퓨터에 제공, 그리고 (3)파일이 첫번째로 지정된 기억영역에 저장되지 않았고 다르게 입수할 수 없으면, 컴퓨터에 파일 입수 불가 통보를 회신하는 것을 특징으로 하는 컴퓨터 네트워크.
- 제22항에 있어서, 상기 컴퓨터 네트워크는, 상기 (2)번 후와 상기 (3)번 전에, 상기 프로세서가 파일이 분리형 매체 기억장치에서 입수될 수 있는지 판별하고, 분리형 매체 기억장치에서 입수될 수 있으면, 분리형 매체 기억장치에서 파일을 입수하고, 첫번째로 지정된 기억영역에 파일을 저장하고, 입수한 파일을 판독전용적으로 컴퓨터에 제공하는 것을 특징으로 하는 컴퓨터 네트워크.
- 제19항에 있어서, 상기 컴퓨터 네트워크는 상기 컴퓨터가 상기 네트워크 인터페이스를 통하여 네트워크 서버에 통신적으로 연결되어, 상기 프로세서가 네트워크 인터페이스를 통과하는 컴퓨터부터/로의 네트워크 트래픽에 대하여 감시, 제어, 처리 중 하나 이상을 수행하는 것을 특징으로 하는 컴퓨터 네트워크.
- 제24항에 있어서, 상기 컴퓨터 네트워크는 상기 처리에 네트워크 트래픽의 암호화 또는 복호화가 포함된 것을 특징으로 하는 컴퓨터 네트워크.
- 제24항에 있어서, 상기 컴퓨터 네트워크는 상기 제어에 미리 정해진 규칙에 의한 네트워크 트래픽의 허용이나 불허가 포함된 것을 특징으로 하는 컴퓨터 네트워크.
- 제19항에 있어서, 상기 컴퓨터 네트워크는 상기 기억수단이 랜덤 액세스 매체로 구성된 것을 특징으로 하는 컴퓨터 네트워크.
- 제27항에 있어서, 상기 컴퓨터 네트워크는 상기 랜덤 액세스 매체안에서 첫번째로 지정된 기억영역이 연속적인 어드레스 공간으로 구성된 것을 특징으로 하는 컴퓨터 네트워크.
- 제19항에 있어서, 상기 컴퓨터 네트워크는 상기 프로세서가 특정 파일서버 하나로부터 저장된 파일을 제거하라는 명령을 수신하여 상기 기억수단에서 저장된 파일을 제거하는 것을 특징으로 하는 컴퓨터 네트워크.
- 제19항에 있어서, 상기 컴퓨터 네트워크는 상기 프로세서가 저장된 파일에 연관된 파일 유효기간 표로 정해진 기간에 따라 저장된 파일을 상기 기억수단에서 제거하는 것을 특징으로 하는 컴퓨터 네트워크.
- 제30항에 있어서, 상기 컴퓨터 네트워크는 상기 기간이 파일 유효기간 표에 날짜와 시간으로 정해진 것을 특징으로 하는 컴퓨터 네트워크.
- 제19항에 있어서, 상기 컴퓨터 네트워크는 상기 프로세서가 두번째로 정해진 기억영역에 저장된 사용자 파일을 하나 이상의 특정 파일서버로 복사할 수 있는 것을 특징으로 하는 컴퓨터 네트워크.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US98186607P | 2007-10-23 | 2007-10-23 | |
US60/981,866 | 2007-10-23 | ||
US12/113,294 | 2008-05-01 | ||
US12/113,294 US8769185B2 (en) | 2007-10-23 | 2008-05-01 | Computer storage device having separate read-only space and read-write space, removable media component, system management interface, and network interface |
PCT/US2008/080934 WO2009055556A1 (en) | 2007-10-23 | 2008-10-23 | Computer storage device having separate read-only space and read-write space, removable media component, system management interface, and network interface |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100087336A true KR20100087336A (ko) | 2010-08-04 |
KR101487865B1 KR101487865B1 (ko) | 2015-01-29 |
Family
ID=40564635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020107011227A KR101487865B1 (ko) | 2007-10-23 | 2008-10-23 | 판독전용 영역과 판독/기록 영역, 분리형 매체 구성부품, 시스템 관리 인터페이스, 네트워크 인터페이스를 가진 컴퓨터 기억장치 |
Country Status (6)
Country | Link |
---|---|
US (4) | US8769185B2 (ko) |
EP (1) | EP2212797B1 (ko) |
JP (1) | JP5427182B2 (ko) |
KR (1) | KR101487865B1 (ko) |
CN (1) | CN101952809B (ko) |
WO (1) | WO2009055556A1 (ko) |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8140786B2 (en) * | 2006-12-04 | 2012-03-20 | Commvault Systems, Inc. | Systems and methods for creating copies of data, such as archive copies |
US7840537B2 (en) | 2006-12-22 | 2010-11-23 | Commvault Systems, Inc. | System and method for storing redundant information |
US9098495B2 (en) | 2008-06-24 | 2015-08-04 | Commvault Systems, Inc. | Application-aware and remote single instance data management |
US8166263B2 (en) | 2008-07-03 | 2012-04-24 | Commvault Systems, Inc. | Continuous data protection over intermittent connections, such as continuous data backup for laptops or wireless devices |
US20100030874A1 (en) * | 2008-08-01 | 2010-02-04 | Louis Ormond | System and method for secure state notification for networked devices |
US8230060B2 (en) * | 2008-08-05 | 2012-07-24 | International Business Machines Corporation | Web browser security |
US8782433B2 (en) * | 2008-09-10 | 2014-07-15 | Inside Secure | Data security |
US9015181B2 (en) * | 2008-09-26 | 2015-04-21 | Commvault Systems, Inc. | Systems and methods for managing single instancing data |
AU2009296695B2 (en) | 2008-09-26 | 2013-08-01 | Commvault Systems, Inc. | Systems and methods for managing single instancing data |
US8412677B2 (en) | 2008-11-26 | 2013-04-02 | Commvault Systems, Inc. | Systems and methods for byte-level or quasi byte-level single instancing |
US8401996B2 (en) | 2009-03-30 | 2013-03-19 | Commvault Systems, Inc. | Storing a variable number of instances of data objects |
US8578120B2 (en) | 2009-05-22 | 2013-11-05 | Commvault Systems, Inc. | Block-level single instancing |
US8225062B2 (en) * | 2009-10-26 | 2012-07-17 | Microsoft Corporation | Controlling memory visibility |
US8099479B2 (en) * | 2009-12-15 | 2012-01-17 | Intel Corporation | Distributed mesh network |
US20110276799A1 (en) * | 2010-05-06 | 2011-11-10 | Keicy Chung | Personal communication system having independent security component |
US8417962B2 (en) * | 2010-06-11 | 2013-04-09 | Microsoft Corporation | Device booting with an initial protection component |
WO2012045023A2 (en) | 2010-09-30 | 2012-04-05 | Commvault Systems, Inc. | Archiving data objects using secondary copies |
KR101713051B1 (ko) * | 2010-11-29 | 2017-03-07 | 삼성전자주식회사 | 하이브리드 메모리 시스템, 및 그 관리 방법 |
US9529547B2 (en) * | 2011-10-21 | 2016-12-27 | Freescale Semiconductor, Inc. | Memory device and method for organizing a homogeneous memory |
US9020890B2 (en) | 2012-03-30 | 2015-04-28 | Commvault Systems, Inc. | Smart archiving and data previewing for mobile devices |
US9384018B2 (en) * | 2012-07-27 | 2016-07-05 | Vmware, Inc. | Virtual intelligent platform management interface for hardware components |
CA2791771C (en) * | 2012-10-05 | 2019-09-10 | Ibm Canada Limited - Ibm Canada Limitee | Dynamic and selective management of integration points using performance metrics |
US9344762B2 (en) * | 2012-10-18 | 2016-05-17 | Broadcom Corporation | Integration of untrusted applications and frameworks with a secure operating system environment |
US9338522B2 (en) * | 2012-10-18 | 2016-05-10 | Broadcom Corporation | Integration of untrusted framework components with a secure operating system environment |
KR20140070686A (ko) * | 2012-11-08 | 2014-06-11 | 삼성전자주식회사 | 화상형성장치, 화상형성방법 및 컴퓨터 판독가능 기록매체 |
JP6029437B2 (ja) * | 2012-11-30 | 2016-11-24 | ルネサスエレクトロニクス株式会社 | 半導体装置及びアクセス制限方法 |
US9633022B2 (en) | 2012-12-28 | 2017-04-25 | Commvault Systems, Inc. | Backup and restoration for a deduplicated file system |
CN104751062B (zh) * | 2013-12-31 | 2019-03-19 | 研祥智能科技股份有限公司 | 一种提高操作系统可靠性的方法及装置 |
US10324897B2 (en) | 2014-01-27 | 2019-06-18 | Commvault Systems, Inc. | Techniques for serving archived electronic mail |
US10691838B2 (en) * | 2014-06-20 | 2020-06-23 | Cypress Semiconductor Corporation | Encryption for XIP and MMIO external memories |
US10339328B1 (en) | 2014-07-15 | 2019-07-02 | Cru Acquisition Group, Llc | Securing stored computer files from modification |
US9807164B2 (en) * | 2014-07-25 | 2017-10-31 | Facebook, Inc. | Halo based file system replication |
US9489507B2 (en) * | 2014-09-02 | 2016-11-08 | Duly Corporation | Secure personal storage device |
KR20160028680A (ko) * | 2014-09-04 | 2016-03-14 | 삼성전자주식회사 | 데이터 저장 장치와 이의 작동 방법 |
US9838384B1 (en) | 2014-12-15 | 2017-12-05 | Amazon Technologies, Inc. | Password-based fraud detection |
US9503451B1 (en) | 2014-12-15 | 2016-11-22 | Amazon Technologies, Inc. | Compromised authentication information clearing house |
US9824207B1 (en) | 2014-12-15 | 2017-11-21 | Amazon Technologies, Inc. | Authentication information update based on fraud detection |
US10324914B2 (en) | 2015-05-20 | 2019-06-18 | Commvalut Systems, Inc. | Handling user queries against production and archive storage systems, such as for enterprise customers having large and/or numerous files |
CN105138374A (zh) * | 2015-08-28 | 2015-12-09 | 成都卫士通信息产业股份有限公司 | 一种程序root权限管控方法和系统 |
US10120573B2 (en) | 2015-09-14 | 2018-11-06 | Microsoft Technology Licensing, Llc. | Modular sequential writing of data to data storage devices |
CN105657508B (zh) * | 2016-01-20 | 2018-08-07 | 上海战诚电子科技股份有限公司 | 电视板卡闪存数据处理方法 |
US10776240B2 (en) * | 2016-11-11 | 2020-09-15 | Seagate Technology Llc | Non-intrusive performance monitor and service engine |
US11469953B2 (en) | 2017-09-27 | 2022-10-11 | Intel Corporation | Interworking of legacy appliances in virtualized networks |
EP4220447A1 (en) * | 2017-10-24 | 2023-08-02 | INTEL Corporation | Hardware assisted virtual switch |
CN108460287A (zh) * | 2018-03-21 | 2018-08-28 | 南通大学 | 内存保护单元中用户控制区域的划分方法及内存保护系统 |
EP3621266B1 (de) * | 2018-09-05 | 2021-07-28 | Siemens Aktiengesellschaft | Verfahren zum betrieb eines webservers |
US11252138B2 (en) * | 2019-01-24 | 2022-02-15 | Dell Products L.P. | Redundant device locking key management system |
CN112948863B (zh) * | 2021-03-15 | 2022-07-29 | 清华大学 | 敏感数据的读取方法、装置、电子设备及存储介质 |
Family Cites Families (67)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5371885A (en) | 1989-08-29 | 1994-12-06 | Microsoft Corporation | High performance file system |
CA2045799C (en) | 1990-07-11 | 1999-03-23 | Kenneth L. Thompson | File system with read/write and read only storage |
US5313631A (en) | 1991-05-21 | 1994-05-17 | Hewlett-Packard Company | Dual threshold system for immediate or delayed scheduled migration of computer data files |
US5758185A (en) | 1992-10-01 | 1998-05-26 | Hudson Soft Co. Ltd. | Method for resetting a system controlled by a CPU and having a semi-autonomous IC unit |
US5751995A (en) | 1994-01-04 | 1998-05-12 | Intel Corporation | Apparatus and method of maintaining processor ordering in a multiprocessor system which includes one or more processors that execute instructions speculatively |
US6006299A (en) | 1994-03-01 | 1999-12-21 | Intel Corporation | Apparatus and method for caching lock conditions in a multi-processor system |
US5636359A (en) | 1994-06-20 | 1997-06-03 | International Business Machines Corporation | Performance enhancement system and method for a hierarchical data cache using a RAID parity scheme |
US5644782A (en) | 1994-10-17 | 1997-07-01 | Motorola, Inc. | System with virtual update capable read-only memory |
US6061731A (en) | 1994-12-06 | 2000-05-09 | Thunderwave, Inc. | Read only linear stream based cache system |
EP0716370A3 (en) | 1994-12-06 | 2005-02-16 | International Business Machines Corporation | A disk access method for delivering multimedia and video information on demand over wide area networks |
US5790848A (en) | 1995-02-03 | 1998-08-04 | Dex Information Systems, Inc. | Method and apparatus for data access and update in a shared file environment |
US5805809A (en) | 1995-04-26 | 1998-09-08 | Shiva Corporation | Installable performance accelerator for maintaining a local cache storing data residing on a server computer |
US6181867B1 (en) | 1995-06-07 | 2001-01-30 | Intervu, Inc. | Video storage and retrieval system |
US5628005A (en) | 1995-06-07 | 1997-05-06 | Microsoft Corporation | System and method for providing opportunistic file access in a network environment |
US5802299A (en) | 1996-02-13 | 1998-09-01 | Microtouch Systems, Inc. | Interactive system for authoring hypertext document collections |
US5832263A (en) | 1996-03-15 | 1998-11-03 | Digidox, Inc. | System and method for in-place modification of information recorded in read-only storage using modifiable non-volatile storage associated with an agent |
US5806074A (en) | 1996-03-19 | 1998-09-08 | Oracle Corporation | Configurable conflict resolution in a computer implemented distributed database |
US5740370A (en) | 1996-03-27 | 1998-04-14 | Clinton Battersby | System for opening cache file associated with designated file of file server only if the file is not subject to being modified by different program |
US5829012A (en) | 1996-04-19 | 1998-10-27 | Unisys Corporation | System for programmably providing modified read signals within a ROM-based memory |
JP3269967B2 (ja) | 1996-04-24 | 2002-04-02 | 株式会社日立製作所 | キャッシュコヒーレンシ制御方法、および、これを用いたマルチプロセッサシステム |
US5889935A (en) | 1996-05-28 | 1999-03-30 | Emc Corporation | Disaster control features for remote data mirroring |
US5935207A (en) | 1996-06-03 | 1999-08-10 | Webtv Networks, Inc. | Method and apparatus for providing remote site administrators with user hits on mirrored web sites |
US5996022A (en) | 1996-06-03 | 1999-11-30 | Webtv Networks, Inc. | Transcoding data in a proxy computer prior to transmitting the audio data to a client |
US6134583A (en) | 1996-07-01 | 2000-10-17 | Sun Microsystems, Inc. | Method, system, apparatus and article of manufacture for providing identity-based caching services to a plurality of computer systems (#16) |
US6167490A (en) | 1996-09-20 | 2000-12-26 | University Of Washington | Using global memory information to manage memory in a computer network |
US6061740A (en) | 1996-12-09 | 2000-05-09 | Novell, Inc. | Method and apparatus for heterogeneous network management |
SE9700622D0 (sv) | 1997-02-21 | 1997-02-21 | Ericsson Telefon Ab L M | Anordning och metod vid datanät |
US6412023B1 (en) | 1998-05-21 | 2002-06-25 | Sony Corporation | System for communicating status via first signal line in a period of time in which control signal via second line is not transmitted |
US6065099A (en) | 1997-08-20 | 2000-05-16 | Cypress Semiconductor Corp. | System and method for updating the data stored in a cache memory attached to an input/output system |
JPH1185710A (ja) | 1997-09-16 | 1999-03-30 | Toshiba Corp | サーバ装置およびファイル管理方法 |
US6275953B1 (en) | 1997-09-26 | 2001-08-14 | Emc Corporation | Recovery from failure of a data processor in a network server |
US6393526B1 (en) | 1997-10-28 | 2002-05-21 | Cache Plan, Inc. | Shared cache parsing and pre-fetch |
US6623529B1 (en) | 1998-02-23 | 2003-09-23 | David Lakritz | Multilingual electronic document translation, management, and delivery system |
US6088694A (en) | 1998-03-31 | 2000-07-11 | International Business Machines Corporation | Continuous availability and efficient backup for externally referenced objects |
US6377991B1 (en) | 1998-05-29 | 2002-04-23 | Microsoft Corporation | Method, computer program product, and system for migrating URLs within a dynamically changing distributed cache of URLs |
JPH11355357A (ja) | 1998-06-08 | 1999-12-24 | Matsushita Electric Ind Co Ltd | ファイル転送方法とファイル受信装置とファイル送信装置とファイル中継装置 |
US6292852B1 (en) | 1998-10-23 | 2001-09-18 | Computer Performance, Inc. | High-performance multiple-media duplicating system |
US6148298A (en) | 1998-12-23 | 2000-11-14 | Channelpoint, Inc. | System and method for aggregating distributed data |
US6442601B1 (en) | 1999-03-25 | 2002-08-27 | International Business Machines Corporation | System, method and program for migrating files retrieved from over a network to secondary storage |
US6701415B1 (en) | 1999-03-31 | 2004-03-02 | America Online, Inc. | Selecting a cache for a request for information |
US6553411B1 (en) | 1999-05-18 | 2003-04-22 | International Business Machines Corporation | System and method for cache acceleration |
JP4230147B2 (ja) | 1999-08-30 | 2009-02-25 | 三菱電機株式会社 | プログラマブルコントローラシステムおよびプログラマブルコントローラシステムのリセット制御方法 |
US6775695B1 (en) | 1999-10-29 | 2004-08-10 | Hewlett-Packard Development Company, L.P. | Client session depth based caching in proxy servers |
US6434548B1 (en) | 1999-12-07 | 2002-08-13 | International Business Machines Corporation | Distributed metadata searching system and method |
US20020073167A1 (en) | 1999-12-08 | 2002-06-13 | Powell Kyle E. | Internet content delivery acceleration system employing a hybrid content selection scheme |
WO2001063485A2 (en) | 2000-02-24 | 2001-08-30 | Transfinity Corporation | Content distribution system |
US7043563B2 (en) | 2000-04-17 | 2006-05-09 | Circadence Corporation | Method and system for redirection to arbitrary front-ends in a communication system |
JP3230519B2 (ja) | 2000-06-23 | 2001-11-19 | 富士ゼロックス株式会社 | ネットワーク中継装置 |
US7006099B2 (en) | 2000-08-15 | 2006-02-28 | Aware, Inc. | Cache system and method for generating uncached objects from cached and stored object components |
US6732237B1 (en) | 2000-08-29 | 2004-05-04 | Oracle International Corporation | Multi-tier caching system |
US6928051B2 (en) | 2000-12-18 | 2005-08-09 | Intel Corporation | Application based bandwidth limiting proxies |
US6651141B2 (en) | 2000-12-29 | 2003-11-18 | Intel Corporation | System and method for populating cache servers with popular media contents |
US7035911B2 (en) | 2001-01-12 | 2006-04-25 | Epicrealm, Licensing Llc | Method and system for community data caching |
US6745295B2 (en) | 2001-04-19 | 2004-06-01 | International Business Machines Corporation | Designing a cache with adaptive reconfiguration |
US6754799B2 (en) | 2001-05-16 | 2004-06-22 | Microsoft Corporation | System and method for indexing and retrieving cached objects |
US6702167B2 (en) * | 2001-05-18 | 2004-03-09 | Medela Holding Ag | Breastpump backpack |
US7036020B2 (en) | 2001-07-25 | 2006-04-25 | Antique Books, Inc | Methods and systems for promoting security in a computer system employing attached storage devices |
US6839706B2 (en) | 2001-08-06 | 2005-01-04 | Lefthand Networks, Inc. | Block data storage within a computer network |
EP1595363B1 (en) | 2001-08-15 | 2016-07-13 | The Board of Governors for Higher Education State of Rhode Island and Providence Plantations | Scsi-to-ip cache storage device and method |
US7444393B2 (en) | 2001-10-30 | 2008-10-28 | Keicy K. Chung | Read-only storage device having network interface, a system including the device, and a method of distributing files over a network |
CA2411294C (en) | 2001-11-06 | 2011-01-04 | Everyware Solutions Inc. | A method and system for access to automatically synchronized remote files |
US7069351B2 (en) | 2003-06-02 | 2006-06-27 | Chung Keicy K | Computer storage device having network interface |
JP2005150829A (ja) | 2003-11-11 | 2005-06-09 | Canon Inc | ネットワークシステム、クライアント、サーバ、情報漏洩防止方法、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体 |
US20050165837A1 (en) | 2004-01-22 | 2005-07-28 | International Business Machines Corporation | System and method for embedded java memory footprint performance improvement |
US7447768B2 (en) * | 2005-01-19 | 2008-11-04 | Facetime Communications, Inc. | Categorizing, classifying, and identifying network flows using network and host components |
US20070088857A1 (en) * | 2005-09-30 | 2007-04-19 | Travis Schluessler | Using sequestered memory for host software communications |
US9092635B2 (en) * | 2006-03-31 | 2015-07-28 | Gemalto Sa | Method and system of providing security services using a secure device |
-
2008
- 2008-05-01 US US12/113,294 patent/US8769185B2/en active Active
- 2008-10-23 CN CN200880121957.4A patent/CN101952809B/zh not_active Expired - Fee Related
- 2008-10-23 EP EP08841329.9A patent/EP2212797B1/en not_active Not-in-force
- 2008-10-23 WO PCT/US2008/080934 patent/WO2009055556A1/en active Application Filing
- 2008-10-23 KR KR1020107011227A patent/KR101487865B1/ko active IP Right Grant
- 2008-10-23 JP JP2010531237A patent/JP5427182B2/ja not_active Expired - Fee Related
-
2014
- 2014-07-01 US US14/320,933 patent/US9292222B2/en active Active
-
2016
- 2016-03-22 US US15/077,411 patent/US10120572B2/en active Active
-
2018
- 2018-11-06 US US16/181,551 patent/US11061566B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20140317399A1 (en) | 2014-10-23 |
CN101952809A (zh) | 2011-01-19 |
US11061566B2 (en) | 2021-07-13 |
WO2009055556A1 (en) | 2009-04-30 |
EP2212797A1 (en) | 2010-08-04 |
JP2011503689A (ja) | 2011-01-27 |
CN101952809B (zh) | 2014-06-18 |
US10120572B2 (en) | 2018-11-06 |
JP5427182B2 (ja) | 2014-02-26 |
US20190087093A1 (en) | 2019-03-21 |
US8769185B2 (en) | 2014-07-01 |
US20090106480A1 (en) | 2009-04-23 |
EP2212797A4 (en) | 2011-05-25 |
KR101487865B1 (ko) | 2015-01-29 |
EP2212797B1 (en) | 2015-12-23 |
US9292222B2 (en) | 2016-03-22 |
US20160371006A1 (en) | 2016-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11061566B2 (en) | Computing device | |
US10140452B2 (en) | Protecting computing devices from unauthorized access | |
US8775369B2 (en) | Computer system architecture and method having isolated file system management for secure and reliable data processing | |
US9455955B2 (en) | Customizable storage controller with integrated F+ storage firewall protection | |
US8566603B2 (en) | Managing security operating modes | |
US9824220B2 (en) | Secure execution of software modules on a computer | |
US20100042796A1 (en) | Updation of Disk Images to Facilitate Virtualized Workspaces in a Virtual Computing Environment | |
KR20130058058A (ko) | 서비스 프로세서 컴플렉스 내의 데이터 저장을 위한 요구 기반 usb 프록시 | |
EP4062278A1 (en) | Data management | |
US11592998B2 (en) | System and method for secure access to a distributed virtual firmware network drive | |
US8353044B1 (en) | Methods and systems for computing device remediation | |
AU2005248713A2 (en) | Isolated multiplexed multi-dimensional processing in a virtual processing space having virus, spyware, and hacker protection features | |
US12067121B2 (en) | Trusted boot method and apparatus, electronic device, and readable storage medium | |
JP2004152251A (ja) | セキュリティに関する情報を更新する方法、クライアント、サーバ、及び管理端末 | |
RU2623887C2 (ru) | Способ установки обновления модуля полнодискового шифрования | |
RU2571724C2 (ru) | Система и способ полнодискового шифрования с проверкой совместимости загрузочного диска | |
Weidner | SLES Security Guide |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20170303 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20181121 Year of fee payment: 7 |