﻿1
00:00:03,998 --> 00:00:07,998

2
00:00:11,505 --> 00:00:11,505

3
00:00:11,505 --> 00:00:15,505

4
00:00:15,505 --> 00:00:19,505

5
00:00:19,517 --> 00:00:23,508
(อาจารย์พิเชนทร์) หลักการของการจัดการ

6
00:00:23,508 --> 00:00:27,507
Process นะครับ

7
00:00:27,507 --> 00:00:31,507
เราเคยได้ยินไหม

8
00:00:31,508 --> 00:00:35,504
Process

9
00:00:35,504 --> 00:00:39,504
ครับ ถามหมู่ 1 เคยได้ยินไหมครับ คำนี้

10
00:00:39,509 --> 00:00:43,508
เรียนตั้งแต่มัธยม

11
00:00:43,508 --> 00:00:47,505
นะ Process คืออะไรเอ่ย

12
00:00:47,505 --> 00:00:51,504
Process นะครับ

13
00:00:51,504 --> 00:00:55,504

14
00:00:55,506 --> 00:00:59,504

15
00:00:59,504 --> 00:01:03,504
เขาบอกว่านะครับ เขาให้ความหมาย ความหมายเยอะแยะ

16
00:01:03,506 --> 00:01:07,506
นะครับ มีหลายความหมาย แต่ความหมายที่เรา

17
00:01:07,515 --> 00:01:11,512
ใช้กันนะครับ เอกสารยังไม่ได้หรือ

18
00:01:11,512 --> 00:01:15,505
อยู่กับใครเอกสารหมดหรือยัง

19
00:01:15,505 --> 00:01:19,505
อยู่กับใครครับเอกสาร

20
00:01:19,510 --> 00:01:23,508
เหลืออยู่กับใคร

21
00:01:23,508 --> 00:01:27,506
มีไหม อยู่กับใครครับ เอกสารเหลือน่ะ

22
00:01:27,506 --> 00:01:31,505
บทนี้

23
00:01:31,505 --> 00:01:35,505
บทที่ 2

24
00:01:35,510 --> 00:01:39,510
นี่ อยู่กับใคร เหลืออยู่กับใคร มันต้องเหลือสิ

25
00:01:39,514 --> 00:01:43,506
ถ่ายมา มันต้อง 50 ชุดนะครับ ถ่ายมา

26
00:01:43,506 --> 00:01:47,505
อยู่ไหนล่ะ

27
00:01:47,505 --> 00:01:51,505
ห้อง 1 มันยังไม่เห็นเอกสารอาทิตย์ที่แล้ว

28
00:01:51,529 --> 00:01:55,505
วางไว้ที่โต๊ะไหน

29
00:01:55,505 --> 00:01:59,505
หรือหมู่ 1

30
00:01:59,506 --> 00:02:03,505
หมู่ 1 หมู่ 1 ส่

31
00:02:03,505 --> 00:02:07,505
งไว้ที่ไหน ยังไม่ส่งใช่ไหม

32
00:02:14,896 --> 00:02:18,996

33
00:02:07,505 --> 00:02:11,505

34
00:02:11,505 --> 00:02:15,505
เพราะเห็นแต่ของห้อง 2

35
00:02:15,505 --> 00:02:19,505
ผมตรวจแล้วนะ ตรวจก็คืนให้แล้ว

36
00:02:19,509 --> 00:02:23,505
นะครับ ใครมาช้ามาเอา

37
00:02:23,505 --> 00:02:27,505
นะครับ

38
00:02:27,506 --> 00:02:31,506

39
00:02:31,506 --> 00:02:35,506
เอกสารที่ผมตรวจนะครับผม ผมจะไม่ได้ตรวจให้ทุก

40
00:02:35,508 --> 00:02:39,508
ข้อนะ ผมจะเซ็นลายเซ็นให้เฉย ๆ นะครับ เป็นการตรวจเช็ก แต่ละสัปดาห์

41
00:02:39,509 --> 00:02:43,506
แล้วก็เราเอาไว้อ่านสอบนะครับ เพราะว่า

42
00:02:43,506 --> 00:02:47,506
ตอนนี้เราเรียน 2-3 สัปดาห์แล้วนะครับ จะครบเดือนแล้ว

43
00:02:47,512 --> 00:02:51,512
เดี๋ยวสัปดาห์หน้านะครับ

44
00:02:51,516 --> 00:02:55,506
สัปดาห์หน้าห้องหมู่ 2 จะไม่อยู่นะครับ

45
00:02:55,506 --> 00:02:59,506
ผมก็ไม่อยู่นะครับ สัปดาห์หน้าเราไม่มี

46
00:02:59,508 --> 00:03:03,508
นะครับ วิชานี้ เราจะยกเลิกคลาสนะครับ เพราะว่าหมู่ 2 จะไป

47
00:03:03,517 --> 00:03:07,507
ศึกษาดูงานข้างนอกนะครับ

48
00:03:07,507 --> 00:03:11,507
ผมก็ไปด้วยนะครับ ทั้งวันนะครับ

49
00:03:11,513 --> 00:03:15,506
สัปดาห์ถัดไปปิดใช่ไหม

50
00:03:15,506 --> 00:03:19,506
หยุด สัปดาห์ถัดไปอีกเรียน สัปดาห์ถัดไปหยุดอีก

51
00:03:19,507 --> 00:03:23,506
เดือนนี้หยุดเยอะนะครับ

52
00:03:23,506 --> 00:03:27,506
มาดูนะครับ Process นะครับ Process Process

53
00:03:27,509 --> 00:03:31,509
เขาให้ความหมายว่า

54
00:03:39,888 --> 00:03:36,897

55
00:03:31,507 --> 00:03:35,507
Process คือ โปรแกรมที่กำลังถูก Execute

56
00:03:43,768 --> 00:03:47,768
นะครับ

57
00:03:47,481 --> 00:03:51,481
Execute

58
00:03:56,281 --> 00:03:53,863

59
00:03:35,507 --> 00:03:39,507

60
00:03:39,516 --> 00:03:43,505
คืออะไร

61
00:03:43,505 --> 00:03:47,505
เคยได้ยินไหมครับ

62
00:03:47,508 --> 00:03:51,507
เขาบอก Process คือ โปรแกรมที่กำลังถูก Execute

63
00:03:51,507 --> 00:03:55,506
เป็นอย่างไรครับ Execute

64
00:03:55,506 --> 00:03:59,506
ผมเชื่อว่าพวกเราจบ

65
00:03:59,506 --> 00:04:03,506
มัธยมศึกษาปีที่ 6 มานี่ มันต้องเคยได้เรียนแล้วใช่ไหม

66
00:04:18,286 --> 00:04:17,704
คอมพิวเตอร์พื้นฐาน

67
00:04:03,519 --> 00:04:07,512
เรียนหรือยัง เรียนหรือยังครับ หมู่ 1

68
00:04:07,512 --> 00:04:11,506
เรียนแล้วใช่ไหม

69
00:04:11,506 --> 00:04:15,506
นะครับ ถามตอบด้วยเด้อ ถามตอบ

70
00:04:15,506 --> 00:04:19,506
มีปฏิสัมพันธ์ด้วยนะครับ

71
00:04:19,506 --> 00:04:23,506
เพราะเราทุกวันนี้นะครับ เราค่อนข้างขาดปฏิสัมพันธ์

72
00:04:23,509 --> 00:04:27,509
นะครับ

73
00:04:27,512 --> 00:04:31,512
ผมเข้าใจนะ พวกเราเป็น generation

74
00:04:45,441 --> 00:04:49,281
ที่แตกต่างกับอาจารย์

75
00:04:31,511 --> 00:04:35,508
นะครับ เราเจนอะไรครับ

76
00:04:35,508 --> 00:04:39,506
เรา generation อะไร

77
00:04:39,506 --> 00:04:43,506
Gen Y หรอ แม่นหรอ

78
00:04:43,506 --> 00:04:47,506
ใช่ไหม ใช่หรือ เรา Gen y หรือ

79
00:04:47,507 --> 00:04:51,507
Gen อะไรดี

80
00:05:07,857 --> 00:05:05,793

81
00:04:51,510 --> 00:04:55,508
ยังไม่รู้อีกตัวเอง Gen อะไร เดี๋ยวไปถามห้อง 2

82
00:04:55,508 --> 00:04:59,506
ยังไม่ถามห้อง 2 ถามห้อง 1 ก่อน

83
00:04:59,506 --> 00:05:03,506
ตอนนี้พวกเรามีปัญหานะครับ เรื่องของ

84
00:05:03,507 --> 00:05:07,506
ความแตกต่างระหว่าง generation นะครับ

85
00:05:07,506 --> 00:05:11,506
รุ่นผมนี่คุยกับพวกเรานี่

86
00:05:11,511 --> 00:05:15,511
ไม่ค่อยรู้เรื่อง

87
00:05:23,473 --> 00:05:20,604

88
00:05:15,508 --> 00:05:19,508
จริงไหม จริงไหมอุบล เราคนละ Generation

89
00:05:19,508 --> 00:05:23,507
นะครับ ความคิดแตกต่างกัน รุ่นพวกเรานี่

90
00:05:23,507 --> 00:05:27,507
ความอดทนน้อยนะครับ รอได้ไหม รอไม่ได้นะครับ

91
00:05:27,510 --> 00:05:31,510
จะเอาเดี๋ยวนี้จะกินข้าวก็จะกินเดี๋ยวนี้

92
00:05:41,162 --> 00:05:40,602

93
00:05:31,508 --> 00:05:35,508
ถ้าจะให้ไปต่อคิวก็ไม่ไป

94
00:05:35,509 --> 00:05:39,509
เห็นไหมครับ มันถึงเกิดอะไรขึ้นมา ขายออนไลน์

95
00:05:39,509 --> 00:05:43,506
พวก Grab พวก Food Panda ใช่ไหม

96
00:05:43,506 --> 00:05:47,506

97
00:05:47,506 --> 00:05:51,506
จากที่ผมอ่านนะครับ อ่าน

98
00:05:51,507 --> 00:05:55,507
ทดสอบก่อนเรียนพวกเรานะครับ ก็พื้นฐานเราก็

99
00:05:55,510 --> 00:05:59,506
พอ ๆ กันนะ พอ ๆ กันนะครับ

100
00:05:59,506 --> 00:06:03,506
ก็คือยังไม่เข้าใจ

101
00:06:03,512 --> 00:06:07,510
ความหมาย ยังไม่เข้าใจหลักการของคอมพิวเตอร์มาก

102
00:06:07,510 --> 00:06:11,510
ก็ไม่เป็นไรนะครับ เพราะว่าจริง  ๆ อย่างที่ผมบอก

103
00:06:22,902 --> 00:06:19,986

104
00:06:11,507 --> 00:06:15,507
เราควรจะจัดให้เรียนอยู่ชั้นปีที่ 3 นะครับ แต่เราก็

105
00:06:15,513 --> 00:06:19,513
มาจัดเสียปี 1 เทอม 1

106
00:06:30,378 --> 00:06:28,433

107
00:06:19,506 --> 00:06:23,506
ก็ไม่เป็นไรนะครับ ก็ปรับเอา เขาบอกว่า Process

108
00:06:23,512 --> 00:06:27,512
โปรแกรมที่กำลังถูก Execute

109
00:06:36,314 --> 00:06:40,314
ถ้าเรามองก

110
00:06:39,209 --> 00:06:40,041
็คือ

111
00:06:27,508 --> 00:06:31,508
สัปดาห์ก่อนใช่ไหม พอเราส่งข้อมูลจากคีย์บอร์ด

112
00:06:31,510 --> 00:06:35,508
ใช่ไหมครับ

113
00:06:35,508 --> 00:06:39,508
ส่งจากคีย์บอร์ปุ๊บ เข้าไปไหนครับ คิดตาม

114
00:06:39,509 --> 00:06:43,509
เข้าไปไหน

115
00:06:50,473 --> 00:06:48,656

116
00:06:43,507 --> 00:06:47,507
คีย์บอร์ด คือ Input ใช่ไหม

117
00:06:53,753 --> 00:06:52,435

118
00:06:47,508 --> 00:06:51,506
พอเข้าไปในคอมพิวเตอร์ เราเรียกว่าเข้าไปทำอะไร

119
00:06:51,506 --> 00:06:55,506
ไปประมวลผลใช่ไหมครับ ประมวลผลเสร็จ

120
00:06:55,509 --> 00:06:59,509
ทำอะไรต่อ

121
00:07:04,817 --> 00:07:07,034

122
00:06:59,505 --> 00:07:03,505
ก็ไปแสดงผลใช่ไหม นี่คือหลักของมัน

123
00:07:03,513 --> 00:07:07,513
Input ประมวลผล Process

124
00:07:15,785 --> 00:07:14,162
ใช่ไหม

125
00:07:07,517 --> 00:07:11,517
แล้วก็ออกไป Output

126
00:07:19,466 --> 00:07:19,914
นี่คือหลักการของมัน

127
00:07:11,507 --> 00:07:15,506
เขาบอกว่า Process คือ โปรแกรม

128
00:07:15,506 --> 00:07:19,506
กำลังถูก Execute นั่นหมายความว่า... บางคนให้ความหมายว่า

129
00:07:19,510 --> 00:07:23,510
เป็นโปรแกรมที่กำลังเข้าไปครอบครอง CPU

130
00:07:33,019 --> 00:07:30,418

131
00:07:23,506 --> 00:07:27,506
หรือเข้าไปใช้งาน CPU

132
00:07:34,418 --> 00:07:32,171

133
00:07:27,509 --> 00:07:31,508
แล้วแต่เอกสารตำราแต่ละคนแต่ง

134
00:07:31,508 --> 00:07:35,506
นะครับ คือ หลักการ ก็คือคำว่า "Process" ก็คือ

135
00:07:35,506 --> 00:07:39,506
โปรแกรมที่กำลังถูก Execute

136
00:07:39,508 --> 00:07:43,508
ในคอมพิวเตอร์เรา มันจะมีไฟล์อยู่ไฟล์หนึ่ง เป็น

137
00:07:43,509 --> 00:07:47,506
นามสกุล ไฟล์ทุกไฟล์ต้องมีนามสกุลนะครับ เดี๋ยวเรามา

138
00:07:47,506 --> 00:07:51,506
ดูรายละเอียดต่อไปนะครับ ก็คือนามสกุลที่ .exe

139
00:07:51,508 --> 00:07:55,508
เคยเห็นไหม เคยสังเกตไหมเวลาเราใช้คอมพิวเตอร์

140
00:07:55,509 --> 00:07:59,509
หรือไม่รู้เปิดขึ้นมาใช้แล้วก็ปิด

141
00:07:59,509 --> 00:08:03,507
นะครับ เราอย่าไปดู

142
00:08:03,507 --> 00:08:07,507
ในสไลด์อาจารย์มากนะ อาจารย์ก็พูดไปเรื่อยนะ

143
00:08:16,465 --> 00:08:18,065

144
00:08:07,530 --> 00:08:11,507
มันไม่ได้อยู่ในนี้หรอกนะครับ

145
00:08:11,507 --> 00:08:15,506
คราวนี้ถ้า Process

146
00:08:15,506 --> 00:08:19,506
ถ้าโปรแกรมเดียว โปรแกรมเดิมนี่

147
00:08:19,506 --> 00:08:23,506
ทำงานปุ๊บเป็นอย่างไรครับ ยุ่งยากไหม

148
00:08:31,193 --> 00:08:30,073

149
00:08:23,521 --> 00:08:27,521
Input เสร็จ เข้าไปประมวลผลเสร็จ

150
00:08:38,398 --> 00:08:40,873

151
00:08:27,509 --> 00:08:31,509
แสดงออก ถ้าโปรแกรมเดียว

152
00:08:31,509 --> 00:08:35,509
ไม่มีปัญหานะครับ แต่ถ้าเมื่อไรก็ตามที่

153
00:08:35,512 --> 00:08:39,512
มีหลาย ๆ โปรแกรมทำงานพร้อมกัน ที่เขาบอกว่าเป็นระบบหลายโปรแกรม

154
00:08:39,514 --> 00:08:43,506
เขาบอก Process

155
00:08:43,506 --> 00:08:47,506
อาจเปรียบได้กับรถยนต์ คือ มีรถยนต์หลายคัน

156
00:08:57,985 --> 00:08:58,178
นะครับ

157
00:08:47,507 --> 00:08:51,505
และตัวของ

158
00:08:51,505 --> 00:08:55,505
CPU เอง ก็เปรียบเหมือนคนขับ

159
00:09:03,154 --> 00:09:10,494

160
00:08:55,508 --> 00:08:59,508
เหมือนกับว่าในคอมพิวเตอร์เรานี่มี CPU อยู่แค่ตัวเดียว

161
00:08:59,508 --> 00:09:03,508
แต่มีคนต้องการใช้งานเยอะ โปรแกรมเยอะ ต้องทำอย่างไรครับ

162
00:09:03,510 --> 00:09:07,507
วิธีการมัน ถ้าเป็นเราเราทำอย่างไรครับ

163
00:09:07,507 --> 00:09:11,507
เช่น มีรถอยู่ 5 คัน

164
00:09:21,336 --> 00:09:18,241

165
00:09:11,511 --> 00:09:15,511
มีคนขับอยู่คนเดียว ทำอย่างไรจึงจะขับเข้าไปถึงในเมืองพร้อมกันได้

166
00:09:15,521 --> 00:09:19,513

167
00:09:19,513 --> 00:09:23,506
ลากรถ 4 คัน คนอื่นล่ะ

168
00:09:23,506 --> 00:09:27,506
คนอื่นล่ะทำอย่างไร

169
00:09:34,961 --> 00:09:33,552

170
00:09:27,508 --> 00:09:31,506
คนอื่นมีวิธีการอื่นไหมครับ

171
00:09:31,506 --> 00:09:35,506
หลักการคอมพิวเตอร์เวลาทำงาน

172
00:09:35,507 --> 00:09:39,507
ใช่ไหม โปรแกรมจะเข้าไปทำงาน หรือเข้าไปครอบ

173
00:09:39,510 --> 00:09:43,510
CPU ได้ที่ละ 1 โปรแกรม ก็เหมือนคนเรานี่

174
00:09:43,513 --> 00:09:47,513
ขับรถนี่ ขับได้ทีละคัน

175
00:09:56,385 --> 00:09:54,202

176
00:09:47,508 --> 00:09:51,508
จะลากจะพ่วง ทำไม่ได้ ตามหลักการนะทำไม่ได้

177
00:10:04,897 --> 00:10:02,457

178
00:09:51,518 --> 00:09:55,507
ทำอย่างไรดีล่ะ วิธีการ ก็คือ

179
00:09:55,507 --> 00:09:59,507
ขึ้นไปขับคันที่ 1 จากราชภัฏสกลนคร

180
00:10:09,248 --> 00:10:13,248
ไปถึงหน้าค่าย

181
00:10:13,313 --> 00:10:12,113
กฤษ

182
00:09:59,510 --> 00:10:03,506
แล้วไปจอด

183
00:10:03,506 --> 00:10:07,506
กลับมาขับครั้งที่ 2 ก็มา... คันที่ 4 คันที่ 5

184
00:10:07,508 --> 00:10:11,508
นะครับ พอถึงขับไปใหม่ขับ

185
00:10:11,511 --> 00:10:15,511
ไปถึงหน้าประตูเมือง ย้อนไปที่ 1, 2, 3, 4, 5 อย่างนี้

186
00:10:25,778 --> 00:10:29,778
นี้

187
00:10:26,866 --> 00:10:25,288
คือหลักการ

188
00:10:15,510 --> 00:10:19,506
นะครับ แต่

189
00:10:19,506 --> 00:10:23,506
เวลาทำงานจริงเป็นอย่างไรครับ คอมพิวเตอร์ทำงานด้วยความเร็ว

190
00:10:23,510 --> 00:10:27,510
สูงไหม

191
00:10:33,345 --> 00:10:32,339
สูงไหม

192
00:10:27,508 --> 00:10:31,508
หายใจทันไหมครับ ทันไหม

193
00:10:38,505 --> 00:10:37,793

194
00:10:31,507 --> 00:10:35,507
ไม่น่าทันนะ

195
00:10:41,793 --> 00:10:38,265

196
00:10:35,506 --> 00:10:39,506
การทำงานจริง ๆ มันจะทำงานเหมือนที่อาจารย์

197
00:10:39,520 --> 00:10:43,507
ยกตัวอย่างเมื่อกี้ ไปทีละคัน ทีละคัน

198
00:10:43,507 --> 00:10:47,507
แต่พอมาทำงานจริง มันทำงานได้ความเร็วสูง มันเลยเหมือนประหนึ่ง

199
00:10:47,511 --> 00:10:51,506
ว่ามันไปพร้อม ๆ กันเลย

200
00:10:51,506 --> 00:10:55,506
นะครับ นี่คือหลักการทำงานของคอมพิวเตอร์

201
00:11:02,002 --> 00:11:01,785
นะครับ

202
00:10:55,518 --> 00:10:59,518
อย่างยกตัวอย่างนี้ ระบบ

203
00:11:08,929 --> 00:11:06,441

204
00:10:59,506 --> 00:11:03,506
CPU เป็นคนขับโปรแกรมหลาย ๆ โปรแกรม เหมือนรถ

205
00:11:03,514 --> 00:11:07,514
นะครับ ทำอย่างไรให้ไปด้วยความเร็วสูง

206
00:11:14,889 --> 00:11:12,042
นะครับ

207
00:11:07,510 --> 00:11:11,509

208
00:11:11,509 --> 00:11:15,506
คราวนี้มาดู

209
00:11:15,506 --> 00:11:19,506
องค์ประกอบของ Process นะครับ

210
00:11:19,509 --> 00:11:23,509
Process มีองค์ประกอบอะไรบ้าง

211
00:11:23,510 --> 00:11:27,510
พอเรียนจบบทนี้นะครับ นักศึกษาก็จะงง

212
00:11:34,850 --> 00:11:34,985
นะครับ

213
00:11:27,508 --> 00:11:31,508
เริ่มงงนะ มันเริ่มเหมือนบทที่ 1 ใช่ไหม

214
00:11:39,985 --> 00:11:39,256
บทที่ 1

215
00:11:31,508 --> 00:11:35,508
พื้นฐานนะครับ งงไม่ต้องตกใจครับ

216
00:11:35,512 --> 00:11:39,512
ค่อย ๆ ปรับนะครับ

217
00:11:46,280 --> 00:11:50,280
เพราะว่าเราเพิ่งเข้าเรียนปี 1 น

218
00:11:51,608 --> 00:11:48,455
ะครับ

219
00:11:39,506 --> 00:11:43,506
ปรับสภาพแวดล้อม ปรับสภาพหลาย ๆ อย่างนะครับ

220
00:11:43,511 --> 00:11:47,511
แล้วตอนนี้ห้องแล็บเราก็ยังใช้ไม่ได้ใช่ไหม

221
00:11:58,705 --> 00:11:57,056

222
00:11:47,509 --> 00:11:51,508
อาจารย์เข้าแจ้งหรือยังว่าใช้ได้เมื่อไร อาคาร 7 เรา

223
00:11:51,508 --> 00:11:55,508
ไม่แจ้งเพราะว่าเราไม่รู้ว่าจะใช้ได้เมื่อไร

224
00:12:08,195 --> 00:12:05,969

225
00:11:55,515 --> 00:11:59,515
ผมแวะไปเมื่อวานก็ไม่มีทีท่าว่าจะได้ใช้เลยนะ

226
00:12:10,592 --> 00:12:08,345

227
00:11:59,509 --> 00:12:03,509
คนทำก็นั่งทำง็อกแง็ก ๆ อยู่คน 2 คน

228
00:12:12,713 --> 00:12:10,936

229
00:12:03,514 --> 00:12:07,507
เทอมนี้ผมว่าไม่น่าทันนะ น่าจะได้ใช้เทอมหน้า

230
00:12:07,507 --> 00:12:11,506
นะครับ เทอมหน้าก็เราได้เครื่องใหม่มาอีกแล้ว

231
00:12:11,506 --> 00:12:15,506
เราอยากได้เทอมหน้า ก็เป็นรุ่นพวกเราได้ใช้

232
00:12:15,509 --> 00:12:19,508
นะครับ เทอมหน้า

233
00:12:19,508 --> 00:12:23,508
องค์ประกอบตัวที่ 1 ของ Process นะครับ ก็คือ 1. Process

234
00:12:32,425 --> 00:12:30,408

235
00:12:23,507 --> 00:12:27,507
ทุกตัวจะต้องมีชื่อและหมายเลขประจำตัว

236
00:12:27,510 --> 00:12:31,510
นะครับ Process ID

237
00:12:39,209 --> 00:12:37,234

238
00:12:31,506 --> 00:12:35,506
นะครับ และจะต้อง

239
00:12:35,507 --> 00:12:39,506
ไม่ซ้ำกันนะครับ

240
00:12:39,506 --> 00:12:43,506
เหมือนชื่อไฟล์น่ะนะครับ

241
00:12:51,424 --> 00:12:55,424
ชื่อไฟล์ซ้ำกัน

242
00:12:55,729 --> 00:12:54,553
ได้ไหม

243
00:12:43,509 --> 00:12:47,506

244
00:12:47,506 --> 00:12:51,506
ได้ไหมครับ ชื่อไฟล์ นามสกุลไฟล์

245
00:12:51,518 --> 00:12:55,518
นะครับ องค์ประกอบ Process อีกตัวหนึ่ง คือ

246
00:13:04,674 --> 00:13:01,920

247
00:12:55,511 --> 00:12:59,509
ชื่อและหมายเลขประจำตัวห้ามซ้ำกัน เหมือนหมายเลขบัตรประจำตัว

248
00:12:59,509 --> 00:13:03,506
เราซ้ำกันได้ไหมครับ ได้ไหม

249
00:13:03,506 --> 00:13:07,506
ไม่ได้นะครับ แต่ถ้าถาม

250
00:13:07,508 --> 00:13:11,508
ย้อนกลับว่าชื่อและนามสกุลมีโอกาสซ้ำกันได้ไหม

251
00:13:11,509 --> 00:13:15,509
ได้นะครับ เพราะอะไร

252
00:13:22,728 --> 00:13:21,584

253
00:13:15,505 --> 00:13:19,505
เช่น อาจจะมีพิเชนทร์ จันทร์ปุ่ม 5 คน เหมือนกัน

254
00:13:19,513 --> 00:13:23,509
เพราะอะไรครับ เพราะอาจจะมีญาติพี่น้อง

255
00:13:23,509 --> 00:13:27,509
นามสกุลเหมือนกัน บังเอิญว่าชื่อพิเชนทร์มันเพราะ เลยตั้งเหมือนกัน

256
00:13:27,512 --> 00:13:31,507
เลข 123 หลักห้ามซ้ำกัน

257
00:13:31,507 --> 00:13:35,506
องค์ประกอบอันที่ 2 ของ

258
00:13:35,506 --> 00:13:39,506
Process ทุก Process

259
00:13:53,199 --> 00:13:51,703
จะต้อง

260
00:13:39,506 --> 00:13:43,506
มีโค้ดนะครับ เป็นโค้ดนะครับ

261
00:13:43,506 --> 00:13:47,506
เป็นโค้ด เป็นรหัส

262
00:14:01,672 --> 00:13:58,744

263
00:13:47,515 --> 00:13:51,508
คำว่า "โค้ด" ก็คือจะต้อง Execute ได้ทันที

264
00:13:51,508 --> 00:13:55,507
คือ เป็นภาษาเครื่องแปลเรียบร้อยแล้ว

265
00:13:55,507 --> 00:13:59,505
นะครับ

266
00:13:59,505 --> 00:14:03,505
องค์ประกอบอันที่ 3 ก็คือข้อมูล

267
00:14:13,801 --> 00:14:11,072

268
00:14:03,526 --> 00:14:07,526
Data ข้อมูลนี้นะครับ

269
00:14:15,474 --> 00:14:19,474
ข้อมู

270
00:14:18,169 --> 00:14:16,088
ลนี้นะครับ

271
00:14:07,508 --> 00:14:11,507
เขาบอกว่าโปรแกรม

272
00:14:11,507 --> 00:14:15,507
ต้องการหรือจัดการข้อมูลอาจจะเป็นของ Process ใด Process หนึ่ง

273
00:14:15,513 --> 00:14:19,509
หรืออาจจะใช้ข้อมูลร่วมกันกับ Process อื่นก็ได้นะครับ

274
00:14:19,509 --> 00:14:23,509
ใช้ร่วมกันได้ ตัวอย่างของ Process

275
00:14:32,649 --> 00:14:29,449

276
00:14:23,509 --> 00:14:27,509
ที่ใช้ข้อมูลร่วมกันนะครับ เช่น

277
00:14:37,432 --> 00:14:34,487

278
00:14:27,511 --> 00:14:31,506
Process ในระบบฐานข้อมูล

279
00:14:31,506 --> 00:14:35,506
นะครับ

280
00:14:35,506 --> 00:14:39,506
เช่น ฐานข้อมูลระบบงานทะเบียนราชภัฏสกลนคร

281
00:14:47,569 --> 00:14:51,569
อย่างนี้

282
00:14:49,014 --> 00:14:45,296

283
00:14:39,508 --> 00:14:43,508
เช่น เรามา

284
00:14:43,508 --> 00:14:47,508
รายงานตัวเป็นนักศึกษานะครับ ปุ๊บนะครับ ขึ้นทะเบียนปุ๊บ

285
00:14:58,217 --> 00:14:56,537

286
00:14:47,513 --> 00:14:51,513
พอเราไปห้องสมุดก็ใช้ฐานข้อมูลเดียวกัน

287
00:15:01,193 --> 00:15:00,128

288
00:14:51,532 --> 00:14:55,514
ในการเงินก็ใช้ฐานข้อมูลชุดเดียวกัน

289
00:14:55,514 --> 00:14:59,506
นะครับ ศูนย์คอม(พิวเตอร์) ไปกองพัฒฯ

290
00:14:59,506 --> 00:15:03,506
ก็ฐานข้อมูลอันเดียวกันนะครับ โดยใช้ฐานข้อมูลร่วมกัน

291
00:15:03,514 --> 00:15:07,511
นะครับ

292
00:15:07,511 --> 00:15:11,506
องค์ประกอบ

293
00:15:11,506 --> 00:15:15,506
อันที่ 4 ของ Process ก็คือ

294
00:15:21,208 --> 00:15:20,432

295
00:15:15,506 --> 00:15:19,506
Process  Control Block นะครับ หรือบล็อกควบคุมโปรแกรมนะครับ

296
00:15:27,373 --> 00:15:25,799
ซึ่งตัวของ

297
00:15:19,508 --> 00:15:23,508
ระบบปฎิบัติการจะกำหนดเนื้อที่บางส่วน

298
00:15:23,509 --> 00:15:27,509
ในหน่วยความจำ ทำเป็น Process

299
00:15:27,516 --> 00:15:31,516
Control Block

300
00:15:31,516 --> 00:15:35,506
หรือ PCB นะครับ

301
00:15:35,506 --> 00:15:39,506

302
00:15:39,506 --> 00:15:43,506
กำหนดไว้ทำไมนะครับ ก็คือ 1. กำหนดไว้เพื่อเป็นสถานะ Process

303
00:15:58,625 --> 00:15:56,304
ปัจจุบัน

304
00:15:43,508 --> 00:15:47,508

305
00:15:47,509 --> 00:15:51,505

306
00:15:51,505 --> 00:15:55,505
เก็บหมายเลขของ Process ความสำคัญของ Process

307
00:15:55,507 --> 00:15:59,507
อยู่ใน PCB นะครับ

308
00:15:59,511 --> 00:16:03,506
ใน Process แต่ละตัวจะมี

309
00:16:03,506 --> 00:16:07,506
บล็อกควบคุมโปรแกรมหรือ PCB อยู่นะครับ ซึ่ง PCB นี้

310
00:16:07,512 --> 00:16:11,512
ก็จะเก็บสถานะของ Process

311
00:16:16,888 --> 00:16:19,184
ที่เป็นปัจจุบันนะครับ

312
00:16:11,507 --> 00:16:15,507
แล้วก็เก็บลำดับความสำคัญของ Process เอาไว้นะครับ

313
00:16:15,513 --> 00:16:19,507
นอกจากนั้น

314
00:16:19,507 --> 00:16:23,507
ก็ยังเก็บสารสนเทศที่เกี่ยวกับ

315
00:16:23,515 --> 00:16:27,515
การจัดการหน่วยความจำของ Process

316
00:16:32,528 --> 00:16:29,743

317
00:16:27,507 --> 00:16:31,507
ข้อมูลการรับส่งข้อมูลของ Process

318
00:16:39,640 --> 00:16:40,344
คือ

319
00:16:31,507 --> 00:16:35,507
เก็บข้ามูลสำคัญของ Process

320
00:16:35,522 --> 00:16:39,510
ใน PCB นั่นเองนะครับ พื้นที่จัดเก็บ คือ Register

321
00:16:39,510 --> 00:16:43,510
นะครับ

322
00:16:50,896 --> 00:16:52,767
Register คืออะไร

323
00:16:43,508 --> 00:16:47,508
Register คือ หน่วยความจำขนาดเล็ก

324
00:16:47,509 --> 00:16:51,508
ที่ในหน่วยความจำ ส่วนในรายละเอียดต่าง ๆ

325
00:16:51,508 --> 00:16:55,508
อาจารย์จะพูดในบทที่ 3, 4, 5 นะครับ อันนี้พูดคร่าว ๆ ก่อน

326
00:17:03,088 --> 00:17:02,852

327
00:16:55,512 --> 00:16:59,512
ให้พวกเรามองภาพกว้าง ๆ

328
00:17:06,852 --> 00:17:04,232
นะครับ

329
00:16:59,507 --> 00:17:03,507

330
00:17:03,508 --> 00:17:07,508

331
00:17:07,509 --> 00:17:11,507
ครับผม

332
00:17:11,507 --> 00:17:15,507

333
00:17:15,512 --> 00:17:19,506

334
00:17:19,506 --> 00:17:23,506

335
00:17:23,509 --> 00:17:27,509

336
00:17:27,509 --> 00:17:31,509

337
00:17:31,523 --> 00:17:35,510

338
00:17:35,510 --> 00:17:39,510

339
00:17:39,512 --> 00:17:43,511
ดูต่อนะครับ

340
00:17:43,511 --> 00:17:47,511
องค์ประกอบต่อมา

341
00:17:47,512 --> 00:17:51,512
นะครับ ของ Process ก็คือ

342
00:17:58,458 --> 00:17:59,488
Program Status Words

343
00:17:51,508 --> 00:17:55,508
นะครับ

344
00:17:55,508 --> 00:17:59,508
หรือ PSW นะครับ Program Status Words นะครับ

345
00:17:59,513 --> 00:18:03,511
เป็นตัวควบคุมลับดับการ Execute ของ Process

346
00:18:03,511 --> 00:18:07,507

347
00:18:07,507 --> 00:18:11,507
มันจะบอกว่า Process นี้จะเข้าไปครอบครอง

348
00:18:11,513 --> 00:18:15,509
CPU ลำดับที่เท่าไรนะครับ

349
00:18:15,509 --> 00:18:19,509

350
00:18:19,512 --> 00:18:23,512
ต่อมานะครับ คุณสมบัติของ Process นะครับ Process ทุก Process

351
00:18:24,513 --> 00:18:28,512
จะมีคุณสมบัติดังต่อไปนี้

352
00:18:28,512 --> 00:18:32,512
นะครับ ก็คือ 1. Process ทุก

353
00:18:32,517 --> 00:18:36,517
ตัวจะมีลำดับความสำคัญ

354
00:18:45,719 --> 00:18:44,135

355
00:18:36,509 --> 00:18:40,509
ต่างกันนะครับ Process ทุก Process

356
00:18:40,510 --> 00:18:44,510
จะมีลำดับความสำคัญ เช่น

357
00:18:51,272 --> 00:18:49,007

358
00:18:44,509 --> 00:18:48,509
Process A อาจจะมีความสำคัญมากกว่า Process B หรือ Process ของ

359
00:18:48,514 --> 00:18:52,514
ผู้ดูแลระบบอาจจะมีความสำคัญมากกว่า Process

360
00:18:52,517 --> 00:18:56,509
ของ User อย่างนี้ อันที่ 2

361
00:18:56,509 --> 00:19:00,509
คุณสมบัติอันที่ 2 อำนาจหน้าที่

362
00:19:00,511 --> 00:19:04,511
Process ทุกตัวจะมีอำนาจหน้าที่ที่ต่างกัน เช่น Process

363
00:19:04,514 --> 00:19:08,508
ของผู้ดูแลระบบมีอนาจ

364
00:19:08,508 --> 00:19:12,508
มากกว่าของ User อย่างนี้เป็นต้นนะครับ หรือ

365
00:19:12,511 --> 00:19:16,509
คุณสมบัติอื่น ๆ ที่

366
00:19:16,509 --> 00:19:20,509
OS กำหนด

367
00:19:25,285 --> 00:19:25,127

368
00:19:20,523 --> 00:19:24,523
อันนี้ขึ้นอยู่กับ OS ครับ

369
00:19:29,127 --> 00:19:31,055
OS ว่าเราใช้ OS อะไร

370
00:19:24,511 --> 00:19:28,511
เช่น ใช้ Windows 8

371
00:19:37,654 --> 00:19:35,199

372
00:19:28,509 --> 00:19:32,509
ใช้ Windows 10

373
00:19:39,199 --> 00:19:43,199
ใช้ Windows

374
00:19:42,767 --> 00:19:46,767
11

375
00:19:43,983 --> 00:19:47,983
คุศ

376
00:19:46,313 --> 00:19:45,656
สมบัติ

377
00:19:32,511 --> 00:19:36,511
ของ Process ก็จะต่างออกไป ยกตัวอย่างเช่นนะครับ

378
00:19:36,511 --> 00:19:40,511
Windows 8

379
00:19:57,095 --> 00:19:53,927

380
00:19:40,509 --> 00:19:44,509
สามารถตั้งชื่อได้

381
00:19:44,509 --> 00:19:48,509
ความยาวกี่ตัวอักษรรู้ไหม

382
00:19:59,184 --> 00:19:59,063

383
00:19:48,522 --> 00:19:52,522
เคยไหม อาจารย์จะยังไม่บอกว่ากี่ตัวอักษรนะ

384
00:19:52,524 --> 00:19:56,524
เราสามารตั้งชื่อได้นะ

385
00:20:04,727 --> 00:20:08,727

386
00:20:05,661 --> 00:20:04,702
ชื่อไฟล์

387
00:19:56,511 --> 00:20:00,511
นะครับ กับ Windows 11

388
00:20:09,629 --> 00:20:06,759

389
00:20:00,512 --> 00:20:04,512
ต่างกันไหม ลองดูนะ ลองดู

390
00:20:11,512 --> 00:20:09,559
เดี๋ยสเ

391
00:20:04,512 --> 00:20:08,509
จะไปลองตอนภาคปฏิบัติ ลองสิว่าเรา

392
00:20:08,509 --> 00:20:12,509
ถ้าเกิดเป็น

393
00:20:12,510 --> 00:20:16,510
Windows 11 สามารถตั้งชื่อความยาวกี่ตัว

394
00:20:16,512 --> 00:20:20,512
นะครับ นี่คือคุณสมบัติที่แต่ละตัว

395
00:20:27,079 --> 00:20:31,079
ของ OS

396
00:20:31,576 --> 00:20:29,350

397
00:20:20,511 --> 00:20:24,511
เป็นคนกำหนดนะครับ

398
00:20:24,516 --> 00:20:28,510

399
00:20:28,510 --> 00:20:32,510
เมื่อกี้องค์ประกอบของ Process นะครับ คราวนี้มาดู

400
00:20:43,663 --> 00:20:40,750
สถานะข

401
00:20:32,523 --> 00:20:36,509
ของ Process นะครับ

402
00:20:36,509 --> 00:20:40,509
สไลด์นะครับ อยู่กับพี่พลอยนะ

403
00:20:40,510 --> 00:20:44,510
พลอยค่อย เอาขึ้นให้น้องนะครับ

404
00:20:44,510 --> 00:20:48,510
อาจารย์ลืมอัปลงในไลน์กลุ่มนะครับ

405
00:20:48,511 --> 00:20:52,511
จะได้ดูก่อนนะครับ คราวนี้

406
00:20:52,513 --> 00:20:56,513
มาดูสถานะของ Process นะครับ Process ก็แบ่งออกเป็นสถานะ

407
00:20:56,515 --> 00:21:00,515
ได้ดังต่อไปนนี้นะครับ

408
00:21:07,190 --> 00:21:06,247
1.

409
00:21:00,510 --> 00:21:04,510
สถานะพร้อม สถานะพร้อมเป็นอย่างไร

410
00:21:13,631 --> 00:21:12,366

411
00:21:04,512 --> 00:21:08,512
สถานะพร้อมเป็นสถานะพร้อมที่ Process

412
00:21:08,512 --> 00:21:12,512
พร้อมที่จะใช้ CPU ทันทีที่

413
00:21:18,039 --> 00:21:19,796

414
00:21:12,510 --> 00:21:16,510
OS มอบหมายให้

415
00:21:24,495 --> 00:21:22,663

416
00:21:16,509 --> 00:21:20,509
รอแล้ว เหมือนเรารอคิวแล้ว ยืนรอแล้ว

417
00:21:27,736 --> 00:21:26,174

418
00:21:20,511 --> 00:21:24,511
รอเข้าไปครอบครอง CPU นะครับ

419
00:21:24,515 --> 00:21:28,515
หรือรอเข้าไปใช้งาน CPU เราเรียกว่า "สถานะพร้อม"

420
00:21:34,064 --> 00:21:33,958

421
00:21:28,516 --> 00:21:32,511
เช่น

422
00:21:32,511 --> 00:21:36,511
เราจะไปเข้าห้องน้ำ ห้องน้ำเป็น CPU สมมตินะ เรายืนรอคิว

423
00:21:36,514 --> 00:21:40,512
นี่ เราพร้อมแล้ว พร้อมจะเข้าไปใช้งาน

424
00:21:40,512 --> 00:21:44,512
เราเรียกว่า "สถานะพร้อม" นะครับ สถานะที่ 2 คือ

425
00:21:44,517 --> 00:21:48,517
สถานะ Run

426
00:21:58,423 --> 00:21:56,611

427
00:21:48,511 --> 00:21:52,511
Run คืออะไรครับ สถานะ Run เป็นสถานะ

428
00:22:02,455 --> 00:22:01,446
ที่

429
00:21:52,512 --> 00:21:56,512
Process กำลังครอบครอง CPU อยู่

430
00:22:05,967 --> 00:22:07,959

431
00:21:56,513 --> 00:22:00,513
ก็คือเข้าไปครอบครอง CPU

432
00:22:11,959 --> 00:22:10,901

433
00:22:00,510 --> 00:22:04,510
ที่เราเรียกว่า "Run Program"

434
00:22:18,566 --> 00:22:15,557

435
00:22:04,512 --> 00:22:08,512
นี่คือสถานะ Run

436
00:22:20,119 --> 00:22:18,547

437
00:22:08,510 --> 00:22:12,510
นะครับ

438
00:22:12,510 --> 00:22:16,510
สถานะที่ 3 นะครับ

439
00:22:16,512 --> 00:22:20,512
สถานะติดขัด

440
00:22:25,104 --> 00:22:24,358

441
00:22:20,511 --> 00:22:24,511
เขาบอกว่าสถานะติดขัดเกิดจากการ

442
00:22:24,514 --> 00:22:28,511
ที่ Process หยุดรอ

443
00:22:28,511 --> 00:22:32,511
เหตุการณ์ใดเหตุการณ์หนึ่งให้เกิดขึ้น

444
00:22:37,288 --> 00:22:37,408

445
00:22:32,511 --> 00:22:36,511
โดย Process ไม่จำเป็นต้องใช้ CPU

446
00:22:41,911 --> 00:22:41,804

447
00:22:36,513 --> 00:22:40,511
และมันต้องไปครอบครอง CPU เราไม่รู้ครับ ว่า

448
00:22:40,511 --> 00:22:44,511
เหตุการณ์นั้นคือเหตุการณ์อะไร ไม่รู้

449
00:22:53,488 --> 00:22:50,535

450
00:22:44,511 --> 00:22:48,511
ยกตัวอย่างเช่น

451
00:22:54,671 --> 00:22:54,189

452
00:22:48,510 --> 00:22:52,510
ผมกับแม็กกี้หรือกับอุบลน่ะ กับอุบล

453
00:22:52,511 --> 00:22:56,511
ผมเป็น Process A ไปยืนรอคิวใน

454
00:22:56,514 --> 00:23:00,514
สถานะพร้อม อุบลรอผมคนที่ 2

455
00:23:00,514 --> 00:23:04,511
ผมเปลี่ยนจากสถานะ

456
00:23:04,511 --> 00:23:08,511
พร้อมเข้าเป็นสถานะ Run ก็คือ

457
00:23:08,511 --> 00:23:12,511
เข้าไปครอบครอง CPU

458
00:23:12,511 --> 00:23:16,511
อุบลก็รออยู่ อุบลก็รออยู่สถานะพร้อมนะครับ

459
00:23:16,512 --> 00:23:20,512
ในจังหวะที่ผมกำลังครอบครอง CPU อยู่ บังเอิญว่า

460
00:23:20,516 --> 00:23:24,511
ผมจำเป็นจะต้อง

461
00:23:24,511 --> 00:23:28,511
ไปพิมพ์งาน ไปพิมพ์เอกสาร ช่วงที่พิมพ์

462
00:23:28,512 --> 00:23:32,512
เอกสาร ผมจะต้องออกไปที่พรินต์เตอร์

463
00:23:32,514 --> 00:23:36,514
และช่วงที่ออกไปที่พรินเตอร์นี่ ผมไม่จำเป็น

464
00:23:36,517 --> 00:23:40,511
ต้องใช้งาน CPU

465
00:23:40,511 --> 00:23:44,511
จังหวะนี่ล่ะครับ เรียกว่าสถานะติดขัด

466
00:23:44,513 --> 00:23:48,513
คือ เกิดเหตุการณ์ที่ตัวของ Process

467
00:23:48,515 --> 00:23:52,513
ออกไปติดต่ออุปกรณ์รอบข้าง จังหวะนี้

468
00:23:52,513 --> 00:23:56,513
อุบลก็จะเข้ามาแทนที่ผม

469
00:23:56,514 --> 00:24:00,514
นึกออกไหมนะครับ ถ้าเขาถามว่าสถานะติดขัดเกิด

470
00:24:00,522 --> 00:24:04,512
จากอะไร เราก็บอกว่าเกิดจากสถานะ

471
00:24:04,512 --> 00:24:08,512
ที่ Process เข้าไปครอบครอง CPU แล้วนะครับ

472
00:24:08,523 --> 00:24:12,513
แต่เกิดเหตที่ Process เอง

473
00:24:12,513 --> 00:24:16,512
ไม่จำเป็นจะต้องครอบครอง CPU ต่อ

474
00:24:16,512 --> 00:24:20,512
หรือไปติดต่อกับอุปกรณ์ข้างนอก

475
00:24:20,512 --> 00:24:24,512
อุปกรณ์รอบข้างแทน ต้องปล่อย CPU ออกไป Process ใหม่ก็

476
00:24:24,514 --> 00:24:28,514
เข้ามาครองแทนที่นะครับ

477
00:24:28,517 --> 00:24:32,512
นี่คือสถานะติดขัด

478
00:24:32,512 --> 00:24:36,512
สถานะต่อมานะครับ สถานะพัก

479
00:24:36,512 --> 00:24:40,512
เขาบอกสถานะพัก

480
00:24:40,513 --> 00:24:44,513
ก็คือสถานะที่ Process ไม่มีการทำงานใด ๆ เลย

481
00:24:44,513 --> 00:24:48,512
ก็คือจบสมบูรณ์ เช่น ผมไปครอบครอง

482
00:24:48,512 --> 00:24:52,512
CPU ทำงานเสร็จสิ้นแล้วปุ๊บ ออก

483
00:24:52,512 --> 00:24:56,512
จบเลย มาทำงานต่อ ได้พัก จบนะครับ

484
00:24:56,514 --> 00:25:00,511

485
00:25:00,511 --> 00:25:04,511

486
00:25:04,511 --> 00:25:08,511
ซึ่ง Process นั้นนะครับ

487
00:25:08,513 --> 00:25:12,513
สามารถที่จะเปลี่ยนสถานะหนึ่งเป็น

488
00:25:12,525 --> 00:25:16,514
สถานะหนึ่งได้ตลอดเวลา

489
00:25:16,514 --> 00:25:20,514
นะครับ ขึ้นอยู่ว่า ณ ตรงนั้นอยู่ในสถานะอะไร

490
00:25:20,514 --> 00:25:24,511
อาจจะพร้อม พร้อมเสร็จ

491
00:25:24,511 --> 00:25:28,511
เข้าไป Run Run เสร็จปุ๊บต้องไปติดต่ออุปกรณ์รอบข้าง

492
00:25:28,515 --> 00:25:32,515
เป็นสถานะติดขัด พอติดขัดเสร็จ

493
00:25:32,515 --> 00:25:36,515
กลับไปพร้อมใหม่ พร้อมเสร็จเข้าไป Run Run

494
00:25:36,517 --> 00:25:40,514
เสร็จแล้ว จบแล้วไปพัก

495
00:25:40,514 --> 00:25:44,514
นะครับ มันจะเปลี่ยนไปอย่างนี้ตลอดเวลานะครับ

496
00:25:44,515 --> 00:25:48,513

497
00:25:48,513 --> 00:25:52,512

498
00:25:52,512 --> 00:25:56,511

499
00:25:56,511 --> 00:26:00,511
อันนี้อาจารย์อธิบายไปแล้วนะครับ

500
00:26:00,513 --> 00:26:04,513
สไลด์นะครับ ลอง

501
00:26:04,516 --> 00:26:08,512
ดูรูปนะครับ เห็นไหมครับ

502
00:26:08,512 --> 00:26:12,512
ในรูปภาพอธิบาย

503
00:26:12,516 --> 00:26:16,514
การเปลี่ยนสถานะของ Process ใช่ไหม

504
00:26:16,514 --> 00:26:20,514
เหมือนที่อาจายร์อธิบายไปเมื่อกี้ เริ่มต้นมา

505
00:26:20,517 --> 00:26:24,513
ยืนต่อคิวเลย 1, 2, 3, 4, 5

506
00:26:24,513 --> 00:26:28,512
พร้อมไหม พร้อม

507
00:26:28,512 --> 00:26:32,512
พอพร้อมเสร็จ ได้เวลา โอเค Run

508
00:26:32,521 --> 00:26:36,513
ทีละ ตัวทีละ ทีละโปรแกรม ทีละ Process

509
00:26:36,513 --> 00:26:40,512
ถ้ามีอะไรเกิดขึ้น จบครับ พักเลย

510
00:26:40,512 --> 00:26:44,512
นี่คือการเปลี่ยนสถานะของ Process

511
00:26:44,512 --> 00:26:48,512
แต่ถ้าเกิดเหตุการณ์ใดเหตุการณ์หนึ่งขึ้น

512
00:26:48,517 --> 00:26:52,512
นะครับ เพราะอะไรครับ ถ้าเรามอง

513
00:26:52,512 --> 00:26:56,512
รูปนี้ รูปนี้

514
00:26:56,515 --> 00:27:00,513
มาพร้อม มา Run

515
00:27:00,513 --> 00:27:04,512
แล้วก็จบ ถ้าสมมติว่า

516
00:27:04,512 --> 00:27:08,512
Process แต่ละตัวเข้าไป Run

517
00:27:08,516 --> 00:27:12,516
ใช้เวลาไม่เท่ากันจะเกิดอะไรขึ้นนะ ยกตัวอย่างนะ เช่น

518
00:27:12,525 --> 00:27:16,515
Process A เช่นผม

519
00:27:16,515 --> 00:27:20,514
พร้อมเข้าไป Run 2 วินาที

520
00:27:20,514 --> 00:27:24,514
แล้วก็จบ มีอะไรเกิดขึ้นไหม

521
00:27:24,515 --> 00:27:28,515
ไม่มี คราวนี้อุบล

522
00:27:28,515 --> 00:27:32,512
อุบลมาต่อคิว มาพร้อม

523
00:27:32,512 --> 00:27:36,512
อุบลเข้าไป Run ปุ๊บ อุบลบอกผมใช้เวลา 3 ชั่วโมง

524
00:27:36,518 --> 00:27:40,515
เป็นอย่างไรครับ เราก็จบ

525
00:27:40,515 --> 00:27:44,514
ใช่ไหม คราวนี้

526
00:27:44,514 --> 00:27:48,512
มิ่ง 3 คนที่ 3 มา

527
00:27:48,512 --> 00:27:52,512
ต่อคิวพร้อม แต่ปรากฏว่ามิ่งต้องการใช้เวลาแค่

528
00:27:52,519 --> 00:27:56,513
1 วินาที แต่ต้องรออุบล

529
00:27:56,513 --> 00:28:00,513
3 ชั่วโมงนึกออกไหม นึกออกไหม นึกภาพตามนะ

530
00:28:00,516 --> 00:28:04,515
ดังนั้น ในระบบคอมพิวเตอร์ของเรานั้นนะครับ

531
00:28:04,515 --> 00:28:08,515
มันจะต้องไม่ให้เกิดเหตุการณ์นี้เกิดขึ้น มันจึงต้องกำหนด

532
00:28:08,517 --> 00:28:12,513
เวลาขึ้นมา ว่าคุณจะต้อง

533
00:28:12,513 --> 00:28:16,513
เข้าไปเวลานี้แล้วจบนะ เราเรียกเวลานี้ว่า "เวลาควอนตัม"

534
00:28:16,516 --> 00:28:20,515
ถ้าย้อนถามกลับว่า

535
00:28:20,515 --> 00:28:24,514
เวลาควอนตัมคืออะไร

536
00:28:24,514 --> 00:28:28,514
คืออะไรครับ คือ เวลาที่

537
00:28:28,515 --> 00:28:32,515
ถูกกำหนดไว่ว่า Process แต่ละตัวสามารถ

538
00:28:32,517 --> 00:28:36,512
เข้าไปครอบครอง

539
00:28:36,512 --> 00:28:40,512
CPU ได้เป็นเวลาเท่าไร หรือนานเท่าไร

540
00:28:40,513 --> 00:28:44,513
เช่น เรากดหนดเวลา ควอนตัมไว้

541
00:28:44,514 --> 00:28:48,514
5 วินาที สมมตินะ 5 วินาที นั่นแสดงว่า

542
00:28:48,514 --> 00:28:52,514
Process ทุกตัวจะสามารถเข้าไปครอบครองได้แค่

543
00:28:52,520 --> 00:28:56,514
5 วินาที เช่น เมื่อกี้ อย่างเมื่อกี้

544
00:28:56,514 --> 00:29:00,513
ผม Process A เข้าไป

545
00:29:00,513 --> 00:29:04,513
3 วิ(นาที) จบไหม จบ

546
00:29:04,513 --> 00:29:08,513
เพราะว่าเราให้ 5 วินาทีใช่ไหมควอนตัม

547
00:29:08,520 --> 00:29:12,517
อุบลก็จะเข้าไปได้แค่ 5 วิฯ แล้วอุบลต้องย้อนกลับ

548
00:29:12,517 --> 00:29:16,515
ไปพร้อมใหม่เพิ่มให้ มิ่งเข้าไปใหม่

549
00:29:16,515 --> 00:29:20,514
นี่คือหลักการของมันนะครับ

550
00:29:20,514 --> 00:29:24,514

551
00:29:24,514 --> 00:29:28,513
มันก็จะเกิดรูปนี้ขึ้น

552
00:29:28,513 --> 00:29:32,513
ใช่ไหม

553
00:29:32,513 --> 00:29:36,513
นี่นะครับ พร้อม

554
00:29:36,517 --> 00:29:40,515
พออเราเอาเวลาควอนตัมมาจับ

555
00:29:40,515 --> 00:29:44,515
เข้าไป Run ได้แค่ 5 วิฯ นะ ถ้าเกินนั้นนะ คุณต้องย้อนมาพร้อมใหม่

556
00:29:44,516 --> 00:29:48,514
มันเลยทำให้เกิดระบบหลายโปรแกรม

557
00:29:48,514 --> 00:29:52,514
นะครับ แต่เวลาเราทำงานกับคอมพิวเตอร์ มันเป็นอย่างไรครับ

558
00:29:52,518 --> 00:29:56,515
แต่ในความรู้สึกเราเป็นอย่างไรครับ มันทำงาน

559
00:29:56,515 --> 00:30:00,515
ด้วยความเร็วสูง มันเลยเหมือนประหนึ่งว่าอย่างนี้จริงหรือ

560
00:30:00,516 --> 00:30:04,513
ใช่ไหม เราหายใจแทบไม่ทันเวลาประมวลผล

561
00:30:04,513 --> 00:30:08,513
สมัยที่อาจารย์เรียนเขียนโปรแกรมนะครับ

562
00:30:08,514 --> 00:30:12,514
เมื่อเกือบ 30 ปีที่แล้วนะ

563
00:30:12,514 --> 00:30:16,514
เวลาเรา Run โปรแกรม เราจะกด Escape ยกเลิกทันนะ

564
00:30:16,514 --> 00:30:20,514

565
00:30:20,515 --> 00:30:24,514
กด F8, F9 ปุ๊บ นึกได้ผ่านไป 2 นาที

566
00:30:24,514 --> 00:30:28,514
ไม่ถูกกดยกเลิก

567
00:30:28,515 --> 00:30:32,513
แต่โปรแกรมเราทุกวันนี้ เราคลิก

568
00:30:32,513 --> 00:30:36,513
ปุ๊บ ประมวลผลปั๊บนะครับ

569
00:30:36,513 --> 00:30:40,513
มันมีความเร็วสูงนะครับ ตามรูปนี้นะครับ

570
00:30:40,517 --> 00:30:44,513
พยายามมองตามนะครับ เพราะว่า

571
00:30:44,513 --> 00:30:48,513
เราจะเรียนอีก 3 ครั้ง

572
00:30:48,517 --> 00:30:52,516
แล้วก็จะสอบกลางภาค

573
00:30:52,516 --> 00:30:56,514
นะครับ สอบกลางภาค พอสอบกลางภาคเสร็จ

574
00:30:56,514 --> 00:31:00,514
อาจารย์ก็จะะยกคลาสไปอยู่

575
00:31:00,514 --> 00:31:04,514
อาคาร 7 เพื่อเรียนภาคปฏิบัติ

576
00:31:04,515 --> 00:31:08,515
นะครับ ภาคปฎิบัติก็อย่างที่เราตกลงไว้ เราจะ

577
00:31:08,515 --> 00:31:12,515
เรียนแค่สัปดาห์ละ 8 คน เราจะไม่เรียนทั้งห้อง

578
00:31:12,517 --> 00:31:16,513
แบบนี้นะครับ

579
00:31:16,513 --> 00:31:20,513

580
00:31:20,513 --> 00:31:24,513
คราวนี้มาดูอีกสถานะหนึ่ง

581
00:31:24,513 --> 00:31:28,513
นะครับ ที่เรา

582
00:31:28,514 --> 00:31:32,513
พูดไว้ ก็คือสถานะติดขัด

583
00:31:32,513 --> 00:31:36,513
เห็นไหมครับ ดูรูป

584
00:31:36,515 --> 00:31:40,513
มาพร้อม เห็นไหม

585
00:31:40,513 --> 00:31:44,513
พร้อมปุ๊บ มา Run เข้าไป

586
00:31:44,516 --> 00:31:48,515
Run จะหมดเวลาควอนตัม หรือไม่หมดก็แล้วแต่

587
00:31:48,515 --> 00:31:52,513
แต่บังเอิญว่า Process นั้น

588
00:31:52,513 --> 00:31:56,513
ไปติดต่อกับอุปกรณ์รอบข้าง เช่น

589
00:31:56,513 --> 00:32:00,513
ติดต่อกับ Printer นะครับ

590
00:32:00,513 --> 00:32:04,513
ช่วงที่ติดต่อ Printer ไม่ได้ทำงาน ก็จะ

591
00:32:04,517 --> 00:32:08,517
ทุกผลักออกมาเป็นสถานะติดขัด พอติดขัดเสร็จ

592
00:32:08,519 --> 00:32:12,514
ก็จะย้อนกลับไปพร้อมใหม่ ที่อาจารย์อธิบายไว้ข้างต้นแล้ว

593
00:32:12,514 --> 00:32:16,514
นะครับ นี่คือสถานะติดขัด

594
00:32:16,518 --> 00:32:20,518

595
00:32:20,518 --> 00:32:24,513

596
00:32:24,513 --> 00:32:28,513
เขาบอกว่าการเปลี่ยนสถานะ

597
00:32:28,516 --> 00:32:32,514
ทั้ง 3 ของ Process ก็คือ พร้อม Run ติดขัด

598
00:32:32,514 --> 00:32:36,514
เป็นการเปลี่ยน

599
00:32:36,517 --> 00:32:40,514
ในสภาพทั่วไปนะครับ พร้อม

600
00:32:40,514 --> 00:32:44,513
Run ติดขัดนี่

601
00:32:44,513 --> 00:32:48,513
แต่ถ้าเกิดเหตุการณ์ที่

602
00:32:48,514 --> 00:32:52,514
ผิดปกติขึ้นในระบบปฏิบัติการ

603
00:32:52,518 --> 00:32:56,518
หรือระบบคอมพิวเตอร์เรา ระบบปฏิบัติการอาจจะย้าย Process จากสถานะ

604
00:32:56,521 --> 00:33:00,514
ใดสถานะหนึ่งจาก 3 สถานะ

605
00:33:00,514 --> 00:33:04,513
ให้ไปอยู่สถานะพักก็ได้

606
00:33:04,513 --> 00:33:08,513
เพราะสถานะพักเราบอกว่า

607
00:33:08,517 --> 00:33:12,517
มันหยุดนิ่งเลย ไม่ทำงานต่อแล้ว ก็คือเข้าไป Run แล้วก็จบใช่ไหม แต่

608
00:33:12,520 --> 00:33:16,515
ถ้าเกิดเหตการณ์ผิดปกติขึ้นใน OS

609
00:33:16,515 --> 00:33:20,515
จากสถานะพร้อม Run ติดขัด ไปพักก็ได้

610
00:33:20,515 --> 00:33:24,514
นะครับ ซึ่ง

611
00:33:24,514 --> 00:33:28,514
จะเกิดขึ้นได้ก็ด้วยสาเหตุดังต่อไปนี้นะครับ 1.

612
00:33:28,514 --> 00:33:32,514

613
00:33:32,515 --> 00:33:36,513
เกิดการทำงานของระบบผิดพลาด

614
00:33:36,513 --> 00:33:40,513
เช่นสั่ง ๆ ๆ ไป ปรากฎว่าระบบ Error

615
00:33:40,516 --> 00:33:44,516
ผิดพลาด

616
00:33:44,517 --> 00:33:48,513
ไปกดสตางค์ 1,000 บาท

617
00:33:48,513 --> 00:33:52,513
ออกมา 10,000 บาท ดีไหมโทมัส ดีไหม

618
00:33:52,524 --> 00:33:56,517
เอาไหม อย่าไปเอานะลูก

619
00:33:56,517 --> 00:34:00,515
เขาจับเจ้าเด้อ

620
00:34:00,515 --> 00:34:04,515
ต้องไปแจ้งธนาคารนะครับ ไปเอามาใช้ไม่ได้นะครับ ผิดกฎหมาย

621
00:34:04,515 --> 00:34:08,515
นี่คือระบบผิดพลาด มันก็จะย้ายทุกอย่างไปที่

622
00:34:08,515 --> 00:34:12,515
สถานะพัก จนกว่าเหตุการณ์ปกติ

623
00:34:12,516 --> 00:34:16,513
เริ่มต้นใหม่นะครับ สาเหตุอันที่ 2 นะครับ

624
00:34:16,513 --> 00:34:20,513
ที่จะเกิดสถานะพักนะครับ

625
00:34:20,542 --> 00:34:24,515
ผู้ใช้ต้องการหยุดการทำงาน

626
00:34:24,515 --> 00:34:28,513
ชั่วคราว ทำ ๆ อยู่

627
00:34:28,513 --> 00:34:32,513
เราสั่งหยุดอย่างนี้ มันก็จะไปอยู่สถานะพัก

628
00:34:32,515 --> 00:34:36,513
เช่น Run อยู่ยกเลิกอย่างนี้

629
00:34:36,513 --> 00:34:40,513
สาเหตุอันที่ 3 นะครับ

630
00:34:40,515 --> 00:34:44,512
ในระบบมีงานมากเกินไป

631
00:34:44,512 --> 00:34:48,512

632
00:34:48,512 --> 00:34:52,512
สั่งเข้าไป สั่งเข้าไป สั่งเข้าไป  Overload

633
00:34:52,517 --> 00:34:56,516
แฮงค์ Error ก็ย้ายไปสถานะพัก

634
00:34:56,516 --> 00:35:00,516
นะครับ นี่คือสาเหตุหลัก ๆ 3 สาเหตุที่

635
00:35:00,517 --> 00:35:04,513
ทำให้การเปลี่ยนสถานะจากสถานะพร้อม

636
00:35:04,513 --> 00:35:08,513
Run ติดขัดไปอยู่ในสถานะพักนะครับ

637
00:35:08,515 --> 00:35:12,512
เห็นไหมครับ

638
00:35:12,512 --> 00:35:16,512
รูป เห็นไหม

639
00:35:16,514 --> 00:35:20,513
จากรูปนะครับ พร้อม

640
00:35:20,513 --> 00:35:24,511
Run ติดขัด เห็นไหม

641
00:35:24,511 --> 00:35:28,511
แต่ถ้าเกิดสาเหตุจากเมื่อกี้ ระบบ

642
00:35:28,517 --> 00:35:32,516
เกิดทำงานผิดพลาด ผู้ใช้สั่งหยุดเอง

643
00:35:32,516 --> 00:35:36,514
ระบบทำงานมากเกินไปปุ๊บ มาพักเลย

644
00:35:36,514 --> 00:35:40,512
นะครับ

645
00:35:40,512 --> 00:35:44,511

646
00:35:44,511 --> 00:35:48,511
ดังนั้นนะครับ เราก็สามารถ

647
00:35:48,514 --> 00:35:52,514
แยกสถานะของ Process เป็น 2 ส่วน

648
00:35:52,529 --> 00:35:56,515
ก็คือส่วนที่ 1 พร้อม Run ติดขัด

649
00:35:56,515 --> 00:36:00,515
ใช่ไหม ส่วนที่ 2 คือ

650
00:36:00,516 --> 00:36:04,511
พักนะครับ

651
00:36:04,511 --> 00:36:08,511

652
00:36:08,512 --> 00:36:12,512

653
00:36:12,515 --> 00:36:16,512

654
00:36:16,512 --> 00:36:20,512
คราานี้มาดูลำดับชั้นของ Process

655
00:36:20,515 --> 00:36:24,514
นะครับ Process ก็มีลำดับชั้นนะครับ

656
00:36:24,514 --> 00:36:28,513
เขาบอกว่าระบบปฏิบัติการ

657
00:36:28,513 --> 00:36:32,513
หรือ OS นะครับ ผมใช้คำย่อว่า "OS" นะครับ

658
00:36:32,513 --> 00:36:36,512
เขาบอกว่า OS เอง

659
00:36:36,512 --> 00:36:40,512
ก็ประกอบด้วยหลาย ๆ Process

660
00:36:40,514 --> 00:36:44,512
ถ้าหลายคนสับสน เช่น ถ้าอาจารย์ครับ

661
00:36:44,512 --> 00:36:48,512
Process เราจะเรียกว่า "โปรแกรม" ได้ไหม

662
00:36:48,517 --> 00:36:52,512
ได้ไหม

663
00:36:52,512 --> 00:36:56,512
ได้ไหมครับ

664
00:36:56,515 --> 00:37:00,513
บางคนไม่รู้เหมือนกันนะครับ

665
00:37:00,513 --> 00:37:04,513
เขาบอกว่า OS เองก็ประกอบไปด้วยหลาย

666
00:37:04,522 --> 00:37:08,513
Process 1 2 3 เยอะแยะมากมาย

667
00:37:08,513 --> 00:37:12,513
เมื่อผู้ใช้สั่งงาน

668
00:37:12,521 --> 00:37:16,512

669
00:37:16,512 --> 00:37:20,511

670
00:37:20,511 --> 00:37:24,511

671
00:37:24,511 --> 00:37:28,511
เอาสีอะไรดี

672
00:37:28,513 --> 00:37:32,513

673
00:37:32,513 --> 00:37:36,513

674
00:37:36,525 --> 00:37:40,514

675
00:37:40,514 --> 00:37:44,514

676
00:37:44,514 --> 00:37:48,512

677
00:37:48,512 --> 00:37:52,511

678
00:37:52,511 --> 00:37:56,511

679
00:37:56,513 --> 00:38:00,513
พื้นสีดำไปไม่เป็นเลยนะครับ ไม่เป็นไร ดูต่อ

680
00:38:00,514 --> 00:38:04,513
เขาบอกว่าเมื่อ Process ประกอบด้วย หลาย ๆ Process

681
00:38:04,513 --> 00:38:08,513
นั้นนะครับ เมื่อผู้ใช้สั่งงานหรือให้โปรแกรม Run

682
00:38:08,515 --> 00:38:12,512
OS หรือระบบปฏิบัติการจะ

683
00:38:12,512 --> 00:38:16,512
สร้าง Process สำหรับงานนั้นขึ้นมานะครับ ซึ่ง Process ของผู้ใช้

684
00:38:16,519 --> 00:38:20,514
นี้นะครับ เป็น Process ย่อยของ

685
00:38:20,514 --> 00:38:24,514
นึกออกไหม

686
00:38:24,515 --> 00:38:28,512
เขาบอกว่า Process เองก็มีเยอะแยะมา

687
00:38:28,512 --> 00:38:32,512
ของมันนะครับ ซึ่งเราสำหรับผู้ใช้สั่งงานปุ๊บ เช่น อุบล

688
00:38:32,519 --> 00:38:36,512
บอกอุบลต้องการที่จะเข้าไปครอบครอง CPU

689
00:38:36,512 --> 00:38:40,512
ระบบปฏิบัติการก็จะสร้าง Process หนึ่งขึ้นมาสำหรับงานนะครับ

690
00:38:40,518 --> 00:38:44,512
นั่นแสดงว่า

691
00:38:44,512 --> 00:38:48,512
Process ของอุบลนั้นก็เป็น Process ย่อยของระบบปฏิบัติการ

692
00:38:48,515 --> 00:38:52,512
นึกออกไหมครับ นึกตาม

693
00:38:52,512 --> 00:38:56,512
นะครับ ซึ่ง

694
00:38:56,512 --> 00:39:00,512
Process OS ก็จะมีคุณสมบัติเหมือนกับ Process

695
00:39:00,519 --> 00:39:04,514
อื่น ๆ ทั่วไปนะครับ เขาว่า ดังนั้น Process อื่น ๆ

696
00:39:04,514 --> 00:39:08,514
สามารถมี Process ย่อย ๆ ไปอีกเรื่อย ๆ ได้

697
00:39:08,516 --> 00:39:12,516
นะครับ เขาเรียกว่า "การให้กำเนิด"

698
00:39:12,518 --> 00:39:16,512

699
00:39:16,512 --> 00:39:20,512
นึกออกไหม ตัวอย่างเช่นนะครับ

700
00:39:20,515 --> 00:39:24,511
อุบล

701
00:39:24,511 --> 00:39:28,511
ต้องการเข้าไปครอบครอง CPU อุบลเป็น Process หนึ่งแล้ว

702
00:39:28,518 --> 00:39:32,517
ตัวอาจารย์เองเป็น OS เป็นระบบปฏิบัติ

703
00:39:32,517 --> 00:39:36,517
เมื่ออุบลจะเข้าไปครอบครอง CPU หรือเข้าไปสถานะ Run อุบล

704
00:39:36,534 --> 00:39:40,513

705
00:39:40,513 --> 00:39:44,513
จะถูกผม OS ตั้ง Process หนึ่งขึ้นมา

706
00:39:44,518 --> 00:39:48,512
เพื่อไปกำกับดูแลอุบล

707
00:39:48,512 --> 00:39:52,512
นะครับ นี่เรียกว่า "การให้กำเนิด"

708
00:39:52,517 --> 00:39:56,511
แต่พออุบลบอกอุบลเข้าไป

709
00:39:56,511 --> 00:40:00,511
ครอบครอง CPU แล้ว เข้าไปสถานะ Run แล้วนะครับ

710
00:40:00,513 --> 00:40:04,513
อุบลก็จะมี Process ย่อย

711
00:40:04,513 --> 00:40:08,513
ต่อไปอีก นึกออกไหม ซึ่งไม่รู้ว่ามีอะไรบ้าง เราไม่รู้นะครับ

712
00:40:08,517 --> 00:40:12,512
ซึ่งตัวของ Process ย่อย

713
00:40:12,512 --> 00:40:16,512
ที่เราเรียกว่า "การให้กำเนิด" นั้น เราจะเรียกว่า "Process พ่อ"

714
00:40:16,517 --> 00:40:20,511
นะครับ

715
00:40:20,511 --> 00:40:24,511
ส่วน Process ย่อยที่สร้างต่อจาก Process

716
00:40:24,514 --> 00:40:28,514
ผู้ให้กำเนิดเราเรียกว่า "Process ลู"

717
00:40:28,517 --> 00:40:32,517
เป็นลำดับชั้นนะครับ เป็นลักษณะแบบโครงสร้าง

718
00:40:32,517 --> 00:40:36,512
แบบต้นไม้ ดูรูปนี้เห็นไหมครับ

719
00:40:36,512 --> 00:40:40,512
นี่คือลำดับชั้นของ Process นะครับ

720
00:40:40,514 --> 00:40:44,512
นี่คือลำดับย่อของ Process

721
00:40:44,512 --> 00:40:48,512

722
00:40:48,513 --> 00:40:52,513
หัวข้อต่อมานะครับ ความสัมพันธ์

723
00:40:52,514 --> 00:40:56,513
ระหว่าง Process

724
00:40:56,513 --> 00:41:00,511

725
00:41:00,511 --> 00:41:04,511
เราไม่พักเลยนะ

726
00:41:04,513 --> 00:41:08,511
พี่ล่ามคนเดียวนะครับ

727
00:41:08,511 --> 00:41:12,511
ขอพัก 5 นาทีนะครับ ขอพัก 5 นาทีนะครับ

728
00:41:12,511 --> 00:41:16,511
พี่ล่ามจะได้ไป ทานน้ำ ไปเข้าน้ำ

729
00:41:16,513 --> 00:41:20,512
ทานน้ำ แล้วก็เข้าห้องน้ำนะครับ

730
00:41:20,512 --> 00:41:24,512
พักก่อน 5 นาทีนะครับ เดี๋ยวเราต่ออีก

731
00:41:24,512 --> 00:41:28,512
ประมาณ 15 สไลด์นะครับ

732
00:41:28,519 --> 00:41:32,513

733
00:41:32,513 --> 00:41:36,510

734
00:41:36,510 --> 00:41:40,510

735
00:41:40,516 --> 00:41:44,511

736
00:41:44,511 --> 00:41:48,511

737
00:41:48,511 --> 00:41:52,511

738
00:41:52,511 --> 00:41:56,511

739
00:41:56,511 --> 00:42:00,511

740
00:42:00,511 --> 00:42:04,510

741
00:42:04,510 --> 00:42:08,510

742
00:42:08,511 --> 00:42:12,511

743
00:42:12,514 --> 00:42:16,513

744
00:42:16,513 --> 00:42:20,513

745
00:42:20,514 --> 00:42:24,511

746
00:42:24,511 --> 00:42:28,510

747
00:42:28,510 --> 00:42:32,510

748
00:42:32,515 --> 00:42:36,512

749
00:42:36,512 --> 00:42:40,511

750
00:42:40,511 --> 00:42:44,511

751
00:42:44,518 --> 00:42:48,518

752
00:42:48,525 --> 00:42:52,510

753
00:42:52,510 --> 00:42:56,510

754
00:42:56,512 --> 00:43:00,510

755
00:43:00,510 --> 00:43:04,510

756
00:43:04,511 --> 00:43:08,511

757
00:43:08,526 --> 00:43:12,511

758
00:43:12,511 --> 00:43:16,510

759
00:43:16,510 --> 00:43:20,510

760
00:43:20,512 --> 00:43:24,512

761
00:43:24,513 --> 00:43:28,511

762
00:43:28,511 --> 00:43:32,511

763
00:43:32,511 --> 00:43:36,510

764
00:43:36,510 --> 00:43:40,510

765
00:43:40,511 --> 00:43:44,511

766
00:43:44,511 --> 00:43:48,511

767
00:43:48,511 --> 00:43:52,511

768
00:43:52,513 --> 00:43:56,511

769
00:43:56,511 --> 00:44:00,511

770
00:44:00,513 --> 00:44:04,512

771
00:44:04,512 --> 00:44:08,512

772
00:44:08,513 --> 00:44:12,513

773
00:44:12,514 --> 00:44:16,514

774
00:44:16,515 --> 00:44:20,513

775
00:44:20,513 --> 00:44:24,512

776
00:44:24,512 --> 00:44:28,512

777
00:44:28,512 --> 00:44:32,511

778
00:44:32,511 --> 00:44:36,511

779
00:44:36,512 --> 00:44:40,510

780
00:44:40,510 --> 00:44:44,510

781
00:44:44,511 --> 00:44:48,511

782
00:44:48,516 --> 00:44:52,510

783
00:44:52,510 --> 00:44:56,510

784
00:44:56,516 --> 00:45:00,511

785
00:45:00,511 --> 00:45:04,511

786
00:45:04,514 --> 00:45:08,514

787
00:45:08,515 --> 00:45:12,514

788
00:45:12,514 --> 00:45:16,511

789
00:45:16,511 --> 00:45:20,511

790
00:45:20,512 --> 00:45:24,511

791
00:45:24,511 --> 00:45:28,511

792
00:45:28,511 --> 00:45:32,511

793
00:45:32,511 --> 00:45:36,511

794
00:45:36,515 --> 00:45:40,510

795
00:45:40,510 --> 00:45:44,510

796
00:45:44,513 --> 00:45:48,512

797
00:45:48,512 --> 00:45:52,512

798
00:45:52,526 --> 00:45:56,514

799
00:45:56,514 --> 00:46:00,511

800
00:46:00,511 --> 00:46:04,511

801
00:46:04,511 --> 00:46:08,511

802
00:46:08,511 --> 00:46:12,510

803
00:46:12,510 --> 00:46:16,510

804
00:46:16,511 --> 00:46:20,511

805
00:46:20,511 --> 00:46:24,511

806
00:46:24,515 --> 00:46:28,512

807
00:46:28,512 --> 00:46:32,511

808
00:46:32,511 --> 00:46:36,511

809
00:46:36,515 --> 00:46:40,511

810
00:46:40,511 --> 00:46:44,511

811
00:46:44,515 --> 00:46:48,510

812
00:46:48,510 --> 00:46:52,510

813
00:46:52,510 --> 00:46:56,510

814
00:46:56,516 --> 00:47:00,513

815
00:47:00,513 --> 00:47:04,510

816
00:47:04,510 --> 00:47:08,510

817
00:47:08,510 --> 00:47:12,510

818
00:47:12,511 --> 00:47:16,510

819
00:47:16,510 --> 00:47:20,510

820
00:47:20,511 --> 00:47:24,511

821
00:47:24,513 --> 00:47:28,511

822
00:47:28,511 --> 00:47:32,510

823
00:47:32,510 --> 00:47:36,510

824
00:47:36,511 --> 00:47:40,511

825
00:47:40,511 --> 00:47:44,511

826
00:47:44,515 --> 00:47:48,510

827
00:47:48,510 --> 00:47:52,510

828
00:47:52,512 --> 00:47:56,511

829
00:47:56,511 --> 00:48:00,511

830
00:48:00,514 --> 00:48:04,511

831
00:48:04,511 --> 00:48:08,511

832
00:48:08,511 --> 00:48:12,510

833
00:48:12,510 --> 00:48:16,510

834
00:48:16,514 --> 00:48:20,511

835
00:48:20,511 --> 00:48:24,511

836
00:48:24,522 --> 00:48:28,522

837
00:48:28,522 --> 00:48:32,514

838
00:48:32,514 --> 00:48:36,512

839
00:48:36,512 --> 00:48:40,510

840
00:48:40,510 --> 00:48:44,510

841
00:48:44,511 --> 00:48:48,511

842
00:48:48,514 --> 00:48:52,513

843
00:48:52,513 --> 00:48:56,511

844
00:48:56,511 --> 00:49:00,511

845
00:49:00,513 --> 00:49:04,513

846
00:49:04,514 --> 00:49:08,510

847
00:49:08,510 --> 00:49:12,510

848
00:49:12,511 --> 00:49:16,511

849
00:49:16,511 --> 00:49:20,511

850
00:49:20,511 --> 00:49:24,511

851
00:49:24,511 --> 00:49:28,511

852
00:49:28,513 --> 00:49:32,510

853
00:49:32,510 --> 00:49:36,510

854
00:49:36,518 --> 00:49:40,510

855
00:49:40,510 --> 00:49:44,510

856
00:49:44,510 --> 00:49:48,510

857
00:49:48,511 --> 00:49:52,510

858
00:49:52,510 --> 00:49:56,510

859
00:49:56,510 --> 00:50:00,510

860
00:50:00,517 --> 00:50:04,511

861
00:50:04,511 --> 00:50:08,510

862
00:50:08,510 --> 00:50:12,510

863
00:50:12,510 --> 00:50:16,510

864
00:50:16,510 --> 00:50:20,510

865
00:50:20,510 --> 00:50:24,510

866
00:50:24,511 --> 00:50:28,511

867
00:50:28,512 --> 00:50:32,510

868
00:50:32,510 --> 00:50:36,510

869
00:50:36,511 --> 00:50:40,511

870
00:50:40,511 --> 00:50:44,511

871
00:50:44,515 --> 00:50:48,510

872
00:50:48,510 --> 00:50:52,510

873
00:50:52,510 --> 00:50:56,510

874
00:50:56,510 --> 00:51:00,510

875
00:51:00,513 --> 00:51:04,511

876
00:51:04,511 --> 00:51:08,510

877
00:51:08,510 --> 00:51:12,510

878
00:51:12,511 --> 00:51:16,510

879
00:51:16,510 --> 00:51:20,510

880
00:51:20,511 --> 00:51:24,510

881
00:51:24,510 --> 00:51:28,510

882
00:51:28,511 --> 00:51:32,510

883
00:51:32,510 --> 00:51:36,510

884
00:51:36,513 --> 00:51:40,510

885
00:51:40,510 --> 00:51:44,510

886
00:51:44,512 --> 00:51:48,511

887
00:51:48,511 --> 00:51:52,511

888
00:51:52,513 --> 00:51:56,513

889
00:51:56,517 --> 00:52:00,511

890
00:52:00,511 --> 00:52:04,511

891
00:52:04,514 --> 00:52:08,510

892
00:52:08,510 --> 00:52:12,510

893
00:52:12,511 --> 00:52:16,511

894
00:52:16,516 --> 00:52:20,515

895
00:52:20,515 --> 00:52:24,514
(อาจารย์พิเชนทร์)

896
00:52:24,514 --> 00:52:28,514
ดูต่อนะครับ

897
00:52:28,531 --> 00:52:32,531
ความสัมพันธ์ระหว่าง Process

898
00:52:41,849 --> 00:52:38,921

899
00:52:32,514 --> 00:52:36,511
นะครับ

900
00:52:36,511 --> 00:52:40,511
การทำงานของระบบคอมพิวเตอร์นั้นนะครับ ก็จะประกอบไปด้วย

901
00:52:50,191 --> 00:52:47,142

902
00:52:40,519 --> 00:52:44,519
Process  ต่าง ๆ นะครับ

903
00:52:51,411 --> 00:52:50,064

904
00:52:44,517 --> 00:52:48,513
ทั้งของระบบแล้วของผู้ใช้นะครับ

905
00:52:48,513 --> 00:52:52,511
เมื่อมันมี

906
00:52:52,511 --> 00:52:56,511
Process มากมายทำงานพร้อม ๆ กันนะครับ จัดการขึ้น

907
00:52:56,518 --> 00:53:00,511
นะครับ นอกจากการจัดการแล้วนะครับ

908
00:53:00,511 --> 00:53:04,511
เราก็ต้องมีการ

909
00:53:04,514 --> 00:53:08,514
ติดต่อระหว่างกันนะครับ เหมือนเราเรา

910
00:53:09,518 --> 00:53:13,514
อยู่ในห้องเรานะครับ เราจะต้องมีการติดต่อสัมพันธ์กัน

911
00:53:13,514 --> 00:53:17,512
นะครับ คราวนี้

912
00:53:17,512 --> 00:53:21,512
เรามาดูหัวข้อความสัมพันธ์ระหว่าง Process นะครับ

913
00:53:21,515 --> 00:53:25,514
การติดต่อระหว่าง Process นั้น ก็คือ

914
00:53:25,514 --> 00:53:29,514
หมายความว่า Process หนึ่งอาจต้องการใช้ข้อมูล

915
00:53:29,516 --> 00:53:33,512
ของอีก Process  นึ่งจึงต้องทำไมครับ

916
00:53:33,512 --> 00:53:37,512
ต้องมีการส่งข้อมูลหรือต้องการติดต่อ

917
00:53:37,514 --> 00:53:41,513
กันระหว่าง Process นะครับ ซึ่ง

918
00:53:41,513 --> 00:53:45,513
การติดต่อกันระหว่าง Process นั้นนะครับ ก็มีหลายวิธี

919
00:53:45,517 --> 00:53:49,514
มาดูวิธีที่ 1 นะครับ

920
00:53:49,514 --> 00:53:53,514

921
00:53:53,520 --> 00:53:57,515
ติดต่อกันโดยนะครับ

922
00:53:57,515 --> 00:54:01,512
ใช้หน่วยความจำร่วม

923
00:54:01,512 --> 00:54:05,511
นะครับ

924
00:54:05,511 --> 00:54:09,511
หมายความว่า เมื่อ Process หนึ่งต้องการส่ง Process

925
00:54:09,513 --> 00:54:13,513
หรือส่งข้อมูลไปให้อีก Process หนึ่ง

926
00:54:13,514 --> 00:54:17,514
มันจะส่งข้อมูลผ่านหน่วยความจำร่วม

927
00:54:17,514 --> 00:54:21,514
ฟังก่อนนะครับ ฟังก่อนนะครับ

928
00:54:21,514 --> 00:54:25,512
อย่าเพิ่งคุยกันครับ จะจบแล้วครับ อีก

929
00:54:25,512 --> 00:54:29,512
แค่ 10 สไลด์นะครับ

930
00:54:29,512 --> 00:54:33,512
ฟังหรือเปล่าครับนี่ ฟังหรือเปล่า บอก

931
00:54:33,514 --> 00:54:37,514
เงียบก่อนนะครับ ฟังก่อน

932
00:54:37,518 --> 00:54:41,518
อย่าเพิ่งคุยกันเสียงดังนะครับ เดี๋ยวมันจะไม่เข้าใจ

933
00:54:41,521 --> 00:54:45,517
นะครับ เวลาสอบ เรามัวแต่ลอก

934
00:54:45,517 --> 00:54:49,515
ในหน้าจอนี่บางทีมันพอเวลาไปสอบนะครับ มันจะตอบไม่ได้นะครับ

935
00:54:49,515 --> 00:54:53,512

936
00:54:53,512 --> 00:54:57,512
เดี๋ยวสอบกลางภาคก็จะรู้คะแนนตัวเองว่าเป็นอย่างไร

937
00:54:57,515 --> 00:55:01,515
ผมบอกแล้วนะครับ ว่าข้อสอบผมนั้นมี

938
00:55:01,519 --> 00:55:05,514
ทั้งหมด 8 ชุดนะครับ ผมให้นั่ง

939
00:55:05,514 --> 00:55:09,514
สอบแบบติดกันเลยนะครับ

940
00:55:09,515 --> 00:55:13,515
ข้อสอบคนละชุดนะครับ ถ้าเราไม่เข้าใจเราจะเขียน

941
00:55:13,518 --> 00:55:17,517
อธิบายได้ ดูนะครับ ความสัมพันธ์

942
00:55:17,517 --> 00:55:21,517
อันที่ 1 ก็คือเวลามันติดต่อหากันมันจะใช้หน่วยความจำร่วมกัน

943
00:55:21,517 --> 00:55:25,514
ดูรูปข้างล่างเลยนะครับ

944
00:55:25,514 --> 00:55:29,512
Process A

945
00:55:29,512 --> 00:55:33,512
ต้องการส่งข้อมูลไปให้ Process B

946
00:55:33,513 --> 00:55:37,513
มันทำกันอย่างไรนะครับ วิธีการ ก็คือ Process A

947
00:55:37,515 --> 00:55:41,513
ส่งไปแล้ว แต่ส่งไปที่หน่วยความจำ

948
00:55:41,513 --> 00:55:45,513
นะครับ ส่งไปที่หน่วนความจำ เมื่อ Process B

949
00:55:45,514 --> 00:55:49,512
ต้องการจะไปรับข้อมูลจาก Process A

950
00:55:49,512 --> 00:55:53,512
มันก็จะไปรับที่หน่วยความจำนะครับ ซึ่งหน่วยความจำก็จะ

951
00:55:53,515 --> 00:55:57,515
มี Address

952
00:55:57,518 --> 00:56:01,517
แล้วเราจะรู้ได้อย่างไรครับ Process A ส่งอะไร

953
00:56:01,517 --> 00:56:05,512
มาให้เช็กจากอะไรครับ

954
00:56:05,512 --> 00:56:09,512
เช็กจากชื่อ จาก ID ใช่ไหม เพราะว่า

955
00:56:09,513 --> 00:56:13,513
ชื่อของ Process  แต่ละตัวก็จะมีรหัสด้วยนะครับ

956
00:56:13,517 --> 00:56:17,514
เห็นไหมครับ Process A นี่ มันจะส่งข้อมูล

957
00:56:17,514 --> 00:56:21,514
มานะครับ เราส่งไปให้

958
00:56:21,521 --> 00:56:25,513
หน่วยความจำร่วม Process A ก็ไปรับที่หน่วยความจำ วิธีการที่ 1

959
00:56:25,513 --> 00:56:29,513
นะครับ การติดต่อกันระหว่างหน่วยความจำนะครับ

960
00:56:29,514 --> 00:56:33,513

961
00:56:33,513 --> 00:56:37,513
นอกจากการใช้หน่วยควาามจำร่วม

962
00:56:37,513 --> 00:56:41,513
ติดต่อระหว่าง Process นะครับ ก็ยังมีวิธีการที่สะดวกกว่า

963
00:56:41,515 --> 00:56:45,513
นะครับ  แล้วก้นิยมใช้เป็นมาตราฐานนะครับ

964
00:56:45,513 --> 00:56:49,513
นั่นก็คือการใช้ช่องทางข้อมูล

965
00:56:49,514 --> 00:56:53,512
หรือเรียกง่าย ๆ ว่า "พอร์ต"

966
00:56:53,512 --> 00:56:57,512
นะครับ ติดต่อผ่านพอร์ต

967
00:56:57,514 --> 00:57:01,514
รู้จักพอร์ตนะ เช่น Port USB

968
00:57:01,530 --> 00:57:05,512
Port Parareal

969
00:57:05,512 --> 00:57:09,512
ต่อสายเข้าไปในเครื่องคอทมพิวเตอร์เรา

970
00:57:09,516 --> 00:57:13,515
นะครับ อันนี้ง่ายกว่านะครับ สะดวกกว่า

971
00:57:13,515 --> 00:57:17,513
เช่น เราต้องการส่งข้อมูลจาก

972
00:57:17,513 --> 00:57:21,513
เครื่องของคนหนึ่งไปเครื่องอีกคนหนึ่ง

973
00:57:21,515 --> 00:57:25,515
ผ่านอะไร ผ่านพอร์ตนะครับ

974
00:57:25,515 --> 00:57:29,512

975
00:57:29,512 --> 00:57:33,512
คราวนี้วิธี่การส่งข้อมูล

976
00:57:33,513 --> 00:57:37,513
ทั้งผ่านหน่วยความจำร่วมแล้วก็ผ่านพอร์ต

977
00:57:37,516 --> 00:57:41,512
นั้นนะครับ ในเรื่องของ

978
00:57:41,512 --> 00:57:45,512
โครงสร้างของพอร์ตก็มีหลายแบบนะครับ จะส่งแบบไหนนะครับ

979
00:57:45,514 --> 00:57:49,514
อันที่ 1 นะครับ โครงสร้างของพอร์ต

980
00:57:49,530 --> 00:57:53,513
แบบที่ 1 ก็คือแบบคิว

981
00:57:53,513 --> 00:57:57,513
นะครับ โครงสร้างแบบนี้ ก็คือข้อมูล

982
00:57:57,513 --> 00:58:01,513
จะถูกดึงออกมาจากพอร์ตตามลำดับก่อน-หลัง

983
00:58:01,523 --> 00:58:05,513
ข้อมูลไหนส่งเข้ามาก่อนก็จะ

984
00:58:05,513 --> 00:58:09,512
ออกไปก่อน ก็คือแบบคิวเป็นคิว

985
00:58:09,512 --> 00:58:13,512
นะครับ เช่น ผมเข้าไปก่อนอุบล

986
00:58:13,513 --> 00:58:17,513
ผมก็ออกก่อนอุบลนะครับ นี่คือโครงสร้างข้อมูลแบบพอร์ต

987
00:58:17,518 --> 00:58:21,515
ง่าย ๆ ครับ เข้าก่อน ออกก่อน

988
00:58:21,515 --> 00:58:25,515
นะครับ โครงสร้างพอร์ต

989
00:58:25,518 --> 00:58:29,513
แบบที่ 2 ก็คือโครงสร้างแบบไปป์นะครับ

990
00:58:29,513 --> 00:58:33,513
รูปข้างล่างใช่ไหม

991
00:58:33,515 --> 00:58:37,514
แบบไปป์ ก็คือมีโครงสร้าง

992
00:58:37,514 --> 00:58:41,514
แบบมีการทำงานแบบคิว คือ เข้าก่อน

993
00:58:41,516 --> 00:58:45,513
ออกก่อน แต่มี

994
00:58:45,513 --> 00:58:49,513
ข้อแตกต่างกับแบบคิวที่ว่าถ้าเป็นพอร์ตแบบไปป์

995
00:58:49,519 --> 00:58:53,515
จะมีความยาวของพอร์ตไม่จำกัด

996
00:58:53,515 --> 00:58:57,515
ถ้าเป็นแบบคิวจะจำกัน

997
00:58:57,516 --> 00:59:01,514
เช่น พอร์ตแบบคิวแบบว่า

998
00:59:01,514 --> 00:59:05,513
มีขนาดของพอร์ต ความยาว

999
00:59:05,513 --> 00:59:09,513
10 ช่อง สมมตินะ 10 ช่อง

1000
00:59:09,514 --> 00:59:13,514
ก็แสดงว่าเข้าไปได้แค่ 10 คิวนะครับ

1001
00:59:13,516 --> 00:59:17,513
แต่ถ้าพอร์ตแบบไปป์ โครงสร้าง

1002
00:59:17,513 --> 00:59:21,513
เหมือนพอร์ตแบบคิวก็จริง เข้าก่อน ออกก่อน แต่จะ

1003
00:59:21,519 --> 00:59:25,513
มีความยาวของพอร์ต

1004
00:59:25,513 --> 00:59:29,512

1005
00:59:29,512 --> 00:59:33,512
นี่คือโครงสร้าง

1006
00:59:33,523 --> 00:59:37,513
แบบไปป์นะครับ

1007
00:59:37,513 --> 00:59:41,513
โครงสร้าง Port แบบที่ 3 ก็คือ

1008
00:59:41,513 --> 00:59:45,513
Stack นะครับ เป็นอย่างไรครับ

1009
00:59:45,513 --> 00:59:49,513
แบบสแต็ก

1010
00:59:49,513 --> 00:59:53,513
Stack คือ โครงสร้างที่ตรงข้ามกับแบบคิวเลยครับ

1011
00:59:53,516 --> 00:59:57,515
ก็คือข้อมูลชุดใดที่ถูกส่งออกมาก่อน

1012
00:59:57,515 --> 01:00:01,515
จะถูกดึงออกทีหลัง คือ เข้าก่อนออกทีหลัง

1013
01:00:01,516 --> 01:00:05,516
นะครับ นี่คือโครงสร้างแบบ

1014
01:00:05,516 --> 01:00:09,516
Stack นะครับ นี่คือโครงสร้างของพอร์ตทั้ง 3 แบบนะครับ

1015
01:00:09,517 --> 01:00:13,513

1016
01:00:13,513 --> 01:00:17,512
คราวนี้มาดู

1017
01:00:17,512 --> 01:00:21,512
ปัญหาของ Process นะครับ

1018
01:00:21,519 --> 01:00:25,519
เมื่อมีการทำงานมากกว่า 1 Process ขึ้นไป

1019
01:00:25,519 --> 01:00:29,514
นะครับ มันย่อมทำให้เกิดปัญหาเกิดขึ้น

1020
01:00:29,514 --> 01:00:33,513
ในการใช้งาน เมื่อมีโปรแกรม

1021
01:00:33,513 --> 01:00:37,513
ทำงานในระบบคอมพิวเตอร์เรา ปัญหาก็ไม่เกิดขึ้นร

1022
01:00:37,514 --> 01:00:41,514
นะครับ เมื่อมีหลาย ๆ โปรแกรมทำงานอยู่บนระบบเดียวกัน

1023
01:00:41,521 --> 01:00:45,513
มีการใช้ทรัพยากร

1024
01:00:45,513 --> 01:00:49,513
แย่งกันใช้ มันย่อมเกิดปัญหาขึ้น

1025
01:00:49,513 --> 01:00:53,513
นะครับ ดังนั้น มันจะต้องมีการจัดสรร

1026
01:00:53,519 --> 01:00:57,513
การใช้ Process ขึ้นนะครับ

1027
01:00:57,513 --> 01:01:01,513
ถึงอย่างไรก็ตาม ปัญหา

1028
01:01:01,513 --> 01:01:05,513
ที่เราจะกล่าวต่อไปนี้ มันจะต้อง

1029
01:01:05,514 --> 01:01:09,514
ไม่เกิดขึ้นกับระบบของเรา

1030
01:01:09,515 --> 01:01:13,515
นะครับ ดังนั้น คนที่ออกแบบระบบปฏิบัติการจะต้องแก้ปัญหา

1031
01:01:13,517 --> 01:01:17,516
ดังต่อไปนี้ให้ได้

1032
01:01:17,516 --> 01:01:21,516
เวลาเราเขียนโปรแกรมเราจะต้องเลี่ยงปัญหาเหล่านี้ให้ได้

1033
01:01:21,534 --> 01:01:25,522
นะครับ ปัญหาการทำงานของ Process อันดับ

1034
01:01:25,522 --> 01:01:29,515
แรกเลยนะครับ ก็คือปัญหาการตัดตอน

1035
01:01:29,515 --> 01:01:33,513
นะครับ ปัญหาการตัดตอน

1036
01:01:33,513 --> 01:01:37,513
เกิดจากอะไรครับ เกิดจากการที่ Process หนึ่ง

1037
01:01:37,521 --> 01:01:41,514
ต้องการใช้ทรัพยากร

1038
01:01:41,514 --> 01:01:45,514
ของ Process แต่ปรากฏว่า Process นั้นมีลำดับความสำคัญ

1039
01:01:45,520 --> 01:01:49,514
น้อยกว่า จึงยอมปลดปล่อยให้ Process

1040
01:01:49,514 --> 01:01:53,514
ที่มีระดับความสำคัญมากกว่าเข้าไปครอบครองตัว CPU

1041
01:01:53,514 --> 01:01:57,514
แทนตัวมันเอง

1042
01:01:57,516 --> 01:02:01,516
นึกออกใช่ไหมครับ ก็คือ Process หนึ่งนี่

1043
01:02:01,517 --> 01:02:05,516
เช่น ผมกำลังจะเข้าไปครอบครอง

1044
01:02:05,516 --> 01:02:09,514
CPU แต่ปรากฏว่าอุบลเข้ามาต่อคิวผม

1045
01:02:09,514 --> 01:02:13,514
บังเอิญว่าลำดับความสำคัญอุบล

1046
01:02:13,515 --> 01:02:17,515
สำคัญมากกว่าผม ผมยอมให้อุบลเข้าไปแทนผม นี่

1047
01:02:17,520 --> 01:02:21,515
เกิดการตัดตอนขึ้น ถ้าเราจะอธิบาย

1048
01:02:21,515 --> 01:02:25,513
ให้เป็นวิชาการ อธิบายว่าเกิดจาการ

1049
01:02:25,513 --> 01:02:29,513
ที่ Process ใด Process หนึ่ง

1050
01:02:29,516 --> 01:02:33,516
ที่จะเข้าไปครอบครอง CPU หรือเข้าไปในสถานะ Run นั้น

1051
01:02:33,517 --> 01:02:37,515
ยอมให้ Process ที่มีลำดับ

1052
01:02:37,515 --> 01:02:41,515
ความสำคัญมากกว่าเข้าไปแทนที่มัน มันก็จะเกิด

1053
01:02:41,515 --> 01:02:45,514
การตัดตอนขึ้นนะครับ

1054
01:02:45,514 --> 01:02:49,514
ซึ่งปัญหาตัวนี้นะครับ คนที่ออกแบบระบบปฏิบัติการจะต้อง

1055
01:02:49,518 --> 01:02:53,514
ไม่ให้เกิดขึ้นนะครับ

1056
01:02:53,514 --> 01:02:57,514

1057
01:02:57,516 --> 01:03:01,516
ปัญหาต่อมา นอกจากปัญหาการตัดตอนแล้ว

1058
01:03:01,518 --> 01:03:05,517
ปัญหาต่อมา ก็คือปัญหา

1059
01:03:05,517 --> 01:03:09,516
การอดตาย หรือปัญหา

1060
01:03:09,516 --> 01:03:13,516
การเลื่อนไปอย่างไม่มีสิ้นสุด

1061
01:03:13,516 --> 01:03:17,514
หมายความว่าเมื่อเกิดการตัดตอนขึ้นใช่ไหม

1062
01:03:17,514 --> 01:03:21,514
Process หนึ่งปล่อยให้ Process อีก Process หนึ่งที่มีความสำคัญ

1063
01:03:21,516 --> 01:03:25,516
มากกว่าเข้าไปครอบครอง CPU แทนมัน

1064
01:03:25,518 --> 01:03:29,514
แล้วแทนไปเรื่อย ๆ

1065
01:03:29,514 --> 01:03:33,514
นี่เราเรียกว่า "การอดตาย"

1066
01:03:33,520 --> 01:03:37,517
เช่น ตัวอย่างเมื่อกี้ผมจะเข้าไปครอบครอง CPU

1067
01:03:37,517 --> 01:03:41,513
แต่บังเอินว่าอุบล

1068
01:03:41,513 --> 01:03:45,513
มาต่อคิว อุบลมีลำดับความสำคัญมากกว่า อุบลเข้าไปแทนที่

1069
01:03:45,524 --> 01:03:49,513
พออุบลเสร็จแล้ว

1070
01:03:49,513 --> 01:03:53,513
ผมจะเข้าไปต่อ แต่ปรากฏว่า

1071
01:03:53,530 --> 01:03:57,514
แม็กกี้มาต่อ และแม็กกี้มีความสำคัญมากกว่าผม

1072
01:03:57,514 --> 01:04:01,514
ก็เข้าไปแทนที่อีก พอ

1073
01:04:01,518 --> 01:04:05,514
แม็กกี้ออกมา ผมจะเข้าไปต่อ ปรากฎว่า

1074
01:04:05,514 --> 01:04:09,513
มิ่งมาต่อ แล้วมิ่ง

1075
01:04:09,513 --> 01:04:13,513
มีความสำคัญมากกว่า มิ่งก็เข้าไปแทน

1076
01:04:13,514 --> 01:04:17,514
ก็คือรอไป

1077
01:04:17,520 --> 01:04:21,518
ไม่มีวันสิ้นสุด รอไปเรื่อย ๆ  ไม่มีวันสิ้นสุด

1078
01:04:21,518 --> 01:04:25,518
นะครับ ถ้าเป็นสมัยก่อนนะครับ

1079
01:04:25,520 --> 01:04:29,520
ผมก็จะยกตัวอย่างให้พวกเราเห็นภาพชัดเจน

1080
01:04:29,523 --> 01:04:33,514
สมมติว่าที่อาคาร 7 เรานะครับ

1081
01:04:33,514 --> 01:04:37,514
สร้างห้องน้ำมาใหม่ ห้องน้ำ

1082
01:04:37,515 --> 01:04:41,514
เปรียบเสมือน CPU สมมตินะ

1083
01:04:41,514 --> 01:04:45,514
ผมจะเข้าเป็นคนแรก

1084
01:04:45,514 --> 01:04:49,514
กำลังจะเปิดประตูเข้าไปห้องน้ำ ปรากฏว่าอุบล ไม่ใช่อุบล

1085
01:04:49,518 --> 01:04:53,514
อธิการสะกิดหลัง

1086
01:04:53,514 --> 01:04:57,514
พิเชนทร์ ๆ ผมขออนุญาตเข้าก่อน ผมมองไปข้างหลัง

1087
01:04:57,523 --> 01:05:01,514
อธิการใหญ่กว่าผม อธิการเข้าไป

1088
01:05:01,514 --> 01:05:05,514
นี่เกิดการตัดตอน

1089
01:05:05,514 --> 01:05:09,514
แต่พออธิการเข้าไปเสร็จปุ๊บ

1090
01:05:09,515 --> 01:05:13,515
ปรากฏว่ามีคนสะกิดหลังอีกแล้ว ผู้ว่าฯ สะกิดหลัง

1091
01:05:13,518 --> 01:05:17,515
เป็นอย่างไรครับ ผู้ว่าเข้าไป

1092
01:05:17,515 --> 01:05:21,515
นายอำเภอสกิดหลัง ผู้ว่าสกิดหลังเกิดการ ที่ใหญ่กว่าผมน่ะ

1093
01:05:21,516 --> 01:05:25,516
ต้องตัดตอน พอตัดตอนเสร็จปุ๊บ

1094
01:05:25,520 --> 01:05:29,515
ไม่มีโอกาสได้เข้า ก็เลยเป็นอดตายนะครับ

1095
01:05:29,515 --> 01:05:33,515
นี่คือปัญหาที่เกิดขึ้นกับ Proหาที่ 2

1096
01:05:33,518 --> 01:05:37,516
ของเรานะครับ ปัญหาที่ 3

1097
01:05:37,516 --> 01:05:41,513

1098
01:05:41,513 --> 01:05:45,513
เขาบอกว่าทำไมถึงให้เกิดการ

1099
01:05:45,513 --> 01:05:49,513
ตัดตอนไม่ได้หรือการอดตายไม่ได้

1100
01:05:49,513 --> 01:05:53,513
มันจะเกิดปัญหาขึ้น ถ้าทรัพยากรบางประเภท

1101
01:05:53,517 --> 01:05:57,514
ถ้าเราปล่อยให้เกิดการตัดตอน

1102
01:05:57,514 --> 01:06:01,514
จะเกิดปัญหาขึ้น เช่น เครื่องพิมพ์

1103
01:06:01,518 --> 01:06:05,513
ให้เรามาถึงเครื่องพิมพ์

1104
01:06:05,513 --> 01:06:09,513
ที่เป็นหัวเข็ม เคยเห็นไหม มันจะดังแกร๊ก

1105
01:06:09,515 --> 01:06:13,515
พรินต์ทีละบรรทัด

1106
01:06:13,515 --> 01:06:17,515
เคยเห็นไหมครับ เครื่องพิมพ์แบบหัวเข็ม เหมือนเราไปซื้อ

1107
01:06:17,517 --> 01:06:21,514
ของตามอะไร ตามเซเว่น

1108
01:06:21,514 --> 01:06:25,514
หรือเราไปจ่ายค่าเทอม มันจะ

1109
01:06:25,530 --> 01:06:29,513
พรินต์เป็นหัวเข็มออกมา

1110
01:06:29,513 --> 01:06:33,513
ถ้าเราปล่อยให้เกิดการตัดตอนขึ้น เช่น ผมสั่งพรินต์

1111
01:06:33,516 --> 01:06:37,516
ไปได้ 2 บรรทัด แล้วอุบล

1112
01:06:37,516 --> 01:06:41,516
สั่งมา อุบลบอกว่าอุบลมีความสำคัญมากกว่า แล้วเกิดการตัดตอนขึ้น

1113
01:06:41,520 --> 01:06:45,516
บรรทัดที่ 3 จะกลายเป็นของอุบล

1114
01:06:45,516 --> 01:06:49,516
ดังนั้น ห้ามให้มีเหตุการณ์นี้เกิดขึ้นนะครับ

1115
01:06:49,521 --> 01:06:53,514
เพราะทรัพยากร บางอย่าง

1116
01:06:53,514 --> 01:06:57,514
ให้เกิดขึ้นไม่ได้นะครับ

1117
01:06:57,515 --> 01:07:01,515
ปัญหาต่อมานะครับ

1118
01:07:01,516 --> 01:07:05,513
ปัญหาการติดตาย

1119
01:07:05,513 --> 01:07:09,513
ดูรูปประกอบเลยนะครับ

1120
01:07:09,515 --> 01:07:13,515
ปัญหาการติดตายเกิดจากอะไรครับ เกิดจาก Process

1121
01:07:13,516 --> 01:07:17,515
ใดก็แล้วแต่ ครอบครอง

1122
01:07:17,515 --> 01:07:21,514
ทรัพยากรของตัวเองอยู่ แล้วในขณะเดียวกัน

1123
01:07:21,514 --> 01:07:25,514
ต้องการไปครอบครองทรัพยากรของเรา

1124
01:07:25,515 --> 01:07:29,515
แต่ไม่ยอมให้ Process อื่น เข้า

1125
01:07:29,522 --> 01:07:33,514
มาครอบครองทรัพยากรของตัวเอง

1126
01:07:33,514 --> 01:07:37,514
เหมือนกันนะครับ เช่น ผมบอกอุบล

1127
01:07:37,515 --> 01:07:41,515
อาจารย์ยิมสตางค์ของอุบลหน่อย 100 ล้าน

1128
01:07:41,517 --> 01:07:45,513
อุบลก็บอกเหมือนกัน อาจารย์

1129
01:07:45,513 --> 01:07:49,513
ผมก้ยืมตังอาจารย์หน่อย 200 ล้าน

1130
01:07:49,514 --> 01:07:53,514
แต่อุบลก็ไม่ควักให้ผมนะ ผมก็ไม่ควักให้อุบล

1131
01:07:53,517 --> 01:07:57,517
เพราะเราก็ไม่มีทั้งคู่นะ

1132
01:07:57,519 --> 01:08:01,513
คือ อยากได้สตางค์อุบล อุบลก็อยากได้สตางค์ผม แต่

1133
01:08:01,513 --> 01:08:05,513
ไม่ควักให้ นี่คือลักษณะการติดตาย

1134
01:08:05,519 --> 01:08:09,515
ก็คือ Process ใด Process หนึ่งนี่ครอบครองทรัพยากรตัวเอง

1135
01:08:09,515 --> 01:08:13,515
อยู่แต่อยากไปได้ทรัพยากรของคนอื่น

1136
01:08:13,524 --> 01:08:17,516
คนอื่น แต่ตัวเองก็ไม่ยอมให้ทรัพยากรของตัวเอง

1137
01:08:17,516 --> 01:08:21,516
นะครับ นี่คือลักษณะการติดตายหรือ Dead lock นะครับ

1138
01:08:21,516 --> 01:08:25,512

1139
01:08:25,512 --> 01:08:29,512
เขาบอกว่า

1140
01:08:29,513 --> 01:08:33,513
ปัญหาการติดตายนั้น ไม่จำเป็นต้องเกิดจาก 2

1141
01:08:33,513 --> 01:08:37,512
Process อาจจะ

1142
01:08:37,512 --> 01:08:41,512
เกิดจากหลาย Process ก็ได้นะครับ มากกว่า 2 Process แต่ต้อง

1143
01:08:41,520 --> 01:08:45,514
มีเงื่อนไขดังนี้ เช่น

1144
01:08:45,514 --> 01:08:49,514
1. การครอบครองเป็นแบบตัดตอนไม่ได้

1145
01:08:49,515 --> 01:08:53,515
อันนี้ก็ตัดตอนไม่ได้นะ

1146
01:08:53,515 --> 01:08:57,515
Process A, Process B ก็ไม่ได้ Process C ก็ไม่ได้ Dead lock เลยครับ ติดตายเลย

1147
01:08:57,515 --> 01:09:01,514

1148
01:09:01,514 --> 01:09:05,514
ไม่ไป ไม่มานะครับ เงื่อนไขแบบที่ 2

1149
01:09:05,514 --> 01:09:09,513
การครอบครองเป็นแบบไม่เกิดร่วม

1150
01:09:09,513 --> 01:09:13,513
ต่างคนต่างทำงาน ต่างคนต่างอยู่คนละส่วน

1151
01:09:13,513 --> 01:09:17,512
ติดตายขึ้น

1152
01:09:17,512 --> 01:09:21,512
นะครับ เงื่อนไขที่ 3 คือ

1153
01:09:21,513 --> 01:09:25,512
ในการรอใช้ทรัพยากร

1154
01:09:25,512 --> 01:09:29,512
เป็นการรอแบบวนรอบ

1155
01:09:29,514 --> 01:09:33,514
หรือวงรอบ หรือภาษาเขีียนโปรแกรม

1156
01:09:33,528 --> 01:09:37,528
เราเรียกว่า "วนลูป" หรือ "วนรอบ"

1157
01:09:37,528 --> 01:09:41,514
ก็จะเกิดปัญหาการปิดตายขึ้น

1158
01:09:41,514 --> 01:09:45,514
นะครับ นี่คือปัญหา 3 ปัญหาที่เกิดขึ้นในระบบเรา

1159
01:09:45,514 --> 01:09:49,513
แต่เวลาเราออกแบบ OS ก็เกิดขึ้นนะครับ

1160
01:09:49,513 --> 01:09:53,512

1161
01:09:53,512 --> 01:09:57,512
หัวข้อสุดท้ายนะครับ หัวข้อสุดท้าย

1162
01:09:57,514 --> 01:10:01,514
ของบทนี้นะครับ เธรดนะครับ

1163
01:10:01,515 --> 01:10:05,515
เขาบอกในระบบปฏิบัติการรุ่นใหม่ ๆ

1164
01:10:05,523 --> 01:10:09,518
บางตัวซึ่งเราใช้แล้วนะครับ เราใช้แบบนี้อยู่

1165
01:10:09,518 --> 01:10:13,518
นะครับ ถ้าเป็นสมัยก่อนยกไม่เกิดระบบนี้ขึ้นมา

1166
01:10:13,520 --> 01:10:17,516
นะครับ เธรด ก็คือเป็นการที่ระบบปฏิบัติการ

1167
01:10:17,516 --> 01:10:21,516
แบ่งย่อย Process ออกมาเป็นส่วน ๆ

1168
01:10:21,518 --> 01:10:25,518
ดูรูปประกอบเลยนะครับ

1169
01:10:25,518 --> 01:10:29,514

1170
01:10:29,514 --> 01:10:33,514
นี่... ทำไมไม่ขึ้น

1171
01:10:33,517 --> 01:10:37,512
ขวามือผมเห็นไหม Process A

1172
01:10:37,512 --> 01:10:41,512
กับ Process B

1173
01:10:41,514 --> 01:10:45,512
Process A

1174
01:10:45,512 --> 01:10:49,512
โค้ดโปรแกรม

1175
01:10:49,512 --> 01:10:53,512
แล้วก็ข้อมูลองค์ประกอบอื่น นี่คือ

1176
01:10:53,519 --> 01:10:57,516
เขียนโปรแกรมแบบไม่ใช่เธรด แต่

1177
01:10:57,516 --> 01:11:01,512
พอเธรดปุ๊บ มันจะแบ่งส่วนเธรด

1178
01:11:01,512 --> 01:11:05,512
1, 2, 3, 4, 5 เป็นส่วนย่อยนะครับ

1179
01:11:05,515 --> 01:11:09,512
เราแบ่งเธรดมีประโยชน์อะไร

1180
01:11:09,512 --> 01:11:13,512
นะครับ มันจะให้ทำงานเร็วขึ้น สามารถ

1181
01:11:13,515 --> 01:11:17,512
ทำงานกับหน่วยความจำที่มีขนาดเล็กได้

1182
01:11:17,512 --> 01:11:21,512
แก้ไขง่าย นี่คือหลักการเขียนโปรแกรม

1183
01:11:21,513 --> 01:11:25,513
ใน ณ ปัจจุบันนะครับ ณ ปัจจุบันนี้นะครับ

1184
01:11:25,513 --> 01:11:29,513
เดี๋ยวพอเราเขียนโปรแกรมเราเรียนไปสักปี 2

1185
01:11:29,514 --> 01:11:33,514
ทำไมเราต้องมาเขียนเป็นแบบเธรด เราจะไม่เขียนแบบ

1186
01:11:33,525 --> 01:11:37,516
โบราณนะครับ เขียนทีเดียว 100 บรรทัด, 500 บรรทัด

1187
01:11:37,516 --> 01:11:41,514
เวลามีปัญหามาปุ๊บการแก้ไขปัญหา

1188
01:11:41,514 --> 01:11:45,514
นะครับ แก้ไขยากนะครับ นี่คือหลักการ

1189
01:11:45,516 --> 01:11:49,513
ของการเขียนโปรแกรมนะครับ

1190
01:11:49,513 --> 01:11:53,513
แจ้งพวกเรานะครับ เมื่อกี้ได้พูดไปแล้วนะครับ

1191
01:11:53,516 --> 01:11:57,513
สัปดาห์หน้าก็วันที่ 7

1192
01:11:57,513 --> 01:12:01,513
เราก็จะไปศึกษาดูงานนอกสถานที่นะครับ

1193
01:12:01,514 --> 01:12:05,514
หมู่ 2 นะครับ หมู่ 2

1194
01:12:05,521 --> 01:12:09,518
หมู่ 1 ยังไม่ได้ไปนะครับ เราจะไปศึกษาดูงาน

1195
01:12:09,518 --> 01:12:13,514
ที่นครพนมนะครับ ผมจะ

1196
01:12:13,514 --> 01:12:17,514
พาไปที่บุสบามานก่อน

1197
01:12:17,515 --> 01:12:21,515
ไปดูหมู่บ้าน

1198
01:12:21,515 --> 01:12:25,515
อะไรไม่รู้จำไม่ได้นะครับ พวกทำเกี่ยวกับพื้นเมือง แล้วก็จะพาไปพิพิธภัณฑ์สัตว์น้ำจืดที่

1199
01:12:25,522 --> 01:12:29,512

1200
01:12:29,512 --> 01:12:33,512
นครพนม ก็สัปดาห์หน้าก็

1201
01:12:33,512 --> 01:12:37,512
หมู่ 1 ก็ต้องมาเรียนนะครับ ก็เห็นพี่พลอย

1202
01:12:37,517 --> 01:12:41,517
ประสานไปที่อาจารย์อะไรนะ ที่เราเรียนน่ะ ตอนเช้าน่ะ เพราะ

1203
01:12:41,519 --> 01:12:45,513
ก็เรียนด้วยกันใช่ไหม

1204
01:12:45,513 --> 01:12:49,513
เห็นว่าอาจารย์ว่าคณะก็

1205
01:12:49,514 --> 01:12:53,514
ไหว้ครู แต่ว่าสัปดาห์หน้าเราไม่มีเรียน

1206
01:12:53,517 --> 01:12:57,517
นะครับ ห้อง 1 นะ มีเรียน แต่สัปดาห์หน้าหมู่ 2

1207
01:12:57,519 --> 01:13:01,513
เราจะไปนอกสถานที่

1208
01:13:01,513 --> 01:13:05,512
จะพาไปดูอะไรนะ ไปดู

1209
01:13:05,512 --> 01:13:09,512
ปลาบึกใช่ไหม เขาจะป้อนอาหารปลาบึก

1210
01:13:09,515 --> 01:13:13,515
เอาอุบลไปให้อาหารปลา อุบลนะ

1211
01:13:13,515 --> 01:13:17,514
ก็ไปทั้งวันนะครับ

1212
01:13:17,514 --> 01:13:21,514
ก็แจ้งพวกเราไว้ พอสัปดาห์ถัดไปหยุด

1213
01:13:21,520 --> 01:13:25,518
นะครับ สัปดาห์ถัดไปก็เจอกันนู้นเลยครับ

1214
01:13:25,518 --> 01:13:29,518
นะครับ ก็ตอนนี้เราเปิดเทอมมาได้

1215
01:13:29,519 --> 01:13:33,514
เดือนหนึ่งนะครับ เป็นอย่างไรครับ ปรับตัว

1216
01:13:33,514 --> 01:13:37,514
ได้แล้วนะ บางคนก็ส่งงานไว้ที่โต๊ะนะครับ เดี๋ยว

1217
01:13:37,517 --> 01:13:41,513
ผมจะส่งคืนให้นะ ผมจะตรวจ

1218
01:13:41,513 --> 01:13:45,513
แล้วส่งคืนให้ ๆ เราเอาเก็บไว้อ่านเวลาสอบ

1219
01:13:45,513 --> 01:13:49,513
แบบฝึกหัดที่ผมให้ทำ

1220
01:13:49,514 --> 01:13:53,514
มีใครอยากจะถามอะไรเพิ่มเติมไหมครับ มีไหม

1221
01:13:53,516 --> 01:13:57,512

1222
01:13:57,512 --> 01:14:01,512
ครับ ถ้าไม่มีก็...

1223
01:14:01,513 --> 01:14:05,513

1224
01:14:05,513 --> 01:14:09,513
Process พ่อเกิดอย่างไร

1225
01:14:09,513 --> 01:14:13,513
Process พ่อเกิดขึ้นจาก

1226
01:14:13,515 --> 01:14:17,515
การที่เมื่อเวลาใดเวลาหนึ่ง เช่น เรา... สมมตินะ ๆ

1227
01:14:17,515 --> 01:14:21,515
ผมเป็น Process  ผมต้องการจะเข้าไปครอบครอง

1228
01:14:21,515 --> 01:14:25,515
CPU ตัวของระบบปฏิบัติการจะสร้าง

1229
01:14:25,517 --> 01:14:29,513
Process หนึ่งขึ้นมา เพื่อมากำกับผม

1230
01:14:29,513 --> 01:14:33,513
ไปจะพาเข้าไปครอบครอง CPU นะ นี่

1231
01:14:33,515 --> 01:14:37,515
เป็นการให้กำเนิด

1232
01:14:37,516 --> 01:14:41,516
เพื่อพา Process เข้าไป ตรงนี้เรียกว่า "Process พ่อ"

1233
01:14:41,516 --> 01:14:45,513
นะครับ นี่คือหลักการของมัน

1234
01:14:45,513 --> 01:14:49,512
นะครับ

1235
01:14:49,512 --> 01:14:53,512
ครับ ก็ต้อง

1236
01:14:53,512 --> 01:14:57,512
ขอบคุณพี่ล่ามมากนะครับ ที่ได้ให้การอนุเคราะห์เรา

1237
01:14:57,513 --> 01:15:01,513
มาอีก 1 สัปดาห์นะครับ ก็สัปดาห์หน้า

1238
01:15:01,513 --> 01:15:05,513
เราไม่ได้เจอกันนะครับ พี่ล่าม สัปดาห์หน้าจะพาน้อง ๆ ไปนอกสถานที่

1239
01:15:05,516 --> 01:15:09,516
ก็ ถ้าไม่มีใครถามอะไรแล้วนะครับ

1240
01:15:09,517 --> 01:15:13,517
ก็เจอกันสัปดาห์หน้านะครับ ไปดูงานนอกสถานที่

1241
01:15:13,517 --> 01:15:17,512
กัน โอเคครับผม ไป

1242
01:15:17,512 --> 01:15:21,512

1243
01:15:21,512 --> 01:15:25,512

1244
01:15:25,515 --> 01:15:29,514

1245
01:15:29,514 --> 01:15:33,514


