입력 및 출력 장치(I/O)는 컴퓨터 프로세서와 정보를 주고받는 키보드나 모뎀과 같은 컴퓨터 시스템의 일부입니다. 메모리 매핑된 I/O 시스템에서 I/O 장치는 컴퓨터 메모리의 일부를 메시지 전송 주소로 사용합니다. 격리된 메모리 시스템이 있는 컴퓨터에서 I/O와 메모리는 다른 주소를 갖습니다.
입출력
I/O 장치를 메시징하는 프로세스는 컴퓨터 메모리와 데이터를 교환하는 것과 유사하기 때문에 컴퓨터 시스템은 I/O를 메모리 뱅크의 주소에 매핑할 수 있습니다. 동일한 버스(프로세서와 정보를 주고받는 전자 경로)는 메모리와 입력 및 출력 장치에 모두 액세스하는 역할을 합니다. 격리된 메모리의 한 가지 단점은 I/O 및 메모리 작업에 동일한 주소 집합을 사용하기 때문에 버스에 대해 메모리 맵 시스템이 더 간단하다는 것입니다.
오늘의 비디오
메모리 맵
메모리 매핑 시스템에서는 컴퓨터가 메모리에 액세스하는 다른 소프트웨어 옵션과 I/O 작업을 구별하기 어려워집니다. 격리된 메모리 시스템에는 이 문제가 없습니다. 메모리 매핑된 컴퓨터의 I/O 작업은 전체 메모리 주소의 일부만 사용하여 위치를 더 구별하기 쉽게 만듭니다. 격리된 메모리 시스템은 메모리 매핑된 컴퓨터와 달리 메모리 및 I/O 장치에 대해 동일한 디코딩 및 제어 시스템을 사용할 수 없기 때문에 더 복잡합니다. 메모리 매핑된 컴퓨터에서 메모리에서 데이터를 가져오는 모든 명령은 입력 및 출력 장치에서도 작동합니다.
프로그램 작성
메모리가 분리된 컴퓨터에서는 프로그래밍이 더 깔끔합니다. I/O에는 별도의 주소가 있으므로 컴퓨터는 이 주소를 사용하여 프로그램이 작동해야 하는 메모리인지 I/O인지 식별할 수 있습니다. 그러나 메모리 매핑을 사용하면 메모리를 참조하는 모든 명령을 I/O 시스템에 대한 명령으로 사용할 수도 있습니다. 격리된 메모리를 사용하면 프로그램에 데이터를 추출하거나 메모리 또는 I/O 주소로 보내기 위해 "In" 및 "Out" 명령어를 추가해야 합니다.
메모리 공간
컴퓨터가 메모리 매핑된 I/O 시스템을 사용할 때 컴퓨터가 메모리에 사용하는 공간 중 일부는 입력 및 출력 주소에 할당되고 실제 메모리 저장에는 더 적게 남습니다. 메모리 매핑을 사용하면 I/O 주소가 주변 메모리 뱅크와 구별되도록 기록되어야 합니다. I/O 주소 할당은 격리된 메모리 시스템에서 더 간단합니다. I/O 장치는 주어진 주소의 메모리보다 적은 공간을 차지하기 때문에 I/O 주소의 메모리 공간 중 일부가 사용되지 않고 낭비될 수 있습니다.