Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 93 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
93
Dung lượng
911,24 KB
Nội dung
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG BÀIGIẢNG MÔN HỆĐIỀUHÀNH Giảng viên: ThS. Nguyễn Thị Ngọc Vinh Bộ môn: Khoa học máy tính- Khoa CNTT1 Học kỳ/Năm biên soạn: I/ 2009 - 2010 www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 2 CHƢƠNG 4:QUẢNLÝTIẾNTRÌNH www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 3 1. Các khái niệm liên quan đến tiếntrình 2. Luồng (thread) 3. Điều độ tiếntrình 4. Đồng bộ hóa các tiếntrình đồng thời 5. Tình trạng bế tắc và đói NỘI DUNG www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 4 Tiếntrình là một chươngtrình đang trong quá trình thực hiện Tiếntrình đƣợc sinh ra khi chƣơng trình đƣợc tải vào bộ nhớ để thực hiện Tiếntrình ngƣời dùng Tiếntrìnhhệ thống I. CÁC KHÁI NIỆM LIÊN QUAN ĐẾN TIẾNTRÌNH 1. Tiếntrình là gì? ChươngtrìnhTiếntrình Thực thể tĩnh Thực thể động Không sở hữu tài nguyên cụ thể Được cấp một số tài để chứa tiếntrình và thực hiện lệnh www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 5 Phân biệt theo 2 trạng thái: chạy và không chạy => Không phản ánh đầy đủ thông tin về trạng thái tiếntrình => Mô hình 5 trạng thái: mới khởi tạo, sẵn sàng, chạy, chờ đợi, kết thúc I. CÁC KHÁI NIỆM LIÊN QUAN ĐẾN TIẾNTRÌNH 2. Trạng thái của tiếntrình Mới khởi tạo Sẵn sàng Chạy Kết thúc Chờ đợi Điều độ CPU Ngắt Vào/ra hoặc chờ sự kiện Kết thúc vào/ra Mới khởi tạo: tiếntrình đang đƣợc tạo ra Sẵn sàng: tiếntrình chờ đƣợc cấp CPU để thực hiện lệnh của mình Chạy: lệnh của tiếntrình đƣợc CPU thực hiện Chờ đợi: tiếntrình chờ đợi một sự kiện gì đó xảy ra (blocked) Kết thúc: tiếntrình đã kết thúc việc thực hiện nhƣng vẫn chƣa bị xóa www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 6 Đƣợc lƣu trong một cấu trúc dữ liệu gọi là khối quảnlýtiếntrình- PCB (Process Control Block) Các thông tin chính trong PCB: Số định danh của tiếntrình (PID) Trạng thái tiếntrình Nội dung một số thanh ghi CPU: Thanh ghi con trỏ lệnh: trỏ tới lệnh tiếp theo Thanh ghi con trỏ ngăn xếp Các thanh ghi điều kiện và trạng thái Các thanh ghi đa năng I. CÁC KHÁI NIỆM LIÊN QUAN ĐẾN TIẾNTRÌNH 3. Thông tin mô tả tiếntrình www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 7 PCB: Thông tin phục vụ điều độ tiến trình: mức độ ƣu tiên của tiến trình, vị trí trong hàng đợi, … Thông tin về bộ nhớ của tiếntrình Danh sách các tài nguyên khác: các file đang mở, thiết bị vào ra mà tiếntrình sử dụng Thông tin thống kê phục vụ quản lý: thời gian sử dụng CPU, giới hạn thời gian I. CÁC KHÁI NIỆM LIÊN QUAN ĐẾN TIẾNTRÌNH 3. Thông tin mô tả tiếntrình www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 8 Sử dụng bảng tiếntrình chứa con trỏ tới PCB của toàn bộ tiếntrình có trong hệ thống PCB của các tiếntrình cùng trạng thái hoặc cùng chờ 1 tài nguyên nào đó đƣợc liên kết thành 1 danh sách I. CÁC KHÁI NIỆM LIÊN QUAN ĐẾN TIẾNTRÌNH 4. Bảng và danh sách tiếntrìnhTiếntrình 1 Tiếntrình 2 Tiếntrình 3 Tiếntrình n …. Con trỏ tới bảng tiếntrình PCB 1 PCB n Bảng tiếntrình Đang chạy Sẵn sàng Chờ đợi đọc đĩa PCB PCB PCB PCB PCB PCB www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 9 1. Tạo mới tiến trình: Gán số định danh cho tiếntrình đƣợc tạo mới và tạo một ô trong bảng tiếntrình Tạo không gian nhớ cho tiếntrình và PCB Khởi tạo PCB Liên kết PCB của tiếntrình vào các danh sách quảnlý I. CÁC KHÁI NIỆM LIÊN QUAN ĐẾN TIẾNTRÌNH 3. Các thao tác với tiếntrình www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 10 2. Kết thúc tiến trình: Kết thúc bình thƣờng: yêu cầu HDH kết thúc mình bằng cách gọi lời gọi hệ thống exit() Bị kết thúc: Bị tiếntrình cha kết thúc Do các lỗi Yêu cầu nhiều bộ nhớ hơn so với số lƣơng hệ thống có thể cung cấp Thực hiện lâu hơn thời gian giới hạn Do quản trị hệ thống hoặc hệđiềuhành kết thúc I. CÁC KHÁI NIỆM LIÊN QUAN ĐẾN TIẾNTRÌNH 3. Các thao tác với tiếntrình [...]... Điều độ tiếntrình và điều độ dòng: Hệ thống trƣớc kia: tiếntrình là đơn vị thực hiện chính => điều độ thực hiện với tiếntrình Hệ thống hỗ trợ dòng: dòng mức nhân là đơn vị HDH cấp CPU => Sử dụng thuật ngữ điều độ tiếntrình rộng rãi điều độ dòng www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 29 III ĐIỀU ĐỘ TIẾNTRÌNH 2 Các dạng điều độ Điều. ..I CÁC KHÁI NIỆM LIÊN QUAN ĐẾN TIẾNTRÌNH 3 Các thao tác với tiếntrình 3 Chuyển đổi giữa các tiến trình: Thông tin vềtiếntrình hiện thời (chứa trong PCB) đƣợc gọi là ngữ cảnh (context) của tiếntrình Việc chuyển giữa tiếntrình còn đƣợc gọi là chuyển đổi ngữ cảnh Xảy ra khi: Có ngắt Tiếntrình gọi lời gọi hệ thống Trƣớc khi chuyển sang thực hiện tiếntrình khác, ngữ cảnh đƣợc lƣu vào... 1 Điều độ dài hạn: Điều độ trung hạn: Thực hiện khi mới tạo ra tiếntrình HDH quyết định tiếntrình có đƣợc thêm vào danh sách đang hoạt động? Ảnh hƣởng tới mức độ đa chƣơng trìnhĐiều độ dài hạn Quyết định tiếntrình có đƣợc cấp MEM để thực hiện? Điều độ ngắn hạn: Quyết định tiếntrình nào đƣợc cấp CPU để thực hiện Thực hiện với tiếntrình ở trạng thái sẵn sàng www.ptit.edu.vn Điều. .. NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 31 III ĐIỀU ĐỘ TIẾNTRÌNH 2 Các dạng điều độ (tt) 2 Điều độ có phân phối lại: HDH chủ động hơn, không phụ thuộc vào hoạt động của tiếntrình Đảm bảo chia sẻ thời gian thực sự Đòi hỏi phần cứng có bộ định thời gian và một số hỗ trợ khác Vấn đề quảnlýtiếntrình phức tạp hơn www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA... TÍNH – KHOA CNTT1 Trang 32 III ĐIỀU ĐỘ TIẾNTRÌNH 3 Các tiêu chí điều độ 1 Lƣợng tiếntrình đƣợc thực hiện xong: Số lƣợng tiếntrình thực hiện xong trong 1 đơn vị thời gian Đo tính hiệu quả của hệ thống 2 Hiệu suất sử dụng CPU 3 Thời gian vòng đời trung bình của tiến trình: Từ lúc có yêu cầu tạo tiếntrình đến khi kết thúc 4 Thời gian chờ đợi: Tổng thời gian tiếntrình nằm trong trạng thái sẵn... thông tin có thể bị hàm xử lý ngắt thay đổi => nội dung thanh ghi, trạng thái CPU www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 12 I CÁC KHÁI NIỆM LIÊN QUAN ĐẾN TIẾNTRÌNH 3 Các thao tác với tiếntrình 3 Chuyển đổi giữa các tiến trình: Sau khi thực hiện ngắt, hệ thống thực hiện tiếntrình khác Thay đổi trạng thái tiếntrình Cập nhật thông tin... (nonpreemptive): Tiếntrình đang ở trạng thái chạy sẽ đƣợc sử dụng CPU cho đến khi xảy ra một trong các tình huống sau: Tiếntrình kết thúc Tiếntrình phải chuyển sang trạng thái chờ đợi do thực hiện I/O => Điều độ hợp tác: chỉ thực hiện đƣợc khi tiếntrình hợp tác và nhƣờng CPU Nếu tiếntrình không hợp tác, dùng CPU vô hạn => các tiếntrình khác không đƣợc cấp CPU www.ptit.edu.vn GIẢNG VIÊN: THS... Ảnh hƣởng trực tiếp của thuật toán điều độ tiếntrình www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 33 III ĐIỀU ĐỘ TIẾNTRÌNH 3 Các tiêu chí điều độ (tt) 5 Thời gian đáp ứng 6 Tính dự đoán đƣợc: Vòng đời, thời gian chờ đợi, thời gian đáp ứng phải ổn định, không phụ thuộc vào tải của hệ thống 7 Tính công bằng Các tiếntrình cùng độ ƣu tiên phải đƣợc... độ ƣu tiên phải đƣợc đối xử nhƣ nhau www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 34 III ĐIỀU ĐỘ TIẾNTRÌNH 4 Các thuật toán điều độ 1 Thuật toán đến trƣớc phục vụ trƣớc (FCFS): Tiếntrình yêu cầu CPU trƣớc sẽ đƣợc cấp trƣớc HDH xếp các tiếntrình sẵn sàng vào hàng đợi FIFO Tiếntrình mới đƣợc xếp vào cuối hàng đợi Đơn giản, đảm bảo... VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 19 II DÒNG THỰC HIỆN 2 Tài nguyên của tiếntrình và dòng (tt) Mô hình đơn dòng: Tiếntrình có khối quảnlý PCB chứa đầy đủ thông tin trạng thái tiến trình, giá trị thanh ghi Ngăn xếp chứa tham số, trạng thái hàm/ thủ tục/ chƣơng trình con Khi tiếntrình thực hiện, nó sẽ làm chủ nội dung các thanh ghi và con trỏ lệnh www.ptit.edu.vn GIẢNG VIÊN: . một số thanh ghi CPU: Thanh ghi con trỏ lệnh: trỏ tới lệnh tiếp theo Thanh ghi con trỏ ngăn xếp Các thanh ghi điều kiện và trạng thái Các thanh ghi đa năng I. CÁC KHÁI NIỆM LIÊN QUAN ĐẾN. tiến trình 4. Đồng bộ hóa các tiến trình đồng thời 5. Tình trạng bế tắc và đói NỘI DUNG www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 4 Tiến. KHOA CNTT1 Trang 2 CHƢƠNG 4: QUẢN LÝ TIẾN TRÌNH www.ptit.edu.vn GIẢNG VIÊN: THS NGUYỄN THỊ NGỌC VINH BỘ MÔN: KHOA HỌC MÁY TÍNH – KHOA CNTT1 Trang 3 1. Các khái niệm liên quan đến tiến trình 2. Luồng