Cau 7-8

Câu 8: Khái niệm về lập lịch cho CPU, các phương pháp lập lịch cho CPU và các tiêu chuẩn đánh giá

Lập lịch cho CPU có nghĩa là tổ chức 1 hàng đợi các tiến trình sẵn sàng để phân phối giờ CPU cho chúng dựa trên độ ưu tiên của các tiến trình sao cho hiệu suất sử dụng CPU là tối ưu nhất

Các phương pháp lập lịch cho CPU: vì các tiến trình diễn ra trong hệ thống là ngẫu nhiên do đó ko có thuật toán lập lịch tối ưu mà chỉ có những thuật toán tốt đối với những dạng tiến trình nào đó. Các phương pháp lập lịch thường được áp dụng là:

+ Long-term sheduler: áp dụng với những tiến trình đã được lập danh sách và spooling

+ Short-term sheduler: Áp dụng với những tiến trình mà mã nguồn của nó đã được đẩy vào bộ nhớ trong (tiến trình đã sẵn sàng nhận giờ phân bổ CPU)

+ Medium-term sheduler: áp dụng với những tiến trình có thao tac swaping (những tiến trình đã thực hiện 1 lần sau đó đưa ra ngoài)

Yếu tố để đánh giá các phương pháp lập lịch:

+ Sự công bằng: mỗi tiến trình dù sớm hay muộn cũng phải được phân phối giờ CPU

+ Tận dụng giờ CPU: thời gian vô ích của CPU càng it càng tốt. Khi đó hệ số throuthput của hệ thống cao (số lượng tiến trình được phục vụ trong 1 đơn vị thời gian nhiều)

+ Tổng thời gian thực hiện tiến trình: được tính từ khi tiến trình bắt đầu cho đến khi tiến trình kết thúc

+ Thời gian tiến trình chờ được xử lý trong hàng đợi

+ Thời gian đáp ứng: khi tiến trình hoạt động trong hệ thống, nó cần dùng giờ CPU nhiều lần. Mỗi lần cần dùng giờ CPU tiến trình sẽ đưa ra 1 yêu cầu, như vậy thời gian tính từ khi tiến trình yêu cầu giờ CPU tới khi nó được hệ thống phân bổ gọi là thời gian đáp ứng

Câu 11: trình bày các cấu trúc cơ bản của chương trình ?

Có nhiều phương pháp tổ chức chương trình ở bộ nhớ trong để thực hiện. Các phương pháp này khác nhau ở kiểu định vị chương trình trong bộ nhớ và thời điểm thực hiện phép ánh xạ địa chỉ tương đối thành địa chỉ tuyệt đối.

Cấu trúc 1 chương trình thể hiện cách quản lý bộ nhớ logic và cho ta thấy hình ảnh của chương trình ở bộ nhớ vật lý khi thực hiện. Mỗi chương trình có thể có các dạng cấu trúc sau: Cấu trúc tuyến tính, cấu trúc động, cấu trúc overlay, cấu trúc phân đoạn, cấu trúc phân trang.

- Cấu trúc tuyến tính: là cấu trúc mà sau khi biên dịch, các modul được tập hợp thành 1 modul cụ thể, chứa đầy đủ mọi thông tin để có thể hoạt động (trự dữ liệu vào); mọi biến ngoài đều được gán giá trị cụ thể. Khi thực hiện chỉ cần định vị 1 lần vào bộ nhớ

+ Ưu điểm: đơn giản, dễ tổ chức biên dịch và đình vị, thời gian thực hiện nhanh, có tính lưu động cao, dễ dàng sao chép chương trình tới các hệ thống khác có cùng tập mã lệnh mà vẫn duy trì khả năng thực hiện

+ Nhược điểm: lãng phí bộ nhớ, mức lãng phí tỉ lệ với kích thước chương trình

- Cấu trúc động: Các modul chương trình được biên tập 1 cách riêng biệt, khi thực hiện chương trình hệ thống chỉ cần định vị modul gốc. Trong qua trình thực hiện cần tới modul nào thì hệ thống cấp phát ko gian nhớ và cấp phát tiếp modul đó. Khi hoạt động xong thì giải phóng modul khỏi bộ nhớ, thu hội ko gian nhớ

+ Ưu điểm: Nếu quản lý bộ nhớ và tổ chức tốt chương trình sẽ tiết kiệm bộ nhớ, kích thước bộ nhớ ko phụ thuộc kích thứơc chương trình

+ Nhược điểm: việc nạp và xoá modul do nguời sử dụng đảm nhiệm dẫn đến kích thước chương trình nguồn lớn và người sử dụng phải nắm vững cấu trúc chương trình và công cụ điều khiển bộ nhớ của hệ điều hành

- Cấu trúc Overlay: Khi thực hiện chương trình modul gốc được định vị vào bộ nhớ như chương trình có cấu trúc tuyến tính. Cần tới modul nào, hệ thống sẽ tìm kiếm trong sơ đồ Overlay và nạp vào bộ nhơ tương ứng

+ Ưu điểm: cấu trúc Overlay có tính định vị động do đó cho phép xử dụng bộ nhớ nhiều hơn phần bộ nhớ mà hệ thống dành cho chương trình. Mắt khác cấu trúc Overlay vẫn mang tính chất tĩnh, nó ko thay đổi trong tất cả những lần thực hiện chương trình. Đồng thời nó ko gắn cố định vào chương trình nên chỉ đòi hỏi người xử dụng cung cấp những thông tin đơn giản và quan nhất

+ Nhược điểm: vẫn yêu cầu người sử dụng cung cấp những thông tin phụ, hiệu quả tiết kiệm bộ nhớ vẫn phụ thuộc cách tổ chức, bố trí modul chương trình

- Cấu trúc phân đoạn: Chương trình của người sử dụng được biên dịch thành từng modul độc lập. Thông tin về các modul được chứa trong 1 bảng điều khiển được gọi là bảng quản lý doạn. Trong bảng quản lý đoạn còn chứa các thông tin trợ giúp việc định vị các modul vào bộ nhớ

+ Ưu điểm: dễ sử dụng và khi dung lượng bộ nhớ tăng thì tốc độ thực hiện chương trình cũng tăng

+ Nhược điểm: hiệu quả của việc sử dụng bộ nhớ phụ thuộc vào cách phân chia chương trình thành các modul độc lập. Mặt khác chương trình có cấu trúc phân đoạn chỉ áp dụng được khi bộ nhớ quản lý theo kiểu phân đoạn

- Cấu trúc phân trang: Chương trình được biên dịch như cấu trúc tuyến tính sau đó được phân chia thành các phần bằng nhau gọi là trang. Thông tin về các trang được chứa trong 1 bảng điều khiển gọi là bảng quản lý trang. Mỗi phần tử trong bảng quản lý trang tương ứng với 1 trang trong chương trình của người sử dụng

+ Ưu điểm: Cấu trúc phân trang phát huy được hiệu quả sử dụng bộ nhớ

+ Nhược điểm: Chương trình chỉ áp dụng đối với bộ nhớ được quản lý theo kiểu phân trang

Bạn đang đọc truyện trên: TruyenTop.Vip

Tags: #nts