Tải bản đầy đủ (.ppt) (43 trang)

Bài giảng Hệ điều hành: Chương 1 - Nguyễn Phan Trung

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (624.16 KB, 43 trang )

Hệ Điều Hành
(Operating Systems)
Nguyễn Phan Trung
Địa chỉ liên lạc
Nguyển Phan Trung – Khoa CNTT
Email:

Khoa Công Nghệ Thông Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


Thông tin về môn hoc
Sách tham khảo
o “Operating System Concepts”, Silberschatz et
at. 6thEd, 2003
o “An Introduction to Operating Systems”;
Harvay M. Deitel. 1990.

Đánh giá
- 30% điểm bài tập lớn về nhà(10/10) Nộp
trước khi thi chậm nhất là 1 tuần
- 70% thi trắc nghiệm cuối học kỳ (10/10)
Khoa Công Nghệ Thông Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


Nội dung mơn Hệ Điều Hành












Chương 1: Tổng quan về Hệ Điều Hành
Chương 2: Khái niệm về quá trình(process)
Chương 3: Quản lý các quá trình đồng thời
Chương 4 : tắc nghẽn (Deadlock)
Chương 5 Định thời biểu cho quá trình
Chương 6 Phân cấp bộ nhớ - Bộ nhớ thực
Chương 7 Bộ nhớ ảo
Chương 8 Hệ thống I/O
Chương 9 Hệ thống file
Ôn tập
Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí Minh


Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí Minh


Chương 1 Hệ Điều Hành
Sau khi đọc xong chương này và
hồn thành hết các bài tập bạn sẽ
có thể:
• Hiểu ngun lý hoạt động của hệ điều
hành
• Mơ tả các loại hệ điều hành
• Hiểu được lịch sử phát triển của hệ
điều hành

Khoa Công Nghệ Thông Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


Chương 1 Hệ Điều Hành
Sau khi đọc xong chương này và hồn
thành hết các bài tập bạn sẽ có thể:
• Thảo luận về chế độ đơn nhiệm và chế độ đa
nhiệm
• Phân biệt sự khác nhau giữa hệ điều hành
một người dùng và hệ điều hành nhiều
người dùng.
• Liệt kê và miêu tả một cách ngắn gọn các hệ
điều hành hiện nay
Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí Minh


Chương 1 Hệ Điều Hành
 Giới thiệu tổng quan
 Định nghĩa Hệ Điều Hành (Operating System)
 Các thành phần của hệ thống máy tính
 Các chức năng chính của OS

 Quá trinh phát triển của Hệ Điều Hành
 Mainframe Systems
 Desktop Systems
 Multiprocessor Systems
 Distributed Systems
 Realtime Systems
 Handheld Systems
Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí Minh



GIỚI THIỆU TỔNG QUAN

Khoa Công Nghệ Thông Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


Các nhiệm vụ chung
của tất cả các os

Khoa Công Nghệ Thơng Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


Các thành phần hệ thống
1.

Phần cứng (Hardware):
Bao gồm các tài nguyên cơ bản của máy tính như :

Processor CPU







Registers (address, data, control)
Instruction cycle (fetch, decode, execute)
Interrupts

Usually includes hardware and special instruction to help the O.S manage memory, devices,etc,

Memory Bộ nhớ
Diifferent levels (cache, main memory, disk)



các thiết bị I/O,…



2.

Usually use interupts, DMA
OS usually controls use of I/O devices

Hệ điều hành (Operating System)
Phân phối tài nguyên, điều khiển và phối hợp các hoạt động của các chương trình trong hệ
thống

3.

Chương trình ứng dụng (applications programs)
sử dụng tài nguyên hệ thống để giải quyết một vấn đề tính tốn nào đó của người sử dụng ( ví
dụ: compilers, database systems, video games, business progams).

4.

Các users sử dụng hệ thống
Con người, máy móc, hệ thống máy tính khác,…


Khoa Cơng Nghệ Thơng Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


CÁC THÀNH PHẦN CỦA HỆ THỐNG

Khoa Công Nghệ Thông Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


Các chức năng chính của OS
 Phân chia thời gian xử lý và định thời CPU
 Phối hợp và đồng bộ hoạt động giữa các
processes (coordination & synchronization)
 Quản lý tài nguyên hệ thống (I/O,bộ nhớ, file
chứa dữ liệu, …)
 Thực hiện và kiểm sốt access, protection
 Duy trì nhất quán (integrity) của hệ thống, kiểm
soát lỗi và phục hồi hệ thống khi có lỗi (error
recovery)
 Cung cấp giao diện làm việc cho users
Khoa Công Nghệ Thông Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


Tại sao phải nghiên cứu Os
• Thiết kế Os là một case study rất tốt về thiết kế công
nghệ phần mềm (software engineering design)
• The better you know the Os, the better apps you write.
The better you understand its bugs and work around
them.
• Os sử dụng các thuật giải phức tạp, rất nhiều trong đó

có thể được sử dụng lại trong các phần mềm khác. Vd
phát hiện khóa chết( deadlock detection).
• Os cần có sư phát triển nhanh của phần cứng.

Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí Minh


Q trình phát triển OS
1.

Mainframe Systems
a.
b.
c.

Batch systems
Multi-programmed systems
Time-sharing systems

Khoa Cơng Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí Minh


Mainframe Systems
a. Batch System
o Là Os sơ khai nhất chỉ có Resident Monitor,
trong đó chưá các phần điều khiển quá trình xử
lý, tính tốn như: Loader, job sequencing, control
card interpreter, device driver
o Cần có người vận hành: operator (user ≠
operator), giảm setup time -> ghép nhóm cơng

việc (battching jobs) ví dụ : ghép 2 cơng việc
cùng dùng trình biên dịch Fortran, -> tiết kiệm
được thời gian load trình biên dịch Fortral.

Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí Minh


UNIVAC mainframe system

Khoa Công Nghệ Thông Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


FACOM mainframe

Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí Minh


Tổ chức bộ nhớ của Simple
BatchMainframe Systems

Khoa Công Nghệ Thông Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


Quá trình phát triển OS (t.t)
b. Multi-programmed System
 Multiprogramming làm tăng hiệu năng của CPU bằng cách tổ
chức các công việc để CPU ln có 1 cơng việc cần thực hiện.
 Các cơng việc đó được lưu trong bộ nhớ chính tại cùng một
thời điểm và CPU là đa nhiệm giữa chúng
 Khi một công việc phải đợi tác vụ nào đó, vd đợi họat động I/O.

Os sẽ chuyển CPU cho một công việc khác.
 Yêu cầu đối với OS trong Multi-programmed System






Job Scheduling
Memory management
CPU scheduling
Allocation of devices
protection

Khoa Cơng Nghệ Thơng Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


Tổ chức bộ nhớ của
Multiprogrammed Batch System

Khoa Công Nghệ Thông Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


Q trình phát triển Os

Khoa Cơng Nghệ Thơng Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


Q trình phát triển OS (t.t)
c.


Time-Sharing Systems
 Multi-programmed systems khơng cung cấp khả năng tương
tác users
 CPU luân phiên chuyển đổi thực thi giữa các công việc nhưhg
sự chuyển đổi xẩy ra rất thường xuyên để các user có thể
tương tác với mỗi chương trình đang chạy và có cảm giác là
tòan bộ hệ thống đang được dành riêng cho mình
 Cung cấp sự tương tác giữa hệ thống với user
o Khi kết thúc thực thi một lệnh, OS sẽ tìm câu lệnh điều khiển (control
statement) tiếp theo từ keyboard or mouse chứ không phải từ card
reader

 Một công việc chỉ được chiếm CPU để xử lý khi nó nằm trong
bộ nhớ chính
 Khi cần thiết, một cơng việc nào đó có thể được chuyển từ bộ
nhớ chính ra thiết bị lưu trữ, nhường bộ nhớ chính cho cơng
việc khác.
Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí Minh


Time-Sharing System
• Os sử dụng CPU scheduling và multiprogramming để
cung cấp cho mỗi user một phần nhỏ tài nguyên của
máy tính
• Multiprogramming và time shsring vẫn đóng vai trị chủ
đạo trong các OS hiện nay

Khoa Công Nghệ Thông Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh



Time-Sharing System(t.t)
 Yêu cầu đối với OS trong Time-Sharing Systems
o Định thời công việc (job scheduling)
o Quản lý bộ nhớ (Memory Management)
• Các cơng việc được hốn chuyển giữa bộ nhớ chính và đĩa
• Virtual memory: cho phép một cơng việc có thể được thực thi mà
khơng cần phải nạp hồn tồn vào bộ nhớ chính

o Quản lý các process (Process Management)





Định thời CPU (CPU scheduling)
Đồng bộ các cơng việc (synchronization)
Tương tác giữa các công việc ( process communication)
Tránh Deadlock

o Quản lý hệ thống file, hệ thống lưu trữ (disk management)
o Phân bổ các thiết bị tài nguyên
o Cơ chế bảo vệ (protection)
Khoa Công Nghệ Thông Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh


IBM 360_67 time-sharing system

Khoa Công Nghệ Thông Tin – Đại Hoc Cơng Nghiệp TP Hồ Chí Minh



×