티스토리 뷰

51. 운영체제의 역할로 가장 옳지 않은 것은?

원시프로그램을 목적프로그램으로 변환하는 것은 컴파일러다.

컴파일러와 인터프리터는 사용자가 작성한 원시프로그램을 목적프로그램으로 변환하는 것을 이야기한다. 목적프로그램을 실행가능한 모듈로 바꾸는 것은 링커다.

52. HRN 스케쥴링 방식에서 입력된 작업이 다음과 같을 때 우선순위가 가장 높은 것은?

작업 대기시간 서비스(실행)시간
A 5 20
B 40 20
C 15 45
D 20 2

HRN 스케쥴링 방식은 대기 시간과 실행시간을 혼합하여 어느 작업이 CPU를 사용할지 결정하는 방법이다.

HRN 값을 구하는 방법은 아래와 같다.

 

HRN 값 = ( 대기시간 + 실행시간 ) / 실행시간

 

위 공식을 이용해 각 작업에 대한 HRN 값을 구하면 아래와 같다.

작업 대기시간 서비스(실행)시간 HRN 값
A 5 20 1.25
B 40 20 3
C 15 45 1.3333....
D 20 2 11

작업 D가 가장 높은 우선수위를 갖게 된다.

 

53. 150K의 작업요구시 First fit과 Best Fit 전략을 각각 적용할 경우, 할당 영역의 연결이 옳은 것은?

할당영역 운영체제
1 50K
  사용중
2 400K
  사용중
3 200K

 

150K 작업요구시 일단 운영체제에 150K 이상인 공간에 할당할 수 있음을 알아야한다.

그러면 First Fit과 Best Fit의 의미에 대해서 알아야하는데 FIrst Fit은 할당할 수 있는 공간과 상관없이 제일 처음 할당 가능한 공간에 할당하는 것을 이야기하고 Best Fit은 작업요구 공간과 가장 비슷한 공간에 할당하는 것을 이야기한다.

 

그러니 정답은 Fitst Fit : 2, Best Fit : 3 인것으로.

 

54. 다음 중 교착상태가 발생할 수 있는 필요충분조건은?

필요충분조건의 종류로는 4가지가 있다.

 

- 상호배제(Mutual Exclusion) : 적어도 하나의 자원은 반드시 비 공유 되는 상태에서 점유

- 점유와 대기(Hold and Wait) : 적어도 하나의 자원을 점유하면서, 다른 프로세스에 의해 점유된 다른 자원을 요구하고 할당받기를 기다림

- 비 선점(No Preemption) : 작업의 수행이 끝날 때까지 해당자원을 반환하지 않음

- 환형 대기(Circular Wait) : 각 프로세스는 환형 내의 이전 프로세스가 요청하는 자원을 점유와 요청

 

정답은 "환형대기"가 되겠다.

 

55. 기억장치의 고정 분할 할당에서 총 24K의 공간이 그림과 같이 8K, 8K, 4K, 4K로 나누어져 있고, 작업 큐에는 5K, 5K, 10K, 10K의 작업이 순차적으로 대기 중이라고 할 때 발생하는 전체 기억공간의 낭비를 생각하면?

운영체제
8K
8K
4K
4K

고정 분할 할당기법에 대해서 좀 알아보면 문제를 푸는데 매우 용이하다.

고정 분할 할당이란 주기억장치의 사용자 영역을 여러 개의 고정 크기로 분할하여 사용하는 기법이다.

 

프로그램이 분할영역보다 크면 분할 영역을 사용할 수 없어서 빈 공간으로 남은 전체 영역을 사용하는 외부 단편화가 발생하고 분할영역보다 크기가 작은 프로그램을 적재하면 내부 단편화가 발생한다.

 

자, 그러면 외부 단편화, 내부 단편화의 뜻을 알아보자.

 

외부 단편화 : 프로그램 크기가 분할 영역보다 커서 사용하지 않는 분할 영역

내부 단편화 : 분할 영역보다 적재한 크기가 작을 때 사용하지 않는 작은 조각

 

그럼 이제 계산해보자.

 

작업큐 기억장치 할당영역 낭비된 공간
5K 8K 3K
5K 8K 3K
10K 4K + 4K + 8K = 16K 6K
10K 8K + 4K = 12K 2K
총계 14K

총 낭비된 공간은 14K가 되겠다. 기억장치 할당 영역은 계속 8, 8, 4, 4를 반복하면서 작업큐의 프로그램을 적재할 수 있도록 영역을 더해주면 낭비된 공간을 구할 수 있다.

 

 

56. 분산 처리 시스템에 대한 설명으로 옳지 않은 것은?

분산 처리 시스템 요약을 잠깐 들여다보자.

 

- 자원 공유 : 각 시스템이 통신망으로 연결되어있어 유용한 자원을 공유하여 사용할 수 있음

- 연산속도 향상 : 하나의 일을 여러 시스템에 분산시켜 처리하여 속도 향상

- 신뢰도 향상 : 여러 시스템 중 하나의 시스템에 오류가 발생하더라도 다른 시스템은 계속 처리할 수 있어 신뢰도 향상

- 컴퓨터 통신 : 지리적으로 멀리 떨어져 있더라도 통신망을 통해 정보를 교환

 

장/단점

- 장점 : 통신 용이, 장치 공유, 데이터 공유, 중앙 컴퓨터 과부하 줄임, 컴퓨터 위치를 몰라도 자원 사용 가능, 시스템의 점진적 확장

- 단점 : 중앙 집중형 시스템에 비해 소프트웨어 개발이 어려움, 보안문제 발생, 설계 복잡

 

분산처리시스템은 시스템 설계가 복잡하고 어렵다. 그러므로 정답 3번.

 

57. Microsoft의 Windows 운영체제의 특징이 아닌 것은?

Windows가 오픈 소스일리가 없지. 4번 정답.

빵점 방지 문제다.

 

58. 분산운영체제에 대한 설명을 모두 옳게 나열한 것은?

가. 분산 시스템이 하나의 운영체제에 의해 구현된다.

나. 분산된 자원의 위치 정보가 감추어진다.

다. 하나의 운영체제가 시스템 전체를 관리해야하므로 구현이 어렵다.

가, 나, 다 모두 옳은 소리다.

 

59. 전송크기가 1KB일 때, 이동 헤드 디스크의 데이터 엑세스 시간과 고정헤드의 데이터 엑세스 시간(ms)을 구한 결과는?

- 탐색시간 : 50ms

- 디스크 회전지연시간 : 16ms

- 1KB 전송시간 : 0.96ms

이동헤드는 탐색시간 + 회전지연시간 + 전송시간이다. 그러니 66.96ms. 그리고 고정 헤드는 회전지연시간 + 전송시간이니 16.96ms가 된다.

 

이동헤드 = 탐색시간 + 회전 지연시간 + 전송시간 = 50ms + 16ms + 0.96ms

고정헤드 = 회전 지연시간 + 전송시간 = 16ms + 0.96ms

 

1번 정답.

 

60. 완전연결(Fully Connection)형 분산처리 시스템에 관한 설명으로 옳지 않은 것은?

분산처리 시스템의 분류에 대해서 좀 공부해보자.

 

[완전 연결]

- 각 사이트들이 시스템 내의 다른 모든 사이트들과 직접 연결됨

- 사이트 수가 n개이면 링크수는 n(n-1)/2개(ex: 사이트 수가 5개인경우 5(4)/2 = 10)

- 기본 비용은 많이 들지만 통신 비용은 적게 들고, 신뢰성이 높음

 

[부분 연결]

- 시스템 내의 일부 사이트들 간에만 직접 연결된 형태

- 기본 비용은 완전 연결형보다 적게 들고, 통신비용은 완전 연결형보다 많이 듦

- 완전 연결형보다 신뢰도 낮음

 

[트리/계층형]

- 분산 처리 시스템의 가장 대표적인 형태

- 각 사이트들이 트리형태로 연결된 구조

- 기본 비용은 부분 연결형보다 적게 들고, 통신 비용은 트리 깊이에 비례함

- 부모 사이트의 자식 사이트들을 부모 사이트를 통해 통신함

- 부모 사이트가 고장나면 그 자식 사이트들은 통신이 불가능 함

 

[스타(Star:성)형]

- 모든 사이트가 하나의 중앙 사이트에 직접 연결된 구조

- 기본 비용은 사이트 수에 비례, 통신 비용은 적게 듦

- 중앙 사이트가 고장 날 경우 모든 통신이 단절됨

 

[링(Ring:환)형]

- 각 사이트가 인접하는 다른 두 사이트만 직접연결된 구조

- 단방향/양방향 연결일 수 있음

- 기본 비용은 사이트 수에 비례하며, 목적 사이트에 데이터를 전달하기 위해 링을 순환할 경우 통신 비용이 증가

 

이 중에서 완전연결의 설명중 틀린건 3번이다. n-1이 아니라 n(n-1)/2라는거. 외워두자.

댓글
댓글쓰기 폼