1
1

00:00:02,350  -->  00:00:08,800
xin chào chào mừng trở lại trong bài học này, chúng tôi
2

2

00:00:05,810  -->  00:00:11,930
sẽ nói về ngoại lệ phụ thuộc SVC
3

3

00:00:08,800  -->  00:00:14,000
ngoại lệ đắt tiền được sử dụng để
4

4

00:00:11,930  -->  00:00:17,390
giảm thiểu độ trễ có kinh nghiệm bởi
5

5

00:00:14,000  -->  00:00:19,400
thói quen phục vụ gián đoạn trong một điển hình
6

6

00:00:17,390  -->  00:00:22,940
nhúng hoặc như được thiết kế trên vỏ não
7

7

00:00:19,400  -->  00:00:26,390
ngoại lệ bộ xử lý SVC sẽ được sử dụng để
8

8

00:00:22,940  -->  00:00:29,960
cho phép sử dụng các mối đe dọa để thực hiện cuộc gọi đến hệ điều hành
9

9

00:00:26,390  -->  00:00:32,870
api và bộ đếm thời gian Cystic sẽ được sử dụng
10

10

00:00:29,960  -->  00:00:35,780
để tạo ra sự gián đoạn định kỳ đến Randy
11

11

00:00:32,870  -->  00:00:38,300
OS Shetler hãy nói rằng đây là một
12

12

00:00:35,780  -->  00:00:40,760
đại diện cho UM một đại diện
13

13

00:00:38,300  -->  00:00:45,039
của thời gian xử lý dựa trên
14

14

00:00:40,760  -->  00:00:47,899
trục x ở đây và một số
15

15

00:00:45,039  -->  00:00:51,409
ngoại lệ và các mối đe dọa được kích hoạt trên
16

16

00:00:47,899  -->  00:00:53,780
bộ xử lý như đã đề cập trước Cystic
17

17

00:00:51,409  -->  00:00:56,839
bộ hẹn giờ sẽ được sử dụng để tạo định kỳ
18

18

00:00:53,780  -->  00:01:00,819
ngắt để chuyển đổi để chuyển đổi
19

19

00:00:56,839  -->  00:01:03,559
nhiệm vụ của HĐH để HĐH khởi động và
20

20

00:01:00,819  -->  00:01:06,049
sau đó hãy nói ví dụ này
21

21

00:01:03,559  -->  00:01:10,009
mười mili giây để bắt đầu nhưng trong thực tế
22

22

00:01:06,049  -->  00:01:12,979
nó ngắn hơn nhiều so với nó để nó bắt đầu
23

23

00:01:10,009  -->  00:01:15,590
và những gì nó làm là một kích thước
24

24

00:01:12,979  -->  00:01:18,829
khe thời gian đầu tiên cho nhiệm vụ số một
25

25

00:01:15,590  -->  00:01:22,700
vì vậy nó cho 40 phút chống lại nhiệm vụ
26

26

00:01:18,829  -->  00:01:24,950
1 to run so after task 1 rise for 40
27

27

00:01:22,700  -->  00:01:27,170
vài phút chống lại hoặc một lịch trình đến
28

28

00:01:24,950  -->  00:01:30,200
vào lại và lấy bộ xử lý từ
29

29

00:01:27,170  -->  00:01:33,469
tác vụ 1 và sau đó gán bộ xử lý cho
30

30

00:01:30,200  -->  00:01:36,380
nhiệm vụ 2 trong 40 mili giây và sau đó
31

31

00:01:33,469  -->  00:01:38,509
sau khi nhiệm vụ 2 đã hết 40
32

32

00:01:36,380  -->  00:01:41,179
mili giây của bộ xử lý
33

33

00:01:38,509  -->  00:01:43,219
Một lần nữa, lompompton lại xử lý và
34

34

00:01:41,179  -->  00:01:46,340
sau đó gán bộ xử lý cho tác vụ
35

35

00:01:43,219  -->  00:01:49,159
số 3 và sau khi nhiệm vụ số 3 chạy
36

36

00:01:46,340  -->  00:01:51,289
trong 40 mili giây
37

37

00:01:49,159  -->  00:01:55,609
đến và sau đó lấy nó và sau đó
38

38

00:01:51,289  -->  00:01:57,469
quay trở lại nhiệm vụ 1 nếu hệ điều h��nh của chúng ta vừa
39

39

00:01:55,609  -->  00:02:00,229
ba nhiệm vụ và quá trình này tiếp tục
40

40

00:01:57,469  -->  00:02:03,319
quá trình này chỉ được mô tả là làm thế nào
41

41

00:02:00,229  -->  00:02:05,659
Shh may mắn làm việc ngay bây giờ hãy xem
42

42

00:02:03,319  -->  00:02:06,649
chuyện gì xảy ra khi chúng tôi giới thiệu người khác
43

43

00:02:05,659  -->  00:02:09,140
vũ trang
44

44

00:02:06,649  -->  00:02:11,900
gián đoạn đến hệ thống hiện tại Cystic
45

45

00:02:09,140  -->  00:02:14,480
là ngắt duy nhất cho hệ điều hành Shh như
46

46

00:02:11,900  -->  00:02:15,500
Người dùng để chuyển đổi tác vụ, hãy nói rằng chúng tôi
47

47

00:02:14,480  -->  00:02:18,710
giới thiệu một định mức
48

48

00:02:15,500  -->  00:02:21,530
hoặc gián đoạn yêu cầu từ may mặc
49

49

00:02:18,710  -->  00:02:24,530
có lẽ vì vậy hãy xem điều gì xảy ra
50

50

00:02:21,530  -->  00:02:27,680
Vì vậy, hệ điều hành khởi động phải mất khoảng 10
51

51

00:02:24,530  -->  00:02:29,960
mili giây và sau đó Shetler cho
52

52

00:02:27,680  -->  00:02:33,380
bộ xử lý hai nhiệm vụ số một nhiệm vụ
53

53

00:02:29,960  -->  00:02:35,900
số một chạy nhưng sau số nhiệm vụ
54

54

00:02:33,380  -->  00:02:38,990
một đã chạy xong bộ xử lý
55

55

00:02:35,900  -->  00:02:41,090
nhận được một yêu cầu ngắt những gì
56

56

00:02:38,990  -->  00:02:43,520
xảy ra là bộ xử lý không
57

57

00:02:41,090  -->  00:02:45,920
phục vụ yêu cầu ngắt này vì
58

58

00:02:43,520  -->  00:02:47,930
trong sự sắp xếp này sự sắp xếp này
59

59

00:02:45,920  -->  00:02:50,390
hơn đã sắp xếp theo thứ tự ưu tiên
60

60

00:02:47,930  -->  00:02:53,930
vì vậy chị ở đây có ưu tiên cao nhất
61

61

00:02:50,390  -->  00:02:56,239
tiếp theo là irq SVC và chủ đề có
62

62

00:02:53,930  -->  00:02:58,160
ưu tiên thấp nhất vì điều này
63

63

00:02:56,239  -->  00:03:00,110
sắp xếp được sắp xếp theo thứ tự
64

64

00:02:58,160  -->  00:03:04,190
ưu tiên và Cystic có mức cao nhất
65

65

00:03:00,110  -->  00:03:06,800
ưu tiên khi tác vụ 1 kết thúc chạy
66

66

00:03:04,190  -->  00:03:09,950
mặc dù một yêu cầu ngắt là
67

67

00:03:06,800  -->  00:03:12,590
nhận được bộ xử lý không phục vụ
68

68

00:03:09,950  -->  00:03:15,520
yêu cầu nó chuyển sang để chuyển đổi và
69

69

00:03:12,590  -->  00:03:18,020
sau đó là nhiệm vụ văn phòng cho thời gian của nó
70

70

00:03:15,520  -->  00:03:19,700
đừng lo lắng về các kích cỡ khác nhau trong
71

71

00:03:18,020  -->  00:03:22,640
hình chữ nhật được cho là bằng nhau
72

72

00:03:19,700  -->  00:03:25,420
khe thời gian giống như
73

73

00:03:22,640  -->  00:03:29,540
ví dụ trước đây chỉ là có
74

74

00:03:25,420  -->  00:03:32,769
một sự khác biệt và bản vẽ tôi sẽ nói như vậy
75

75

00:03:29,540  -->  00:03:38,000
nhiệm vụ 2 chạy cho timelot của nó đó là
76

76

00:03:32,769  -->  00:03:40,760
Giống như trước đó, hệ điều hành hoặc bộ lập lịch
77

77

00:03:38,000  -->  00:03:44,180
chuyển đổi sau thời gian đã chạy cho
78

78

00:03:40,760  -->  00:03:47,150
lượng thời gian dành cho nó sau đó
79

79

00:03:44,180  -->  00:03:49,910
chuyển sang nhiệm vụ 3 như trước và sau đó
80

80

00:03:47,150  -->  00:03:53,720
quăng 3 chạy cho timelot của nó là tốt
81

81

00:03:49,910  -->  00:03:57,350
và sau đó nó chuyển trở lại nhiệm vụ 1 nếu
82

82

00:03:53,720  -->  00:03:58,190
nếu ví dụ này, hệ điều hành vừa
83

83

00:03:57,350  -->  00:04:00,890
ba nhiệm vụ
84

84

00:03:58,190  -->  00:04:03,260
nó chạy cái đầu tiên rồi nó chuyển
85

85

00:04:00,890  -->  00:04:05,329
chạy cái thứ hai và nó chuyển đổi và
86

86

00:04:03,260  -->  00:04:09,230
dựa trên lịch trình cụ thể
87

87

00:04:05,329  -->  00:04:11,720
thuật toán thời gian được giao cho mỗi nhiệm vụ
88

88

00:04:09,230  -->  00:04:15,290
có thể khác nhau nhưng trong một vòng tròn
89

89

00:04:11,720  -->  00:04:18,530
thuật toán thời gian bằng nhau được gán cho mỗi
90

90

00:04:15,290  -->  00:04:21,680
nhiệm vụ được nói đến một lần
91

91

00:04:18,530  -->  00:04:23,690
chạy xong rồi
92

92

00:04:21,680  -->  00:04:27,500
bộ xử lý sẽ phân kỳ ngắt
93

93

00:04:23,690  -->  00:04:28,690
yêu cầu để chúng ta có thể thấy yêu cầu là
94

94

00:04:27,500  -->  00:04:31,300
thực hiện tại
95

95

00:04:28,690  -->  00:04:34,300
t bằng 14 mili giây và đó là
96

96

00:04:31,300  -->  00:04:36,970
Phục vụ tại thời điểm T vì 160
97

97

00:04:34,300  -->  00:04:39,190
mili giây chúng ta có thể nói sự chậm trễ
98

98

00:04:36,970  -->  00:04:42,340
đưa họ ra khoảng 120 mili giây để
99

99

00:04:39,190  -->  00:04:45,160
phục vụ yêu cầu ngắt vì vậy đây là
100

100

00:04:42,340  -->  00:04:48,310
loại vấn đề ngoại lệ Penn SVC
101

101

00:04:45,160  -->  00:04:52,210
giải quyết nó làm giảm độ trễ này mà chúng ta thấy trong
102

102

00:04:48,310  -->  00:04:55,390
ở đây như chúng ta sẽ thấy trong mã
103

103

00:04:52,210  -->  00:04:57,760
SVC được sử dụng để giảm vấn đề này khi
104

104

00:04:55,390  -->  00:04:59,560
sự gián đoạn xảy ra nó sẽ
105

105

00:04:57,760  -->  00:05:01,990
kiểm tra ngắt vector lồng nhau
106

106

00:04:59,560  -->  00:05:04,810
đăng ký điều khiển để xem nếu có
107

107

00:05:01,990  -->  00:05:06,880
ngắt ngoại vi đang chờ xử lý và nếu
108

108

00:05:04,810  -->  00:05:08,290
đây là trường hợp nó sẽ gây ra con lắc
109

109

00:05:06,880  -->  00:05:11,110
Ngoại lệ SVC
110

110

00:05:08,290  -->  00:05:14,530
bằng cách thiết lập các bit Pend ở cuối Vic
111

111

00:05:11,110  -->  00:05:15,730
mà bây giờ chúng ta sẽ xem tại sao
112

112

00:05:14,530  -->  00:05:19,330
điều này quan trọng
113

113

00:05:15,730  -->  00:05:21,580
như tôi đã nói phương pháp này duy trì
114

114

00:05:19,330  -->  00:05:25,180
nâng cao hiệu quả hoạt động
115

115

00:05:21,580  -->  00:05:28,090
hệ thống trong khi giữ sự xâm nhập từ
116

116

00:05:25,180  -->  00:05:31,210
ngắt ngoại vi đến mức tối thiểu và
117

117

00:05:28,090  -->  00:05:33,360
đó là một cách rất hiệu quả
118

118

00:05:31,210  -->  00:05:36,160
thiết kế hoặc một Shh ít phổ biến
119

119

00:05:33,360  -->  00:05:40,570
hệ điều hành thời gian thực như amp
120

120

00:05:36,160  -->  00:05:42,550
người dùng vi mô phụ thuộc vào SVC Ấn Độ
121

121

00:05:40,570  -->  00:05:45,400
lập lịch và chúng tôi sẽ thiết kế của chúng tôi
122

122

00:05:42,550  -->  00:05:47,740
lập lịch trình riêng của SV SVC và chúng tôi sẽ
123

123

00:05:45,400  -->  00:05:51,070
để xem xét tìm kiếm đơn giản hơn ít
124

124

00:05:47,740  -->  00:05:52,630
chỉ sử dụng một bộ đếm thời gian nang như vậy thì làm thế nào
125

125

00:05:51,070  -->  00:05:55,060
điều này đặt ra một câu hỏi khác
126

126

00:05:52,630  -->  00:05:58,020
vì vậy vấn đề được tạo ra ở đây là
127

127

00:05:55,060  -->  00:06:00,700
bởi vì nang được đặt ở mức cao nhất
128

128

00:05:58,020  -->  00:06:03,040
ưu tiên không thể chúng ta chỉ giải quyết
129

129

00:06:00,700  -->  00:06:06,250
vấn đề bằng cách đặt nang đến mức thấp nhất
130

130

00:06:03,040  -->  00:06:09,610
ưu tiên để các ngắt khác có thể
131

131

00:06:06,250  -->  00:06:11,740
có mức độ ưu tiên cao hơn tôi
132

132

00:06:09,610  -->  00:06:14,020
để lại cho bạn suy nghĩ về và
133

133

00:06:11,740  -->  00:06:16,180
khi chúng tôi bắt đầu viết lịch trình của chúng tôi và
134

134

00:06:14,020  -->  00:06:19,330
xây dựng hệ điều hành thời gian thực của chúng tôi
135

135

00:06:16,180  -->  00:06:22,800
bạn có câu trả lời của bạn cho điều đó yeah
136

136

00:06:19,330  -->  00:06:22,800
Tôi sẽ gặp bạn trong bài học tiếp theo
