차례:
정의-DMA (Direct Memory Access) 란 무엇입니까?
DMA (직접 메모리 액세스)는 입 / 출력 (I / O) 장치가 CPU를 우회하여 메모리 작업 속도를 높이기 위해 주 메모리와 직접 또는 주 메모리에서 데이터를주고받을 수있는 방법입니다. 프로세스는 DMA 컨트롤러 (DMAC)로 알려진 칩에 의해 관리됩니다.
Techopedia는 DMA (Direct Memory Access)를 설명합니다.
구형 컴퓨터에서는 4 개의 DMA 채널 번호가 0, 1, 2 및 3으로 지정되었습니다. 16 비트 ISA (Industry Standard Architecture) 확장 버스가 도입되면 채널 5, 6 및 7이 추가되었습니다. ISA는 IBM 호환 컴퓨터의 컴퓨터 버스 표준으로, 장치가 더 빠른 속도로 트랜잭션 (버스 마스터 링)을 시작할 수 있습니다. ISA는 AGP (Accelerated Graphics Port) 및 PCI (Peripheral Component Interconnect) 확장 카드로 대체되어 훨씬 빠릅니다. 각 DMA는 초당 약 2MB의 데이터를 전송합니다.
컴퓨터의 시스템 리소스 도구는 하드웨어와 소프트웨어 간의 통신에 사용됩니다. 네 가지 유형의 시스템 리소스는 다음과 같습니다.
- I / O 주소
- 메모리 주소
- 인터럽트 요청 번호 (IRQ)
- DMA (직접 메모리 액세스) 채널
DMA 채널은 주변 장치와 시스템 메모리간에 데이터를 통신하는 데 사용됩니다. 4 개의 시스템 리소스는 모두 버스의 특정 회선에 의존합니다. 버스의 일부 라인은 IRQ에 사용되고 일부는 주소 (I / O 주소 및 메모리 주소)와 일부는 DMA 채널에 사용됩니다.
DMA 채널을 통해 장치는 CPU를 작업 과부하에 노출시키지 않고 데이터를 전송할 수 있습니다. DMA 채널이 없으면 CPU는 I / O 장치의 주변 장치 버스를 사용하여 모든 데이터를 복사합니다. 주변 장치 버스를 사용하면 읽기 / 쓰기 프로세스 중에 CPU가 차지하며 작업이 완료 될 때까지 다른 작업을 수행 할 수 없습니다.
DMA를 사용하면 CPU는 데이터 전송이 수행되는 동안 다른 작업을 처리 할 수 있습니다. 데이터 전송은 먼저 CPU에 의해 시작됩니다. DMA 채널과 I / O 장치간에 데이터를 전송하는 동안 CPU는 다른 작업을 수행합니다. 데이터 전송이 완료되면 CPU는 DMA 컨트롤러로부터 인터럽트 요청을받습니다.
