Khái niệm CHƯƠNG 5: CÁC CƠ SỞ CỦA 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
Trang 1KIẾN TRÚC MÁY TÍNH
VÀ HỆ ĐIỀU HÀNH
Trang 25.1 Khái niệm và phân loại hệ điều hành
5.2 Các chức năng của hệ điều hành
CHƯƠNG 5:
CÁC CƠ SỞ CỦA HỆ ĐIỀU HÀNH
5.3 Các tính chất của hệ điều hành
Trang 35.1 Khái niệm và phân loại Hệ điều hành
5.1.1 Khái niệm
CHƯƠNG 5: CÁC CƠ SỞ CỦA 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
Trang 45.1 Khái niệm và phân loại Hệ điều hành
Trang 55.1 Khái niệm và phân loại Hệ điều hành
5.1.1 Khái niệm
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
+ 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ả
Trang 65.1 Khái niệm và phân loại Hệ điều hành
5.1.1 Khái niệm
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
+ 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
Trang 75.1 Khái niệm và phân loại Hệ điều hành
5.1.2 Phân loại
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
+ 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
Trang 85.1 Khái niệm và phân loại Hệ điều hành
5.1.2 Phân loại
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
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)
Trang 95.1 Khái niệm và phân loại Hệ điều hành
Trang 105.1 Khái niệm và phân loại Hệ điều hành
5.1.2 Phân loại
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
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ớ
Trang 115.1 Khái niệm và phân loại Hệ điều hành
- 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
Trang 125.1 Khái niệm và phân loại Hệ điều hành
5.1.2 Phân loại
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
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)
Trang 135.1 Khái niệm và phân loại Hệ điều hành
- Đa xử lý bất đối xứng (ASMP: Asymmetric MP)
Trang 145.1 Khái niệm và phân loại Hệ điều hành
5.1.2 Phân loại
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
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
Trang 155.1 Khái niệm và phân loại Hệ điều hành
- 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
Trang 165.1 Khái niệm và phân loại Hệ điều hành
5.1.2 Phân loại
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
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
Trang 175.1 Khái niệm và phân loại Hệ điều hành
5.1.2 Phân loại
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
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
Trang 185.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
+ 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
Trang 195.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
- 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
Trang 205.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.2.1 Thành phần quản lý tiến trình
+ Đố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
Trang 215.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.2.1 Thành phần quản lý tiến trình
QUẢN LÝ TIẾN TRÌNH
Đánh thứcThay đổi mức độ ưu
tiên
Trang 225.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.2.1 Thành phần quản lý tiến trình
+ 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
Trang 235.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.2.1 Thành phần quản lý tiến trình
+ 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
Trang 245.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.2.1 Thành phần quản lý tiến trình
+ 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
Trang 255.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
Trang 265.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.2.3 Thành phần quản lý xuất/nhập
+ Gửi mã lệnh điều khiển đến thiết bị
+ Tiếp nhận yêu cầu ngắt từ các thiết bị
Trang 275.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.2.4 Thành phần quản lý bộ nhớ phụ (đĩa)
+ Không gian lưu trữ được chia thành các block
+ Hệ điều hành cấp cho tập tin vừa đủ các block tự do
+ Tổ chức cấp phát động vì nội dung tập tin có thể thay đổi+ Định vị đầu đọc/ghi để nâng cao tốc độ truy xuất dữ liệu
Nhiệm
vụ:
Quản lý không gian trống trên đĩa
Định vị lưu trữ thông tin trên đĩa
Lập lịch cho vấn đề đọc/ghi
Trang 285.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.2.5 Thành phần quản lý tập tin
+ Tập tin là tập hợp dữ liệu có tên riêng
+ Hệ điều hành thiết lập mối quan hệ giữa tập tin và thiết bị lưu trữ Người sử dụng truy xuất thông qua tên tập tin
- Mở/đóng tập tin
- Tạo lập/Hủy bỏ tập tin
- Sao chép/Di chuyển tập tin
- Đổi tên tập tin
- Xem tập tin
Trang 295.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.2.5 Thành phần quản lý tập tin
+ Các phần dữ liệu trong tập tin có thể tham gia:
- Đọc: nhập một phần dữ liệu từ tập tin vào tiến trình
- Ghi: xuất một phần dữ liệu từ tập tin ra khỏi tiến trình
- Cập nhật: bổ sung một phần dữ liệu đã tồn tại
- Chèn: thêm một phần dữ liệu mới vào tập tin
- Xóa: xóa bỏ một phần dữ liệu khỏi tập tin+ Trong hệ thống có nhiều tiến trình đồng thời truy xuất: phải tạo cơ chế thích hợp để bảo vệ tập tin
Trang 305.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.2.5 Thành phần quản lý tập tin
+ Bộ phận quản lý tập tin thực hiện những nhiệm vụ:
- Tạo/xóa một tập tin/thư mục
- Bảo vệ tập tin khi có hiện tượng truy xuất đồng thời
- Cung cấp các thao tác xử lý và bảo vệ tập tin/thư mục
- Tạo mối quan hệ giữa tập tin và bộ nhớ phụ
- Tạo cơ chế truy xuất tập tin thông qua tên tập tin
Trang 315.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
Trang 325.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.2.6 Thành phần bảo vệ hệ thống
Có cơ chế đảm bảo tài nguyên của mỗi tiến trình
Điều khiển việc sử dụng tài nguyên, đặc biệt là tài nguyên dùng chung
+ Thành phần bảo vệ hệ thống có những nhiệm vụ:
- Bảo vệ bên ngoài
- Bảo vệ giao diện người sử dụng
- Bảo vệ bên trong:
+ HĐH mạng, HĐH phân tán: kết nối mạng và truyền thông
Trang 335.2 Chức năng của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.2.7 Thành phần thông dịch lệnh
+ Là thành phần quan trọng nhất của HĐH
- Là một kỹ thuật giao diện giữa NSD và hệ thống
- Không phải là một phần trong nhân hệ thống
+ Bộ thông dịch lệnh (Trình tiện ích Shell):
- Không nằm thường trú trong bộ nhớ chính
- Có nhiều loại shell trong mạng UNIX
Bourne Shell C Shell Korn Shell
Trang 345.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
- Cấu trúc đơn giản (đơn khối - Monolithique)
- Cấu trúc phân lớp (Layered)
- Các máy ảo (Virtual Machines - VM)
- Mô hình khách - chủ (Client - Server)
+ Hệ điều hành là hệ thống lớn và phức tạp
+ Phân chia toàn bộ tác vụ thành các thành phần nhỏ
+ Cấu trúc HĐH: cách thức phân chia và kết nói các thành phần nhỏ với nhau
Trang 355.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
+ HĐH là một tập hợp các thủ tục
+ Mỗi thủ tục có thể gọi thực hiện một thủ tục khác bất kỳ
5.3.1 Cấu trúc đơn giản
+ Hệ thống đơn khối thường được tổ chức theo 2 dạng:
- Sau khi biên dịch, các thủ tục được liên kết lại
- Sau khi biên dịch, các thủ tục không được liên kết lại
File đối tượng
Bảng chỉ mục, mỗi phần tử là một con trỏ
Trang 365.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.3.1 Cấu trúc đơn giản
Chương trình người sử dụng 2
Chương trình người sử dụng 1 Gọi Kernel
Thủ tục dịch vụ Bảng
Trang 375.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.3.1 Cấu trúc đơn giản
+ Phân chia các thủ tục thành 3 cấp:
Thủ tục
Thủ tục
Thủ
tục
Thủ tục
Thủ tục
Thủ tục
Thủ tục
Thủ
tục
Thủ tục
Thủ tục
Thủ tục
Thủ tục
Trang 385.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.3.1 Cấu trúc đơn giản
+ Nhận xét:
- Người sử dụng có thể truy xuất trực tiếp phần cứng
Khó khăn trong việc kiểm soát và bảo vệ hệ thống
- Các thủ tục mang tính chất tĩnh
HĐH thiếu chủ động trong việc quản lý môi trường
Trang 395.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.3.2 Cấu trúc phân lớp
+ Hệ thống được chia thành một số lớp
+ Lớp trong cùng thường là phần cứng
+ Lớp ngoài cùng là giao diện với người sử dụng
+ Mỗi lớp được xây dựng dựa vào lớp bên trong
+ Mỗi lớp là một đối tượng trừu tượng:
- Chứa đựng các dữ liệu và thao tác xử lý dữ liệu
- Các thủ tục của lớp n có thể được gọi bởi lớp n+1
- Lớp n có thể gọi các thủ tục của lớp n-1
Trang 405.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
the file system, I/O…)
Phần cứng (CPU, memory, disks, I/O…)
Trang 415.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
Trang 425.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
+ Một lớp các chương trình hệ thống nằm giữa hệ điều hành
và chương trình của người sử dụng:
- Sử dụng lời gọi hệ thống
- Sử dụng trực tiếp các chỉ thị phần cứng
Trang 435.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
Trang 445.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
Tiến trình
OS Phần cứng
Tiến trình
Máy ảo Phần cứng
Tiến trình Tiến trình
OS Máy ảo 1
OS Máy ảo 2
OS Máy ảo 3 Giao diện
lập trình
Trang 455.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
Trang 465.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.3.3 Máy ảo
Trang 475.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.3.4 Mô hình khách - chủ (Client - Server)
- Nhiều tiến trình của HĐH đóng vai trò Server
- Tiến trình của chương trình NSD là tiến trình Client
+ HĐH hiện đại chuyển các nhiệm vụ ra các lớp bên ngoài:
- Thu nhỏ phần cốt lõi thành hạt nhân cực tiểu (Kernel)
- Chỉ kernel phụ thuộc vào phần cứngXây dựng theo mô hình Client/Server:
- Kernel tạo cơ chế thông tin liên lạc giữa Client, Server
Trang 485.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.3.4 Mô hình khách - chủ (Client - Server)
Tiến trình Client
Tiến trình Client
Server quản lý tiến trình
Server quản lý File
Trang 495.3 Cấu trúc của hệ điều hành
CHƯƠNG 5: CÁC CƠ SỞ CỦA HỆ ĐIỀU
HÀNH
5.3.4 Mô hình khách - chủ (Client - Server)
+ Cấu trúc của hệ điều hành Windows NT: