You are on page 1of 6

3/1/2015

Tài liệu tham khảo


z Abraham Silberschatz, Peter Baer Galvin, Greg Gagne, Operating
Nguyên lý hệ điều hành z
System Concepts, 7th edition, John Wiley & Sons, Inc., 2005.
William Stallings, Operating Systems: Internals and Design Principles
7th edition, Prentice-Hall, 2005.
z Andrew S. Tanenbaum, Modern Operating Systems, 2nd edition,
Nguyễn Hải Châu Prentice-Hall, 2001.
z Andrew S. Tanenbaum, Albert S Woodhull, Operating Systems: Design
Khoa Công nghệ thông tin and Implementation, 3rd edition, Prentice-Hall. 2006. (Có mã nguồn kèm
theo).
Trường Đại học Công nghệ z Hà Quang Thụy, Nguyên lý hệ điều hành, NXB KHKT, 2002.
z Robert Love, Linux Kernel Development, Sams Publishing, 2003.
z Daniel P. Bovet, Marco Cesati, Understanding Linux Kernel, 2nd edition,
O'Reilly & Associates, 2002.
z W. Richard Stevens, Advanced Programming in the UNIX Environment,
Addison-Wesley, 1992.
1 2

Mục tiêu của môn học Yêu cầu đối với sinh viên
z Cung cấp những nguyên lý cơ bản của hệ điều z Yêu cầu sinh viên: Nắm vững các nguyên lý
hành máy tính cơ bản, làm tốt các bài tập để lấy đó làm cơ
z Khi kết thúc môn học, sinh viên có thể: Vận sở - nguyên lý cho các vấn đề khác trong
dụng các nguyên lý vào việc phân tích, thiết thiết kế và cài đặt các hệ thống thông tin
kế, xây dựng và phát triển các hệ thống máy z Chú ý liên hệ nội dung môn học với các tình
tính nói chung huống thực tế về khía cạnh quản lý, tổ chức
z Các hệ thống máy tính đa người dùng,
z Có nhiều tài nguyên được dùng chung

3 4

Giáo trình Bản điện tử của giáo trình


z Website của Bộ môn Các hệ thống thông tin:
http://coltech.vnu.edu.vn/httt
z Chọn “Góc học tập” ở menu bên trái
z Chọn “Nguyên lý hệ điều hành” ở phần nội
dung chính của trang web
z Download sách theo chỉ dẫn
z Hoặc có thể download sách tại trang web
môn học http://bbc.vnu.edu.vn
5 6

1
3/1/2015

Thi và kiểm tra


Kiểm tra giữa kỳ: viết, 45-60 phút
z
z Là điều kiện bắt buộc để được thi cuối kỳ
Giới thiệu
z Sau phần quản lý bộ nhớ/lưu trữ
z Được sử dụng tài liệu
z Thi cuối kỳ:
z Thi viết/vấn đáp/trắc nghiệm từ 60-90 phút

7 8

Máy tính - tài nguyên máy tính Hệ điều hành là gì?


z Tài nguyên:
z CPU
Hệ
z Bộ nhớ trong điều
z Đĩa cứng
hành
z Thiết bị ngoại vi (máy in,
màn hình, bàn phím, card
giao tiếp mạng, USB...) z Hệ điều hành là một chương trình “trung gian”
(nhân – kernel) giữa NSD và máy tính :
z Quản lý phần cứng máy tính (các tài nguyên)
z Cung cấp cho NSD môi trường làm việc tiện lợi và
hiệu quả
9 10

Hệ thống máy tính Hai cách nhìn hệ điều hành

Phần cứng Hệ Người


Các sử
điều
chương dụng
Hệ hành
trình
điều
hệ thống
hành
và z Phần cứng: Quản lý & cấp phát tài nguyên để
Phần cứng ứng dụng
sử dụng tối đa năng lực phần cứng
z Người sử dụng: Dễ sử dụng, hiệu quả, ứng
Người sử dụng
11
dụng phong phú 12

2
3/1/2015

Một số loại hệ điều hành Các hệ xử lý theo lô đơn giản


z Xử lý theo lô (batch processing) z Thuật ngữ: Batch processing
z Đa chương trình (multiprogramming) z Các chương trình được đưa vào hàng chờ
z Phân chia thời gian (time-sharing/multitasking)
z Máy tính thực hiện tuần tự các chương trình
z Hệ điều hành cho máy cá nhân
của người sử dụng
z Xử lý song song (parallel)
z Chương trình không có giao tiếp với người
z Thời gian thực (real-time)
sử dụng
z Nhúng (embedded)
z Cầm tay (portable)
z Đa phương tiện (multimedia)
z Chuyên dụng (special-purpose) 13 14

Đa chương trình Phân chia thời gian/đa nhiệm


z Thuật ngữ: Multiprogramming z Thuật ngữ: time-sharing hoặc multitasking
z Các chương trình được xếp hàng Người sử dụng Thời gian
z Một chương trình được thực hiện và chiếm
giữ CPU cho đến khi (1) có yêu cầu vào/ra,
hoặc (2) kết thúc
Trạm làm việc
z Khi (1) hoặc (2) xảy ra, chương trình khác sẽ
được thực hiện
Trạm làm việc Máy tính
z Tận dụng CPU tốt hơn xử lý theo lô đơn giản
15 16

Một số hệ điều hành Một số hệ điều hành


z UNIX (UNiplexed Information and Computing z Windows (Microsoft): Windows 3.x, Windows
Service): (1) AT&T System V (2) Berkeley 95, Windows 98, Windows 2000, Windows
(BSD) NT, Windows XP, Windows Vista
z AIX dựa trên System V (IBM) z Mac OS, Mac OS X (Apple Inc.)
z HP-UX dựa trên BSD (Hewlett-Packard) z BeOS
z IRIX dựa trên System V (Silicon Graphics Inc.)
z OS 9
z Linux
z OS/2
z Solaris, SunOS (Sun Microsystems)
z Minix z DOS
17
z PalmOS, Symbian 18

3
3/1/2015

Các thành phần của hệ thống


Quản lý tiến trình
Cấu trúc hệ điều hành z

z Quản lý bộ nhớ trong


z Quản lý tệp
z Quản lý vào/ra
z Quản lý lưu trữ trên bộ nhớ ngoài
z Liên kết mạng
z Bảo vệ và an ninh
z Thông dịch lệnh
19 20

Các dịch vụ của hệ điều hành Các hàm hệ thống


z Giao diện với người sử dụng z Các hàm hệ thống (system calls) cung cấp
z Thực hiện các chương trình giao diện lập trình tới các dịch vụ do hệ điều
z Thực hiện các thao tác vào/ra hành cung cấp
z Quản lý hệ thống tệp z Ví dụ trong hệ điều hành Unix:
z Truyền thông z Tạo một tiến trình mới: fork();
z Phát hiện lỗi z Thoát khỏi tiến trình đang thực hiện: exit(1);
z Cấp phát tài nguyên z fork và exit là các hàm hệ thống (Hàm HT)
z “Kế toán”
z Đưa ra các cơ chế bảo vệ và an ninh
21 22

Hàm HT điều khiển tiến trình Hàm HT quản trị tệp


z Kết thúc tiến trình bình thường/bất thường z Tạo, xóa tệp
z Nạp, thực hiện tiến trình z Đóng, mở tệp
z Tạo, kết thúc tiến trình z Đọc, ghi, định vị con trỏ tệp
z Đọc hoặc thiết lập các thuộc tính cho tiến z Đọc, thiết lập thuộc tính của tệp
trình
z Yêu cầu tiến trình vào trạng thái chờ
z Cấp phát và giải phóng bộ nhớ
z Xử lý các sự kiện không đồng bộ
23 24

4
3/1/2015

Hàm HT quản trị thiết bị Hàm HT bảo trì thông tin


z Yêu cầu sử dụng hoặc thôi sử dụng thiết bị z Đọc, thiết lập thời gian hệ thống
z Đọc, ghi, định vị con trỏ z Đọc, ghi dữ liệu về hệ thống
z Đọc, thiết lập thuộc tính cho thiết bị z Đọc thuộc tính tệp, thiết bị, tiến trình
z Attach/detach thiết bị về mặt logic z Thiết lập thuộc tính tệp, thiết bị, tiến trình

25 26

Hàm HT về truyền thông Các chương trình hệ thống


z Tạo, hủy các kết nối mạng z Các chương trình hệ thống cung cấp môi trường
thuận tiện cho việc thực hiện và phát triển
z Truyền nhận các thông điệp chương trình. Chúng được phân loại như sau:
z Lấy thông tin trạng thái truyền thông z Thao tác với tệp
z Thông tin về trạng thái của hệ thống
z Attach/detach các thiết bị ở xa z Sửa đổi tệp
z Hỗ trợ ngôn ngữ lập trình
z Nạp và thực hiện chương trình
z Truyền thông
z Cách nhìn HĐH của NSD được xác định qua các
chương trình hệ thống, không thực sự qua các hàm
hệ thống (system calls).
27 28

Cấu trúc HĐH: Đơn giản Cấu trúc HĐH: Phân tầng
z Thuật ngữ: Simple approach z Thuật ngữ: Layered apparoach
z Ví dụ MS-DOS. (tương tự: UNIX thời gian
đầu) Chương trình ứng dụng

Chương trình resident

Điều khiển thiết bị

Điều khiển thiết bị của


ROM-BIOS
29 30

5
3/1/2015

Cấu trúc HĐH: Phân tầng Cấu trúc HĐH: Vi nhân


z Ví dụ UNIX z Thuật ngữ: Microkernel
z Giữ cho nhân có các đủ các chức năng thiết
yếu nhất để giảm cỡ
z Các chức năng khác được đưa ra ngoài
nhân
z Ví dụ: Mach, Tru64 UNIX, QNX

31 32

Cấu trúc HĐH: Module Máy ảo


z Thuật ngữ: Module approach z Thuật ngữ (Virtual Machine)
z Hiện tại đây là cách tiếp cận tốt nhất (sử z Ví dụ: VMware (sản phẩm thương mại)
dụng được các kỹ thuật lập trình hướng đối
tượng). Ví dụ: Solaris của Sun Microsystem:

33 34

Tóm tắt Tìm hiểu thêm


z Khái niệm HĐH, nhân z Bổ sung một hàm hệ thống mới vào nhân
z Hai cách nhìn HĐH từ NSD và hệ thống Linux và sử dụng hàm đó:
z Các khái niệm xử lý theo lô, đa chương trình z Đọc hướng dẫn trong giáo trình từ trang 74-78
và phân chia thời gian z Thử nghiệm trên RedHat Fedora hoặc
Ubuntu/Debian
z Các thành phần và dịch vụ của HĐH
z Các hàm hệ thống
z Một số cấu trúc phổ biến của HĐH
z Máy ảo
35 36

You might also like