You are on page 1of 70

Translated from English to Vietnamese - www.onlinedoctranslator.

com

Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 1

Chương 1. TỔNG QUAN VỀ HỆ ĐIỀU HÀNH


1. Giới thiệu
1. 1. Hệ điều hành là gì?
• Một chương trình quản lý phần cứng máy
tính
• Cung cấp cơ sở cho các chương trình ứng dụng
• Đóng vai trò trung gian giữa người dùng
máy tính và phần cứng
1.2. Hệ điều hành làm gì
Một hệ thống máy tính có thể được chia
thành bốn thành phần: phần cứng, hệ điều
hành, chương trình ứng dụng và người dùng.
• Chế độ xem của người dùng

• Chế độ xem hệ thống

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 2

Hình 1.1. Cái nhìn tóm tắt về các thành phần của hệ thống máy tính

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 3

1.2.1. Người dùng xem

Chế độ xem máy tính của người dùng thay đổi


tùy theo giao diện đang được sử dụng
• Một người dùng tài nguyên độc quyền
• Nhiều người dùng truy cập máy tính
• Nhiều người dùng ngồi tại các máy trạm được kết
nối với mạng của máy trạm và máy chủ khác
• Máy tính cầm tay
• Máy tính nhúng trong các thiết bị gia đình và
ô tô.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 4

1.2.2. Chế độ xem hệ thống

• Hệ điều hành là chương trình liên quan mật


thiết nhất đến phần cứng. Hệ điều hành với tư
cách là người cấp phát tài nguyên-> người
quản lý tài nguyên.
• Hệ điều hành là một chương trình điều khiển quản lý
việc thực thi các chương trình của người dùng để
ngăn ngừa các lỗi và việc sử dụng máy tính không
đúng cách.
• Nó đặc biệt quan tâm đến việc vận hành và
kiểm soát các thiết bị I / O.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 5

1.3. Cơ quan hóa hệ thống máy tính

• Một hoặc nhiều CPUHình 1.2. Một hệ thống coputer hiện đại

• Bộ điều khiển thiết bị được kết nối với bus chung cung cấp quyền truy
cập để chia sẻ bộ nhớ.

• Bộ điều khiển CPU và thiết bị có thể thực thi đồng thời.

• Bộ điều khiển bộ nhớ cung cấp toàn bộ chức năng là đồng bộ


hóa quyền truy cập vào bộ nhớ.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 6

1.3.1. Vận hành hệ thống máy tính


• Khi khởi động hoặc khởi động lại - nó cần phải có
chương trình ban đầu hoặc chương trình bootstrap để
chạy. Chương trình Bootstrap được lưu trữ trong ROM.
• Chương trình Bootstrap khởi động tất cả các khía cạnh
của hệ thống, từ thanh ghi CPU đến bộ điều khiển thiết
bị cho đến bộ nhớ cạnh tranh.
• Để tải hệ điều hành và bắt đầu thực thi hệ
thống, chương trình bootstrap phải định vị và
tải vào bộ nhớ nhân hệ điều hành.

• Hệ điều hành sau đó bắt đầu thực hiện quy


trình đầu tiên- "init" và đợi một số sự kiện xảy
ra.
Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần
Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 7

• Sự xuất hiện của một sự kiện thường được báo hiệu


bởi một ngắt từ phần cứng hoặc phần mềm. Phần
cứng có thể kích hoạt ngắt bất kỳ lúc nào bằng cách
gửi tín hiệu đến CPU, thường là bằng đường bus hệ
thống. Phần mềm có thể kích hoạt ngắt bằng cách
thực hiện một thao tác đặc biệt được gọi là lệnh gọi
hệ thống (còn được gọi là lệnh gọi màn hình).

• Khi CPU bị ngắt, nó sẽ dừng những gì nó đang


làm và ngay lập tức chuyển việc thực thi đến
một vị trí cố định. Vị trí cố định thường chứa địa
chỉ bắt đầu nơi đặt quy trình dịch vụ cho ngắt.
Quá trình thực thi dịch vụ ngắt; khi hoàn thành,
CPU tiếp tục tính toán bị gián đoạn.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh số 8

Hình 1.3. Dòng thời gian gián đoạn cho một quá trình thực hiện đầu ra

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 9

1.3.2. Cấu trúc lưu trữ


• Các chương trình máy tính phải nằm trong bộ nhớ chính
(RAM) mới được thực thi.
• RAM chỉ là vùng lưu trữ mà bộ xử lý có thể
truy cập trực tiếp.
• RAM tạo thành một mảng các từ bộ nhớ. Mỗi từ
có địa chỉ riêng của nó.
• Sự tương tác đạt được thông qua một chuỗi các trọng
tảihoặccửa hànghướng dẫn đến địa chỉ bộ nhớ cụ
thể.
• Cáctrọng tảidi chuyển một từ từ RAM sang
thanh ghi bên trong CPU, trong khi cửa hàng
lệnh di chuyển cạnh tranh của một thanh ghi
đến RAM.
Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần
Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 10

• RAM thường quá nhỏ để lưu trữ vĩnh viễn tất cả các
chương trình và dữ liệu cần thiết.
• RAM là thiết bị lưu trữ dễ bay hơi mất tính
cạnh tranh khi tắt nguồn hoặc bị mất.

• Hầu hết các hệ thống máy tính đều cung cấp bộ


nhớ thứ cấp như một phần mở rộng của bộ nhớ
chính.
• Hệ thống lưu trữ đa dạng trong hệ thống
máy tính có thể được tổ chức theo thứ bậc
tùy theo tốc độ và chi phí.
- Cấp cao hơn thì tốn kém, nhanh chóng.
- Di chuyển xuống: giá mỗi bit giảm, thời
gian truy cập tăng
Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần
Khoa Công Ng Chí minh 11

Hình 1.4. Hệ thống phân cấp thiết bị lưu trữ

• Các hệ thống lưu trữ bên trên đĩa điện tử là dễ bay hơi, trong khi
các hệ thống lưu trữ bên dưới là không dễ bay hơi.
Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần
Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 12

1.3.3. Cấu trúc I / O


• Một phần lớn mã hệ điều hành được dành
riêng để quản lý I / O, cả vì tầm quan trọng
của nó đối với độ tin cậy và hiệu suất của hệ
thống cũng như vì tính chất khác nhau của
thiết bị.
• Hệ thống máy tính có nhiều bộ điều khiển
thiết bị được kết nối thông qua một bus
chung.
• Mỗi bộ điều khiển thiết bị phụ trách một loại
thiết bị cụ thể. Có thể có nhiều hơn một thiết
bị kèm theo.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 13

• Bộ điều khiển thiết bị duy trì một số bộ nhớ


đệm cục bộ và một bộ thanh ghi mục đích
đặc biệt.
• Bộ điều khiển thiết bị chịu trách nhiệm di
chuyển dữ liệu giữa các thiết bị ngoại vi mà
nó điều khiển và bộ nhớ đệm cục bộ của nó.

• Hệ điều hành có trình điều khiển thiết bị cho


mỗi bộ điều khiển thiết bị. Trình điều khiển
thiết bị hiểu bộ điều khiển thiết bị và hiển thị
giao diện thống nhất cho thiết bị với phần
còn lại của hệ điều hành.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 14

• Để bắt đầu hoạt động I / O, trình điều khiển


thiết bị tải các thanh ghi thích hợp trong bộ
điều khiển thiết bị.
• Bộ điều khiển thiết bị kiểm tra các cạnh tranh của
các thanh ghi này để xác định hành động cần
thực hiện (chẳng hạn như “đọc một ký tự từ bàn
phím).
• Bộ điều khiển bắt đầu truyền dữ liệu từ thiết bị đến
bộ đệm cục bộ của nó, thông báo cho trình điều
khiển thiết bị thông qua một ngắt rằng nó đã kết
thúc hoạt động.
• Trình điều khiển thiết bị sau đó trả lại quyền điều khiển
cho hệ điều hành.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 15

• DMA (Truy cập bộ nhớ trực tiếp) được sử dụng để di


chuyển dữ liệu hàng loạt như I / O đĩa
- Bộ điều khiển thiết bị chuyển toàn bộ khối dữ
liệu trực tiếp đến hoặc từ bộ nhớ đệm của riêng
nó vào bộ nhớ mà không cần sự can thiệp của
CPU.
- Chỉ một ngắt được tạo cho mỗi khối, để
cho trình điều khiển thiết bị biết rằng hoạt
động đã hoàn thành, thay vì một ngắt trên
mỗi byte được tạo cho các thiết bị tốc độ
chậm.
- Có sẵn CPU để hoàn thành công việc khác.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 16

Hình 1.5. Hệ thống máy tính hiện đại hoạt động như thế nào

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 17

1.4. Kiến trúc hệ thống máy tính


Máy tính có thể được tổ chức theo một số cách
khác nhau

1.4.1 Hệ thống bộ xử lý đơn


• Có một CPU chính có khả năng thực thi một tập
lệnh có mục đích chung, bao gồm cả lệnh từ quy
trình của người dùng.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 18

• Hầu hết tất cả các hệ thống đều có các bộ vi xử lý


có mục đích đặc biệt khác. Chúng có thể ở dạng
bộ xử lý dành riêng cho thiết bị, chẳng hạn như
đĩa, bàn phím, bộ điều khiển đồ họa… Chúng có
thể ở dạng bộ xử lý đa năng hơn như bộ xử lý I /
O di chuyển dữ liệu nhanh chóng giữa các thành
phần của hệ thống.
• Bộ xử lý mục đích đặc biệt là các thành phần cấp
thấp được tích hợp trong phần cứng.
• Việc sử dụng các bộ vi xử lý có mục đích đặc biệt
là phổ biến và không biến hệ thống một bộ xử lý
thành một bộ đa xử lý. Nếu chỉ có một CPU cho
mục đích chung, thì hệ thống là hệ thống một
bộ xử lý.
Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần
Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 19

1.4.2 Hệ thống đa xử lý
• Hệ thống đa xử lý (hệ thống song song hoặc
hệ thống kết hợp chặt chẽ) có hai hoặc nhiều
bộ xử lý giao tiếp chặt chẽ, dùng chung bus
máy tính và đôi khi là đồng hồ, bộ nhớ hoặc
các thiết bị ngoại vi.

• Hệ thống đa xử lý có ba ưu điểm chính

- Tăng thông lượng:nhiều công việc được thực hiện trong thời
gian ngắn hơn.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 20

- Nên kinh tê: Hệ thống đa xử lý có thể có chi phí thấp hơn


so với hệ thống đa xử lý đơn tương đương vì chúng có thể
chia sẻ vùng quanh miệng, bộ lưu trữ khối lượng lớn và
nguồn cung cấp năng lượng.
- Tăng độ tin cậy:Nếu các chức năng có thể
được phân phối hợp lý giữa một số bộ xử lý,
thì sự cố của một bộ xử lý sẽ không làm hệ
thống ngừng hoạt động, chỉ làm chậm hệ
thống.
• Hệ thống đa xử lý đang được sử dụng ngày nay có
hai loại.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 21

- Không đối xứng đa chế biến: Mỗi


bộ xử lý được giao một nhiệm vụ cụ thể. Một
bộ xử lý chính điều khiển hệ thống. Các bộ
xử lý khác hoặc tìm kiếm chính để được
hướng dẫn hoặc có các tác vụ được xác định
trước. Lược đồ này xác định mối quan hệ chủ
- tớ. Bộ xử lý chính lên lịch và phân bổ công
việc cho các bộ xử lý phụ.
- Đa xử lý đối xứng (SMP): hệ thống sử dụng
phổ biến nhất. Mỗi bộ xử lý thực hiện tất cả
các tác vụ trong hệ điều hành. Tất cả các bộ xử
lý đều là đồng đẳng, không có mối quan hệ
masterlave nào tồn tại giữa các bộ xử lý.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 22

• SMP là mô hình mà nhiều tiến trình có thể


chạy đồng thời - N tiến trình có thể chạy nếu
có N CPU - mà không làm giảm hiệu suất
đáng kể.
• Tuy nhiên, OS phải kiểm soát cẩn thận I / O để đảm
bảo rằng dữ liệu đến được bộ xử lý thích hợp.
Ngoài ra, vì CPU riêng biệt, một CPU có thể ở chế
độ chờ trong khi một CPU khác bị quá tải, dẫn đến
hoạt động kém hiệu quả. Những sự kém hiệu quả
này có thể tránh được nếu các bộ xử lý chia sẻ một
số cấu trúc dữ liệu nhất định.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 23

• Sự khác biệt giữa đa xử lý đối xứng và


không đối xứng có thể do phần cứng hoặc
phần mềm. Phần cứng đặc biệt có thể
phân biệt nhiều bộ xử lý hoặc phần mềm
có thể được viết để chỉ cho phép một chủ
và nhiều nô lệ.

• Một xu hướng gần đây trong thiết kế CPU là


bao gồm nhiều lõi máy tính trên một chip
duy nhất. Các CPU đa lõi nhìn vào hệ điều
hành giống như N bộ xử lý tiêu chuẩn.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 24

• Máy chủ phiếnlà một sự phát triển gần đây


trong đó nhiều bo mạch xử lý, bo mạch I / O
và bo mạch mạng được đặt trong cùng một
khung. Sự khác biệt giữa hệ thống này và hệ
thống đa xử lý truyền thống là mỗi bo mạch
bộ xử lý phiến khởi động độc lập và chạy hệ
điều hành riêng. Các máy chủ đó bao gồm
nhiều hệ thống đa xử lý độc lập.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 25

1.4.3. Hệ thống cụm


• Một loại hệ thống nhiều CPU khác.
• Giống như các hệ thống đa xử lý, các hệ thống phân
cụm tập hợp nhiều CPU lại với nhau để hoàn thành
công việc tính toán.
• Hệ thống phân cụm khác với hệ thống đa xử lý ở
chỗ chúng bao gồm hai hoặc nhiều hệ thống
riêng lẻ được ghép nối với nhau.
• Định nghĩa được chấp nhận chung là các máy tính
phân cụm chia sẻ dung lượng lưu trữ và được liên
kết chặt chẽ qua mạng cục bộ.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 26

• Clustering thường được sử dụng để cung cấp dịch vụ


có tính khả dụng cao, tức là dịch vụ sẽ tiếp tục ngay cả
khi một hoặc nhiều hệ thống trong cụm bị lỗi. Tính
khả dụng cao thường có được bằng cách thêm một
mức độ dự phòng trong hệ thống.
• Một lớp phần mềm cụm chạy trên các nút cụm.
Mỗi nút có thể giám sát một hoặc nhiều nút
khác (qua mạng LAN). Nếu các máy được giám
sát bị lỗi, máy đơn lẻ có thể chiếm quyền sở hữu
bộ nhớ của nó và khởi động lại các ứng dụng
đang chạy trên máy bị lỗi.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 27

• Phân cụm có thể được cấu trúc không đối xứng


hoặc đối xứng.
• Trong phân nhóm không đối xứng, một máy ở chế độ chờ
nóng trong khi máy kia đang chạy các ứng dụng. Máy
chủ ở chế độ chờ nóng không làm gì khác ngoài việc
giám sát máy chủ đang hoạt động. Nếu máy chủ bị lỗi,
máy chủ ở chế độ chờ nóng sẽ trở thành máy chủ hoạt
động
• Ở chế độ đối xứng, hai hoặc nhiều máy chủ đang
chạy các ứng dụng và đang giám sát lẫn nhau.
Mô hình này hiệu quả hơn, vì nó sử dụng tất cả
các phần cứng có sẵn. Nó yêu cầu có nhiều hơn
một ứng dụng có sẵn để chạy.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 28

• Công nghệ cụm đang thay đổi nhanh chóng. Một số


sản phẩm cụm hỗ trợ hàng chục hệ thống trong
một cụm, cũng như các nút được phân cụm cách
nhau hàng dặm.
• Nhiều cải tiến được thực hiện bởi mạng vùng lưu
trữ (SAN) cho phép nhiều hệ thống gắn một
nhóm lưu trữ.
• Nếu các ứng dụng và dữ liệu của chúng được lưu trữ
trên SAN, thì phần mềm cụm có thể chỉ định ứng
dụng chạy trên bất kỳ máy chủ nào được gắn vào
SAN. Nếu máy chủ bị lỗi, thì bất kỳ máy chủ nào
khác có thể tiếp quản.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 29

1.4.4. Hệ thống phân phối


• MỘThệ thống phân phốilà một tập hợp các bộ xử lý
được ghép nối lỏng lẻo với nhau được kết nối với nhau
bằng mạng truyền thông.
• Các bộ xử lý trong hệ thống phân tán có thể
khác nhau về kích thước và chức năng. Chúng có
thể bao gồm bộ vi xử lý nhỏ, máy trạm, máy tính
mini và hệ thống máy tính đa năng lớn.
• Các bộ xử lý này được gọi bằng một số tên,
chẳng hạn nhưcác trang web,điểm giao,máy
vi tính,vàmáy chủ,tùy thuộc vào ngữ cảnh mà
chúng được đề cập đến.
• Chúng tôi chủ yếu sử dụngĐịa điểmđể chỉ ra vị trí của một máy
móc vàchủ nhàđể tham khảo một hệ thống cụ thể tại một trang
web.
Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần
Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 30

Hình 1.6. Một hệ thống phân tán

• Nói chung, một máy chủ tại một trang web,máy chủ,có một tài
nguyên mà một máy chủ lưu trữ tại một trang web khác,khách hàng
(hoặcngười dùng), muốn sử dụng.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 31

1.4.5. Hệ thống mục đích đặc biệt


• Hệ điều hành thời gian thực-Các hệ thống được đặc
trưng bởi thời gian là một tham số chính. Ví dụ, trong
các hệ thống điều khiển quá trình công nghiệp.
• Hệ điều hành nhúng-Tiếp tục đi xuống các hệ
thống nhỏ hơn và nhỏ hơn, chúng tôi đến với máy
tính bàn tay và hệ thống nhúng. Hệ thống nhúng
chạy trên máy tính điều khiển các thiết bị thường
không được coi là máy tính, chẳng hạn như TV, lò vi
sóng và điện thoại di động. Những hệ thống này
thường có một số đặc điểm của hệ thống thời gian
thực nhưng cũng có những hạn chế về kích thước,
bộ nhớ và công suất khiến chúng trở nên đặc biệt.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 32

1.5. Đặc điểm của hệ điều hành


Về mặt nội bộ, các hệ điều hành khác nhau rất nhiều
về cấu trúc của chúng, vì chúng được tổ chức theo
nhiều đường khác nhau. Tuy nhiên, có nhiều điểm
chung mà chúng ta cần xem xét
1.5.1 Hệ thống đa chương trình
• Một trong những khía cạnh quan trọng nhất của hệ
điều hành là khả năng đa chương trình. Đa chương
trình tạo ra việc sử dụng CPU bằng cách tổ chức các
công việc (dữ liệu và mã) để CPU luôn có một công
việc để thực thi.
• Trong hệ thống này, hệ điều hành giữ một số
công việc trong bộ nhớ đồng thời.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 33

• Tập hợp các công việc có thể là


một tập hợp con của các công
việc được giữ trong nhóm công
việc - chứa tất cả các công việc đi
vào hệ thống. Số lượng công việc
có thể được giữ đồng thời trong
bộ nhớ thường nhỏ hơn số lượng
công việc có thể được giữ trong
nhóm công việc.

• Hệ điều hành chọn và bắt Hình 1.7. Ký ức


đầu thực hiện một trong các bố trí cho một
công việc trong bộ nhớ. đa chương trình
hệ thống

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 34

• Hệ thống đa chương trình cung cấp một môi trường


trong đó các tài nguyên hệ thống khác nhau (chẳng
hạn như CPU, bộ nhớ và thiết bị ngoại vi) được sử
dụng hiệu quả nhưng chúng không cung cấp cho sự
tương tác của người dùng với hệ thống máy tính.

1.5.2. Hệ thống chia sẻ thời gian (hoặc đa nhiệm)


• Đây là một phần mở rộng hợp lý của hệ thống đa chương
trình.
• Trong các hệ thống chia sẻ thời gian, CPU thực hiện nhiều công
việc bằng cách chuyển đổi giữa chúng, nhưng việc chuyển đổi
xảy ra thường xuyên đến mức người dùng có thể tương tác
với từng chương trình khi nó đang chạy.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 35

• Chia sẻ thời gian yêu cầu một hệ thống máy tính


tương tác cung cấp giao tiếp trực tiếp giữa
người dùng và hệ thống. Người dùng đưa ra
hướng dẫn trực tiếp cho hệ điều hành hoặc một
chương trình, sử dụng thiết bị đầu vào và đợi
kết quả ngay lập tức trên thiết bị đầu ra.
• Hệ điều hành chia sẻ thời gian cho phép nhiều người
dùng chia sẻ máy tính đồng thời. Vì mỗi hành động
hoặc lệnh trong hệ thống chia sẻ thời gian có xu
hướng ngắn nên mỗi người dùng chỉ cần một ít thời
gian CPU.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 36

Hình 1.8. Sử dụng CPU trong hệ thống chia sẻ thời gian

• Khi hệ thống chuyển đổi nhanh chóng từ người dùng này sang
người dùng tiếp theo, mỗi người dùng có ấn tượng rằng toàn bộ
hệ thống máy tính được dành riêng cho việc sử dụng của họ,
mặc dù nó đang được chia sẻ cho nhiều người dùng.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 37

• Hệ điều hành chia sẻ thời gian sử dụng lập lịch CPU và


lập trình đa chương trình để cung cấp cho mỗi người
dùng một phần nhỏ của máy tính chia sẻ thời gian.
Mỗi người dùng có ít nhất một chương trình riêng biệt
trong bộ nhớ. Một chương trình được tải vào bộ nhớ
và thực thi là cuộc gọitiến trình

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 38

1.6. Hoạt động của hệ điều hành


• Hệ điều hành hiện đại được điều khiển gián
đoạn.
• Nếu không có quy trình nào để thực thi, không có
thiết bị I / O nào để phục vụ và không có người
dùng nào để phản hồi, hệ điều hành sẽ ngồi yên
lặng, chờ đợi điều gì đó xảy ra.
• Các sự kiện hầu như luôn được báo hiệu bằng
sự xuất hiện của ngắt hoặc bẫy.
• Bẫy (hoặc một ngoại lệ) là một ngắt do phần
mềm tạo ra do lỗi (chia cho 0 hoặc truy cập bộ
nhớ không hợp lệ) hoặc bởi một yêu cầu cụ
thể từ một chương trình người dùng mà một
dịch vụ hệ điều hành được thực hiện.
Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần
Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 39

• Đối với mỗi loại ngắt, các đoạn mã riêng biệt


trong hệ điều hành xác định hành động nào
cần được thực hiện.
• Vì hệ điều hành và người dùng chia sẻ tài
nguyên phần cứng và phần mềm của hệ
thống máy tính, chúng tôi (OS) cần đảm bảo
rằng một lỗi trong chương trình người dùng
chỉ có thể gây ra sự cố cho một chương
trình đang chạy.
• Với việc chia sẻ, nhiều quy trình có thể bị ảnh
hưởng bất lợi do một lỗi trong một chương trình.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 40

• Nếu không có biện pháp bảo vệ chống lại các loại lỗi
này, máy tính chỉ được thực thi một quá trình tại một
thời điểm hoặc tất cả đầu ra phải bị nghi ngờ.
• Một hệ điều hành được thiết kế phù hợp phải đảm
bảo rằng một chương trình không chính xác (hoặc
độc hại) không thể khiến các chương trình khác thực
thi sai.
1.6.1. Hoạt động ở chế độ kép
• Ít nhất, chúng tôi (OS) cần hai chế độ riêng biệt
của hệ điều hành
- Chế độ người dùng
- Chế độ hạt nhân (chế độ giám sát, chế độ hệ
thống hoặc chế độ đặc quyền)
Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần
Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 41

• Một bit, được gọi là bit chế độ, được thêm vào phần
cứng của máy tính để chỉ ra chế độ hiện tại:chế độ
hạt nhân (0)hoặcchế độ người dùng (1).
• Với bit mode, chúng ta có thể phân biệt giữa tác
vụ được thực thi thay mặt cho hệ điều hành và
tác vụ được thực thi thay mặt cho người dùng.

• Khi hệ thống máy tính đang thực thi nhân danh ứng
dụng người dùng, hệ thống đang ở chế độ người
dùng. Tuy nhiên, khi ứng dụng người dùng yêu cầu
một dịch vụ từ hệ điều hành (thông qua lệnh gọi hệ
thống), nó phải chuyển từ chế độ người dùng sang
chế độ hạt nhân để thực hiện yêu cầu.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 42

Hình 1.9. Chuyển đổi từ người dùng sang chế độ hạt nhân

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 43

• Tại thời điểm khởi động hệ thống, phần cứng khởi động
ở chế độ hạt nhân. Hệ điều hành sau đó được tải và khởi
động các ứng dụng người dùng ở chế độ người dùng.

• Bất cứ khi nào, bẫy hoặc ngắt xảy ra, phần cứng
sẽ chuyển từ chế độ người dùng sang chế độ hạt
nhân. Do đó, bất cứ khi nào hệ điều hành giành
được quyền kiểm soát máy tính, nó sẽ ở chế độ
hạt nhân.
• Hệ thống luôn chuyển sang chế độ người dùng trước khi
chuyển quyền điều khiển cho chương trình người dùng.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 44

• Chế độ hoạt động kép cung cấp cho chúng


tôi các phương tiện để bảo vệ hệ điều hành
khỏi người dùng sai lầm và người dùng sai
lầm lẫn nhau.
• Hoàn thành biện pháp bảo vệ này bằng cách
chỉ định một số hướng dẫn máy có thể gây hại
làm hướng dẫn đặc quyền. Phần cứng chỉ cho
phép các lệnh đặc quyền được thực thi trong
chế độ hạt nhân.
• Nếu cố gắng thực hiện một lệnh đặc quyền
trong chế độ người dùng, phần cứng sẽ
không thực hiện lệnh đó mà coi nó là bất hợp
pháp và bẫy nó vào hệ điều hành.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 45

• Lệnh gọi hệ thống cung cấp phương tiện để


chương trình người dùng yêu cầu hệ điều hành
thay mặt chương trình người dùng thực hiện các
tác vụ dành riêng cho hệ điều hành.
• Một lệnh gọi hệ thống được gọi theo nhiều cách
khác nhau, tùy thuộc vào chức năng được cung cấp
bởi bộ xử lý bên dưới. Trong tất cả các hình thức,
nó là phương thức được sử dụng bởi một quy trình
để yêu cầu hệ điều hành hành động.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 46

1.6.2. Hẹn giờ


• Để đảm bảo rằng hệ điều hành duy trì quyền kiểm soát
đối với CPU và phải ngăn chương trình người dùng bị
mắc kẹt trong một vòng lặp vô hạn hoặc không gọi
các dịch vụ hệ thống và không bao giờ trả lại quyền
kiểm soát cho hệ điều hành.
• Hệ điều hành sử dụnghẹn giờđể hoàn thành mục
tiêu này.
• MỘThẹn giờcó thể được thiết lập để ngắt máy tính sau một
khoảng thời gian xác định.
• Khoảng thời gian có thể cố định hoặc thay đổi. Một biến số
hẹn giờthường được thực hiện bởi một đồng hồ tốc độ cố
định và một bộ đếm.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 47

• Hệ điều hành đặt bộ đếm. Mỗi khi đồng hồ tích


tắc, bộ couter sẽ giảm đi. Khi bộ đếm về 0, ngắt
xảy ra
• Trước khi chuyển quyền điều khiển cho người
dùng, hệ điều hành đảm bảo được thiết lập để
ngắt. Nếu bộ hẹn giờ ngắt, điều khiển sẽ tự động
chuyển đến hệ điều hành, điều này có thể coi việc
ngắt là một lỗi nghiêm trọng hoặc có thể cho
chương trình thêm thời gian.
• Chúng ta có thể sử dụng bộ hẹn giờ để ngăn chương
trình người dùng chạy quá lâu. Một kỹ thuật đơn giản
là khởi tạo một bộ đếm có gắn thời gian mà một
chương trình được phép chạy.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 48
1.7. Quản lý quy trình
• Một chương trình không làm gì cả trừ khi các lệnh của nó được
CPU thực thi. Gropram trong quá trình thực hiện là một quá
trình.
• Một tiến trình cần một số tài nguyên nhất định - bao gồm thời
gian CPU, bộ nhớ, tệp và thiết bị I / O để hoàn thành nhiệm vụ
của nó. Các tài nguyên này hoặc được cấp cho tiến trình khi nó
được tạo hoặc được cấp phát cho nó trong khi nó đang chạy.

• Ngoài các tài nguyên vật lý và logic khác nhau mà


một quá trình thu được khi nó được tạo ra, nhiều dữ
liệu khởi tạo (đầu vào) khác nhau có thể được
chuyển cùng. Khi quá trình kết thúc, hệ điều hành sẽ
lấy lại mọi tài nguyên có thể tái sử dụng.
Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần
Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 49

• Quy trình là đơn vị công việc trong một hệ thống. Một hệ


thống như vậy bao gồm một tập hợp các quy trình, một
số trong số đó là các quy trình của hệ điều hành (những
quy trình thực thi mã hệ thống) và phần còn lại là quy
trình của người dùng (những quy trình thực thi mã người
dùng).
• Hệ điều hành chịu trách nhiệm
- Tạo và xóa cả người dùng và quy trình hệ thống.

- Tạm dừng và tiếp tục các quy trình


- Cung cấp cơ chế vì tiến trình
sự đồng bộ hóa.
- Cung cấp cơ chế vì tiến trình
truyền thông.
- Cung cấp cơ chế xử lý bế tắc
Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần
Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 50

1.8. Quản lý bộ nhớ


• Bộ nhớ chính là trung tâm của hệ thống máy
tính hiện đại. Bộ nhớ chính là một mảng lớn
các từ hoặc byte. Mỗi từ hoặc byte có địa chỉ
riêng của nó.
• Bộ nhớ chính là một kho lưu trữ dữ liệu có thể truy
cập nhanh chóng được chia sẻ bởi CPU và các thiết bị
I / O.
• Bộ xử lý trung tâm đọc và ghi dữ liệu từ bộ
nhớ chính.
• Để một chương trình được thực thi, nó phải
được ánh xạ tới các địa chỉ tuyệt đối và tải vào
bộ nhớ.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 51

• Khi chương trình thực thi, nó truy cập các lệnh


chương trình và dữ liệu từ bộ nhớ bằng cách
tạo ra các địa chỉ tuyệt đối này.
• Cuối cùng, chương trình kết thúc, không gian bộ
nhớ của nó được khai báo là có sẵn, và chương
trình tiếp theo có thể được tải và thực thi.
• Hệ điều hành chịu trách nhiệm
- Theo dõi phần nào của bộ nhớ hiện đang
được sử dụng và bởi ai.
- Quyết định quá trình và dữ liệu nào sẽ di chuyển
và ra khỏi bộ nhớ.
- Phân bổ và giải quyết không gian bộ nhớ khi cần
thiết.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 52

1.9. Quản lý lưu trữ


Để làm cho hệ thống máy tính thuận tiện cho
người sử dụng, hệ điều hành cung cấp một
cái nhìn thống nhất và logic về lưu trữ thông
tin. Hệ điều hành tóm tắt từ các thuộc tính
vật lý của các thiết bị lưu trữ của nó để xác
định một đơn vị lưu trữ logic-thetập tin. Hệ
thống lựa chọn ánh xạ các tệp lên phương
tiện vật lý và truy cập các tệp này qua thiết bị
lưu trữ.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 53

1.9.1. Quản lý hệ thống tệp


• Máy tính có thể lưu trữ thông tin trên một số
loại phương tiện vật lý khác nhau. Mỗi phương
tiện này có đặc điểm và tổ chức vật lý riêng.
Mỗi phương tiện được điều khiển bởi một thiết
bị như ổ đĩa hoặc ổ băng, thiết bị đó cũng có
những đặc điểm riêng biệt.

• Hệ điều hành thực hiện khái niệm trừu tượng về


tệp bằng cách quản lý các phương tiện lưu trữ đại
chúng, chẳng hạn như băng và đĩa và các thiết bị
điều khiển chúng. Ngoài ra, các tệp thường được
tổ chức thành các thư mục để dễ sử dụng hơn.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 54

• Hệ điều hành chịu trách nhiệm


- Tạo và xóa tệp
- Tạo và xóa thư mục để tổ chức các tập tin.

- Hỗ trợ các nguyên tác để thao tác với tệp và


thư mục.
- Ánh xạ các tệp vào bộ nhớ phụ
- Sao lưu các tập tin trên phương tiện lưu trữ ổn định (không
thay đổi).

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 55

1.9.2. Quản lý bộ nhớ chung


• Hầu hết hệ thống máy tính hiện đại sử dụng đĩa như một
phương tiện lưu trữ trực tuyến chính cho cả chương
trình và dữ liệu
• Hầu hết các chương trình được lưu trữ trên đĩa cho đến
khi được tải vào bộ nhớ và sau đó sử dụng đĩa làm
nguồn và đích xử lý của chúng. Do đó, việc quản lý
thích hợp dung lượng lưu trữ trên đĩa có tầm quan
trọng trung tâm đối với hệ thống máy tính.
• Hệ điều hành chịu trách nhiệm
- Quản lý không gian trống
- Phân bổ lưu trữ
- Lập lịch đĩa

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 56

1.9.3. Bộ nhớ đệm

• Tính tiền là một nguyên tắc quan trọng của hệ thống máy
tính. Thông tin thường được lưu giữ trong một số hệ thống
lưu trữ (chẳng hạn như bộ nhớ chính). Khi được sử dụng,
nó được sao chép vào một hệ thống lưu trữ nhanh hơn -
tạm thời là hạt điều.
• Khi chúng tôi cần một thông tin cụ thể, trước tiên
chúng tôi kiểm tra xem nó có phải là tiền mặt hay
không. Nếu có, chúng tôi sử dụng thông tin trực
tiếp từ hạt điều; nếu không, chúng tôi sử dụng
thông tin từ nguồn, đặt một bản sao vào hạt điều
với giả định rằng chúng tôi sẽ sớm cần lại.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 57

• Bởi vì bộ nhớ đệm có kích thước giới hạn, quản lý


bộ đệm là một vấn đề thiết kế quan trọng. Việc
lựa chọn cẩn thận kích thước hạt điều và chính
sách thay thế có thể làm tăng hiệu suất đáng kể.

Hình 1.9. Hiệu suất của các mức lưu trữ khác nhau
Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần
Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 58

1.10. Bảo vệ và an ninh


Nếu một hệ thống máy tính có nhiều người
dùng và cho phép thực hiện nhiều quá trình, thì
quyền truy cập vào dữ liệu phải được điều chỉnh.
Vì mục đích đó, các cơ chế đảm bảo rằng các
tệp, phân đoạn bộ nhớ, CPU và các tài nguyên
khác chỉ có thể được vận hành bởi những quy
trình đã được hệ điều hành ủy quyền thích hợp.

• Sự bảo vệlà bất kỳ cơ chế nào để kiểm soát quyền truy


cập của các quy trình hoặc người dùng vào các tài
nguyên do máy tính xác định.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 59

• Một hệ thống có thể được bảo vệ đầy đủ nhưng vẫn


dễ bị lỗi và cho phép truy cập không phù hợp. Hãy
xem xét một người dùng có thông tin xác thực bị
đánh cắp. Dữ liệu của cô ấy có thể bị sao chép hoặc
xóa, mặc dù tính năng bảo vệ tệp và bộ nhớ đang
hoạt động.
• Bảo vệlà để bảo vệ một hệ thống khỏi các cuộc tấn
công bên ngoài và bên trong. Chuỗi tấn công như vậy
trên một phạm vi rộng lớn và bao gồm vi rút và sâu từ
chối dịch vụ, đánh cắp dịch vụ (sử dụng trái phép hệ
thống)…
• Sự bảo vệvàBảo vệyêu cầu hệ thống có khả năng phân
biệt giữa tất cả người dùng của nó. Hầu hết các hệ điều
hành duy trì một danh sách tên người dùng và mã định
danh người dùng được liên kết (ID người dùng).
Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần
Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 60

1.11. Sự phát triển của hệ điều hành

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 61

2. Cấu trúc hệ điều hành (Tham khảo)


2.1. Vận hành các dịch vụ hệ thống
2.2 Giao diện hệ điều hành người dùng
2.3. Cuộc gọi hệ thống

2.4 Loại cuộc gọi hệ thống


2.5 Chương trình hệ thống

2.6.Operating System Struture


2.7.Máy ảo
2.8. Vận hành tạo hệ thống
2.9 Khởi động hệ thống

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 62

2.1. Vận hành các dịch vụ hệ thống

Hình 2.1. Dịch vụ hệ điều hành

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 63

2.2 Giao diện hệ điều hành người dùng


• Giao diện dòng lệnh (CLI) hoặcthông dịch lệnh
cho phép nhập lệnh trực tiếp.
• Giao diện người dùng đồ họa (GUI)
- Thường là chuột, bàn phím và màn hình
- Biểu tượngđại diện cho các tệp, chương trình, hành động, v.v.

- Các nút chuột khác nhau trên các đối tượng trong
giao diện gây ra các hành động khác nhau (cung cấp
thông tin, tùy chọn, thực thi chức năng, mở thư mục
(được gọi làthư mục)
• Nhiều hệ thống hiện bao gồm cả giao diện CLI
và GUI

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 64

2.3. Cuộc gọi hệ thống

• Lập trình giao diện cho các dịch vụ do HĐH cung cấp

• Thường được viết bằng ngôn ngữ cấp cao (C hoặc C ++)
• Phần lớn được các chương trình truy cập thông qua mức cao Giao
diện chương trình ứng dụng (API)thay vì sử dụng cuộc gọi hệ
thống trực tiếp
• Ba API phổ biến nhất là API Win32 cho Windows, API
POSIX cho các hệ thống dựa trên POSIX (bao gồm hầu
như tất cả các phiên bản của UNIX, Linux và Mac OS X) và
API Java cho máy ảo Java (JVM)
• Tại sao lại sử dụng các API hơn là các lệnh gọi hệ thống?

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 65

2.4 Loại cuộc gọi hệ thống

• Kiểm soát quy trình


• Quản lý tệp
• Quản lý thiết bị
• Bảo trì thông tin
• Thông tin liên lạc
• Sự bảo vệ

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 66

2.5 Chương trình hệ thống


• Cung cấp một môi trường thuận tiện để phát triển và
thực hiện chương trình
• Quản lý tệp -Tạo, xóa, sao chép, đổi tên, in, kết xuất,
danh sách và thao tác chung với các tệp và thư mục

• Thông tin trạng thái


• Sửa đổi tệp
• Ngôn ngữ lập trình ủng hộ - Trình biên dịch,
trình lắp ráp, trình gỡ rối và thông dịch viên đôi khi được
cung cấp
• Tải và thực thi chương trình-Trình tải tuyệt đối, trình tải
lại nhãn, trình chỉnh sửa liên kết và trình tải lớp phủ, hệ
thống gỡ lỗi cho ngôn ngữ máy và cấp cao hơn

• Truyền thông -Cung cấp cơ chế tạo kết nối ảo giữa các
quy trình, người dùng và hệ thống máy tính

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 67

2.6.Operating System Struture


• Cấu trúc đơn giản
• Phương pháp tiếp cận theo lớp

• Kênh nhỏ
• Mô-đun

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 68

2.7.Máy ảo

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 69

2.8. Vận hành tạo hệ thống


• Hệ điều hành được thiết kế để chạy trên bất kỳ
loại máy nào; hệ thống phải được cấu hình cho
từng trang máy tính cụ thể.
• Chương trình SYSGEN thu thập thông tin liên
quan đến cấu hình cụ thể của hệ thống phần
cứng.
• Khởi động– Khởi động máy tính bằng cách tải hạt
nhân.
• Chương trình Bootstrap–Code được lưu trữ trong
ROM có thể định vị hạt nhân, tải nó vào bộ nhớ và
bắt đầu thực thi.

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần


Khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh 70

2.9 Khởi động hệ thống

• Hệ điều hành phải được cung cấp cho phần cứng để


phần cứng có thể khởi động nó.

Thẩm quyền giải quyết : Silberschatz-Galvin-Gagne,


Điều hành Khái niệm hệ thống, Hoa Kỳ,
2005. (http://www.os-book.com)

Bài giảng Hệ Điều hành Nâng Cao Phan Vĩnh Thuần

You might also like