쓰기 전용 메모리(엔지니어링)

Write-only memory (engineering)

정보 기술에서 쓰기 전용 메모리(WOM)쓰기 전용 메모리 위치나 레지스터로서, 쓰기는 가능하나 읽지는 않는다.이 용어는 문자 그대로의 의미 외에도 한 회로에 의해 쓰여진 데이터를 다른 회로에 의해서만 읽을 수 있는 상황에 적용될 수 있다.후자의 상황 중 가장 흔한 일은 프로세서가 제어하고 있는 하드웨어의 쓰기 전용 레지스터에 데이터를 쓰는 경우다.하드웨어는 명령을 읽을 수 있지만 프로세서는 읽을 수 없다.이로 인해 하드웨어용 장치 드라이버를 생성하는 데 문제가 발생할 수 있다.

쓰기 전용 메모리는 또한 암호 해독 중에 데이터가 가로채지는 것을 방지하기 위한 수단으로 보안과 암호화에 있는 응용프로그램을 찾는다.

하드웨어 사용

1972년, 읽기 전용 기억장치(ROM)의 정반대인 WOM이 시그니틱스에 의해 저질러진 내부 실용적인 농담으로 소개되었다.[1]그러나, 이 개념이 실제로 마이크로프로세서 시스템의 특정 기능을 기술한다는 것이 곧 인식되었다.[2]

쓰기 전용 메모리의 가장 빈번한 발생은 메모리 위치가 등록되어 있거나 프로세서 외부의 하드웨어를 제어하거나 하드웨어로 정보를 전달하는 데 사용되는 집적회로다.중앙처리장치(CPU)는 이러한 위치에 쓸 수 있으므로 하드웨어를 제어할 수 있지만, 정보를 다시 읽고 하드웨어의 현재 상태를 검색할 수는 없다.메모리는 CPU의 관점에서만 쓰기 전용이다.그러한 준비는 비용을 절약하기 위해 소형 내장형 마이크로컨트롤러 시스템에서 흔히 이루어지며, 기기 드라이버 소프트웨어의 작성자에게 어려움을 야기할 수 있다.[3]현재 하드웨어 상태를 CPU에 알 수 없는 경우 새 명령을 전송하여 알려진 상태로만 전환할 수 있으며, 이로 인해 상태가 변경될 수 있다.[4]이러한 어려움을 완화하기 위해 WOM의 내용은 일반 메모리의 CPU에 의해 미러링될 수 있다.[5]그러나 이 전략은 레지스터가 하드웨어의 관점에서 읽기 전용인 경우에만 신뢰할 수 있다.외부 하드웨어가 CPU와 독립적으로 자체 상태를 변경할 수 있다면 하드웨어 상태는 CPU 메모리에 미러링되는 해당 상태의 이미지와 다를 수 있다.

이러한 종류의 사용의 예는 초기 PC의 메모리에 대한 액세스와 관련된 것이다.기존 PC는 1MB의 메모리만 처리할 수 있는 8086 또는 8088 프로세서를 사용했다.이 중 상당 부분이 BIOS에 의해 점유되어 주소 지정이 가능한 RAM640kB에 불과했다.많은 어플리케이션의 메모리 요구량이 곧 이 수치를 넘어섰다.한계를 극복하는 한 가지 방법은 은행 교환형 RAM을 사용하는 것이다.다수의 RAM 뱅크가 제공되지만 메모리 위치에 영구적으로 할당되지는 않는다.특정한 구현에서는, 메모리 공간에 대한 은행의 할당을 제어하는 컴퓨터에 특별한 보드가 추가된다.제어판에는 자체 메모리 칩이 있다.컴퓨터는 이 칩에 데이터를 쓸 수 있지만 제어반 자체만이 칩을 읽을 수 있어 '쓰기 전용' 메모리라고 불린다.[6]

또 다른 예는 그래픽 처리 장치(GPU)가 수행하는 일부 기능에 관한 것이다.예를 들어 GPU는 그래픽 메모리의 내용에 대해 셰이더 처리를 수행할 수 있다.GPU가 읽기 전용 위치에서 셰이더 프로세스에 대한 입력을 받아 반복 후 읽기 및 쓰기 버퍼 간에 데이터를 복사할 필요 없이 다른 쓰기 전용 위치에 셰이더 출력을 쓰는 것이 더 빠르고 효율적일 수 있다.[7]

16550 UART의 파생상품이 여전히 광범위하게 사용되고 있는 경우, 여전히 현대적 관련이 있는 예를 찾아볼 수 있다.8250 UART의 8개 구성 레지스터와의 호환성을 깨지 않고 데이터 FIFO를 추가하려면 쓰기 전용 "FIFO 제어 레지스터"에 읽기 전용 "중복 식별 레지스터"와 동일한 포트 주소를 할당했다.그 주소 프로그램에 FIFO 제어 레지스터를 쓰지만, 그것을 다시 읽을 방법이 없다.

이 용어는 또한 전자 판독기에 사용되는 전자잉크 화면과 같은 특정 디스플레이 장치의 컴퓨터 뷰를 설명하는 데 사용된다.[8]

보안 및 암호화

GPU의 프레임 버퍼를 쓰기 전용 메모리로 효과적으로 전환하기 위해 잠그는 것은 암호화된 데이터를 보호하는 데 유용할 수 있다.암호화된 데이터가 목적지에 도착하면 암호를 해독해야 사용자에게 표시할 수 있다.CPU나 주변 장치로 접근할 수 있는 메모리에 암호화되지 않은 물질이 존재한다는 것은 잠재적인 보안 취약점이다.이러한 약점은 GPU 내에서 암호 해독을 수행하고 암호화되지 않은 데이터를 메모리에 직접 기록함으로써 완화될 수 있다.프레임 버퍼가 잠겨 있는 동안에는 데이터를 읽을 수 없으며, 잠금이 해제되면 다른 데이터가 표시된다.[9]칩을 특징으로 하는 현대의 모든 스마트 카드도 WOM 기술에 의존한다고 할 수 있는데, 이는 카드 리더가 직접 읽을 수 없는 특정 암호화 키가 있는 공장에서 프로그래밍되기 때문이다.대신 키는 암호를 검증하거나 특정 콘텐츠를 해독하는 알고리즘에 의해 간접적으로 사용된다.닌텐도는 디지털 서명을 승인하는 것으로 파티션이 검증될 때까지만 쓰도록 유지되는 게임 코드에 하드 디스크 부분을 임시 쓰기 전용 저장소로 사용하는 특허권을 가지고 있다.[10]

계산성 이론

계산가능성 이론에서, 일부 계산 모델에 WOM을 추가하는 것은 그들의 계산력을 증가시킬 수 있다.[11]

참고 항목

  • Null 장치 또는/dev/null, 또 다른 "쓰기 전용" 개념
  • 1857년 특허를 받은 파노토그래프, 소리를 녹음한 최초의 장치지만 재생할 수는 없다.

참조

  1. ^ Pease, Robert A. "The origin of the WOM — the "Write Only Memory"". National Semiconductor. Archived from the original on 18 June 2011.
  2. ^ 1976 WESCON technical papers. Los Angeles, California: Western Electronic Show and Convention. September 14–17, 1976. p. 17. Archived from the original on June 27, 2014. Retrieved May 20, 2013.
  3. ^ Tim Roberts (August 17, 2004). "If every hardware engineer just understood that … write-only registers make debugging almost impossible, our job would be a lot easier". Microsoft. Archived from the original on August 21, 2004. Retrieved 2011-11-03.
  4. ^ 리포프스키, 페이지 122
  5. ^ Jack G. Gansslee, Michael Barr, Embedded Systems Dictionary, ISBN 1578201209, 2003, "Write-only register" Archived 2014-07-05 Wayback Machine에 보관
  6. ^ 오웬, 200-202페이지
  7. ^ 사일러, 143페이지
  8. ^ 샤프 LCD 데이터 시트와 동일
  9. ^ 케로미티스, 403페이지
  10. ^ 하드 디스크 드라이브 및 인터넷 액세스 기능을 갖춘 비디오 게임 시스템용 보안 시스템 https://patents.google.com/patent/US6942573B2 웨이백머신에 2021-12-14 보관
  11. ^ Yakaryilmaz, Abuzer; Freivalds, Rusins; Say, A. C. Cem; Agadzanyan, Ruben (March 2012). "Quantum computation with devices whose contents are never read". Natural Computing. 11 (1): 81–94. arXiv:1011.1201. doi:10.1007/s11047-011-9270-0. S2CID 12513092.

참고 문헌 목록