해결된 질문
22.04.18 12:04 작성
·
462
1
1)cpu는 연산작업을 하고 이에 해당하는 명령이 (논리 연산 or, and, xor 산술 연산 add)있는 것으로 알고 있는데
io작업을 위한 명령이 따로 있을까요?
2) 또다른 질문은 프로세스가 cpu를 점유해 연산작업을 하는 동시에 io작업은 병행으로 하는 건가요? 아니면 io작업도 cpu가 계속 필요하나요
두질문 모두 cpu가 io작업에 어떤 역할을 하는지 개념이 안서서 여쭙는 건데 도움부탁드릴께요~
그리고 강의 넘 좋은 것 같습니다. 알고리즘 컴구조 같은 내용도 꼭 기회되면 만들어주세요
답변 1
0
2022. 04. 18. 17:28
1)cpu는 연산작업을 하고 이에 해당하는 명령이 (논리 연산 or, and, xor 산술 연산 add)있는 것으로 알고 있는데 io작업을 위한 명령이 따로 있을까요?
네 따로 입출력 명령어(IN, OUT)가 있습니다!
2) 또다른 질문은 프로세스가 cpu를 점유해 연산작업을 하는 동시에 io작업은 병행으로 하는 건가요? 아니면 io작업도 cpu가 계속 필요하나요
CPU와 별개로 IO작업을 병행합니다.
입출력 기기에는 Device Controller라는 장치가 있습니다.
만약 프린터라고 가정하면 CPU에게 출력명령을 받고 프린터의 Device Controller는 출력 작업을 진행합니다.
이 때 CPU는 다른 작업을 합니다.
그리고 프린트 작업이 완료되면 프린터의 Device Controller는 CPU에게 신호를 줍니다.
각각의 입출력 장치들은 내부적으로 Device Controller를 가지고있습니다.
실제로 입출력 작업은 이 Device Controller가 처리하는데 CPU는 Device Controller에게 일을 위임합니다.
따라서 입출력 작업을 진행하면서 CPU로 다른 작업도 가능한 것 입니다!
좋게 봐주셔서 감사합니다.
지금은 자료구조와 알고리즘을 준비하고 있습니다.
신진님의 응원으로 더 열심히 만들겠습니다! 😄