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

BÀI TẬP LỚN Lập lịch CPU

60 1,4K 1

Đ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

Định dạng
Số trang 60
Dung lượng 373 KB

Nội dung

Lập lịch CPU khi 1 và 4 không được ưu tiên trước: - Không có sự lựa chọn: phải chọn một tiến trình mới để thực hiện - Khi một tiến trình được phân phối CPU, nó sử dụng CPU cho đến khi gi

Trang 1

BÀI TẬP LỚN

Đề tài:

Lập lịch CPU

Trang 4

Nội dung

I/ Các khái niệm cơ bản

II/ Các tiêu chuẩn lập lịch III/ Các giải thuật lập lịch IV/ Lập lịch multiprocessor V/ Lập lịch thời gian thực VI/ Lựa chọn giải thuật

VII/ Ngắt

Trang 5

I/ Các khái niệm cơ bản

2 Chu kỳ sử dụng CPU-I/O

3 Bộ định thời CPU

4 Định thời biểu trưng dụng

Trang 6

1 Khái niệm giờ CPU

 Giờ CPU là thời gian mà CPU phục vụ cho tiến trình hoạt động.

 Tại mỗi thời điểm nhất định, chỉ có một tiến trình được phân phối giờ CPU hoạt động

Trang 7

I/ Các khái niệm cơ bản

1 Khái niệm giờ CPU

3 Bộ định thời CPU

4 Định thời biểu trưng dụng

5 Bộ phân phát

Trang 8

2/ Chu kỳ sử dụng CPU-I/O

Trang 9

I/ Các khái niệm cơ bản

1 Khái niệm giờ CPU

2 Chu kỳ sử dụng CPU-I/O

4 Định thời biểu trưng dụng

5 Bộ phân phát

Trang 10

3/ Bộ định thời CPU

- Mỗi khị CPU rỗi, HĐH cần chọn trong số các tiến trình đã sẵn sàng thực hiện trong bộ nhớ (ready queue), và phân phối CPU cho một trong số đó.

- Tiến trình được thực hiện bởi trình lập ngắn chu kỳ (short-temr scheduler, CPU scheduler)

Trang 11

I/ Các khái niệm cơ bản

1 Khái niệm giờ CPU

2 Chu kỳ sử dụng CPU-I/O

3 Bộ định thời CPU

Trang 12

4.Bộ định thời biểu trưng dụng

Các quyết định lập lịch CPU có thể xảy khi

một tiến trình:

 Chuyển từ trạng thái chạy sang trạng thái chờ

 Chuyển từ trạng thái chạy sang trạng thái sẵn

sàng

 Chuyển từ trạng thái đợi sang trạng thái sẵn

sàng

 Kết thúc

Trang 13

Lập lịch CPU khi 1 và 4 không được ưu tiên trước:

- Không có sự lựa chọn: phải chọn một tiến trình mới để thực hiện

- Khi một tiến trình được phân phối CPU, nó sử dụng CPU cho đến khi giải phóng CPU bằng cách kết thúc hoặc

chuyển sang trạng thái chờ

- Các tiến trình sẵn sàng nhường điều khiển của CPU

4.Bộ định thời biểu trưng dụng

Trang 14

Lập lịch CPU khi 2 và 3 được ưu tiên trước:

- Khi 2: tiến trình đá bật CPU ra Cần phải chọn tiến trình kế tiếp.

- Khi 3: tiến trình có thể đá bật tiến trình khác ra

khỏi CPU.

4.Bộ định thời biểu trưng dụng

Trang 15

Nội dung

I/ Các khái niệm cơ bản

II/ Các tiêu chuẩn lập lịch

III/ Các giải thuật lập lịch IV/ Lập lịch multiprocessor V/ Lập lịch thời gian thực VI/ Lựa chọn giải thuật

VII/ Ngắt

Trang 16

II.Các tiêu chuẩn lập lịch

 CPU utilization (việc sử dụng CPU)

 Throughput (thông lượng)

 Turnaround time (thời gian hoàn thành)

 Waiting time (thời gian chờ)

 Responsen time (thời gian đáp ứng)

Trang 17

VII/ Ngắt

Trang 18

III.Các giải thuật lập lịch

1.Định thời đến trước được phục vụ trước (firt-come,first-served)

2.Định thời biểu công việc ngắn nhất trước

(shortest-job-first).

3.Định thời theo độ ưu tiên

4.Định thời luân phiên.

5.Định thời biểu với hàng đợi nhiều cấp.

6.Định hàng đợi phản hồi đa cấp.

Trang 20

 Nếu thời gian thực hiện tiến trình tăng thì thời gian chờ đợi trung bình sẽ tăng theo

 Khi có tiến trình dài, ít bị ngắt thì các tiến trình khác phải chờ đợi lâu hơn

Vd: Cho dãy tiến trình với thời

Trang 21

Nếu các quá trình đến theo thứ tự P1,P2,P3 và

đc phục vụ theo thứ tự FCFS, chúng ta nhận được kết quả:

 Thời gian chờ của các tiến trình:

1.Định thời đến trước phục vụ trước

Trang 22

Nếu các tiến trình đến theo thứ tự:

P2 , P3 , P1

 Biểu đồ Gantt của lập lịch như sau:

 Thời gian chờ đợi các tiến trinh:

Trang 23

III.Các giải thuật lập lịch

1.Định thời đến trước được phục vụ trước come,first-served )

(firt-2.Định thời biểu công việc ngắn nhất trước (shortest-job-first)

3.Định thời theo độ ưu tiên

4.Định thời luân phiên

5.Định thời biểu với hàng đợi nhiều cấp

6.Định hàng đợi phản hồi đa cấp

Trang 24

• Nhanh chóng loại bỏ các tiến trình ngắn

• Giảm số lượng tiến trình trong hàng đợi

Nhược điểm:Chế độ phân phối lại giờ CPU được áp

dụng trong trường hợp ngắt các tiến trình có thể không hợp lý

Trang 25

- Không ưu tiên trước.

- Có ưu tiên trước.

2.Định thời biểu công việc ngắn trước phục

vụ trước

Trang 27

Ví dụ SJF có ưu tiên trước

Trang 28

Xác định thời gian sử dụng CPU

so hang mot

là 4.

1 0

, 3.

theo tiep

CPU dung

su cho doan

du tri gia

2.

thun CPU

dung

su cua te gian thuc thoi

1.

0 1

0 1

t t t

t

n n

n n

α α

τ

Trang 29

Minh họa khi α =1/2 và τ0 =10

Trang 30

III.Các giải thuật lập lịch

1.Định thời đến trước được phục vụ trước come,first-served)

(firt-2.Định thời biểu công việc ngắn nhất trước

(shortest-job-first)

3.Định thời theo độ ưu tiên

4.Định thời luân phiên

5.Định thời biểu với hàng đợi nhiều cấp

6.Định hàng đợi phản hồi đa cấp

Trang 31

3.Bộ định thời mức ưu tiên

Một số tiến trình được gắn một số ưu tiên

CPU được phân phối cho tiến trình có mức ưu tiên cao nhất (có số ưu tiên nhỏ nhất )

SJF là trường hợp riêng của lập lịch theo mức

ưu tiên: mức ưu tiên chính là thời gian sử dụng CPU tiếp sau dự đoán được.

Vấn đề gặp phải là: những tiến trình có mức ưu

tiên thấp có thể ko bao giờ được thực hiện.

Giải pháp: kỹ thuật tăng mức ưu tiên của các tiến

trình chờ đợi lâu trong hệ thống.

Trang 32

Ví dụ

Quá trình Thời gian xử lý Độ ưu tiên P1 10 3

P2 1 1 P3 2 4 P4 1 5 P5 5 2

Thời gian chờ TB: (0+1+6+16+18)/5=8,2

3.Bộ định thời mức ưu tiên

Trang 33

III.Các giải thuật lập lịch

1.Định thời đến trước được phục vụ trước come,first-served)

(firt-2.Định thời biểu công việc ngắn nhất trước

(shortest-job-first) 3.Định thời theo độ ưu tiên

4.Định thời luân phiên

5.Định thời biểu với hàng đợi nhiều cấp

6.Định hàng đợi phản hồi đa cấp

Trang 34

4.Định thời luân phiên (Round-Robin (RR))

 Mỗi tiến trình sử dụng một lượng nhỏ thời gian của CPU,

thường là 10-100ms Sau đó nó được ưu tiên đưa vào cuối của hàng đợi.

 Hàng đợi được tổ chức dạng FIFO(FCFS)

 Nếu tiến trình có thời gian sử dụng CPU<q (q:định lượng thời gian) ⇒ Tiến trình sẽ tự nguyện nhường CPU khi kết thúc Trình lập lịch sẽ chọn tiến trình kế tiếp trong hàng đợi.

 Nếu tiến trình có thời gain sử dụng CPU>q ⇒ bộ định thời sẽ đếm lùi và gây mất HĐH kkhi nó =0 Việc chuyển ngữ cảnh được thực hiện và tiến trình hiện tại được đưa xuống cuối hàng đợi để nhường CPU cho tiến trình kế tiếp.

Trang 35

Quan hệ giữa q và hiệu năng

 Nếu q lớn ⇒ tương tự như FCFS

 Nếu q nhỏ ⇒ số lần chuyển ngữ cảnh càng nhiều, làm giảm hiệu năng.

4.Định thời luân phiên (Round-Robin (RR))

Trang 36

Hiển thị cách thời gian hoàn thành biến

đổi theo định mức thời gian

4.Định thời luân phiên(Round-Robin (RR))

Trang 37

- Thường xuyên phải phân phối lại giờ CPU

- Thời gian chờ đợi trung bình có thể lớn hơn so với FCFS

- Chú ý: Nên chọn giá trị q cho thích hợp

4.Định thời luân phiên

(Round-Robin (RR))

Trang 38

Vd: xét vd trên và giá trị time quantum q=4

Ta có sơ đồ grant biểu thị thứ tự ưu tiên thực hiện các tiến trình như sau:

Từ sơ đồ ta thấy thời gian chờ của các tiến trình là :

Trang 39

III.Các giải thuật lập lịch

1.Định thời đến trước được phục vụ trước come,first-served)

(firt-2.Định thời biểu công việc ngắn nhất trước

(shortest-job-first).

3.Định thời theo độ ưu tiên

4.Định thời luân phiên.

5.Định thời biểu với hàng đợi nhiều cấp.

6.Định hàng đợi phản hồi đa cấp.

Trang 40

5.Định thời với hàng đợi nhiều cấp

Được chia thành nhiều hàng đợi riêng lẻ:

-chạy ở chế độ giao tiếp (foreground hay interactive)

-chạy ở chế độ nền hay ạng bó(background hay batch)

Mỗi hàng đợi có giải thuật lập lịch riêng:

- foreground -RR

- background –FCFC

Phải có sự lập lịch giữa các hàng đợi:

-lập lịch với mức ưu tiên cố định

-paahn chia thời gian: mỗi hàng đợi nhạn được một lượng thời gain CPU nào đó mà nó có thể lập lịch các tiến trình của nó

Trang 41

5.Định thời với hàng đợi nhiều cấp

Trang 42

Nhược điểm :

• Khi có một tiến trình ở mức cao hơn cần thực hiện thì hệ thống phải ngắt tiến trình ở các mức thấp hơn để phục vụ tiến trình ở mức cao

• không sử dụng hết hiệu suất giờ CPU đựơc phân bổ

• Các tiến trình ở hàng đợi thứ hai hoạt động tính toán dựa trên nền của các tiến trình ở mức thứ nhất

• Sau khi thực hiện, tiến trình ở mức nào phải quay trở về mức

đó nếu chưa kết thúc

5.Định thời với hàng đợi nhiều cấp

Trang 43

III.Các giải thuật lập lịch

1.Định thời đến trước được phục vụ trước come,first-served)

(firt-2.Định thời biểu công việc ngắn nhất trước

(shortest-job-first).

3.Định thời theo độ ưu tiên

4.Định thời luân phiên.

5.Định thời biểu với hàng đợi nhiều cấp.

6.Định hàng đợi phản hồi đa cấp.

Trang 44

6.Lập lịch đa mức hàng đợi thông tin phản hồi

Một tiến trình có thể di chuyển giữa các hàng đợi.

Trình lập lịch đa mức hàng đợi thông tin phản hồi

được xác định bởi các tham số sau:

- Số lượng hàng đợi

- Giải thuật đinh thời cho mỗi hàng đợi

- Phương pháp được dùng để các định khi nâng cấp một

quá trình tới hàng đợi có độ ưu tiên cao hơn

- Phương pháp được dùng để các định khi nào chuyển

một quá trình tới hàng đợi có đọ ưu tiên thấp hơn

- Phương pháp được dùng để xác định hàng đợi nào một

quá trình sẽ đi vào và khi nòa qua trình đó cần phục vụ

Trang 45

Các hàng đợi phản hồi nhiều cấp:

6.Lập lịch đa mức hàng đợi thông tin phản hồi

Trang 46

Nội dung

I/ Các khái niệm cơ bản

II/ Các tiêu chuẩn lập lịch III/ Các giải thuật lập lịch

IV/ Lập lịch multiprocessor

V/ Lập lịch thời gian thực VI/ Lựa chọn giải thuật

VII/ Ngắt

Trang 47

- Đa sử lý ko đối xứng –asymmetric multiprocessing:

-chỉ có một processor truy nhập các cấu trúc dữ liệu hệ thống, làm giảm sự cần thiết bảo vệ dữ liệu chia sẻ

Trang 48

Nội dung

I/ Các khái niệm cơ bản

II/ Các tiêu chuẩn lập lịch III/ Các giải thuật lập lịch IV/ Lập lịch multiprocessor

V/ Lập lịch thời gian thực

VI/ Lựa chọn giải thuật

VII/Ngắt

Trang 49

V.Lập lịch theo thời gian thực

 Được chia làm hai loại:

 Hệ thồng thời thực cứng (hardware real-time systems) được yêu cầu để hoàn thành một tác vụ tới hạn trong lượng thời gian được đảm bảo.Khi tiến trình được gửi đến với lệnh cho biết thời gian cần thiết của nó,trình lập lịch có thể chấp nhận và đảm bảo nó kết thúc đúng thời hạn hoặc từ chối tiến trình

 Tính toán thời gian thực mềm (soft rsal_time computing) ít nghiêm khắc hơn.Nó yêu cầu các tiến trình tới hạn nhận độ ưu tiên cao hơn các qua trình khác.Có thể phân phối tài nguyên ko hợp lý,thời gain trễ, lâu hơn

→ phải cẩn thận trong thiết kế trình lập lịch và các khía cạnh liên quan của HĐH:

- lập lịch có ưu tiên, có tiến trình thời gian thực có mức ưu tiên cao nhất.

- trễ điều vận phải nhỏ.

Trang 50

Nội dung

I/ Các khái niệm cơ bản II/ Các tiêu chuẩn lập lịch III/ Các giải thuật lập lịch IV/ Lập lịch multiprocessor V/ Lập lịch thời gian thực

VI/ Lựa chọn giải thuật

VII/ Ngắt

Trang 51

VI.Lựa chọn giải thuật.

 Chọn giải thuật lập lịch CPU nào cho hệ thống cụ thể?

 Trước tiên xác sử dụng tiêu chuẩn nào?

1 Phân tích hiệu năng của từng giải thuật đối với các tiến trình

2 Sử dụng chuẩn hàng đợi:

Công thức Little: n = λ x w

n: độ dài queue trung bình

w: thời gian chờ đợi trng bình trong queue

λ: tốc độ đến queue của tiến trình (số tiến trình/giây)

3 Mô phỏng: lập trình mô hình hệ thống để đánh giá

4 Thực hiện: đặt giải thuật cụ thể trong hệ thống thực để đánh giá

Trang 52

Nội dung

I/ Các khái niệm cơ bản II/ Các tiêu chuẩn lập lịch III/ Các giải thuật lập lịch IV/ Lập lịch multiprocessor V/ Lập lịch thời gian thực VI/ Lựa chọn giải thuật

VII/ Ngắt

Trang 54

→ Ngắt là công cụ để chuyển điều khiển tới một tiến trình khác mà tiến trình hiện tại không biết.

Trang 56

3.Quy trình xử lý ngắt

Quy trình chung của xử lý ngắt:

- Ghi nhận đặc trưng của sự kiện gây ra ngắt vào ô nhớ quy định.

- Ghi nhận trạng thái của tiến trình bị ngắt ( bộ đếm chương trình, nội dung các thanh ghi, chế độ làm

việc…).

- Chuyển địa chỉ chương trình xử lý ngắt vào thanh ghi địa chỉ lệnh của CPU.

- Thực hiện chương trình xử lý sự kiện

- Khôi phục lại tiến trình bị ngắt.

Trang 57

Đề bài :

Cho dãy tiến trình với thời gian thực hiện tương ứng như sau:

process Thời gian xử lý

p 1 10

P 2 2

P 3 7

P 4 1

P 5 5

a Vẽ sơ đồ Grant theo các thuật toán FCFS, SJF, RR ( q=2)?

b Tính thời gian chờ đợi trung bình của các thuật toán Thuật toán nào có thời

gian chờ đợi trung bình ngắn nhất?

Bài tập ứng dụng

Trang 58

0 1 3 8 15 250

Ngày đăng: 14/04/2015, 09:00

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w