Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 23 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
23
Dung lượng
366 KB
Nội dung
1
Bài 3:QUẢNLÝTIẾN TRÌNH
Phân chia CPU cho các tiếntrình ?
Tiếp cận
Mục tiêu ?
Tổ chức ?
Chiến lược ?
Trạng thái tiếntrình ?
Lưu trữ thông tin tiếntrình ?
Các thao tác trên tiếntrình ?
Bảo vệ tiếntrình ?
Trao đổi thông tin giữa các tiếntrình ?
2
Phaân chia CPU ?
1 CPU vaät lyù
!
Dispatcher "
# $ " %&
'()
*++
while(1)
{
interrupt P
cur
save state P
cur
Scheduler gets P
next
load state P
next
jump to it
}
3
Traïng thaùi tieán trình ?
,"
-
-
%.,
-
#&
/
-
#&-
4
Khoỏi quaỷn lyự tieỏn trỡnh trong moõ hỡnh
multiprocesses
+,
0
'01,)
$
'213145)
0,
-6
'*,1,)
(.
(
5
PCB vaø TCB trong moâ hình multithreads
+,
/,
$
'31%
5)
0,
-6
'*,1,)
(
,
0
'01,)
$
'21.5)
/,(.
/(
6
Các thao tác trên tiến trình
Tạo lập tiếntrình :
Cấp phát tài nguyên cho tiếntrình con ?
Hoạt động của cha và con độc lập
Kết thúc tiếntrình :
Thu hồi tài nguyên ?
p buộc kết thúc ?
Thay đổi trạng thái tiếntrình :
Assign(), Block(), Awake(), Resume(), Suspend()
7
Traïng thaùi tieán trình ?
70+,8-
9&:
;&
8
An ninh trật tự cho môi trường đa tiếntrình !
Bảo vệ tiếntrình :
Ngăn cản các tiếntrình xâm phạm tài nguyên, can
thiệp vàoxử lý của nhau => KGĐC riêng biệt, 2 mode
xử lý
Bảo đảm quyền tiến triển xử lý cho mỗi tiếntrình =>
công bằng trong các chiến lược phân phối tài nguyên.
Trao đổi thông tin , phối hợp hoạt động ?
Nhu cầu ?
Vấn đề ? => Chương kế tiếp
Giải pháp ?
9
Caùc danh saùch tieán trình
-,"<
=
>
?
@<
-=
A
B
=C
D
E
-=
-=
10
Điều phối tiến trình
Mục tiêu ?
Các cấp độ điều phối
Thời điểm ra quyết đònh điều phối ?
Đánh giá chiến lược điều phối ?
Một số chiến lược điều phối
[...]... phối tiếntrình SCHEDULER chọn một tiếntrình nhận cpu DISPATCH ER chuyển đổi ngữ cảnh 11 Chuyển đổi ngữ cảnh (context switching) Kòch bản : Chi tiết cụ thể phụ thuộc vào phần cứng Lưu ngữ cảnh tiếntrình hiện hành Nạp ngữ cảnh tiếntrình được chọn kế tiếp general-purpose & floating point registers, coprocessor state… Chi phí chuyển đổi ngữ cảnh : Giữa các tiếntrình ? Giữa các tiểu trình. .. nguyên Chi phí chuyển đổi Công bằng ( Fairness) : Tất cả các tiếntrình đều có cơ hội nhận CPU 17 Các cấp độ điều phối Longterm scheduling : chọn tiếntrình kế tiếp được khởi động (mang vao bộ nhớ và nhận trạng thái ready) Mediumterm scheduling : quyết đònh chuyển tiếntrình đang running sang trạng thái blocked Shorterm scheduling : chọn 1 tiếntrình ở trạng thái ready để chuyển sang trạng thái... thread) Khái niệm tiểu trình được hỗ trợ bởi một thư viện hoạt động trong user mode Distpatcher của hạt nhân làm việc với đơn vò là tiếntrình ThreadDistpatcher làm việc với đơn vò là tiểu trình User mode T1 T2 T3 LWP2 LWP1 P -– LWP - T Không cần chuyển đổi chế độ xử lý khi chuyển đổi các tiểu trình cùng thuộc 1 tiến trình P1 Kernel P2 Kernel 15 Lựa chọn tiến trình ? Tác vụ của Scheduler... dụng CPU hiệu quả Đảm bảo tất cả các tiến trình đều tiến triển xử lý Tất cả các tiến trình đều như nhau ? Đề xuất một độ ưu tiên cho mỗi tiến trình ? Thời điểm lựa chọn ? (Thời điểm kích hoạt Scheduler()) 16 Mục tiêu điều phối Hiệu qủa (Efficiency) Thời gian Đáùp ứng (Response time) Hoàn tất(Turnaround Time = Tquit -Tarrive ): Chờ (Waiting Time = T in Ready ) : Thông lượng (Throughput = # jobs/s... ready để chuyển sang trạng thái running Không có sự phân biệt rõ ràng hoàn toàn giữa 3 cấp độ 18 Thời điểm ra quyết đònh điều phối Điều phối độc quyền (non-preemptive scheduling ): tiếntrình được chọn độc chiếm CPU Điều phối không độc quyền (preemptive scheduling ): tiếntrình được chọn có thể bò « cướp » CPU bởi tiếntrình có độ ưu tiên cao hơn 19 Các chiến lược điều phối FIFO RR SJF MULTILEVELFEEDBACK... ngữ cảnh giữa các tiếntrình P1 P2 User mode System call Dispatcher Kernel mode Chuyển đổi mode xử lý Chuyển đổi IP và các thanh ghi khác của CPU Chuyển đổi không gian đòa chỉ 13 Tiểu trình hạt nhân (Kernel thread) T1 T2 User mode System call Dispatcher Kernel mode Khái niệm tiểu trình được xây dựng bên trong hạt nhân Distpatcher làm việc với đơn vò là tiểu trình 14 Tiểu trình người dùng (User... điều phối FIFO RR SJF MULTILEVELFEEDBACK LOTTERY 20 FIFO – RR -SJF FIFO RR SJF run add add run 21 Multilevel Feedback priority 22 Lottery 1 1 1 1 P1 P2 P3 P4 1 7 1 1 P1 P2 P3 P4 P2 có 25 % cơ hội P2 có 70 % cơ hội 23 . 1
Bài 3 : QUẢN LÝ TIẾN TRÌNH
Phân chia CPU cho các tiến trình ?
Tiếp cận
Mục tiêu ?
Tổ chức ?
Chiến lược ?
Trạng thái tiến trình ?
Lưu. tác trên tiến trình
Tạo lập tiến trình :
Cấp phát tài nguyên cho tiến trình con ?
Hoạt động của cha và con độc lập
Kết thúc tiến trình :
Thu hồi