Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
U
21
:
V
W
L
M
ở
H
ẽ
ớ
( NTT)
T
2010
ẽ
ớ
ị
6 ỷ
Đ
”
ễ
23
môn là: “Hệ điều à
t ời
(Scheduler))” .
Q
giáo i
V Hà
- Mỹ(1)
“L
ia
t ực: Vấ
ớ
lịc
đề l
ớ
ớ
ớ
C
Nhóm 23_LTCĐ-DHKHMT2_K6
e
xi c â t à
cả
ơ !
1
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
L
N
I-
T
Đ U .................................................................................................. 1
U
V
T
u ................................................................................................. 4
1.1
1.1.1
ác khái niệm về hệ nhúng ...................................................... 4
1.1.2
1.1.3
ch s ........................................................................................ 6
ác c i m.............................................................................. 7
1.1.4
i o iện .................................................................................... 8
1.1.5
i n Trúc ................................................................................... 9
1.1.6
1.1.7
Thi t
ngo i vi ......................................................................... 9
ng c phát tri n................................................................... 10
1.1.8
tin c
1.2
nh v c ng
1.2.1
................................................................................. 11
ng c hệ nhúng ................................................... 12
Xu th phát tri n và s
t ng trường c
hệ thống .............. 12
ấu trúc ph n c ng hệ nhúng ......................................................... 14
1.3
1.3.1
ác thành ph n ki n trúc c
n .......................................... 14
1.3.2
1.3.3
n v x lý trung tâm PU .................................................. 14
Xung nh p và tr ng thái tin hiệu ........................................... 16
1.3.4
B nhớ ...................................................................................... 18
1.3.5
go i vi ..................................................................................... 20
TM
II.
............................................. 3
UV
Đ U
N T
NT
......................... 22
2.1
hái niệm hệ thống th ng tin thời gi n th c ................................. 22
2.2
2.3
c th ............................................................................................... 22
hiệm v ............................................................................................ 23
2.4
t số v
về
thời gi n th c ............................................... 24
2.5 Thời gi n th c c ng (
r Re l-time) và thời gi n th c mềm (
Soft Real-Time): ........................................................................................ 24
III.
p l ch trong thời gi n th c – Scheduling ....................................... 26
3.1 Vấn ề l p l ch................................................................................... 26
3.2
3.3
ác phư ng pháp l p l ch ph i n ................................................ 30
p l ch c chu k ............................................................................. 32
3.4
p l ch kh ng theo chu k .............................................................. 33
Nhóm 23_LTCĐ-DHKHMT2_K6
2
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
3.5
p l ch theo ki u chi m qu ền th c thi và l p l ch kh ng c
chi m qu ền th c thi. ................................................................................ 34
3.6
ác ti u ch
ánh giá l p l ch .......................................................... 36
3.7
ánh giá các thu t toán l p l ch ...................................................... 37
3.8
ác k thu t l p l ch ph i n ......................................................... 37
IV. T
UT
................................................................... 43
Nhóm 23_LTCĐ-DHKHMT2_K6
3
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
I- T
U
V
T
u
1.1
Kỷ
ớ
ằ
ớ
N
4004
ở 1
ở
1972
B
ở
ở
P
K
ớ
ẳ
ặ
ị
è
ớ
ồ
ị
V
ị
ằ
ớ
ớ
ớ
Đ
ồ
ẩ
ị
ồ
ớ
MP3
è
ỏ
ặ
ặ
Xé
ớ
ị
ớ
ỏ
ị
ặ
ớ
ớ
ằ
ớ
1.1.1
ác khái niệm về hệ nhúng
Nhóm 23_LTCĐ-DHKHMT2_K6
4
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
ệ nhúng?
T
ớ
ỳ
ị
/
ẩ
ị
ị
V
ị
ị
ặ
ễ
R
ị
ồ
ẹ
V
ị
ỏ
ẩ
ễ
ặ
T
ở
ng trong
ớ
V
ị
ị
ổ
ặ
N
ớ
(
-
)
( f
-time).
Thời gi n th c c ng :
ớ
ỏ
N
ẽ
ị
ặ
ị
V
ổ
Thời gi n th c mềm:
ớ
ỏ
Nhóm 23_LTCĐ-DHKHMT2_K6
5
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
ằ
é
T
ằ
Đ
ở
V
ớ
ớ
ặ
Hình 1.1: P
1.1.2
ch s
(M
)
ở
S
MT
ớ
ớ
1961 N
-17
ớ K
1996
-17
T
Nhóm 23_LTCĐ-DHKHMT2_K6
M
ớ
ớ
M
6
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
T
1960
ẽ
B
ớ
4004
ỏ
phát minh
T
ớ
V
ỗ
1970
8
ớ
V
80
ỹ
Vớ
ở
Đ
ổ
ị
ớ
V
ặ
ớ
V
tr
ở
80
ổ
ị
ớ
:
ặ
k
1.1.3
ác
c i m
ặ
:
•
M
Nhóm 23_LTCĐ-DHKHMT2_K6
ỏ
7
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
;
ỏ
ặ
ặ
ẽ
é
•M
ằ
ị
• P
f
ớ ROM
ổ
ặ
P
ớ
:
ớ
ớ
ớf
ặ
ỏ
ớ
S
ẽ
é
ặ
1.1.4
i o iện
(
)
ặ
ớ
ị
ị
ỏ
ặ
ớ
Đ
ớ
è LE
ị
è
ị
ớ
ồ
ặ
ở
é
;
ổ
ớ
(j
) S
ẽ
ớ
Đ
Nhóm 23_LTCĐ-DHKHMT2_K6
giúp
8
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
ồ
ị
Đ
ị
ớ
ặ
ễ
V
các router là
ị
i n Trúc
1.1.5
:
ị
ằ
ớ
PU
RM M PS
f
/68
P
P
86 P
8051, Atmel AVR, Renesas H8, SH, V850, FR-V, M32R, Z80, Z8
Đ
ớ
ị
ớ
ị
ớ
ỏ
P /104
N
P /104++
OS L
N BS
QNX
ớ
V W
ớ
(S
– SoC),
(
specific integrated circuit –
ặ
S ) S
-
PU
M
P
(f
)
-
ớ
ồ
1.1.6
Thi t
PU
ngo i vi
Nhóm 23_LTCĐ-DHKHMT2_K6
9
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
ớ
ị
:
• S
f
(S ): RS-232, RS-422, RS-
485...
• S
S
f
: 2
JT
SP
SSC và ESSI
•U
S
•N
:
•B
ị
B
(USB)
N
: PLL( )
•
O:
L W
/
T
P
U
eral Purpose Input/Output (GPIO)
ng c phát tri n
1.1.7
T
ẩ
ị
(
)
(
ị
(
)
ặ
) T
:
•B
ặ
• T
•Đ
ị
(
ặ
R
)
ớ
M
ỏ
ỏ
ặ M
é
Nhóm 23_LTCĐ-DHKHMT2_K6
10
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
•
ị
(
)
ị
•M
ặ
ẵ
ở
ặ
ổ
NU Đ
ớ
P
tin c
1.1.8
ằ
ỗ
ẽ
ỳ
ị ỗ
ặ
ặ
ỗ V
ẩ
N
ổ
ị
ặ
V
ị
ặ
ằ
ỗ
ỹ
–
ặ
ẽ ị
ị
ở
M
:
•
ở
ớ
è
Nhóm 23_LTCĐ-DHKHMT2_K6
11
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
ặ
n
•
ị
ị
•N
ẽ
ổ
ị
nh v c ng
1.2
M
ng c
ẩ
hệ nhúng
ị
ớ
:
ị
T
T
ị
ẩ
Tòa nhà thông minh
T
R
ị
ị
/
ị
ị
1.2.1 Xu th phát tri n và s
Nhóm 23_LTCĐ-DHKHMT2_K6
t ng trường c
hệ thống
12
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
V
ễ
ớ
ị/
ớ
ặ
Lớ
ỏ
ớ
f
tính toán ít h ặ
ồ
8
ở
– 16
ặ
32
ỗ
toán.
Lớ
ớ
ẽ
ớ
ớ
ớ
Lớ
ớ
ớ
ỏ
T
ỏ
ồ
8
16
32
Đ
ằ
Nhóm 23_LTCĐ-DHKHMT2_K6
ỏ
13
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
Vớ
ỗ
ặ
è
K
ẩ
ặ
R
è
ổ
(S
K
E
)
ỗ
ớ
ằ
Tro
ỏ
é
Đ
ổ
SP
S
1.3
PL
ấu trúc ph n c ng hệ nhúng
1.3.1 ác thành ph n ki n trúc c
Hình 1.2: K
1.3.2
n
VXL/VĐK
n v x lý trung tâm PU
Nhóm 23_LTCĐ-DHKHMT2_K6
14
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
N
ớ
PU (
õ
P
VX
U
ị
ị
)
é
P
PU
ị
) N
(ALU-
ỗ
LU
(
)
(
T
)
ỏ
(
ị
)T
T
ỏ
T
ẽ
(
)
T
ị
N
(M
T
ị
ớ
ỏ
ị ị
ị
)
/
(P
Counter)
Nhóm 23_LTCĐ-DHKHMT2_K6
15
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
M
PU
T
ị
ẽ
PU
PU
Mỗ
ỏ ớ
ị
ẽ
ẽ
P
ị
ằ
T
(
ị ằ
ớ
)
T
LU
ặ
é
LU
1.3.3 Xung nh p và tr ng thái tin hiệu
T
VX
ồ
ặ
ị
ặ
ặ
ồ
ẩ
ị
ẩ
Đẻ
ồ
Hình .3: M
Nhóm 23_LTCĐ-DHKHMT2_K6
VXL
16
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
M
ồ
ị
ỗ
ỳ
ỗ
N
é
ị
é
ở
T
ị
ặ
ỹ
ặ
M
ị
ỏ
ặ
ồ
T
T
T
T
Tễ
Đ
T
:
ặ
ễ
(TR -State)
ị
Thời gi n tăng ho c gi m
Hình 1.4: M
T
20%
80%
Nhóm 23_LTCĐ-DHKHMT2_K6
T
17
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
80%
20%
Thời gi n trễ l n tru ền
L
ổ
ổ
ở
Đặ
ễ
Hình 1.5: M
ớ
Thời gi n thi p l p và lưu giữ
K
ổ
ớ
ị
ớ
ị
ẩ
ồ
ồ
ổ
T
ổ
ị
ị
ồ
ồ
ổ
T
ổ
ị
ồ
TR
Hình 1.6: T
1.3.4 B nhớ
Nhóm 23_LTCĐ-DHKHMT2_K6
18
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
K
ớ
ớV
N
T
N
Đ
é
ROM
R M
ớ
Hình 1.7: K
K
Neumann và Havard
/
ROM
ổ
R M
ớ
ở
(
ặ
ớ
é
)
Ư
ổ
ớ
ớ
N
ớ
ồ
Nhóm 23_LTCĐ-DHKHMT2_K6
ồ
19
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
ị
Hình 1.8: N
B
ớ
–PROM (Programmable Read Only Memory)
V
ớ PROM
ẽ
go i vi
1.3.5
B
ớ
ị
/
.
ị
/
ị
é
ỗ
ặ
ổ
ị
ỳ
M
ị
Nhóm 23_LTCĐ-DHKHMT2_K6
ị
ị
20
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
ị
é
Đ
.
Nhóm 23_LTCĐ-DHKHMT2_K6
21
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
II. T
UV
U
T
C
hái niệm hệ thống th ng tin thời gi n th c
2.1
T
t ô
T
ệ t ố
ti t ời ia t ực
ớ
ớ
M
ễ
(
ị
ẽ
ị )
ớ
ở
hông
:
(
) S
ỗ
c th
2.2
T
ở
ị
:
ớ
ớ
Nhóm 23_LTCĐ-DHKHMT2_K6
V
22
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
ị
ổ
T
ị
:
ị
T
ặ
ị
T
ồ
ớ
:
ồ
ễ
ị
T
ớ
ị :
ớ
N
ồ
ị
ỗ
ớ
ở
hiệm v
2.3
M
( )
N
ặ
ỳ
ở
( )
(Task), và tro
ỳ
(T )
Nhóm 23_LTCĐ-DHKHMT2_K6
ằ
23
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
t số v
2.4
-
Adeos
-
ART Linux
-
ChorusOS
-
eCos
-
ELinOS
-
FreeRTOS
-
iRmx
-
ITRON
-
Linux
-
LynxOS
-
MicroC/OS-II
-
Nucleus
-
OS-9
-
OSE
-
OSEK/VDX
-
pSOS
-
PikeOS
-
QNX
-
RedHawk
-
RSX-11
-
VxWorks
-
Windows CE
-
Xenomai
2.5
về
thời gi n th c
Thời gi n th c c ng (
r Re l-time) và thời gi n th c
mềm ( Soft Re l-Time):
Nhóm 23_LTCĐ-DHKHMT2_K6
24
Hệ điều hành thời gian thực: Vấn đề lập lịch (Scheduler)
Hình 2 1: T
T
:
o M
T
:
o M
é
ẽ
ở
Nhóm 23_LTCĐ-DHKHMT2_K6
25