CHƯƠNG 1: GIỚI THIỆU
NỘI DUNG
Hệ điều hành là gì?
Tổ chức hệ thống máy tính (Computer-System Organization)
Kiến trúc hệ thống máy tính (Computer-System Architecture)
Cấu trúc hệ điều hành (Operating-System Structure)
Các hoạt động hệ điều hành (Operating-System Operations)
Quản trị quá trình (Process Management)
Quản trị bộ nhớ (Memory Management)
Quản trị lưu trữ (Storage Management)
Bảo vệ và an ninh (Protection and Security)
Các hệ thống phân tán (Distributed Systems)
Các hệ thống mục đích đặc biệt (Special-Purpose Systems)
Mơi trường tính tốn (Computing Environments)
Operating System Concepts – 7th Edition, Jan 12, 2005
1.2
Silberschatz, Galvin and Gagne ©2005
MỤC TIÊU
Cung cấp cái nhìn bao quát về hệ điều hành và các thành phần
của nó
Cung cấp cái nhìn bao qt về tổ chức hệ thống máy tính
Operating System Concepts – 7th Edition, Jan 12, 2005
1.3
Silberschatz, Galvin and Gagne ©2005
HỆ ĐIỀU HÀNH LÀ GÌ?
Chương trình giữ vai trị trung gian giữa người dùng và phần
cứng máy tính.
Đích của HĐH:
z
Thực hiện các chương trình người dùng và làm cho các vấn
đề người dùng đang giải quyết dễ dàng hơn.
z
Làm cho hệ thống máy tính trở nên thuận lợi trong việc sử
dụng.
z
Sử dụng hiệu quả phần cứng máy tính.
Operating System Concepts – 7th Edition, Jan 12, 2005
1.4
Silberschatz, Galvin and Gagne ©2005
CẤU TRÚC HỆ THỐNG MÁY TÍNH
Hệ thống máy tính có thể được chia thành 4 thành phần:
z
Phần cứng (Hardware): cung cấp các tài ngun tính tốn cơ sở
z
Hệ điều hành
z
Điều khiển và phối hợp sử dụng phần cứng giữa các ứng dụng và
các người dùng
Các trình ứng dụng: Xác định cách các tài nguyên hệ thống được dùng
để giải quyết các vấn đề tính tốn của người dùng
z
CPU, memory, I/O devices
Các bộ xử lý từ (Word processors), các trình biên dịch (compilers),
các trình duyệt Web (web browsers), các hệ cơ sở dữ liệu
(database systems), các trò chơi điện tử (video games)
Các người dùng
Người, các máy móc, các máy tính khác
Operating System Concepts – 7th Edition, Jan 12, 2005
1.5
Silberschatz, Galvin and Gagne ©2005
BỐN THÀNH PHẦN HỆ THỐNG MÁY TINH
Operating System Concepts – 7th Edition, Jan 12, 2005
1.6
Silberschatz, Galvin and Gagne ©2005
ĐỊNH NGHĨA HỆ ĐIỀU HÀNH
HĐH là một nhà cấp phát tài nguyên:
z
Quản trị tất cả các tài nguyên
z
Quyết định giải quyết các yêu cầu xung đột để sự sử dụng tài
nguyên hiệu quả và hợp lý
HĐH là một chương trình điều khiển
z
Điều khiển sự thực hiện các chương trình để ngăn ngừa lỗi và
sự sử dụng máy tính không đúng
Operating System Concepts – 7th Edition, Jan 12, 2005
1.7
Silberschatz, Galvin and Gagne ©2005
ĐỊNH NGHĨA HĐH (Cont.)
Khơng có định nghĩa nào được chấp nhận bởi tất cả mọi người
“Chương trình chạy tồn thời gian trên máy tính” là hạt nhân
(kernel). Mọi chương trình khác hoặc là chương trình hệ thống
(gắn với HĐH) hoặc là chương trình ứng dụng
Operating System Concepts – 7th Edition, Jan 12, 2005
1.8
Silberschatz, Galvin and Gagne ©2005
KHỞI ĐỘNG MÁY TÍNH
Chương trình bootstrap được nạp khi bật máy hoặc reboot
z
Thường được lưu trong ROM / EPROM, được biết dưới tên
firmware
z
Khởi động tất cả các sắc thái hệ thống
z
Nạp hạt nhân HĐH và bắt đầu sự thực hiện
Operating System Concepts – 7th Edition, Jan 12, 2005
1.9
Silberschatz, Galvin and Gagne ©2005
TỔ CHỨC HỆ THỐNG MÁY TÍNH
Sự hoạt động hệ thống máy tính
z
Một / nhiều CPU, các bộ điều khiển thiết bị nối qua bus chung
cung cấp truy xuất bộ nhớ chia sẻ
z
Sự thực hiện đồng thời của CPU và các thiết bị cạnh tranh các
chu ký bộ nhớ
Operating System Concepts – 7th Edition, Jan 12, 2005
1.10
Silberschatz, Galvin and Gagne ©2005
SỰ HOẠT ĐỘNG HỆ THỐNG MÁY TÍNH
Các thiết bị I/O và CPU có thể thực hiện đồng thời.
Mỗi bộ điều khiển thiết bị đảm trách một kiểu thiết bị riêng.
Mỗi bộ điều khiển thiết bị có buffer cục bộ.
CPU di chuyển dữ liệu từ/ đến bộ nhớ chính đến/ từ các buffer cục
bộ
I/O là từ thiết bị đến buffer cục bộ.
Bộ điều khiển thiết bị báo cho CPU hoạt động của nó đã kết thức
bởi một interrupt.
Operating System Concepts – 7th Edition, Jan 12, 2005
1.11
Silberschatz, Galvin and Gagne ©2005
CHỨC NĂNG CHUNG CỦA CÁC INTERRUPTS
Interrupt chuyển điều khiển cho thủ tục dịch vụ interrupt, thông qua
interrupt vector (chứa địa chỉ của toàn bộ các thủ tục dịch vụ).
Kiến trúc Interrupt phải bảo toàn địa chỉ của chỉ thị bị gián đoạn.
Các interrupts đến bị vô hiệu hóa khi interrupt khác đang được xử
lý để ngăn ngừa thất lạc interrupt.
Trap là một interrupt được sinh ra khi có một lỗi hoặc địi hỏi của
người dùng.
Một HĐH là sự truyền interrupt (interrupt driven).
Operating System Concepts – 7th Edition, Jan 12, 2005
1.12
Silberschatz, Galvin and Gagne ©2005
QUẢN LÝ INTERRUPT
HĐH bảo tồn trạng thái của CPU bởi lưu trữ các thanh ghi và bộ
đếm chương trình.
Xác định kiểu interrupt nào đã xảy ra:
z
polling
z
vectored interrupt system
Tách biệt các đoạn mã xác định hành động sẽ được chọn cho mỗi
kiểu interrupt.
Operating System Concepts – 7th Edition, Jan 12, 2005
1.13
Silberschatz, Galvin and Gagne ©2005
ĐƯỜNG THỜI GIAN INTERRUPT
Operating System Concepts – 7th Edition, Jan 12, 2005
1.14
Silberschatz, Galvin and Gagne ©2005
CẤU TRÚC I/O
Sau khi I/O bắt đầu, điều khiển trả lại cho chương trình người
dùng chỉ khi I/O hồn tất.
z
Chỉ thị chờ làm “nhàn rỗi” CPU đến tận khi interrupt kế tiếp
z
Vòng lặp chờ (tranh chấp truy xuất bộ nhớ).
z
Tại mội thời điểm, nhiều nhất một yêu cầu I/O được thực
hiện, khơng có xử lý I/O đồng thời.
Sau khi I/O bắt đầu, điều khiển trả lại cho chương trình người
dùng khơng chờ I/O hồn tất.
z
Lời gọi hệ thống (System call) : yêu cầu HĐH cho phép
người dùng chờ sự hồn tất I/O.
z
Bảng tình trạng thiết bị (Device-status table) chứa đầu vào
cho mỗi thiết bị I/O chỉ ra kiểu của nó, địa chỉ và trạng thái.
z
HĐH lập chỉ mục bảng thiết bị I/O để xác định tình trạng
thiết bị và để sửa đổi đầu vào bảng bao gồm cả interrupt.
Operating System Concepts – 7th Edition, Jan 12, 2005
1.15
Silberschatz, Galvin and Gagne ©2005
HAI PHƯƠNG PHÁP I/O
Synchronous
Operating System Concepts – 7th Edition, Jan 12, 2005
Asynchronous
1.16
Silberschatz, Galvin and Gagne ©2005
BẢNG TÌNH TRẠNG THIẾT BỊ
Operating System Concepts – 7th Edition, Jan 12, 2005
1.17
Silberschatz, Galvin and Gagne ©2005
CẤU TRÚC TRUY XUẤT BỘ NHỚ TRỰC TIẾP
Được dùng cho các thiết bị I/O tốc độ cao (tốc độ truyền thông tin
sát với tốc độ bộ nhớ).
Bộ điều khiển thiết bị truyền các khối dữ liệu từ lưu trữ buffer trực
tiếp đến bộ nhớ chính khơng cần sự can thiệp của CPU.
Chỉ một interrupt được sinh ra cho một khối thay vì một interrupt
cho một byte.
Operating System Concepts – 7th Edition, Jan 12, 2005
1.18
Silberschatz, Galvin and Gagne ©2005
CẤU TRÚC LƯU TRỮ
Bộ nhớ chính: phương tiện lưu trữ lớn duy nhất CPU có thể truy
xuất trực tiếp.
Lưu trữ thứ cấp: Mở rộng bộ nhớ chính, cung cấp khả năng lưu trữ
lớn và ổn định.
Đĩa từ:
z
Bề mặt đĩa được chia logic thành các rãnh (tracks), mỗi rãnh
được chia thành các sectors.
z
Bộ điều khiển đĩa xác định trao đổi logic giữa thiết bị và máy
tính.
Operating System Concepts – 7th Edition, Jan 12, 2005
1.19
Silberschatz, Galvin and Gagne ©2005
PHÂN CẤP LƯU TRỮ
Các hệ thống lưu trữ được tổ chức theo phân cấp.
z
Tốc độ (Speed)
z
Giá (Cost)
z
Tính khơng ổn định (Volatility)
Caching : sao chép thông tin vào hệ thống lưu trữ nhanh hơn (bộ
nhớ chính có thể xem như cache đối với lưu trữ thứ cấp).
Operating System Concepts – 7th Edition, Jan 12, 2005
1.20
Silberschatz, Galvin and Gagne ©2005
PHÂP CẤP THIẾT BỊ LƯU TRỮ
Operating System Concepts – 7th Edition, Jan 12, 2005
1.21
Silberschatz, Galvin and Gagne ©2005
Caching
Nguyên lý quan trọng, được thực hiện ở nhiều mức trong máy tính
(hardware, operating system, software)
Thơng tin cần dùng được sao chép tạm thời từ bộ nhớ chậm sang
bộ nhớ nhanh hơn.
Lưu trữ nhanh hơn (cache) được kiểm tra để xác định thông tin đã
tồn tại ở đó?
z
Nếu đã tồn tại, thơng tin được sử dụng trực tiếp từ cache.
z
Nếu không, dữ liệu được sao chép đến cache và được dùng ở
đó
Cache nhỏ hơn lưu trữ được cached
z
Vấn đề quản trị cache
z
Kích thước cache và chính sách thay thế
Operating System Concepts – 7th Edition, Jan 12, 2005
1.22
Silberschatz, Galvin and Gagne ©2005
HIỆU NĂNG CỦA CÁC MỨC LƯU TRỮ
Di chuyển giữa các mức phân cấp lưu trữ có thể tường minh hay
ẩn
Operating System Concepts – 7th Edition, Jan 12, 2005
1.23
Silberschatz, Galvin and Gagne ©2005
SỰ DI TRÚ MỘT SỐ NGUYÊN A TỪ ĐĨA ĐẾN
THANH GHI
Các môi trường đa nhiệm phải thận trọng trong sử dụng giá trị mới
nhất
Môi trường đa xử lý (Multiprocessor) phải cung cấp sự kết dính
cahe trong phần cứng sao cho tất cả các CPUs có giá trị mới nhất
trong cache của chúng
Tình huống mơi trường phân tán phức tạp hơn: Có thể tồn tại một
vài bản sao của cùng một dữ liệu
Operating System Concepts – 7th Edition, Jan 12, 2005
1.24
Silberschatz, Galvin and Gagne ©2005
CẤU TRÚC HĐH
Đa chương (Multiprogramming) sự cần thiết cho tính hiệu quả
z
Một ngưới dùng không dùng CPU và thiết bị I/O tồn thời gian
z
Đa chương tổ chức các cơng việc sao cho CPU “bận rộn nhất như có
thể
z
Một tập con các công việc được lưu trong bộ nhớ
z
Một công việc được chọn và chạy thông qua lập lịch biểu công việc (job
scheduling)
z
Khi một cơng việc phải chờ (ví dụ I/O), HĐH chuyển CPU cho công việc
khác
Chia sẻ thời gian (Timesharing /multitasking) là mở rộng logic trong đó
CPU được chuyển nhanh giữa các cơng việc sao cho các người dùng có
thể trao đổi với mỗi cơng việc khi nó chạy tạo ra tính tốn tương tác
z
Thời gian đáp ứng (Response time) (< 1s)
z
Mỗi người dùng có ít nhất một chương trình đang thực hiện trong bộ
nhớ > quá trình (process)
z
Nếu cùng lúc có một vài cơng việc sẵn sàng chạy > CPU scheduling
z
Nếu các q trình khơng thể cùng chứa trong bộ nhớ, swapping di
chuyển chúng vào và ra
z
Bộ nhớ ảo (Virtual memory) cho phép thực hiện nhiều q trình khơng
hồn toàn nằm trong bộ nhớ
Operating System Concepts – 7th Edition, Jan 12, 2005
1.25
Silberschatz, Galvin and Gagne ©2005