-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
-
17
-
18
-
19
-
20
-
21
-
22
-
23
-
24
-
25
-
26
-
27
-
28
-
29
-
30
-
31
-
32
-
33
-
34
-
35
-
36
-
37
-
38
-
39
-
40
-
41
-
42
-
43
-
44
-
45
-
46
-
47
-
48
-
49
-
50
-
51
-
52
-
53
-
54
-
55
-
56
-
57
-
58
-
59
-
60
-
61
-
62
-
63
-
64
-
65
-
66
-
67
-
68
-
69
-
70
-
71
-
72
-
73
-
74
-
75
-
76
-
77
-
78
-
79
-
80
-
81
-
82
-
83
-
84
-
85
-
86
-
87
-
88
-
89
-
90
-
91
-
92
-
93
-
94
-
95
-
96
-
97
-
98
-
99
-
100
-
101
-
102
-
103
-
104
-
105
-
106
-
107
-
108
-
109
-
110
-
111
-
112
-
113
-
114
-
115
-
116
-
117
-
118
-
119
-
120
-
121
-
122
-
123
-
124
-
125
-
126
-
127
-
128
-
129
-
130
-
131
-
132
-
133
-
134
-
135
-
136
-
137
-
138
-
139
-
140
-
141
-
142
-
143
-
144
-
145
-
146
-
147
-
148
-
149
-
150
본 자료는 10페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.

-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
-
17
-
18
-
19
-
20
-
21
-
22
-
23
-
24
-
25
-
26
-
27
-
28
-
29
-
30
-
31
-
32
-
33
-
34
-
35
-
36
-
37
-
38
-
39
-
40
-
41
-
42
-
43
-
44
-
45
-
46
-
47
-
48
-
49
-
50
-
51
-
52
-
53
-
54
-
55
-
56
-
57
-
58
-
59
-
60
-
61
-
62
-
63
-
64
-
65
-
66
-
67
-
68
-
69
-
70
-
71
-
72
-
73
-
74
-
75
-
76
-
77
-
78
-
79
-
80
-
81
-
82
-
83
-
84
-
85
-
86
-
87
-
88
-
89
-
90
-
91
-
92
-
93
-
94
-
95
-
96
-
97
-
98
-
99
-
100
-
101
-
102
-
103
-
104
-
105
-
106
-
107
-
108
-
109
-
110
-
111
-
112
-
113
-
114
-
115
-
116
-
117
-
118
-
119
-
120
-
121
-
122
-
123
-
124
-
125
-
126
-
127
-
128
-
129
-
130
-
131
-
132
-
133
-
134
-
135
-
136
-
137
-
138
-
139
-
140
-
141
-
142
-
143
-
144
-
145
-
146
-
147
-
148
-
149
-
150


목차
1부 개요(1-3장): 운영체제의 정의/역할과 발달과정, 컴퓨터 시스템 구조, 운영체제 구조
2부 프로세스 관리(4-8장): 프로세스, 스레드, CPU 스케줄링, 프로세스 동기화, 교착 상태
3부 저장장치 관리(9-13장): 주기억장치 관리, 가상 메모리, 파일 시스템, 입출력 시스템, 대용량 저장장치 구조
4부 분산 시스템(14-18장): 네트워크 구조, 분산 통신, 분산 조정, 분산 파일 시스템
5부 보호와 보안(18-19장): 보호, 보안
6부 사례 연구(20-23장): UNIX 시스템, Linux 시스템, 윈도우 NT, 윈도우 2000
2부 프로세스 관리(4-8장): 프로세스, 스레드, CPU 스케줄링, 프로세스 동기화, 교착 상태
3부 저장장치 관리(9-13장): 주기억장치 관리, 가상 메모리, 파일 시스템, 입출력 시스템, 대용량 저장장치 구조
4부 분산 시스템(14-18장): 네트워크 구조, 분산 통신, 분산 조정, 분산 파일 시스템
5부 보호와 보안(18-19장): 보호, 보안
6부 사례 연구(20-23장): UNIX 시스템, Linux 시스템, 윈도우 NT, 윈도우 2000
본문내용
프로세스가 없다고 가정해서 자신이 조정자로 선택되고, 는 보다 낮은 우선 순위를 지닌 모든 활동하는 프로세스에게 가 새로운 조정자라는 메시지를 보냄
4) 만일 응답을 받게 되면, 는 높은 우선 순위를 지닌 프로세스가 선출되었다고 하는 메시지를 새로운 시간 동안 기다림. 만일 이내에 메시지가 도달하지 않으면 높은 우선 순위 프로세스가 고장이라 가정하여 알고리즘을 다시 수행함
▶ 수행 중 조정자가 아닌 프로세스 는 로부터 다음의 두 메시지 중 하나를 받을 수 있음
① 가 새로운 조정자이다(): 프로세스 는 이 정보를 기록
② 가 선출 과정을 시작한다(): 는 에게 응답을 보내고, 아직 자신의 선출 과정을 시작하지 않았으면 시작함
→ 자신의 선출 과정을 완료하면 낮은 우선 순위의 모든 프로세스에 자신의 우선 순위를 보냄
▶ 고장난 프로세스가 회복된 경우에도 같은 알고리즘을 수행함
→ 자신보다 높은 순위의 프로세스가 없으면 현재 낮은 순위의 조정자가 있더라도 자신이 조정자 프로세스가 된다는 사실을 알려 주어야 함
▶ 프로세스 , , , 로 구성된 시스템의 예(가정: 첨자가 클수록 우선순위 높음)
① 모든 프로세스가 활동하며, 가 조정자 프로세스임
② 과 가 고장이고, 는 시간 이내에 로부터 응답을 받지 못하므로, 에게 메시지를 보내 자신의 선출 알고리즘을 시작함
③ 는 에게 응답을 하고, 에게 메시지를 보내 자신의 선출 알고리즘을 시작함
④ 는 로부터 메시지를 받고 시간 동안 기다림
⑤ 는 시간 이내에 로부터의 응답이 없으므로 자신을 새로운 조정자로 선택하여 과 에게 순위 3을 보냄. 단 은 고장이므로 받지 못함
⑥ 얼마 후에 회복된 은 , , 에게 선출 요청을 보냄
⑦ 와 가 에 응답하고 자신의 선출 알고리즘을 시작하고, 위와 같은 방법으로 가 다시 선출됨
⑧ 끝으로 회복된 는 가장 높은 순위를 가진 프로세스이므로 선출 요청을 하지 않고 자신이 현재의 조정자라는 메시지를 , , 에게 전달함
18.6.2 링 알고리즘(Ring Algorithm)
▶ 기본 사항
- 링크는 단방향이고, 프로세스는 자신의 오른쪽 이웃에게만 메시지를 보냄
- 활동 리스트(active list): 알고리즘이 끝날 때 시스템 내의 모든 활동적인 프로세스의 우선 순위를 보유하는 자료 구조 → 각 프로세스마다 활동 리스트 유지
▶ 알고리즘
1) 프로세스 가 조정자의 고장을 탐지하면, 새로운 빈 활동 리스트를 작성한 후, 우측 프로세스에 메시지를 보내고 활동 리스트에 를 추가함
2) 프로세스 가 좌측 프로세스로부터 메시지를 받으면 다음의 세 가지 중 하나의 형태로 응답함
① 만일 이것이 첫 번째 메시지라면, 는 와 를 지닌 새로운 활동 리스트를 만들고, 를 보내고 를 보냄
② 만일 이면, 는 를 활동 리스트에 더하고 우측 이웃에 메시지를 전달함
③ 만일 이면, 의 활동 리스트에 시스템 내의 모든 활동하는 프로세스의 순위를 포함함
→ 는 활동 리스트에서 가장 큰 순위의 프로세스를 새로운 조정자 프로세스로 선출함
▶ 회복한 프로세스는 질문 메시지를 보내, 현재의 조정자로부터 그의 우선 순위 메시지를 받음
18.7 의견의 일치(Reaching Agreement)
▶ 시스템이 신뢰성을 갖기 위해서는 프로세스 집합이 어떤 공통 값에 일치하도록 하는 장치가 필요
→ 불일치 원인:
① 통신 매체가 고장이 나서 메시지를 잃어버리거나 잘못 전달하는 경우
② 프로세스에 고장이 나서 예측할 수 없는 프로세스 행동을 유발하는 경우
ex) 비잔틴 장군 문제: 적진을 포위한 모든 장군의 의견일치 필요 - 연락병에 의한 통신
- 연락병이 적군에 잡혀 메시지를 전달 못함 → 신뢰성 없는 통신
- 한 장군이 배반하여 교란함 → 고장난(오작동) 프로세스
18.7.1 신뢰성 없는 통신(Unreliable Communications)
▶ 가정: 프로세스의 잘못은 명백히 판별되지만, 통신 매체는 신뢰할 수 없음
1) 사이트 A의 프로세스 가 사이트 B의 프로세스 에게 메시지를 보낸 후 메시지의 전달 여부에 따라 수행해야 할 연산이 다른 경우(ex: 전달된 경우 함수 S를 연산; 미 전달된 경우 함수 F를 연산)에는 접수 메시지를 기다려야 함
→ 시간 제한(time-out) 기법에 의해 기다리는 시간 간격을 정의하여 메시지를 보내고, 규정 시간이 초과되면 메시지를 재전송하고 다시 기다리는 과정을 접수 메시지를 받거나 고장 사실을 알게 될 때까지 반복함
2) 도 가 응답 메시지를 받았는지를 알 필요가 있는 경우(ex: 도 가 응답 메시지를 받은 경우에만 S를 연산)에는 마찬가지로 상대의 접수 메시지를 기다려야 함
→ 즉, 와 는 상호 접수가 되어야 S를 연산할 수 있는데, 고장이 있는 경우에는 이 작업이 수행될 수 없음
* 일반적으로, 분산 환경에서는 와 가 각각의 상태에 완전히 일치할 수 없음
18.7.2 고장난 프로세스(Faulty Processes)
▶ 가정: 통신 매체는 신뢰할 수 있지만, 프로세스는 예측할 수 없는 방법으로 고장날 수 있음
▶ 알고리즘: 전체 개의 프로세스 중 개 이하가 고장나 있고, 각 프로세스 가 개인 값 를 가진 시스템에서, 고장나지 않은 프로세스 가 다음을 만족하는 를 구성하는 알고리즘
① 가 고장나지 않은 프로세스이면
② 와 가 모두 고장나지 않은 프로세스이면
▶ 알고리즘의 특성
① 인 경우에만 알고리즘이 고안될 수 있음
② 일치점 도달에 대한 최악의 지연 시간은 메시지 전달 지연에 비례
③ 일치점 도달에 필요한 메시지 수는 모든 프로세스의 정보를 모아야 하므로 매우 많음
▶ , 인 경우의 알고리즘
1) 두 단계의 정보 교환
① 각 프로세스는 자신의 개인 값을 다른 모든 프로세스에게 보냄
② 각 프로세스는 첫 번째 단계에서 얻었던 정보를 다른 모든 프로세스에게 보냄
→ 이때, 고장난 프로세스는 값을 보내지 않거나 변조된 값을 보낼 수 있음
만일, 고장난 프로세스의 값이 도착하지 않으면 각 프로세스가 임의로 결정한 후 보냄
2) 고장나지 않은 프로세스 는 다음을 만족하는 를 구성
①
② : 에 대해 보고된 세 값 중 적어도 두 개가 일치하면 그 다수 값을 사용하고, 그렇지 않으면 내정 값 NIL을 사용
4) 만일 응답을 받게 되면, 는 높은 우선 순위를 지닌 프로세스가 선출되었다고 하는 메시지를 새로운 시간 동안 기다림. 만일 이내에 메시지가 도달하지 않으면 높은 우선 순위 프로세스가 고장이라 가정하여 알고리즘을 다시 수행함
▶ 수행 중 조정자가 아닌 프로세스 는 로부터 다음의 두 메시지 중 하나를 받을 수 있음
① 가 새로운 조정자이다(): 프로세스 는 이 정보를 기록
② 가 선출 과정을 시작한다(): 는 에게 응답을 보내고, 아직 자신의 선출 과정을 시작하지 않았으면 시작함
→ 자신의 선출 과정을 완료하면 낮은 우선 순위의 모든 프로세스에 자신의 우선 순위를 보냄
▶ 고장난 프로세스가 회복된 경우에도 같은 알고리즘을 수행함
→ 자신보다 높은 순위의 프로세스가 없으면 현재 낮은 순위의 조정자가 있더라도 자신이 조정자 프로세스가 된다는 사실을 알려 주어야 함
▶ 프로세스 , , , 로 구성된 시스템의 예(가정: 첨자가 클수록 우선순위 높음)
① 모든 프로세스가 활동하며, 가 조정자 프로세스임
② 과 가 고장이고, 는 시간 이내에 로부터 응답을 받지 못하므로, 에게 메시지를 보내 자신의 선출 알고리즘을 시작함
③ 는 에게 응답을 하고, 에게 메시지를 보내 자신의 선출 알고리즘을 시작함
④ 는 로부터 메시지를 받고 시간 동안 기다림
⑤ 는 시간 이내에 로부터의 응답이 없으므로 자신을 새로운 조정자로 선택하여 과 에게 순위 3을 보냄. 단 은 고장이므로 받지 못함
⑥ 얼마 후에 회복된 은 , , 에게 선출 요청을 보냄
⑦ 와 가 에 응답하고 자신의 선출 알고리즘을 시작하고, 위와 같은 방법으로 가 다시 선출됨
⑧ 끝으로 회복된 는 가장 높은 순위를 가진 프로세스이므로 선출 요청을 하지 않고 자신이 현재의 조정자라는 메시지를 , , 에게 전달함
18.6.2 링 알고리즘(Ring Algorithm)
▶ 기본 사항
- 링크는 단방향이고, 프로세스는 자신의 오른쪽 이웃에게만 메시지를 보냄
- 활동 리스트(active list): 알고리즘이 끝날 때 시스템 내의 모든 활동적인 프로세스의 우선 순위를 보유하는 자료 구조 → 각 프로세스마다 활동 리스트 유지
▶ 알고리즘
1) 프로세스 가 조정자의 고장을 탐지하면, 새로운 빈 활동 리스트를 작성한 후, 우측 프로세스에 메시지를 보내고 활동 리스트에 를 추가함
2) 프로세스 가 좌측 프로세스로부터 메시지를 받으면 다음의 세 가지 중 하나의 형태로 응답함
① 만일 이것이 첫 번째 메시지라면, 는 와 를 지닌 새로운 활동 리스트를 만들고, 를 보내고 를 보냄
② 만일 이면, 는 를 활동 리스트에 더하고 우측 이웃에 메시지를 전달함
③ 만일 이면, 의 활동 리스트에 시스템 내의 모든 활동하는 프로세스의 순위를 포함함
→ 는 활동 리스트에서 가장 큰 순위의 프로세스를 새로운 조정자 프로세스로 선출함
▶ 회복한 프로세스는 질문 메시지를 보내, 현재의 조정자로부터 그의 우선 순위 메시지를 받음
18.7 의견의 일치(Reaching Agreement)
▶ 시스템이 신뢰성을 갖기 위해서는 프로세스 집합이 어떤 공통 값에 일치하도록 하는 장치가 필요
→ 불일치 원인:
① 통신 매체가 고장이 나서 메시지를 잃어버리거나 잘못 전달하는 경우
② 프로세스에 고장이 나서 예측할 수 없는 프로세스 행동을 유발하는 경우
ex) 비잔틴 장군 문제: 적진을 포위한 모든 장군의 의견일치 필요 - 연락병에 의한 통신
- 연락병이 적군에 잡혀 메시지를 전달 못함 → 신뢰성 없는 통신
- 한 장군이 배반하여 교란함 → 고장난(오작동) 프로세스
18.7.1 신뢰성 없는 통신(Unreliable Communications)
▶ 가정: 프로세스의 잘못은 명백히 판별되지만, 통신 매체는 신뢰할 수 없음
1) 사이트 A의 프로세스 가 사이트 B의 프로세스 에게 메시지를 보낸 후 메시지의 전달 여부에 따라 수행해야 할 연산이 다른 경우(ex: 전달된 경우 함수 S를 연산; 미 전달된 경우 함수 F를 연산)에는 접수 메시지를 기다려야 함
→ 시간 제한(time-out) 기법에 의해 기다리는 시간 간격을 정의하여 메시지를 보내고, 규정 시간이 초과되면 메시지를 재전송하고 다시 기다리는 과정을 접수 메시지를 받거나 고장 사실을 알게 될 때까지 반복함
2) 도 가 응답 메시지를 받았는지를 알 필요가 있는 경우(ex: 도 가 응답 메시지를 받은 경우에만 S를 연산)에는 마찬가지로 상대의 접수 메시지를 기다려야 함
→ 즉, 와 는 상호 접수가 되어야 S를 연산할 수 있는데, 고장이 있는 경우에는 이 작업이 수행될 수 없음
* 일반적으로, 분산 환경에서는 와 가 각각의 상태에 완전히 일치할 수 없음
18.7.2 고장난 프로세스(Faulty Processes)
▶ 가정: 통신 매체는 신뢰할 수 있지만, 프로세스는 예측할 수 없는 방법으로 고장날 수 있음
▶ 알고리즘: 전체 개의 프로세스 중 개 이하가 고장나 있고, 각 프로세스 가 개인 값 를 가진 시스템에서, 고장나지 않은 프로세스 가 다음을 만족하는 를 구성하는 알고리즘
① 가 고장나지 않은 프로세스이면
② 와 가 모두 고장나지 않은 프로세스이면
▶ 알고리즘의 특성
① 인 경우에만 알고리즘이 고안될 수 있음
② 일치점 도달에 대한 최악의 지연 시간은 메시지 전달 지연에 비례
③ 일치점 도달에 필요한 메시지 수는 모든 프로세스의 정보를 모아야 하므로 매우 많음
▶ , 인 경우의 알고리즘
1) 두 단계의 정보 교환
① 각 프로세스는 자신의 개인 값을 다른 모든 프로세스에게 보냄
② 각 프로세스는 첫 번째 단계에서 얻었던 정보를 다른 모든 프로세스에게 보냄
→ 이때, 고장난 프로세스는 값을 보내지 않거나 변조된 값을 보낼 수 있음
만일, 고장난 프로세스의 값이 도착하지 않으면 각 프로세스가 임의로 결정한 후 보냄
2) 고장나지 않은 프로세스 는 다음을 만족하는 를 구성
①
② : 에 대해 보고된 세 값 중 적어도 두 개가 일치하면 그 다수 값을 사용하고, 그렇지 않으면 내정 값 NIL을 사용
추천자료
시스템프로그래밍 용어정리
지식경영 기업사례 마이크로소프트(MS)
리눅스 기본명령
개방형 상호접속시스템(Open Systems Interconnection)
O/S 시스템에 대해서..
[정보처리]PC의 구성요소(소프트웨어) - 워드프로세서(문서실무)
BSC를 활용한 ITO공급사 선정기준과 IT아웃소싱서비스 평가방안
나이키 아웃소싱전략 분석
[에이전트][네트워크부하해결 에이전트][정보검색][모니터링 에이전트][분석 에이전트]에이전...
컴퓨터의 이해(하드웨어 & 소프트 웨어)
Operaing System Concepts 7판 1-3장 ch1
사회복지행정조직에 대하여
[교원직무연수(직무연수)]도덕교사, 지리교사의 교원직무연수(직무연수, 교원연수) 자료, 컴...
1. 본인이 사용 중이거나 또는 최신 스마트폰을 1 개 선정하고 아래의 사항을 A4 용지 2페이...
소개글