검색 여닫기
검색
메뉴 여닫기
515
223
4
2천
noriwiki
둘러보기
대문
최근 바뀜
임의의 문서로
미디어위키 도움말
특수 문서 목록
파일 올리기
환경 설정 메뉴 여닫기
notifications
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
user-interface-preferences
한국어
개인 도구
로그인
Programmed Input/Output 문서 원본 보기
noriwiki
문서 공유하기
다른 명령
←
Programmed Input/Output
문서 편집 권한이 없습니다. 다음 이유를 확인해주세요:
요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다:
사용자
.
문서의 원본을 보거나 복사할 수 있습니다.
[[분류: CPU]] == 개요 == 프로그램 입출력(Programmed Input/Output, 줄여서 PIO)은 네트워크 어댑터나 ATA 기억 장치와 같은 주변 기기와 중앙 처리 장치 사이에서 데이터를 주고받는 방식이다. PIO는 데이터를 CPU의 instruction을 통해서 주고 받는다. 매 데이터 접근 마다 CPU가 관여하기 때문에 CPU의 처리를 불필요한 Polling과 같은 방식으로 낭비하게 된다. 이 PIO의 단점을 극복하기 위해 [[인터럽트]], [[DMA]]등이 고안되었다. 이러한 방식에서는 CPU가 Input이 들어오는 동한 Polling할 필요가 없거나, 아니면 관여할 필요가 없어진다. 이 용어는 [[Memory mapped I/O]]를 가르킬때나, 아니면 Port-mapped I/O를 가르킬 때도 쓰인다. PMIO는 x86의 IN, OUT명령어를 통해서 디바이스와 통신하면서 통신하게 된다. PMIO는 초창기 Microprocessors에서 널리 쓰였다. PIO는 초창기에 Parallel AT Attachment (PATA)장치에 널리 쓰였다. PIO는 현재도 Legacy supports를 위해서 최신 CPU와 바이오스에 포함되어 있다. == ATA 표준에서의 PIO 모드 == 두 개의 추가적인 고급 타이밍 모드는 [[콤팩트플래시]] 규격 2.0에 정의되어 있으며 PIO 모드 5, 6을 제공한다. (현재 모드 5를 사용하는 하드웨어는 없다. 이는 모드 5PIO 모드가 제공하는 전송속도를 위해서 CPU가 너무 많이 소모되는 단점이 있기 때문이다. 특히 <nowiki>[[DMA]]</nowiki>가 나오고 나서부터는 거의 사용되는 일이 없다. {| class="wikitable" style="text-align:center" |+PIO 모드 !모드 || 최대 전송 속도 (MB/초) || 최소 순환 시간 || 규격 정의 표준 |- | 모드 0 | 3.3 | 600 [[1 E-9 s|ns]] | [[고급 기술 결합|ATA-1]] |- | 모드 1 | 5.2 | 383 [[1 E-9 s|ns]] | ATA-1 |- | 모드 2 | 8.3 | 240 [[1 E-9 s|ns]] | ATA-1 |- | 모드 3 | 11.1 | 180 [[1 E-9 s|ns]] | ATA-2 |- | 모드 4 | 16.7 | 120 [[1 E-9 s|ns]] | ATA-2 |- | 모드 5 | 20 | 100 [[1 E-9 s|ns]] | 콤팩트플래시 2.0 |- | 모드 6 | 25 | 80 [[1 E-9 s|ns]] | 콤팩트플래시 2.0 |}
Programmed Input/Output
문서로 돌아갑니다.