1. Trang chủ
  2. » Luận Văn - Báo Cáo

CHƯƠNG 2 – QUẢN LÝ TIẾN TRÌNH

20 0 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Quản Lý Tiến Trình
Định dạng
Số trang 20
Dung lượng 1,56 MB

Nội dung

Công Nghệ Thông Tin, it, phầm mềm, website, web, mobile app, trí tuệ nhân tạo, blockchain, AI, machine learning - Công Nghệ Thông Tin, it, phầm mềm, website, web, mobile app, trí tuệ nhân tạo, blockchain, AI, machine learning - Kỹ thuật 1 Chương 2 – QUẢN LÝ TIẾN TRÌNH 1- TiẾN TRÌNH VÀ ĐiỀU ĐỘ TiẾN TRÌNH 1.1 - Định nghĩa tiến trình: 1.2 – Phân loại: kế tiếp và song song, Tiến trình song song: S0 S1 S2 S3 S4 S5 . . . . Sn-1 Sn Sn+1 . . . . A BBEGIN END t Begin A B 2 Phân loại A B C Z a b c z A B C Z a b c z I I A B C Z b c z A B C Z a b c z Độc lập Quan hệ thông tin Phân cấp Đồng mức 3 Phân loại a) Độc lập: Bảo vệ thông tin, b)Quan hệ thông tin: – Tiến trình nhận: Tồn tại? Ở đâu? Giai đoạn nào? – Cơ chế truyền tin: Hòm thư, IO Ports, Monitor 4 Phân loại c) Phân cấp: Tài nguyên cho tiến trình con: – Hệ thống QL tài nguyên tập trung: từ hệ thống, – Hệ thống QL tài nguyên phân tán: từ vốn tài nguyên tiến trình chính, QL phân tán: Tiến trình chính phải kết thúc sau tiến trình con  POST, WAIT. d) Đồng mức: Sử dụng chung theo nguyên tắc lần lượt, Các hệ thống mô phỏng, trò chơi, . . . 5 1.3 - BIỂU DIỄN TIẾN TRÌNH SONG SONG Giả thiết: S1, S2, . . ., Sn – các công việc thực hiện song song (Trên 1 hoặc nhiều máy).S1 S2 Sn . . . . 6 BIỂU DIỄN 2 cách mô tả phổ biến: PARBEGIN COBEGIN S1 ; S1 ; S2; S2; . . . . . . . . . . . . . . Sn Sn PAREND; COEND; Các công việc Si được mô tả chính xác bằng một ngôn ngữ lập trình cụ thể. 7 1.4 – TÀI NGUYÊN GĂNG và ĐOẠN GĂNG Tài nguyên găng: Khả năng phục vụ đồng thời bị hạn chế, thông thường - bằng 1. Ví dụ: Máy in, quá trình bán vé máy bay . . . Đoạn găng (chổ hẹp) của tiến trình, Điều độ tiến trình qua đoạn găng: Tổ chức cho mọi tiến trình qua được chổ hẹp của mình. Giải thuật điều độ phải đảm bảo 4 yêu cầu. 8 Yêu cầu i) Đảm bảo tài nguyên găng không phải phục vụ quá khả năng của mình, ii) Không để tiến trình nằm vô hạn trong đoạn găng, iii) Nếu có xếp hàng chờ thì sớm hay muộn tiến trình cũng qua được đoạn găng, iv) Nếu có tiến trình chờ đợi và nếu tài nguyên găng được giải phóng, thì tài nguyên găng phải phục vụ ngay cho tiến trình đang chờ đợi. 9 Công cụ điều độ Công cụ điều độ: 2 loại: – Cấp cao: do hệ thống đảm nhiệm, nằm ngoài tiến trình được điều độ, – Cấp thấp: cài đặt ngay vào trong tiến trình được điều độ. Các giải thuật điều độ cấp thấp: 3 lớp giải thuật: – Phương pháp khoá trong, – Phương pháp kiểm tra và xác lập, – Kỹ thuật đèn báo. 10 2 – CÁC GIẢI THUẬT ĐIỀU ĐỘ 2.1 Phương pháp khoá trong: Nguyên lý: – Mỗi tiến trình (TT) đặt tương ứng tài nguyên găng với 1 biến  G, – TT dùng biến này để đánh dấu việc mình đang sử dụng tài nguyên găng, – Trước khi vào đoạn găng TT phải kiểm tra biến tương ứng của các TT khác và chỉ vào đoạn găng khi không có TT nào đang sử dụng tài nguyên găng. 11 Phương pháp khoá trong Môi trường ví dụ: Xét trường hợp: – 2 tiến trình, – Mỗi TT có một đoạn găng ở đầu, – 1 tài nguyên găng với khả năng phục vụ:1, – Các tiến trình lặp vô hạn. Tránh nhầm lẫn giữa 2 khá...

Trang 1

Chương 2 – QUẢN LÝ TIẾN TRÌNH

$1- TiẾN TRÌNH VÀ ĐiỀU ĐỘ TiẾN TRÌNH 1.1 - Định nghĩa tiến trình:

1.2 – Phân loại: kế tiếp và song song,

• Tiến trình song song:

A

B

Trang 2

Phân loại

A

B

C

Z

a b c

z

A B C

Z

a b c

z

I

I

A B C

Z

b c

z

A B C

Z

a b c

z

Độc lập Quan hệ

Phân Đồng mức

Trang 3

Phân loại

• a) Độc lập: Bảo vệ thông tin,

• b)Quan hệ thông tin:

– Tiến trình nhận: Tồn tại? Ở đâu? Giai đoạn

nào?

– Cơ chế truyền tin:

• Hòm thư,

• I/O Ports,

Trang 4

Phân loại

• c) Phân cấp:

• Tài nguyên cho tiến trình con:

– Hệ thống QL tài nguyên tập trung: từ hệ thống,

– Hệ thống QL tài nguyên phân tán: từ vốn tài nguyên tiến trình chính,

• QL phân tán: Tiến trình chính phải kết thúc sau tiến trình con  POST, WAIT

• d) Đồng mức:

• Sử dụng chung theo nguyên tắc lần lượt,

Trang 5

1.3 - BIỂU DIỄN TIẾN TRÌNH SONG SONG

• Giả thiết: S1, S2, , Sn – các công việc thực hiện song song (Trên 1 hoặc nhiều máy)

S 1 S 2 . S n

Trang 6

BIỂU DIỄN

• 2 cách mô tả phổ biến:

PARBEGIN COBEGIN

S 2 ; S 2 ;

S n S n

PAREND; COEND;

Các công việc Si được mô tả chính xác bằng một ngôn ngữ lập trình cụ thể

Trang 7

1.4 – TÀI NGUYÊN GĂNG và ĐOẠN GĂNG

• Tài nguyên găng: Khả năng phục vụ đồng thời bị hạn chế, thông thường - bằng 1

• Ví dụ: Máy in, quá trình bán vé máy bay

• Đoạn găng (chổ hẹp) của tiến trình,

• Điều độ tiến trình qua đoạn găng: Tổ chức cho mọi tiến trình qua được chổ hẹp của mình

• Giải thuật điều độ phải đảm bảo 4 yêu cầu

Trang 8

Yêu cầu

• i) Đảm bảo tài nguyên găng không phải phục vụ quá khả năng của mình,

• ii) Không để tiến trình nằm vô hạn trong đoạn găng,

• iii) Nếu có xếp hàng chờ thì sớm hay muộn tiến trình cũng qua được đoạn găng,

• iv) Nếu có tiến trình chờ đợi và nếu tài nguyên găng được giải phóng, thì tài nguyên găng phải phục vụ ngay cho tiến trình đang chờ đợi

Trang 9

Công cụ điều độ

• Công cụ điều độ: 2 loại:

– Cấp cao : do hệ thống đảm nhiệm, nằm ngoài tiến trình được điều độ,

– Cấp thấp : cài đặt ngay vào trong tiến trình được

điều độ

• Các giải thuật điều độ cấp thấp: 3 lớp giải thuật:

– Phương pháp khoá trong,

– Phương pháp kiểm tra và xác lập,

– Kỹ thuật đèn báo

Trang 10

$2 – CÁC GIẢI THUẬT ĐIỀU ĐỘ

2.1 Phương pháp khoá trong:

• Nguyên lý:

– Mỗi tiến trình (TT) đặt tương ứng tài nguyên găng với 1 biến  G,

– TT dùng biến này để đánh dấu việc mình đang sử dụng tài nguyên găng,

– Trước khi vào đoạn găng TT phải kiểm tra biến

tương ứng của các TT khác và chỉ vào đoạn găng khi không có TT nào đang sử dụng tài nguyên

Trang 11

Phương pháp khoá trong

• Môi trường ví dụ: Xét trường hợp:

– 2 tiến trình,

– Mỗi TT có một đoạn găng ở đầu,

– 1 tài nguyên găng với khả năng phục vụ:1,

– Các tiến trình lặp vô hạn

• Tránh nhầm lẫn giữa 2 khái niệm:

– Sơ đồ nguyên lý: nêu { tưởng chung,

– Giải thuật điều độ: sơ đồ hành động để đảm bảo

Trang 12

SƠ ĐỒ NGUYÊN LÝ

Var c 1 , c 2 : Integer ;

BEGIN c 1 := 0 ; c 2 := 0 ;

PARBEGIN

TT 1 : Repeat TT 2 : Repeat

While c 2 <> 0 do ; While c 1 <> 0 do ;

c 1 := 1 ; c 2 := 1 ;

{ Đoạn găng TT 1 } { Đoạn găng TT 1 }

c 1 := 0 ; c 2 := 0 ;

{ Phần còn lại của TT 1 } { Phần còn lại của TT 1 } Until false ; Until false

PAREND END

Trang 13

Var c1, c2:Integer;

BEGIN c1:=0; c2 := 0;

PARBEGIN

TT1: Repeat TT1: TT2:Repeat

c1 := 1; c2 := 1;

While c2 <> 0 do ; While c1 <> 0 do ;

{Đoạn găng TT1} {Đoạn găng TT1}

c1 := 0; c2 := 0;

{Phần còn lại của TT1} {Phần còn lại của TT1} Until false; Until false

PAREND

Xác lập

Kiểm tra

Trang 14

SƠ ĐỒ NGUYÊN LÝ

• Nguyên nhân không đáp ứng yêu cầu điều đô:

– Kiểm tra và Xác lập – 2 công việc riêng biệt,

– Khoảng cách thời gian giữa 2 công việc,

– Giữa 2 công việc: Processor có thể bị chuyển sang công việc khác

• 1968: Dekker công bố giải thuật điều độ, kết nối Kiểm tra và Xác lập thành một khối

Trang 15

Giải thuật Dekker

Var c1,c2,tt: Integer;

BEGIN c1 := 0; c2 := 0; tt := 1;

PARBEGIN

TT1: Repeat

c1 := 1;

While c2 = 1 do

if tt = 2 then

begin c1 := 0;

while tt = 2 do ;

c1 := 1

end;

{ Đoạn găng TT 1}

TT2: Repeat

c2 := 1;

While c1 = 1 do

if tt = 1 then begin c2 := 0;

while tt = 1 do ; c2 := 1

end;

{ Đoạn găng TT 2}

c2 := 0; tt := 1;

Trang 16

Giải thuật Dekker

• Đặc điểm:

– Không đòi hỏi công cụ đặc biệt  áp dụng được

trong mọi môi trường (hệ thống và ngôn ngữ LT), – Phức tạp, độ phức tạp tăng khi số tiến trình tăng, – Tồn tại hiện tượng chờ đợi tích cực

• Nguyên nhân:

– Không cục bộ hoá biến trong tiến trình,

– Mỗi TT phải tự Kiểm tra và xác lập.

Trang 17

2.2 KIỂM TRA VÀ XÁC LẬP (TEST and SET)

• Cơ sở: dùng lệnh máy TS có từ các máy tính

thế hệ III trở đi

TS

(Test and Set)

Làm việc với

2 biến

Thực hiện:

- 2 công việc, -Liên tục

Trang 18

TEST and SET

• IBM 360/370:  1 lệnh TS ( mã 92H),

• IBM PC: Nhóm lệnh BTS (Binary Test and Set):

Trang 19

TEST and SET

• Sơ đồ điều độ:

Var l1, l2, g: Integer;

BEGIN

g := 0;

PARBEGIN

TT1: Repeat

l1 := 1;

While l1 = 1 do TS(l1);

{Đoạn găng TT1}

g := 0;

{Phần còn lại của TT1}

Until false;

TT2: Repeat

l2 := 1;

While l2 = 1 do TS(l2);

g l1 l2

0

1 1

Trang 20

TEST and SET

Đặc điểm:

trình tăng Nguyên nhân: Cục bộ hoá biến và

tính liên tục của KT & XL,

Ngày đăng: 12/03/2024, 20:50

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN