hoa cuong có thì sử dụng – thích thì lao vào

58 3 0
hoa cuong có thì sử dụng – thích thì lao vào

Đ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

ñoàng thôøi cuøng hoaït ñoäng trong moät khoâng gian ñòa chæ => cuøng chia seû taøi nguyeân. (server, OS, caùc chöông trình tính toaùn song song : nhaân ma traän…)[r]

(1)

QUẢN LÝ TIẾN TRÌNH

(2)

MỤC TIÊU

 Mô hình Tiến trình

 Trạng thái tiến trình

 Thông tin quản lý tiến trình

 Quá trình điều phối tiến trình

 Các thuật tốn điều phối

04

/19

/2

02

1

Tr

n H

nh N

hi

(3)

ĐA NHIỆM VÀ ĐA CHƯƠNG ???

 Vì muốn xử lý đồng thời nhiều cơng việc máy tính ?04/19

/2

02

1

3

Tr

n H

nh N

hi

IO CPU IO

CPU

Job 1

CPU

Job 1

CPU IO

IO CPU IO

CPU

Job 2

(4)

ĐA NHIỆM VÀ ĐA CHƯƠNG ???

 Vì muốn xử lý đồng thời nhiều cơng việc máy tính ?04/19

/2

02

1

Tr

n H

nh N

hi

Job : kq = a*b + c*d;

CPU #1 CPU #1 CPU #2

x = a * b y = c * d

kq = x+y

x = a * b

y = c *d

kq = x+y

(5)

ĐA NHIỆM VÀ ĐA CHƯƠNG

 Multitasking (đa nhiệm): cho phép nhiều tác

vụ/ cơng việc xử lý đồng thời

 Người dùng mong muốn HĐH đa nhiệm  Nhưng: Máy tính thường có CPU?

 Multiprogramming (đa chương): kỹ thuật cho

phép nhiều chương trình thực đồng thời (trên CPU)

 Giả lập nhiều CPU ảo từ CPU thật

phép thi hành nhiều chương trình đồng thời

 Ảo hoá cách nào? Xây dựng thuật

tốn để ln chuyển CPU chương trình

04

/19

/2

02

1

Tr

n H

nh N

hi

(6)

XỬ LÝ ĐỒNG HAØNH, NHỮNG KHÓ KHĂN ?

04

/19

/2

02

1

Tr

n H

nh N

hi

- Tài nguyên giới hạn, ứng dụng “vô hạn”

- Nhiều hoạt động đan xen

??? Phân chia tài nguyên ? ??? Chia sẻ tài nguyên ? ??? Bảo vệ?

Excel

Visual C++

CDplayer

(7)

GIẢI PHÁP

04

/19

/2

02

1

Tr

n H

nh N

hi

- “Chia để trị”, cô lập hoạt động. - Mỗi thời điểm

giải yêu cầu.

- o hố tài ngun: biến thành nhiều

Winword

CDPlayer

Visual C ++

(8)

GIẢI PHÁP

04

/19

/2

02

1

Tr

n H

nh N

hi

(9)

KHÁI NIỆM TIẾN TRÌNH (PROCESS)

 Tiến trình chương trình

q trình thực

 Mỗi tiến trình sở hữu

 Một CPU (ảo) riêng

 Một khơng gian nhớ riêng

 Chiếm giữ số tài nguyên hệ thống

 Vd: Một chương trình Word chạy

2 lần tạo tiến trình khác nhau:

Microsoft Word – [Bai tap1.doc] Microsoft Word – [Bai tap2.doc]

04

/19

/2

02

1

Tr

n H

nh N

hi

(10)

HAI PHẦN CỦA TIẾN TRÌNH

04

/19

/2

02

1

Tr

n H

nh N

hi

int a;

int a;

P1

P2

(11)

TRẠNG THÁI TIẾN TRÌNH?

 Tại thời điểm, tiến trình

trạng thái sau:

04

/19

/2

02

1

Tr

n H

nh N

hi

ready

 Rs  CPU

running  Rs

 CPU blocked

 Rs

Nhận CPU Trả CPU

(12)

KHỐI QUẢN LÝ TIẾN TRÌNH

 Định danh (Process ID)  Tr ng thaùi ti n trìnhạ ế  Ng c nh ti n trìnhữ ả ế

 Tr ng thái CPUạ

 B x lý (cho máy nhi u CPU)ộ ề  B nh chínhộ

 Tài nguyên s d ng/t o l pử ụ ậ  Thông tin giao ti pế

 Ti n trình cha, ti n trình conế ế  Độ u tiêên

 Thông tin th ng kêố

 Thời gian sử dụng CPU

04

/19

/2

02

1

Tr

n H

nh N

hi

pid

State

(State, details)

Context

(IP, Mem, Files…)

Scheduling statistic

Relatives

(13)

KHỐI QUẢN LÝ TIẾN TRÌNH – VÍ DỤ

 typedef struct machpcb {  char mpcb_frame[REGOFF];

 struct regs mpcb_regs; // user's saved registers

 struct rwindow mpcb_wbuf[MAXWIN]; //user window save buffer  char *mpcb_spbuf[MAXWIN]; //sp's for each wbuf

 int mpcb_wbcnt; //number of saved windows in pcb_wbuf  struct v9_fpu *mpcb_fpu; // fpu state

 struct fq mpcb_fpu_q[MAXFPQ]; // fpu exception queue  int mpcb_flags; // various state flags  int mpcb_wocnt; // window overflow count  int mpcb_wucnt; // window underflow count  kthread_t *mpcb_thread; // associated thread  } machpcb_t;

04

/19

/2

02

1

Tr

n H

nh N

hi

(14)

CAÙC THAO TÁC TRÊN TIẾN TRÌNH

 Tạo lập tiến trình

 Kết thúc tiến trình

 Thay đổi trạng thái tiến trình :

 Assign()  Block()  Awake()  Suspend()  Resume()

04

/19

/2

02

1

Tr

n H

nh N

hi

(15)

TẠO LẬP TIẾN TRÌNH

 Các tình :

 Khởi động batch job  User logs on

 Kích hoạt service (print )

 Process gọi hàm tạo tiến trình khác

 Các tiến trình tạo tiến trình con,

hình thành tiến trình hệ thống

 Các tiến trình tạo thừa

hưởng tài nguyên từ cha, hay cấp tài nguyên

04

/19

/2

02

1

Tr

n H

nh N

hi

(16)

KẾT THÚC TIẾN TRÌNH

 Tình :

 Tiến trình xử lý xong lệnh cuối hay gọi exit ()  Kết thúc Batch job , Halt instruction

 User logs off

 Do lỗi chương trình

 Một tiến trình kết thúc tiến trình khác

nếu có ID (định danh) tiến trình

 Ví dụ: kill –-s SIGKILL 1234: huỷ tiến trình có ID

1234

04

/19

/2

02

1

Tr

n H

nh N

hi

(17)

MÔ HÌNH ĐA TIẾN TRÌNH (MULTIPROCESSES)

 Hệ thống tập tiến trình hoạt

động đồng thời

 Các tiến trình độc lập với => khơng có

sự trao đổi thơng tin hiển nhiên

04

/19

/2

02

1

Tr

n H

nh N

hi

winword

Visual C CDplayer Excel

(18)

VÍ DỤ MÔ HÌNH ĐA TIẾN TRÌNH

 Giờ thi lý thuyết mơn Hệ Điều hành

 Mỗi sinh viên tiến trình :

 Cùng làm => Hoạt động đồng hành

 Có thi , bút, giấy…riêng => Tài nguyên riêng biệt  Độc lập => Không trao đổi (về nguyên tắc)

 Thực hành môn Hệ Điều hành

 sinh viên/nhóm  Hợp tác đồng hành  Nhu cầu trao đổi

 Dùng tài nguyên chung

04

/19

/2

02

1

Tr

n H

nh N

hi

(19)

MÔ HÌNH ĐA TIỂU TRÌNH (MULTITHREADS)

 Nhiều tình cần có nhiều dịng xử lý

đồng thời hoạt động không gian địa => chia sẻ tài nguyên

(server, OS, chương trình tính tốn song song : nhân ma trận…)

 Khái niệm : tiểu trình (thread)

04

/19

/2

02

1

Tr

n H

nh N

hi

(20)

VÍ DỤ MÔ HÌNH ĐA TIỂU TRÌNH

Thực hành mơn Hệ Điều hành

Mỗi nhóm sinh viên tiến

trình :

Mỗi sinh viên tiểu trình

Cùng làm => Hoạt động đồng hành

Cóù thực hành chung => Tài nguyên

chung

Trao đổi với

04

/19

/2

02

1

Tr

n H

nh N

hi

(21)

TIỂU TRÌNH VS TIẾN TRÌNH

 Tiểu trình : dịng xử lý

 Tiến trình :

 khơng gian địa  nhiều tiểu trình

 Các tiến trình độc lập

 Các tiểu trình

tiến trình khơng có bảo vệ lẫn (cần thiết ? )

04

/19

/2

02

1

Tr

n H

nh N

hi

P1

int a;

T1 T2 T

(22)

TIỂU TRÌNH HẠT NHÂN (KERNEL THREAD)

 Khái niệm tiểu trình xây dựng bên hạt

nhaân

 Đơn vị xử lý tiểu trình

 Ví dụ :

04

/19

/2

02

1

Tr

n H

nh N

hi

T1 T2

Kernel Thread System call

(23)

PHAÂN CHIA CPU ?

 CPU vật lý : làm để tạo ảo giác

tiến trình sở hữu CPU riêng ?  Luân chuyển CPU tiến trình

 thành phần đảm nhiệm vai trị điều phối:

 Scheduler chọn tiến trình  Dispatcher chuyển CPU cho

tiến trình chọn

(24)

CÁC DANH SÁCH TIẾN TRÌNH

04

/19

/2

02

1

Tr

n H

nh N

hi

Ready List P1 P4 P5

Waiting Lists

R1 P2 P7

P10 P3

(25)

SCHEDULER - NHIỆM VỤ

 Ra định chọn tiến trình để cấp

phát CPU :

 Ứng cử viên = {Các tiến trình ready list}  tiến trình : CPU rảnh rỗi (idle)!

 tiến trình : khơng cần suy nghĩ nhiều,

khoâng ?

 >1 : chọn ?  Cần có thuật tốn điều

phoái

04

/19

/2

02

1

Tr

n H

nh N

hi

(26)

DISPATCHER - NHIỆM VỤ

 Nhiệm vụ Dispatcher: Chuyển đổi ngữ cảnh

 Xét ví dụ

 Tiến trình A dùng CPU chút bị HĐH thu hồi

CPU

 HĐH cấp CPU cho B dùng chút, HĐH thu hồi lại

CPU

 HĐH cấp CPU trở lại cho A

 Giá trị ghi lần chuyển đổi CPU ?

 Kịch :

 Lưu ngữ cảnh tiến trình hành

04

/19

/2

02

1

Tr

n H

nh N

hi

(27)

04

/19

/2

02

1

Tr

n H

nh N

hi

(28)

DISPATCHER - THẢO LUẬN

 Bản thân HĐH phần mềm, nghĩa sử

dụng CPU để chạy

 Câu hỏi: Khi tiến trình A chiếm CPU, làm

nào HĐH thu hồi CPU lại ? (vì lúc HĐH không giữ CPU)

 Ép buộc NSD trả CPU lại cho HĐH ? Có khả

thi ?

 Máy tính phải có CPU, dành riêng cho HĐH ?

 HĐH sử dụng ngắt đồng hồ (ngắt điều phối) để kiểm sốt

hệ thống

 Mỗi có ngắt đồng hồ, HĐH kiểm tra xem có cần thu hồi CPU từ

1 tiến trình lại hay không ?

04

/19

/2

02

1

Tr

n H

nh N

hi

(29)

LỰA CHỌN TIẾN TRÌNH ?

 Tác vụ Scheduler

 Mục tiêu ?

 Sử dụng CPU hiệu

 Đảm bảo tất tiến trình tiến triển xử

 Tiêu chuẩn lựa chọn ?

 Tất tiến trình ?

 Đề xuất độ ưu tiên cho tiến trình ?

 Thời điểm lựa chọn ? (Thời điểm kích hoạt

Scheduler())

04

/19

/2

02

1

Tr

n H

nh N

hi

(30)

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 )

  Hiệu suất Tài nguyên   Chi phí chuyển đổi

 Công ( Fairness): Tất tiến trình

04

/19

/2

02

1

Tr

n H

nh N

hi

(31)

HAI NGUYÊN TẮC ĐIỀU PHỐI CPU

04

/19

/2

02

1

Tr

n H

nh N

hi

Không độc quyền

while (true) {

interrupt Pcur

save state Pcur

Scheduler.NextP()  Pnext

load state pnext

resume Pnext Độc quyền

while (true) {

save state Pcur

Scheduler.NextP() Pnext

load state pnext

resume Pnext

wait for Pnext

(32)

THỜI ĐIỂM RA QUYẾT ĐỊNH ĐIỀU PHỐI

 Điều phối độc quyền (non-preemptive

scheduling): tiến trình chọn có quyền độc chiếm CPU

 Các thời điểm kích hoạt Scheduler

 P cur kết thúc  P

cur : running ->blocked

 Điều phối không độc quyền (preemptive

scheduling): tiến trình chọn bị  cướp CPU tiến trình có độ ưu tiên cao

 Các thời điểm kích hoạt Scheduler

 P

cur kết thúc

P : Running -> Blocked

04

/19

/2

02

1

Tr

n H

nh N

hi

(33)

ĐÁNH GIÁ CHIẾN LƯỢC ĐIỀU PHỐI

 Sử dụng đại lượng đo :

 Turn- around time = Tquit –Tarrive: từ lúc vào HT

đến hoàn tất

 Waiting time = T in Ready

 Xét trường hợp trung bình

 N tiến trình

 Avg Turn- around time = (Σ Turn- around time Pi )/N

 Avg Waiting time = (Σ Waiting time Pi )/N

04

/19

/2

02

1

Tr

n H

nh N

hi

(34)

CÁC CHIẾN LƯỢC ĐIỀU PHỐI

04

/19

/2

02

1

Tr

n H

nh N

hi

FIFO (FCFS)

Xoay vòng (Round Robin)

Theo độ ưu tiên

Công việc ngắn (SJF)

(35)

FCFS (FIRST COMES FIRST SERVED)

04

/19

/2

02

1

Tr

n H

nh N

hi

 Tiến trình vào RL lâu

nhất chọn trước

 Theo th t vaøo RLứ ự  Độc quy nề

A B

C CPU

Ready List

CPU

B C

Ready List

CPU

C

(36)

MINH HOÏA FCFS

04

/19

/2

02

1

Tr

n H

nh N

hi

P TarriveRL CPU burst

P1 0 24

P2 1 3

P3 2 3

P TT WT

P1 24 0

P2 27-1 24-1

P3 30-2 27-2

0: P1 vào RL 24: P1 kết thúc

AvgWT = (23+25)/3 = 16

P1 P2 P3

(37)

NHẬN XÉT FCFS

 Đơn giản

 Chịu đựng tượng tích lũy thời gian chờ

 Tiến trình có thời gian xử lý ngắn đợi tiến trình

có thời gian xử lý dài

 Ưu tiên tiến trình cpu-bounded

 Có thể xảy tình trạng độc chiếm CPU

04

/19

/2

02

1

Tr

n H

nh N

hi

(38)

ĐIỀU PHỐI ROUND ROBIN (RR)

04

/19

/2

02

1

Tr

n H

nh N

hi

A B

C CPU

Ready List

A chiếm CPU q ms

B C

A CPU

Ready List

B giao quyền sử dụng CPU trong q ms kế tiếp

Ready List

Điều phối theo nguyên tắc FCFS

Mỗi tiến trình sử dụng lượng q cho

mỗi lần sử dụng CPU Quantum/

(39)

MINH HOÏA RR, Q=4

04

/19

/2

02

1

Tr

n H

nh N

hi

39 P TarriveRL CPU burst

P1 0 24

P2 1 3

P3 2 3

P TT WT

P1 30 0+(10-4)

P2 7-1 4-1

P3 10-2 7-2

AvgWT = (6+3+5)/3 = 4.66

P1 P2 P3 P1 P1 P1 P1 P1

0 4 7 10 14 18 22 26 30 0:00 P1 vào, P1 dùng CPU

0:01 P2 vào (đợi) 0:02 P3 vào (đợi)

(40)

MINH HOÏA RR, Q=4

04

/19

/2

02

1

Tr

n H

nh N

hi

P TarriveRL CPU burst

P1 0 24

P2 4 3

P3 12 3

P1 P1 P2 P1 P3 P1 P1 P1

0 4 8 11 15 18 22 26 30 RL

0:00 P1 0:8 P2 P1

?

Tranh chấp vị trí RL :

“Chung thuûy”

1. P : running -> ready

2. P : blocked -> ready

3. P: new ->ready

Không phải luôn có thứ

tự điều phối P1 P2 P3 P4P1 P2 P3 P4

0:11 P1

(41)

ROUND ROBIN

 Khi kết thúc lượt sử dụng CPU

 Hết thời lượng q ms (quantum) cho phép  Tiến trình kết thúc

 Tiến trình bị khóa

 Ch Rsờ

 Ch bi n cờ ế ố

04

/19

/2

02

1

Tr

n H

nh N

hi

(42)

ROUND ROBIN – NHẬN XÉT

 Sử dụng chế không độc quyền

 Mỗi tiến trình khơng phải đợi q lâu

 Loại bỏ tượng độc chiếm CPU

 Hiệu ?

Phụ thuộc vào việc chọn lựa quantum q

q quaùù l n ???ớ  q quaù nh ???

04

/19

/2

02

1

Tr

n H

nh N

hi

Bao lâu ?

Giảm tíùnh tương tác

(43)

ĐIỀU PHỐI VỚI ĐỘ ƯU TIÊN

04

/19

/2

02

1

43

Tr

n H

nh N

hi

Phân bi t ti n trình quan tr ng >< ti n trình bình thệ ế ế ường?

WinAmp

độ ưu tiên: cao (3)

Outlook

độ ưu tiên: thấp (-3)

WinWord

độ ưu tiên: trung bình (0)

Đ

ộ ư

u

ti

ên

(44)

ĐIỀU PHỐI VỚI ĐỘ ƯU TIÊN

 Cách tính độ ưu tiên?

 Hệ thống gán: CPU times,…  Người dùng gán tường minh

 Tính chất độ ưu tiên :

 Tĩnh  Động

04

/19

/2

02

1

Tr

n H

nh N

hi

(45)

VÍ DỤ: ĐỘ ƯU TIÊN CỦA HĐH WINNT

 WinNT gán cho tiến trình độ ưu tiên có giá

trị & 31

 (độ ưu tiên nhỏ nhất): dành riêng cho trạng thái

system idle

 Độ ưu tiên phân theo nhóm:  Realtime : (16 - 31)

 Thích hợp cho tiến trình thời gian thực

 Dành riêng cho tiến trình người quản trị hệ thống  Dynamic : (0 - 15)

 Thích hợp cho tiến trình người dùng thường  Chia thành mức :

high (11 - 15)normal (6 - 10)

04

/19

/2

02

1

Tr

n H

nh N

hi

(46)

BIỂU ĐỒ PHÂN BỐ ĐỘ ƯU TIÊN CỦA WINNT 04 /19 /2 02 Tr n H nh N hi ầ 24 realtime 13 high 8 normal dynamic time-critical realtime idle realtime time-critical 15 dynamic levels 1-15 16 31 realtime levels 16-31 lowest (-2) below normal (-1)

normal (0) above normal (+1)

highest (+2)

(47)

NGUYÊN TẮC ĐIỀU PHỐI

 Độc quy nề

 L t s d ng CPU k t thuùc khi: ượ ụ ế

 ti n trình k t thúc,ế ế  ti n trình b khóaế ị

 Không c quy nđộ ề

 L t s d ng CPU k t thuùc khi: ượ ụ ế

 ti n trình k t thúc, ế ế  ti n trình b khóa, ế ị

 cóti n trình với u tiên cao h n vào RLế độ

04

/19

/2

02

1

Tr

n H

nh N

hi

(48)

ĐỘ ƯU TIÊN – KHÔNG ĐỘC QUYỀN

04

/19

/2

02

1

Tr

n H

nh N

hi

P TRL Priority CPU burst

P1 0 0 24

P2 1 2 3

P3 2 1 3

P TT WT

P1 30 0+(7-1)

P2 4-1 0

P3 7-2 4-2

AvgWT = (6+0+2)/3 = 2.66

0: P1 vào, P1 dùng CPU

1: P2 vào (độ ưu tiên cao P1) P2 dành quyền dùng CPU

4: P2 kết thúc, P3 dùng CPU 7: P3 dừng, P1 dùng CPU 30: P1 dừng

P1 P3 P1

0 30

P2

4

1 7

P2

(49)

ĐỘ ƯU TIÊN - KHÔNGĐỘC QUYỀN - NHẬN XÉT

 Số phận tiến trình có độ ưu tiên thấp?

 Chờ lâu, lâu, lâu

 Giải quyết: tăng độ ưu tiên cho tiến trình chờ lâu hệ thống (Aging)

04

/19

/2

02

1

Tr

n H

nh N

hi

(50)

SHORTEST JOB FIRST (SJF)

04

/19

/2

02

1

Tr

n H

nh N

hi

P3

(cần chu kỳ)

P1

(cần chu kỳ)

P2

(cần chu kỳ) Ngắn

Ready List

CPU

p = thời_gian_còn_lại(Process )

(51)

MINH HỌA SJF (ĐỘC QUYỀN)(1)

04

/19

/2

02

1

Tr

n H

nh N

hi

P TarriveRL CPU burst

P1 0 24

P2 1 3

P3 2 3

P TT WT

P1 24 0

P2 27-1 24-1

P3 30-2 27-2

AvgWT = (23+25)/3 = 16

0:00 P1 vào, P1 dùng CPU 0:01 P2 vào RL

0:24 P1 kết thúc, P2 dùng CPU 0:27 P2 dừng, P3 dùng CPU

P1 P2 P3

(52)

MINH HỌA SJF (ĐỘC QUYỀN)(2)

04

/19

/2

02

1

Tr

n H

nh N

hi

P TarriveRL CPU burst

P1 0 24

P2 1 3

P3 1 2

P TT WT

P1 24 0

P2 29-1 26-1

P3 26-1 24-1

AvgWT = (24+22)/3 = 15.33

0:00 P1 vào, P1 dùng CPU 0:24 P1 kết thúc, P3 dùng CPU

P1 P3 P2

(53)

MINH HỌA SJF (KHÔNGĐỘC QUYỀN) (1)

04

/19

/2

02

1

Tr

n H

nh N

hi

P TarriveRL CPU burst

P1 0 24

P2 1 3

P3 2 3

P TT WT

P1 30 0+(7-1)

P2 4-1 0

P3 7-2 4-2

AvgWT = (6+0+2)/3 = 2.66

0:00 P1 vào, P1 dùng CPU

0:01 P2 vào (độ ưu tiên cao P1)

0:4 P2 kết thúc, P3 dùng CPU 0:7 P3 dừng, P1 dùng CPU

P1 P3 P1

0 30

P2

4

(54)

MINH HỌA SJF (KHÔNGĐỘC QUYỀN) (2) 04 /19 /2 02 Tr n H nh N hi ầ

P TarriveRL CPU burst

P1 0 24

P2 1 5

P3 3 4

P TT WT

P1 33 0+(10-1)

P2 5 0

P3 7 6-3

AvgWT = (9+0+3)/3 = 4

0:00 P1 vào, P1 dùng CPU

0:01 P2 vào (độ ưu tiên cao P1) P2 dành quyền dùng CPU

0:6 P2 kết thúc, P3 dùng CPU 0:10 P3 dừng, P1 dùng CPU 0:33 P1 dừng

P1 P3 P1

(55)

MINH HOÏA SJF (NHIỀU CHU KỲ CPU) 04 /19 /2 02 Tr n H nh N hi ầ 55 P TarriveRL CPU1

burst IO1 R IO1 T CPU2 burst IO2 R IO2 T

P1 0 5 R1 2 2 R2 2

P2 2 1 R1 10 1 R1 4

P3 10 8 R2 1 0 Null 0

(56)

ĐIỀU PHỐI VỚI NHIỀU MỨC ƯU TIÊN

04

/19

/2

02

1

Tr

n H

nh N

hi

 Tổ chức N RL

ứng với nhiều mức ưu tiên

 Mỗi RLi áp dụng

một chiến lược điều phối thích hợp

 Giữa RL áp

dụng điều phối theo độ ưu tiên :

Đ u tiênộ ư

1

2 n

C

P

(57)

KHUYẾT ĐIỂM

04

/19

/2

02

1

Tr

n H

nh N

hi

 Starvation !!!

 Giải pháp Aging :

 Chờ lâu : chuyển lên

RL với độ ưu tiên cao

 Chiếm CPU lâu :

chuyển xuống RL với độ ưu tiên thấp

 

2

 

1CPU

Ch lâu quáờ

(58)

Tiến trình

Thời điểm vào Ready

list

CPU1

IO laàn 1

CPU2

IO lần 2 Thời

gian

Thiết bị

Thời gian

Thiết

P1 0 8 5 R1 1 0 Null

P2 2 1 8 R2 2 5 R1

P3 10 6 5 R1 2 3 R2

Bài tập: Hãy điều phối

Ngày đăng: 20/04/2021, 01:50

Tài liệu cùng người dùng

Tài liệu liên quan