Round robin nghĩa là gì

Hôm nay ra tiếp tục với một thuật giải định thời CPU khác, đó là Round Robin [RR].Bạn đang xem: Round robin là gì

Đối với thuật giải RR, mỗi tiến trình trước khi bắt đầu được đưa vào CPU xử lý, sẽ được cấp phát cho một đơn vị thời gian chiếm dụng CPU nhất định.

Bạn đang xem: Round robin là gì

Ta gọi chung giá trị hằng số này với cái tên là quantum. Điểm khác biệt của RR với FCFS đó là RR tuân thủ theo cơ chế không độc quyền [preemtive].

Xem thêm: Sự Khác Nhau Giữa Quốc Gia Và Vùng Lãnh Thổ Là Gì, Các Bộ Phận Của Lãnh Thổ Quốc Gia



Nếu gọi n là số tiến trình có trong Ready list, thời gian quantum là q, như vậy mỗi tiến trình sẽ có một khoảng thời gian là


để sử dụng CPU.

Để hình dung rõ ràng, ta sẽ xét 2 ví dụ sau đây.

ProcessArrival TimeBurst Time
P1024
P213
P323

Với bảng dữ liệu trên, ta biết thêm được quantum time=4. Như vậy, để tính toán thuận tiện, ta cũng tiếp tục sử dụng giản đồ Gantt:



Với giản đồ Gantt này, ta có thể tính được: Thời gian xử lý: P1=24, P2=3 và P3= 3. Thời gian đợi lần lượt:+ P1 đợi 0 + [10-4] [ms].+ P2 đợi 4-1=3 [ms].+ P3 đợi 7-2=5 [ms]. Thời gian hoàn tất tiến trình:+ P1: 30 [ms].+ P2: 6 [ms].+ P3: 8 [ms]. Thời gian trung bình: AvgWT = [6+3+5]/3 = 4.66

Các bạn có thể xem chi tiết ở đây



Loại bỏ hiện tượng độc chiếm CPU Phù hợp với hệ thống tương tác người dùng Hiệu quả ? Phụ thuộc vào việc lựa chọn quantum q+ q quá lớn => FCFS [giảm tính tương tác]+ q quá nhỏ => chủ yếu thực hiện chuyển đổi ngữ cảnh [context switching]+ Thường q = 10-100 milliseconds Một độ ưu tiên [integer] được gán vào mỗi tiến trình Phân biệt tiến trình quan trọng với tiến trình bình thường Tiêu chí lựa chọn tiến trình

+ Vấn đề Starvation: các tiến trình độ ưu tiên thấp có thể không bao giờ thực thi được+ Giải pháp Aging tăng độ ưu tiên cho tiến trình chờ lâu trong hệ thống [sống lâu lên lão làng]

nếu 2 process vào hàng đợi cùng 1 lúc trong chiến lược điều phối Round Robin thì tiêu chí gì để quyết định process nào đc chọn trcnếu 1 process trong chiến lược điều phối Round Robin vừa chạy xong 1 chu kỳ tại thời điểm x và tại thời điểm x này xuất hiện 1 process mới vào hàng đợi, vậy process nào sẽ đứng trước process nào

Video liên quan

Chủ Đề