KIẾN TRÚC MÁY TÍNH
VÀ HỆ ĐIỀU HÀNH
ệ ạ ệ
ứ ủ ệ
ƯƠ
Ơ Ở Ủ Ệ
ủ ệ
ệ ạ ệ
ệ
ƯƠ Ơ Ở Ủ Ệ
+ Hệ điều hành là bộ phận được nhiều đối tượng khai thác:
- Người sử dụng thông thường
- Lập trình viên
- Người quản lý hệ thống
Có nhiều khái niệm khác nhau về hệ điều hành
ệ ạ ệ
ệ
ƯƠ Ơ Ở Ủ Ệ
+ Khái niệm 1:
- Là hệ thống mô hình hóa, mô phỏng hoạt động của
máy tính, của người sử dụng và của lập trình viên
- Hoạt động trong chế độ đối thoại nhằm tạo môi trường
khai thác thuận lợi và quản lý tối ưu hệ thống
ệ ạ ệ
ệ
ƯƠ Ơ Ở Ủ Ệ
+ Khái niệm 2: Hệ điều hành là hệ thống các chương trình
- Giám sát, điều khiển việc thực hiện các chương trình
của người sử dụng
- Quản lý và phân chia tài nguyên cho nhiều chương
trình đồng thời
Khai thác chức năng của hệ thống thuận lợi và hiệu quả
ệ ạ ệ
ệ
ƯƠ Ơ Ở Ủ Ệ
+ Khái niệm 3: Hệ điều hành là một chương trình
- Đóng vai trò là giao diện giữa người sử dụng và phần
cứng máy tính
- Điều khiển việc thực hiện của các loại chương trình
Gần gũi với các hệ điều hành đang sử dụng
ệ ạ ệ
ạ
ƯƠ Ơ Ở Ủ Ệ
+ Dựa mà cách hệ điều hành thực hiện các công việc:
- Hệ điều hành xử lý theo lô đơn giản
- Hệ điều hành xử lý theo lô đa chương
- Hệ điều hành chia sẻ thời gian
- Hệ điều hành đa vi xử lý
- Hệ điều hành xử lý thời gian thực
- Hệ điều hành mạng
ệ ạ ệ
ạ
ƯƠ Ơ Ở Ủ Ệ
a) Hệ điều hành xử lý theo lô đơn giản
+ Lần lượt thực hiện các tác vụ theo các chỉ thị xác định
trước, không cần có sự can thiệp từ bên ngoài
+ Có bộ phận giám sát việc thực hiện các tác vụ, thường trú
trong bộ nhớ chính
+ Hoạt động của các tác vụ dựa theo cách tổ chức hàng đợi
+ Phuc vụ cho máy IBM 701 (Thập niên 50)
ệ ạ ệ
ạ
ƯƠ Ơ Ở Ủ Ệ
a) Hệ điều hành xử lý theo lô đơn giản
ệ ạ ệ
ạ
ƯƠ Ơ Ở Ủ Ệ
b) Hệ điều hành xử lý theo lô đa chương
+ Có khả năng thực hiện nhiều tác vụ đồng thời:
- Nạp một phần code và data của các tác vụ vào bộ nhớ
- Tất cả các tác vụ đều ở trạng thái sẵn sàng
- Chuyển hướng processor để thực hiện hết các phần
tác vụ trong bộ nhớ
+ Hệ điều hành đơn nhiệm đa chương
ệ ạ ệ
ạ
ƯƠ Ơ Ở Ủ Ệ
b) Hệ điều hành xử lý theo lô đa chương
+ Ưu điểm:
- Tiết kiệm bộ nhớ
- Hạn chế thời gian rỗi của processor
+ Nhược điểm:
- Chi phí cao cho việc lập lịch processor
- Vấn đề chia sẻ bộ nhớ chính gặp nhiều khó khăn
ệ ạ ệ
ạ
ƯƠ Ơ Ở Ủ Ệ
c) Hệ điều hành chia sẻ thời gian:
+ Bước phát triển mới trong việc điều khiển các hệ thống đa
người dùng
- Việc chuyển processor phụ thuộc vào hệ điều hành
- Thời gian chuyển đổi nhỏ nên có cảm giác song song
+ Chia sẻ thời gian xử lý của processor cho các tác vụ:
+ Hệ điều hành đa nhiệm (Multitasking)
ệ ạ ệ
ạ
ƯƠ Ơ Ở Ủ Ệ
d) Hệ điều hành đa vi xử lý:
+ Điều khiển sự hoạt động của hệ thống máy tính có nhiều vi
xử lý, gồm có 2 loại:
- Đa xử lý đối xứng
(SMP: Symmetric MP)
- Đa xử lý bất đối xứng
(ASMP: Asymmetric MP)
ệ ạ ệ
ạ
ƯƠ Ơ Ở Ủ Ệ
d) Hệ điều hành đa vi xử lý:
+ Đa xử lý đối xứng (SMP: Symmetric MP)
- VXL nào cũng có thể chạy một loại tiểu trình bất kỳ
- VXLs giao tiếp với nhau thông qua bộ nhớ dùng chung
- Cung cấp cơ chế chịu lỗi và khả năng cân bằng tối ưu
- Vấn đề đồng bộ giữa các VXL được đặt lên hàng đầu
+ Windows NT, Windows 2000, Windows 2003
ệ ạ ệ
ạ
ƯƠ Ơ Ở Ủ Ệ
d) Hệ điều hành đa vi xử lý:
+ Đa xử lý bất đối xứng (ASMP: Asymmetric MP)
- HĐH dành ra 1 - 2 VXL để sử dụng riêng
- Các VXL còn lại dùng để điều khiển các chương trình
- Đơn giản hơn nhiều so với hệ SMP
- Nếu có 1 VXL dành riêng cho HĐH hỏng thì hệ thống
ngừng hoạt động
ệ ạ ệ
ạ
ƯƠ Ơ Ở Ủ Ệ
e) Hệ điều hành xử lý thời gian thực:
+ Khắc phục nhược điểm của hệ điều hành xử lý theo lô:
- Có khả năng cho kết quả tức thời, chính xác
- Các tác vụ được xử lý tức thời, thông báo kết quả hoặc
lỗi cho người sử dụng có yêu cầu
- Có sự phối hợp cao giữa phần mềm và phần cứng
ệ ạ ệ
ạ
ƯƠ Ơ Ở Ủ Ệ
f) Hệ điều hành mạng:
+ Điều khiển sự hoạt động của mạng máy tính:
- Chia sẻ và bảo vệ tài nguyên của mạng
- Thực hiện các chức năng cơ bản của hệ điều hành
+ Windows 9x/NT, Windows 2000, 2003, Linux
ứ ủ ệ
ƯƠ Ơ Ở Ủ Ệ
+ Quản lý xuất/nhập
+ Thông dịch lệnh
+ Quản lý bộ nhớ phụ
+ Quản lý tập tin
+ Bảo vệ hệ thống
+ Quản lý bộ nhớ chính
+ Quản lý tiến trình
ứ ủ ệ
ƯƠ Ơ Ở Ủ Ệ
!" #$%ả
+ Chức năng:
- Tạo lập tiến trình, đưa vào danh sách quản lý tiến
trình
- Loại bỏ ra khỏi danh sách khi tiến trình kết thúc
- Cung cấp đầy đủ tài nguyên để tiến trình hoạt động
- Thu hồi tài nguyên đã cấp khi kết thúc tiến trình
- Tạm dừng khi tiến trình không thể tiếp tục hoạt động
- Tái kích hoạt tiến trình khi gặp điều kiện thuận lợi
ứ ủ ệ
ƯƠ Ơ Ở Ủ Ệ
!" #$%ả
+ Đối với hệ thống có nhiều tiến trình hoạt động song song:
- Giải quyết vấn đề tranh chấp tài nguyên
- Điều phối processor
- Cung cấp cơ chế trao đổi thông tin giữa các tiến trình
- Đồng bộ hóa hoạt động của các tiến trình
ứ ủ ệ
ƯƠ Ơ Ở Ủ Ệ
!" #$%ả
&' ()*Ả
!+,(! (
! ạ ậ
/0ủ ỏ
! 1 ạ ừ
!2 ạ
3 ử
$%
) ạ
4
5 ứ
!/ ổ ứ ộ ư
ứ ủ ệ
ƯƠ Ơ Ở Ủ Ệ
!" #$%ả
+ Tạo lập tiến trình:
- Đặt tên cho một tiến trình
- Chèn tiến trình vào danh sách các tiến trính đã có
- Xác định mức độ ưu tiên ban đầu của tiến trình
- Tạo lập khối điều khiển tiến trình
- Phân phát các tài nguyên ban đầu cho tiến trình
+ Một tiến trình có thể tạo ra thêm một tiến trình mới
ứ ủ ệ
ƯƠ Ơ Ở Ủ Ệ
!" #$%ả
+ Hủy bỏ tiến trình: hủy bỏ hoàn toàn khỏi hệ thống
- Tài nguyên của tiến trình được trả lại cho hệ thống
- Phức tạp nếu tiến trình đã tạo ra nhiều tiến trình con:
Tiến trình con tự động hủy bỏ
Tiến trình con tiến hành độc lập
ứ ủ ệ
ƯƠ Ơ Ở Ủ Ệ
!" #$%ả
+ Tạm dừng tiến trình:
- Tồn tại trong một khoảng thời gian ngắn
- Giảm tải trong quá trình nạp
- Tạm dừng lâu: tài nguyên sẽ được giải phóng (phụ
thuộc vào tình trạng của mỗi tài nguyên)
+ Tái kích hoạt tiến trình:
- Làm tiến trình bắt đầu hoạt động lại từ điểm tạm dừng
ứ ủ ệ
ƯƠ Ơ Ở Ủ Ệ
!" #0 ả ộ ớ
+ Phân phối vùng nhớ cho các tiến trình
+ Thu hồi vùng nhớ
+ Nắm rõ tình trạng của bộ nhớ chính
+ Quyết định tiến trình nào được nạp vào bộ nhớ chính