1.
입출력 버스의 구조를 그림으로 그리고 설명하시오
•
폴링방식 : CPU가 직접 입출력 장치에서 데이터를 가져옴
•
입출력 제어기 사용 : 모든 입출력을 입출력 제어기가 담당.
→ 메인버스와 입출력 버스의 분리
•
메인버스 : 고속으로 작동하는 CPU와 메모리
•
입출력버스 : 주변장치
•
메모리와 주변장치가 데이터를 주고 받을 때, 데이터 전송속도가 다르다.
•
저속 주변장치 : 키보드, 마우스, 프린터
•
고속 주변장치 : 하드디스크, 그래픽카드, 랜카드 등
→ 속도의 차이로 병목현상이 생기기 때문에 전송 속도가 비슷한 장치끼리 묶어서 채널을 할당하면 전송 속도 향상 가능
•
채널선택기 : 고속 입출력 버스에서 10번 데이터를 받으면 저속 입출력 버스에서 1번 데이터를 박는 식으로 두 버스의 데이터 전송 속도를 조절한다.
•
2.
인터럽트의 종류를 나열하고 설명하시오
a.
외부 인터럽트
•
입출력 및 하드웨어 관련 인터럽트
•
주변 장치 변화, 하드웨어 이상
b.
내부 인터럽트
•
프로세스 오류로 발생하는 인터럽트
ex) 숫자를 0으로 나누거나, 자신의 주소 공간을 벗어나서 작업하는 것과 같은 프로세스 오류
•
예외 상황 인터럽트
c.
시그널
•
사용자의 오류로 발생하는 인터럽트
•
자발적 인터럽트
ex) ctrl+c, kill 명령어
주변장치의 입출력 요구나 하드웨어의 이상 현상을 CPU에 알려주는 역할을 하는 신호
3.
각속도 일정 방식과 선속도 일정 방식에 대해 설명하시오
•
일정한 시간 동안 이동한 각도가 같다
•
바깥쪽 트랙의 속도가 안쪽 트랙의 속도보다 훨씬 빠르다.
•
섹터의 크기가 바깥쪽으로 갈 수록 커진다 - 바깥쪽 트랙으로 갈 수록 낭비되는 공간이 생기는 것이 단점
•
디스크가 일정한 속도로 회전하기 때문에 구동장치가 단순하고 조용하게 작동하는 것이 장점
•
어느 트랙에서나 단위 시간당 디스크의 이동거리가 같다
•
헤드가 안 쪽에 있을 때는 디스크의 회전 속도를 빠르게 하고, 헤드가 바깥쪽 트랙으로 이동했을 때는 디스크의 회전속도를 느리게 한다.
•
안쪽 트랙보다 바깥쪽 트랙에 섹터가 더 많다. 각속도 일정 방식의 섹터 공간 낭비를 줄일 수 있는 것이 장점
•
모터 제어가 복잡하고 소음이 발생하는 것이 단점
4.
SSTF 디스크 스케줄링 장단점을 설명하시오
디스크 스케줄링을 통해 해당 섹터를 찾기 위한 트랙의 이동을 최소화 하면 탐색 시간을 줄일 수 있다. 다양한 방식 중, SSTF 방식에 대해 살펴보자.
•
현재 헤드가 있는 위치에서 가장 가까운 트랙부터 서비스
•
거리가 같다면 요청 우선순위
•
FCFS 스케줄링에 비해 이동거리를 확연히 줄일 수 있음
•
위와 같이 스케줄링 효율성은 좋지만 아사현상을 일으킴
•
SSTF 디스크 스케줄링의 공평성 위배를 어느 정도 해결한 방법
1.
블록과 같은 단위를 지정해서, 큐에 들어와 있는 트랙 요청을 묶는다.
2.
가까운 거리를 찾더라도, 같은 블록 안에 있는 순번에서만 찾는다.
•
블록을 지정함으로써 에이징을 하여 공평성을 보장하지만 성능은 떨어진다.