Chương 1: Tổng quan về HĐH
Nội dung chương:
Vai trò của Hệ điều hành
Các thành phần của HĐH
Một số kiến trúc HĐH
Quá trình phát triển của HĐH
Một số HĐH hiện đại
8
Vai trò của HĐH
Quản trị tài nguyên
Tài nguyên: CPU, RAM, HDD, printer…
Đối tượng sử dụng tài nguyên: Chương trình ƯD
Nhiệm vụ: Cung cấp giải thuật cấp phát, quản trị tài nguyên
cho các đối tượng hoạt động.
Mục tiêu:Cấp phát đầy đủ, công bằng, hiệu quả
Điều khiển thiết bị
Nhiệm vụ: Che dấu các chi tiết phần cứng, tạo môi trường dễ
làm việc hơn cho NSD.
Mục tiêu: Tạo sự độc lập thiết bị.
Ví dụ: Làm sao để MS.Word có thể in được với nhiều loại máy
in khác nhau như in kim, laser, phun của nhiều hãng khác nhau
9
HĐH và các thành phần của hệ thống
10
HĐH và các thành phần của hệ thống
11
Các dịch vụ của hệ thống
Nạp và thi hành chương trình (load & run)
Các thao tác xuất nhập (I/O Operations)
Các thao tác truy xuất/cập nhật hệ thống tập tin
(file system)
Các cơ chế liên lạc/trao đổi thông tin giữa các tác
vụ
Phát hiện/chỉnh sửa lỗi
…
Ỉ Giao tiếp giữa các chương trình ứng dụng và HĐH
được thực hiện phần lớn thông qua các lời gọi hệ
thống (System Call)
12
Các thành phần của HĐH
Quản lý tài nguyên là vai trị quan trọng nhất của
HĐH, do đó cần có một số thành quản lý CPU,
quản lý bộ nhớ, …
CPU : quản lý tiến trình(bao gồm quản lý CPU)
RAM : quản lý bộ nhớ chính
Input/Output : quản lý nhập/xuất (thấy rõ ở DOS)
Hệ thống tập tin : Quản lý tập tin
Hệ thống bảo vệ
Quản lý mạng
Shell (giao tiếp người dùng)
13
Các thành phần của HĐH
Quản lý tiến trình
Hệ thống tập tin
Quản lý bộ nhớ phụ
Quản lý nhậäp xuất
Quản lý bộ nhớ chính
Hệ thống bảo vệ
Bộ thông dịch lệnh
Giao tiếp mạng
14
Kiến trúc HĐH
Kiến trúc đơn giản
Kiến trúc phân lớp
Kiến trúc máy ảo
Kiến trúc client/server
15
1. Kiến trúc đơn giản
Ứng dụng
Tiện ích thường trú
Hệ điều hành (DOS)
Phần cứng (BIOS, port)
Ví dụ với HĐH DOS
Ví dụ điển hình cho kiến
trúc này là DOS, trong đó
HĐH chỉ làm một số nhiệm
vụ quản lý còn khá đơn
giản và cung cấp thêm một
số dịch vụ.
HĐH = Thư viện hàm.
UD của người dùng vẫn có
thể truy cập trực tiếp đến
phần cứng thông qua
BIOS, cổng phần cứng
Không hỗ trợ đa nhiệm.
Đánh giá khi chương
trình treo?
16
2. Kiến trúc phân lớp
Ỉ
Ỉ
HĐH phân thành nhiều
lớp.Mỗi lớp phụ trách 1
chức năng đặc thù.
Lớp bên trên sử dụng
chức năng do các lớp bên
dưới cung cấp.
Khó xác định số lượng
lớp, thứ tự lớp !!!
Chi phí truyền tham số
xuyên các lớp !!!
17
3. Kiến trúc máy ảo (1/4)
Có nghe đến máy ảo bao giờ? Ví dụ?
Do mục tiêu của HĐH là chạy được nhiều chương trình
đồng thời trên một máy tính nên cách tốt nhất là tạo ra
nhiều máy tính ảo từ một máy tính thật để các chương
trình chạy riêng trên các máy ảo.
Về ngun tắc các chương trình khơng biết mình đang
chạy trên máy ảo, cũng khơng biết mình đang phải chia
sẻ tài ngun với các chương trình khác. Ví dụ:
CPU ảo: mỗi chương trình* sở hữu một CPU ảo
Bộ nhớ ảo: mỗi chương trình một khơng gian nhớ riêng
18
3.Kiến trúc máy ảo (2/4)
Non-virtual Machine
Virtual Machine
19
3.Kiến trúc máy ảo (3/4)- Ví dụ
Java Virtual Machine
Java program
Java OS
Java VM
Process
Operating System
Hardware
•
Process
Độc lập với Platform
20
3. Kiến trúc máy ảo (4/4)
Ưu điểm:
Môi trường thuận lợi cho sự tương thích
Tăng tính an tồn cho hệ thống do các VM độc lập
Dễ phát triển các HĐH đơn nhiệm cho các VM độc lập.
Khuyết điểm
Phức tạp trong việc giả lập.
21
4. Kiến trúc client/server
Các dịch vụ của HĐH được chia thành 2 phần:
Server: phần hạt nhân, lệ thuộc phần cứng
Client: các tiện ích hệ thống, sử dụng dịch vụ do
server cung cấp
22
Giới thiệu các dịng HĐH hiện đại
Dịng HĐH Windows
Q trình phát triển
Các phiên bản chính
Dịng HĐH Unix/Linux
Q trình phát triển
Các distro chính
23
Dịng HĐH Windows
Phát triển bởi Microsoft.
Hiện đang chiếm 80% Ỉ 90% thị trường HĐH.
Số lượng dịng mã chương trình:
WinNT: 4 triệu
Win2000: 35 triệu
WinXP: 40 triệu
24
Q trình phát triển của dịng
HĐH Windows (1/4)
Windows 1.0 – Phát hành 12/1985
Windows 2.0
Phát hành 1987
Chỉ hổ trợ bộ vi xử lý Intel 8086 hoặc 8088
Có thể truy cập 1MB bộ nhớ
Windows 3.0
Phát hành 05/1990
Có thể truy cập 16MB bộ nhớ
25
Q trình phát triển của dịng
HĐH Windows (2/4)
Windows 3.1
Phát hành 04/1992
Hỗ trợ TrueType fonts/ Multimedia
Windows NT
Phát hành 07/1993
Hỗ trợ chíp Intel 386, 486 và các chíp khác khơng của
Pentium
Là hệ điều hành dòng server đầu tiên
Là HĐH đầu tiên hỗ trợ các ỨD 32 bits
26
Q trình phát triển của dịng
HĐH Windows (2/4)
Windows 95
Windows 98
Phát hành 08/1995
Cũng hỗ trợ các ứng dụng 32-bit (nhưng vẫn tương thích với
các ƯD 16 bits
Phát hành 06/1998
Tăng cường về mặt hiệu năng và hỗ trợ phần cứng tốt hơn
Tích hợp các tính năng Internet
Windows Millennium
Phát hành 12/2000
Là phiên bản destop hỗ trợ tốt multimedia.
27
Q trình phát triển của dịng
HĐH Windows (4/4)
Windows 2000
Phát hành 01/2000
Hỗ trợ tính đa xử lý đối xứng : 2-32 CPU.
Hỗ trợ đầy đủ tính năng đa ngơn ngữ (UNICODE)
Tính hợp đầy đủ các chồng giao thức mạng thông dụng
Thuộc dòng HĐH server chuyên dụng.
Các dòng sản phẩm: Windows 2000 Professional, Windows
2000 Server, Windows 2000 Advanced Server, Windows 2000
Datacenter Server
Windows 2003
Windows Longhorn
Hỗ trợ ƯD 64 bits
28
Q trình phát triển của dịng
HĐH Linux (1/2)
1969: UNIX, Thompson & Ritchie (AT&T Bell Lab)
1987: Minix, Andy Tanenbaum
1991: birth of Linux
1994: Linux 1.0
Minix-like OS by Linus Torvard
limited devices, no networking
only single-processor i386
networking (Internet)
enhanced file system (ext2)
1995: Linux 1.2
more hardware
8086 mode (DOS emulation) included
Support other architecture:Sparc, Alpha, MIPS
29
Q trình phát triển của dịng
HĐH Linux (2/2)
1996: Linux 2.0
1999: Linux 2.2
2001: Linux 2.4
multiple architectures, multiple processors
threads, memory management …
ISA PnP, USB,…
12/2003: Linux 2.6
30
Các distro chính của HĐH Linux
Mandrake
Fedora/Redhat
Debian
SUSE
Gentoo
…
31
Các đặc điểm chính của Linux
Là HĐH tương tự Unix.
Là HĐH mã nguồn mở
Bao gồm khoảng 6 triệu dòng mã (kernel v2.6)
Tăng trưởng khoảng 25%/năm từ năm 2003
Chiếm khoảng 10% thị trường HĐH.
32