inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제

다양한 입출력방법

메모리맵 입출력과 고립형 입출력의 물리적 차이가 이게 맞나요?

224

김동현

작성한 질문수 16

0

  1. "메모리 맵 입출력은 메모리에 접근하기 위한 주소공간과 입출력 장치에 접근하기 위한 주소공간을 하나의 주소공간으로 간주하는 방법입니다." 는 한마디로 같는 램 안에 섞여잇단 말씀인가요? 예시로 1024개의 주소를 나타내는 램에 반은 일반적인 메모리를 위해, 반은 입출력장치를 위해 사용된다는 말씀인가요?

  2. 그렇다면 고립형 입출력에서 메모리에도 1024, 입출력장치도 1024개의 주소를 사용할수 잇다는 말씀은...램이 두배로 증가한것도 아닐테고...메모리를 위한 주소공간은 램에 표현되고 입출력장치를 위한 주소공간은 입출력장치 내의 레지스터나 입출력장치내의 램을 뜻하는게 맞을까요?

  3. 좀 두서없어서 죄송합니다...정리하자면 메모리맵 입출력에서 메모리를 위한 주소공간과 입출력을 위한 주소공간은 램에 존재하는 것이고 고립형 입출력에서 메모리를 위한 주소공간은 램에, 입출력장치를 위한 주소공간은 장치 컨트롤러 내의 기억장치에 존재하는 것..이 맞을까요?

컴퓨터-구조 운영체제 기술면접

답변 2

0

강민철

안녕하세요

답변이 늦어 죄송합니다.

 

하드웨어적인 주소 공간이라기보다는 논리적인 주소공간이라고 보시는 것이 옳습니다.

CPU 입장에서 바라본 주소를 하나의 주소공간으로 간주하는 방법 = 메모리 맵 입출력

CPU 입장에서 바라본 주소를 별도의 주소공간으로 간주하는 방법 = 고립형 입출력

이렇게 생각해주시기면 좋을 것 같습니다.

 

0

김동현

아~ 논리적인 구분이군요. 감사합니다

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 김동현 님께서 질문하신 메모리맵 입출력과 고립형 입출력에 대한 이해를 돕기 위해 설명드리겠습니다.

  1. 메모리 맵 입출력 (MMIO): 이 방식은 말 그대로, 입출력 장치들이 메모리 주소 공간 내에 포함되어 있다는 것을 의미합니다. 즉, 시스템의 메모리 공간에서 특정 주소를 통해 메모리나 입출력 장치에 접근할 수 있습니다. 예를 들어, 1024개의 메모리 주소가 있다면, 일부는 실제 데이터 저장을 위해 사용되고, 일부분은 입출력 장치 제어를 위해 사용됩니다. 따라서, CPU는 특정 주소에 접근할 때 메모리인지 입출력 장치인지 구분 없이 통합된 방식으로 접근하는 것입니다.

  2. 고립형 입출력 (Isolated I/O): 이 방식에서는 메모리와 입출력 장치가 별도의 주소 공간을 가지게 됩니다. 따라서 메모리 접근과 입출력 장치 접근에 서로 다른 명령어가 필요합니다. 이는 메모리 공간과는 별개로 입출력 장치를 제어할 수 있도록, 주소 공간이 메모리와 독립적으로 존재하는 구조를 가지고 있음을 의미합니다. 고립형 입출력에서 메모리의 주소 공간은 실제 램에 존재하며, 입출력 장치의 주소 공간은 입출력 포트나 장치 컨트롤러의 레지스터 등에 존재하게 됩니다.

  3. 간단한 정리:

    • 메모리 맵 입출력에서는 메모리와 장치들이 동일한 주소 공간을 공유합니다.
    • 고립형 입출력에서는 메모리와 장치들의 주소 공간이 독립적으로 분리되어 있습니다.

관련된 질문과 답변으로 더 많은 정보를 얻고자 하시면, 아래의 링크를 참고해 주세요:
- 고립형 입출력 - “입출력 전용 명령어와 같은 명령어 사용 여부”
- 메모리 맵 입출력 질문 - 드라이버 설치가 어떻게 메모리 내의 입출력 장치 주소 공간을 설정하는지 설명

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.

현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

17:00 부분에 ddr4 sdram은 길이 16개인듯한 ram이라고 설명했는데

0

80

1

유니코드 문자 집합

0

65

0

컴퓨터 구조의 기본 흐름

0

80

1

메모리로부터 주소버스를 통해 받아들이는 주소번지를 CPU로 가져오는 경우

0

74

1

리눅스, 윈도우, IOS 등등 대부분의 운영체제는 같은 구조로 이루어져 있나여?

0

64

1

강의에 나오는 pdf

0

150

2

슈퍼스칼라 프로세서

0

99

1

컴퓨터가 이해하는 두 가지 정보 : 데이터 쪽 질문

0

94

1

캐시 메모리

0

85

1

메모리맵 / 고립형 차이

0

190

1

마무리 - 확인 문제에 대해 질문있습니다.

0

112

1

뮤텍스 락

0

163

2

가상메모리의 필요성

0

193

1

섹션12. 입출력장치의 대기상태

0

96

1

P.301 질문

0

71

1

메모리맵 IO와 고립형 IO 차이 질문

0

133

1

강의하실 때, 보여주시는 ppt 파일 혹시 어디서 받을 수 있는건가요?

0

201

1

파일 시스템 관련 질문 있습니다.

0

112

1

페이징 관련 질문드립니다.

0

136

1

DMA 컨트롤러

0

183

1

보수랑 플래그 관련해서 질문드립니다

0

173

2

페이지

1

183

2

책에 있는 내용이 다 들어가 있나요?

0

188

1

페이지의 수

0

98

1