단일 버스 분리식 DMA 방식 데이터 전송 시 마다 시스템 버스를 두 번씩 사용하므로, 버스 사용량 증가로 인하여 시스템 성능 저하를 유발 단일 버스 통합식 DMA 방식 하나의 데이터 전송을 위해 시스템 버스를 한번만 사용하므로, 두 번 사용으로 인한 시스템 성능 저하 문제를 해소 입.출력 버스를 이용하는 방식 DMA 모듈에 여러 입.출력 장치들을 별도의 입.출력 버스를 통해 접속하는 방식 입.출력 전용 프로세서를 이용하는 방식 입.출력 장치들은 종류와 속도가 다양하고 제어 방법도 복잡하기 때문에 간단한 구조를 가진 DMA 제어기로 지원하는 데는 한계가 있고, 디스크 쓰기 또는 읽기 동작의 경우 데이터 블록의 크기가 512 바이트 이상이기 때문에, 이러한 데이터들을 버퍼링하기 위해 내부 기억장치가 필요 ..
입.출력 모듈의 필요성 입.출력 장치는 컴퓨터와 사용자 사이에서 데이터를 교환하는 장치로 주변 장치라고도 하며, 주변 장치들은 전송되는 데이터의 길이, 전송 속도, 데이터 형식 등의 종류가 매우 다양하여 이를 제어할 수 있는 입.출력 모듈이 필요 주변 장치들은 CPU와 RAM에 비해 매우 느린 속도를 가지므로, CPU와 RAM이 접속되는 시스템 버스와 주변 장치 간에 통신이 불가능하기 때문에 입,출력 모듈이 필요하며, 이를 입.출력 인터페이스라고 함 입.출력 모듈은 주변 장치와 버스 사이의 통신을 수행하기 위한 기능을 가진 장치로 입.출력 채널, 입.출력 프로세스, 입.출력 제어기, 장치 제어기가 있음 주변 장치와 시스템 버스와 직접 연결 불가능한 이유 주변 장치의 종류와 운영 방식의 다양성으로 회로의 ..
기능의 종류 입.출력 장치의 제어와 타이밍 조정 CPU와의 통신 주변 장치들과의 통신 데이터 버퍼링 기능 수행 오류 검출 기능 수행 절차 CPU가 입.출력 모듈에게 주변 장치의 상태 점검을 요청 입.출력 모듈이 주변 장치의 상태를 CPU에게 알림 입.출력 장치가 준비된 상태라면 CPU가 데이터 전송을 요청 입.출력 모듈은 주변 장치로부터 데이터를 받음 입.출력 모듈은 데이터를 다시 CPU로 보냄 CPU와의 통신을 위해 필요한 기능 명령어 해석 CPU로부터 받은 명령어를 해석하고 제어 버스 상으로 신호를 보냄(READ SECTOR, WRITE SECTOR, SEEK 트랙번호, SCAN 레코드 ID 등) 데이터 교환 CPU와 입.출력 모듈간의 데이터 교환은 데이터 버스를 통해 이루어짐 상태 보고 주변 장치의..
프로그램 I/O(Programmed I/O) CPU가 프로그램 수행 도중 입.출력과 관련된 명령어를 입.출력 모듈에게 보냄으로써 그 명령어를 수행 출력 명령어 제어, 검사, 읽기, 쓰기 등 입.출력 주소 지정 프로세서, 기억 장치, 입.출력 모듈 사이에는 메모리-사상 I/O(Memory-mapped I/O) 방식과 분리형 I/O(Isolated I/O 또는 I/O mapped) 방식의 2가지 주소 지정 방식이 있음 메모리-사상 I/O 별도의 입.출력 명령어가 필요 없음 메모리의 특정 번지를 액세스하면 자동으로 I/O가 발생 분리형 I/O 입.출력을 위한 별도의 명령어를 둠 각 명령어가 주변 장치를 지정하여 입.출력을 수행 ▶ 주소 지정 방식 별 비교 인터럽트-구동 I/O(Interrupt-driven I..
가상 메모리의 개념 기억 용량이 작은 주기억 장치를 마치 용량이 큰 것처럼 사용할 수 있도록 하는 운영체제의 메모리 운영 기법 하드웨어적으로 실제 존재하는 것이 아니고, 소프트웨어적인 방법으로 보조 기억 장치를 주기억 장치처럼 사용하는 것 대부분의 프로그램들이 프로그램 전체가 동시에 실행되지 않기 때문에 부분적인 적재로도 프로그램을 실행 시킬 수 있다는 점을 이용 실행 중인 프로세스가 참조하는 주소는 어떤 상대적인 위치만 알고 있고, 실제로 참조하는 주소는 베이스(base)가 되는 주소에 상대적인 주소를 더한 주소(실제 주소 = 베이스 주소 + 상대 주소)가 됨 가상 주소 공간과 실제 주소 공간 실행 중인 프로세스가 참조하는 가상 주소 공간(논리적 주소, 프로그램 주소)을 실제 주소공간(물리적 주소)으로..
개요 가상 메모리 관리 기법은 보조 기억 장치에 저장되어 있는 프로그램을 주기억 장치에 효율적으로 적재하기 위한 방법 구분 할당 기법 : How much 각 프로세스에게 메인 메모리를 얼마나 할당할 것인지, 각 프로세스의 실행 중인 메모리 할당량을 어떻게 변화시킬 것인지에 따라 고정(정적) 할당 기법, 가변(동적) 할당 기법으로 구분 반입Fetch) 기법 : When 프로그램의 한 블록을 언제 메인 메모리에 적재시킬 것인지에 따라 요구 반입, 예측 반입 기법으로 구분 배치(Placement) 기법 : Where 새로 반입된 프로그램이나 데이터를 메인 메모리의 어디에 위치시킬 것인지를 결정하는 기법으로 최초 적합(First Fit), 최적 적합(Best Fit), 최악 적합(Worst Fit)이 있음 교체..
개요 교체란 내보낼 페이지를 선정하는 것으로, 기법마다 장.단점이 있으나 일반적으로 낮은 페이지 부재율을 기준으로 선택 프레임의 수가 증가함에 따라 페이지 부재율이 낮아지고, 동시에 실행될 수 있는 프로세스의 수가 적어지게 됨 종류 무작위(Random) 교체 알고리즘 임의의 페이지를 교체 선입선출(FIFO) 교체 알고리즘 가장 먼저 사용된 페이지를 교체 최적(Optimal) 교체 알고리즘 가장 오랫동안 사용되지 않을 페이지를 교체(실현 가능성이 희박함) 2차 기회(Second chance) 교체 알고리즘 가장 오랫동안 자주 사용되었던 페이지가 교체될 수 있는 FIFO 교체 알고리즘의 단점을 해결한 알고리즘 LRU(Least Recently Used) 교체 알고리즘 가장 오랫동안 사용되지 않은 페이지를 교..
개요 가상 메모리 구현은 가상 메모리를 분할하는 방법과 메모리 주소 지정 방법에 따라 다음과 같이 구분할 수 있는데, 여기에서 메모리 주소 지정 방법은 사상 테이블(Mapping Table)의 색인을 찾는 것을 의미 가상 메모리 분할 방법 페이징 새그먼테이션(가변 블록) 페이징/세그먼테이션 혼용 메모리 주소 지정 방법 직접 사상 방법 연관 사상 방법 직접/연관 사상 방법 ▶ 가상 메모리의 구현 기억 장치의 단편화 내부 단편화 : 분할된 공간에 작업을 할당하고 난 후 사용하지 않고 남은 빈 공간 외부 단편화 : 대기 중인 작업에 할당하기에는 너무 작은 공간으로, 사용되지 못하고 비어 있는 공간 가상 메모리의 분할 방법 페이징 방법 고정 분할의 외부 단편화는 해결되나 내부 단편화는 남아 있음 실제 공간의 페..
캐시 메모리의 정의 CPU의 속도와 주기억 장치(즉, 메인 메모리)의 속도 차이를 줄이기 위해 사용하는 고속의 버퍼 메모리 5 ~ 100ns 정도의 빠른 접근 시간을 제공하는 기억 장치로, 수행할 명령어나 오퍼랜드를 주기억 장치로부터 가져와 저장하고 있다가 빠른 속도로 중앙 처리장치에 제공 캐시 메모리의 동작 원리 CPU가 주기억 장치를 엑세스 할 필요가 있는 경우 우선 캐시부터 조사하여 만약 원하는 데이터가 있는 경우(적중, hit)에 바로 캐시에서 액세스 캐시에 없는 경우(실패, miss)에는, 찾고자 하는 데이터가 속한 블록을 주기억 장치로부터 캐시로 전송하여 액세스 참조 지역성 캐시 메모리는 CPU가 수행할 명령어와 오퍼랜드를 저장하고 있다가 즉시 제공함으로써 처리가 신속히 이루어지도록 하는데, ..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.