본문 바로가기
728x90

Lecture/OS31

입출력 시스템 입출력장치와 채널 컴퓨터는 필수장치인 CPU와 메모리, 주변장치인 입출력장치와 저장장치로 구성되며, 각 장치는 메인보드에 있는 버스에 연결된다. 다양한 주변장치는 데이터 전송 속도에 따라 저속 주변장치와 고속 주변장치로 구분할 수 있다. 저속 주변장치: 메모리와 주변장치 사이에 오고 가는 데이터양이 적어 데이터 전송률이 낮은 장치를 말한다. (키보드) 고속 주변장치: 메모리와 주변장치 사이에 대용량의 데이터가 오고 가므로 데이터 전송률이 높은 장치를 말한다.(그래픽카드, 하드디스크) 전송 속도가 비슷한 장치끼리 묶어서 장치별로 채널을 할당하면 여러 채널을 효율적으로 사용하여 전체 데이터 전송 속도를 향상할 수 있다. 초기의 구조 CPU가 작업을 진행하다가 입출력 명령을 만나면 직접 입출력장치에서 데이터를.. 2023. 11. 28.
스레싱과 프레임 할당 물리 메모리의 크기와 스레싱 스레싱은 메모리의 크기가 일정할 경우 프로그램의 수와 밀접한 관계가 있다. 동시에 실행하는 프로그램의 수를 멀티프로그래밍 정도degree of multiprogramming라고 하는데, 멀티프로그래밍 정도가 높으면 스레싱이 발생한다. 프로그램의 수가 적을 때는 CPU사용률이 계속 증가하다가 메모리가 꽉 차면 CPU가 작업하는 시간보다 스왑 영역으로 페이지를 보내고 새로운 페이지를 메모리로 가져오는 작업이 빈번해져서 CPU가 작업할 수 없는 상태에 이르게 된다. 이러한 시점을 스레싱 발생 지점 threshing point이라고 한다. 정적 할당 정적 할당 static allocation방식은 프로세스 실행 초기에 프레임을 나누어 준 후 그 크기를 고정하는 것으로, 균등 할당 방.. 2023. 11. 23.
페이지 교체 알고리즘 페이지 교체 알고리즘의 개요 프로세스가 요구한 페이지가 현재 메모리에 없으면 페이지 부재가 발생한다. 페이지 부재가 발생하면 스왑 영역에서 페이지를 메모리로 가져오는데, 만약 메모리가 꽉 찼다면 메모리에 있는 페이지를 스왑 영역으로 내보내야 한다. 페이지 교체 알고리즘은 스왑 영역으로 보낼 페이지를 결정하는 알고리즘이다. 페이지 교체 알고리즘의 종류 - 간단한 알고리즘 무작위: 무작위로 대상 페이지를 선정하여 스왑 영역으로 보낸다. FIFO: 처음 메모리에 올라온 페이지를 스왑 영역으로 보낸다 - 이론적 알고리즘 최적: 미래의 메모리 접근 패턴을 보고 대상 페이지를 선정하여 스왑 영역으로 보낸다. - 최적 접근 알고리즘 LRU: 시간적으로 멀리 떨어진 페이지를 스왑 영역으로 보낸다. LFU: 사용 빈도가.. 2023. 11. 22.
요구 페이징 프로세스가 필요로 하는 데이터를 언제 메모리로 가져올지 결정하는 것이 가져오기 정책이다. 일반적인 방법은 프로세스가 요청할 때 메모리로 가져오는 것으로 이를 요구 페이징이라고 한다. 예를 들어 메모리에는 포토샵의 본체를 프로그램만 올리고 필터는 사용자가 필요로 할 때마다 메모리로 가져오는 것이 효율적이다. 포토샵의 예와 같이 프로그램 일부만 가져와 실행하고 사용자가 특정 기능을 요구할 때 해당 모듈을 메모리에 올리면 메모리의 절약과 효율적 관리, 프로세스의 응답 속도 향상 등의 효과를 볼 수 있다. 이처럼 사용자가 요구할 때 해당 페이지를 메모리로 가져오는 것을 요구 페이징 demand paging이라고 한다. 페이지 테이블 엔트리의 구조 가상 메모리의 크기는 물리 메모리와 스왑 영역을 합친 것이다. 이.. 2023. 11. 16.
세그먼테이션 기법 변환 색인 버퍼 가상 주소를 물리 주소로 변환하는 작업은 CPU안에 있는 메모리 관리 유닛 MMU이 담당한다. 가상 주소를 물리 주소로 변환하려면 메모리에 두 번 접근해야 한다. 1. 메모리 관리 유닛이 가상 주소를 받아 물리 주소로 변환하려면 페이지 테이블이 필요하다. 페이지 테이블은 메모리에 있기 때문에 MMU는 메모리에 있는 페이지 테이블에 접근하여 물리 주소로 변환한다. 2. 변환된 물리 주소를 이용하여 필요한 데이터를 가져온다. CPU안에 있는 레지스터나 캐시에 접근할 때보다 물리 메모리에 접근할 때 시간이 몇 배 이상 더 걸린다. 따라서 가상 주소를 물리 주소로 변환한 후 데이터를 가져오기 위하여 메모리에 두 번이나 접근하는 방식은 CPU 성능을 떨어뜨린다. 이러한 문제를 개선하기 위하여 페이.. 2023. 11. 15.
페이징 기법 페이징 기법의 주소 변환 과정 페이징 기법은 고정 분할 방식을 이용한 가상 메모리 관리 기법으로, 물리 주소 공간을 같은 크기로 나누어 사용한다. VA= -> PA=로 변환될 때 페이지 테이블을 사용하여 P는 F로 바꾸고 D는 변경 없이 그대로 쓴다. D를 변경하지 않은 이유는 페이지와 프레임의 크기를 똑같이 나누었기 때문이다. 16bit CPU의 주소 변환 예 한 페이지를 10B로 나누면 주소 변환 과정은 그리 어렵지 않다. 예를 들면 가상 주소 30번은 VA = 으로 간단하게 만들 수 있다. 그러나 컴퓨터는 2진법을 사용하므로 한 페이지의 크기는 2의 지수승으로 페이지의 크기가 다양할 경우 가상 주소를 로 변환하는 공식이다. P = 나눗셈(가상 주소/ 한 페이지의 크기)의 몫 D = 나눗셈(가상 주소.. 2023. 11. 14.
728x90