You are on page 1of 79

Machine Translated by Google

ĐẠI HỌC KINH TẾ QUỐC DÂN


TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ KINH TẾ SỐ

CHƯƠNG I

GIỚI THIỆU
Machine Translated by Google

ĐỀ CƯƠNG

Hệ điều hành là gì? Tổ chức

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

điều hành Quản lý quy trình

Quản lý tài nguyên An

ninh và bảo vệ

Ảo hóa

Lịch sử hệ điều hành

Phân loại hệ điều hành


Machine Translated by Google

MỤC TIÊU

Mô tả tổ chức chung của hệ thống máy tính

Mô tả các thành phần trong hệ thống máy tính đa bộ xử lý hiện đại

Minh họa quá trình khởi động một hệ điều hành

Áp dụng các công cụ giám sát hiệu năng hệ điều hành

Thảo luận về các yếu tố ảnh hưởng đến lịch sử phát triển của hệ điều hành

3
Machine Translated by Google

HỆ THỐNG VẬN HÀNH LÀ GÌ?

Một chương trình đóng vai trò trung gian giữa người sử dụng máy tính và
phần cứng máy tính

Mục tiêu của hệ điều hành:

Thực thi các chương trình người dùng và giúp giải quyết các vấn đề của người dùng dễ dàng hơn

Làm cho hệ thống máy tính trở nên thuận tiện khi sử dụng

Sử dụng phần cứng máy tính một cách hiệu quả

4
Machine Translated by Google

CẤU TRÚC HỆ THỐNG MÁY TÍNH

Hệ thống máy tính có thể được chia làm 4 thành phần:

Phần cứng – cung cấp các tài nguyên tính toán cơ bản

CPU, bộ nhớ, thiết bị I/O

Hệ điều hành
Kiểm soát và điều phối việc sử dụng phần cứng giữa các ứng dụng và người dùng khác nhau

Các chương trình ứng dụng – xác định cách thức sử dụng tài nguyên hệ thống để giải quyết các vấn đề
vấn đề tính toán của người dùng

Bộ xử lý văn bản, trình biên dịch, trình duyệt web, hệ thống cơ sở dữ liệu, trò chơi điện tử

Người dùng

Con người, máy móc, các máy tính khác

5
Machine Translated by Google

TÓM TẮT CÁC THÀNH PHẦN CỦA MÁY TÍNH

6
Machine Translated by Google

HỆ THỐNG VẬN HÀNH LÀ GÌ?

Hệ điều hành là chương trình quản lý phần

cứng của máy tính.

Nó cũng cung cấp nền tảng cho các

chương trình ứng dụng và đóng vai trò trung

gian giữa người dùng máy tính và phần cứng máy

tính.

7
Machine Translated by Google

HỆ ĐIỀU HÀNH LÀM GÌ

Phụ thuộc vào quan điểm

Người dùng muốn sự thuận tiện, dễ sử dụng và hiệu suất tốt


Không quan tâm đến việc sử dụng tài nguyên

Nhưng máy tính dùng chung như máy tính lớn hoặc máy tính mini phải làm cho tất cả người dùng hài lòng

Hệ điều hành là chương trình cấp phát và điều khiển tài nguyên giúp sử dụng hiệu quả CTNH và quản lý việc thực thi của người dùng
chương trình

Người sử dụng các hệ thống chuyên dụng như máy trạm có tài nguyên chuyên dụng nhưng thường xuyên sử dụng tài nguyên chia sẻ từ
máy chủ

Các thiết bị di động như điện thoại thông minh và máy tính bảng có ít tài nguyên, được tối ưu hóa về khả năng sử dụng và thời lượng pin

Giao diện người dùng di động như màn hình cảm ứng, nhận dạng giọng nói

Một số máy tính có ít hoặc không có giao diện người dùng, chẳng hạn như máy tính nhúng trong thiết bị và ô tô
Chạy chủ yếu mà không cần sự can thiệp của người dùng

số 8
Machine Translated by Google

ĐỊNH NGHĨA HỆ ĐIỀU HÀNH

Thuật ngữ OS bao hàm nhiều vai trò

Do có vô số thiết kế và cách sử dụng hệ điều hành

Hiện diện trong lò nướng bánh thông qua tàu thủy, tàu vũ trụ, máy chơi game, TV và bộ điều khiển công nghiệp

hệ thống

Ra đời khi máy tính sử dụng cố định cho quân đội trở thành mục đích chung hơn và cần quản lý tài nguyên
cũng như kiểm soát chương trình

9
Machine Translated by Google

ĐỊNH NGHĨA HỆ ĐIỀU HÀNH (TIẾP THEO)

Không có định nghĩa được chấp nhận rộng rãi

Bộ cấp phát tài nguyên – quản lý và phân bổ tài nguyên.

Chương trình điều khiển – điều khiển việc thực hiện các chương trình và hoạt động của người dùng
Các thiết bị vào/ra.

Kernel – một chương trình luôn chạy, Cùng với kernel còn có
hai loại chương trình khác:

Các chương trình hệ thống được liên kết với hệ điều hành nhưng không nhất thiết phải
một phần của hạt nhân

Các chương trình ứng dụng, bao gồm tất cả các chương trình không liên quan đến hoạt động của

hệ thống.
10
Machine Translated by Google

MỤC TIÊU HỆ ĐIỀU HÀNH

Thực thi các chương trình người dùng và giúp giải quyết các vấn đề của người dùng dễ dàng hơn.

Làm cho hệ thống máy tính trở nên thuận tiện khi sử dụng.

Sử dụng phần cứng máy tính một cách hiệu quả.

11
Machine Translated by Google

ĐỀ CƯƠNG

Hệ điều hành là gì? Tổ chức

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

điều hành Quản lý quy trình

Quản lý tài nguyên An

ninh và bảo vệ

Ảo hóa

Lịch sử hệ điều hành

Phân loại hệ điều hành


Machine Translated by Google

TỔ CHỨC HỆ THỐNG MÁY TÍNH

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


Một hoặc nhiều CPU, bộ điều khiển thiết bị kết nối thông qua bus chung cung cấp quyền truy cập vào
bộ nhớ chia sẻ

Thực thi đồng thời các CPU và thiết bị cạnh tranh nhau về chu kỳ bộ nhớ

13
Machine Translated by Google

CẤU TRÚC I/O

Các thiết bị I/O và CPU có thể thực thi đồng thời Một hệ thống

máy tính bao gồm các CPU và 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ị chịu trách nhiệm về một loại


thiết bị.

Bộ điều khiển thiết bị duy trì một số bộ nhớ đệm cục bộ và


một tập hợp các thanh ghi có 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ó

Thông thường, 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ị

Bộ điều khiển thiết bị thông báo cho CPU rằng nó đã hoàn thành

hoạt động bằng cách gây ra một sự gián đoạn


14
Machine Translated by Google

CHỨC NĂNG CHUNG CỦA INTERrupt

Ngắt chuyển điều khiển sang chương trình dịch vụ ngắt nói chung thông qua vectơ ngắt

chứa địa chỉ của tất cả các dịch vụ


thói quen

Kiến trúc ngắt phải lưu địa chỉ của lệnh bị gián đoạn

Bẫy hoặc ngoại lệ là một ngắt do phần mềm tạo ra do


lỗi hoặc yêu cầu của người dùng

Một hệ điều hành bị điều khiển bởi ngắt

15
Machine Translated by Google

THỜI GIAN NGỪNG

16
Machine Translated by Google

XỬ LÝ GIÁN ĐOẠN

Hệ điều hành duy trì trạng thái của CPU bằng cách lưu trữ các thanh ghi và bộ
đếm chương trình

Xác định loại ngắt nào đã xảy ra:

Các đoạn mã riêng biệt xác định hành động nào cần được thực hiện cho mỗi đoạn mã
loại ngắt

17
Machine Translated by Google

CHU KỲ I/O LÁI XE NGẮT

18
Machine Translated by Google

CẤU TRÚC BỘ LƯU TRỮ

Bộ nhớ chính – chỉ phương tiện lưu trữ lớn mà CPU có thể truy cập trực tiếp

Truy cập ngẫu nhiên

Thường dễ biến động

Thông thường bộ nhớ truy cập ngẫu nhiên ở dạng Bộ nhớ truy cập ngẫu nhiên động
(DRAM)

Bộ lưu trữ thứ cấp – phần mở rộng của bộ nhớ chính cung cấp dung lượng lưu trữ không biến đổi lớn

19
Machine Translated by Google

CẤU TRÚC BỘ LƯU TRỮ (TIẾP THEO)

Ổ đĩa cứng (HDD) – đĩa cứng bằng kim loại hoặc thủy tinh được phủ vật liệu ghi từ tính

Bề mặt đĩa được phân chia một cách hợp lý thành các track, các track này được chia thành các khu vực

Bộ điều khiển đĩa xác định sự tương tác logic giữa thiết bị và máy tính

Thiết bị bộ nhớ không khả biến (NVM)– nhanh hơn đĩa cứng, không khả biến

Công nghệ đa dạng

Trở nên phổ biến hơn khi dung lượng và hiệu suất tăng, giá giảm

20
Machine Translated by Google

CẤU TRÚC BỘ LƯU TRỮ

Hệ thống lưu trữ được tổ chức theo thứ bậc

Tốc độ

Chi phí

Sự biến động

Bộ nhớ đệm – sao chép thông tin vào hệ thống lưu trữ nhanh hơn; bộ nhớ chính có thể
được xem như một bộ đệm cho bộ nhớ thứ cấp

Trình điều khiển thiết bị cho từng bộ điều khiển thiết bị để quản lý I/O

Cung cấp giao diện thống nhất giữa bộ điều khiển và kernel

21
Machine Translated by Google

CẤU TRÚC BỘ LƯU TRỮ

CPU chỉ có thể tải các lệnh


từ bộ nhớ chính nên mọi chương trình chạy đều
phải được lưu trữ ở đó.

Một thanh ghi có thể chứa một lệnh, một địa

chỉ lưu trữ hoặc bất kỳ loại dữ liệu nào.

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

22
Machine Translated by Google

MÁY TÍNH HIỆN ĐẠI HOẠT ĐỘNG NHƯ THẾ NÀO

Kiến trúc von Neumann

23
Machine Translated by Google

CƠ CẤU TRUY CẬP BỘ NHỚ TRỰC TIẾP

Được sử dụng cho các thiết bị I/O tốc độ cao có khả năng truyền thông tin ở tốc độ
gần bằng tốc độ bộ nhớ

Bộ điều khiển thiết bị chuyển các khối dữ liệu từ bộ nhớ đệm trực tiếp sang bộ nhớ chính mà
không cần sự can thiệp của CPU

Chỉ có một ngắt được tạo ra trên mỗi khối, thay vì một ngắt trên mỗi khối
byte

24
Machine Translated by Google

KHỞI ĐỘNG MÁY TÍNH

Chương trình Bootstrap được tải khi bật nguồn hoặc khởi động lại

Thường được lưu trữ trong ROM hoặc EPROM, thường được gọi là phần sụn

Khởi tạo tất cả các khía cạnh của hệ thống

Nạp kernel hệ điều hành và bắt đầu thực thi

25
Machine Translated by Google

KIẾN TRÚC HỆ THỐNG MÁY TÍNH

Hầu hết các hệ thống sử dụng một bộ xử lý đa năng

Hầu hết các hệ thống đều có bộ xử lý chuyên dụng

Hệ thống đa bộ xử lý ngày càng được sử dụng và quan trọng


Còn được gọi là hệ thống song song, hệ thống liên kết chặt chẽ

Ưu điểm bao gồm: 1. Tăng

thông lượng

2. Tính kinh tế của

quy mô 3. Độ tin cậy tăng lên – suy giảm nhẹ hoặc khả năng chịu lỗi

Hai loại:

1. Đa xử lý bất đối xứng – mỗi bộ xử lý được giao một nhiệm vụ cụ thể.

2. Đa xử lý đối xứng – mỗi bộ xử lý thực hiện tất cả các tác vụ


26
Machine Translated by Google

KIẾN TRÚC ĐA XỬ LÝ ĐỐI XƯỢNG

27
Machine Translated by Google

THIẾT KẾ DUAL-CORE

Đa chip và đa lõi

Hệ thống chứa tất cả các chip

Khung chứa nhiều hệ thống riêng biệt

28
Machine Translated by Google

HỆ THỐNG CỤM

Giống như hệ thống đa bộ xử lý, nhưng nhiều hệ thống làm việc cùng nhau

Thường chia sẻ lưu trữ qua mạng vùng lưu trữ (SAN)

Cung cấp dịch vụ có tính sẵn sàng cao vượt qua các lỗi

Phân cụm bất đối xứng có một máy ở chế độ dự phòng nóng

Phân cụm đối xứng có nhiều nút chạy ứng dụng, giám sát lẫn nhau

Một số cụm dành cho điện toán hiệu năng cao (HPC)

Các ứng dụng phải được viết để sử dụng song song

Một số có trình quản lý khóa phân tán (DLM) để tránh các hoạt động xung đột

29
Machine Translated by Google

HỆ THỐNG CỤM

30
Machine Translated by Google

MÁY CHỦ KHÁCH HÀNG

Máy tính client-server


Thiết bị đầu cuối câm được thay thế bởi PC

thông minh Nhiều hệ thống hiện là máy chủ, đáp ứng các yêu cầu do khách hàng tạo ra

Hệ thống máy chủ điện toán cung cấp giao diện cho máy khách để yêu cầu dịch vụ (tức là cơ sở dữ

liệu) Hệ thống máy chủ tệp cung cấp giao diện để máy khách lưu trữ và truy xuất tệp

31
Machine Translated by Google

BO MẠCH CHỦ PC

32
Machine Translated by Google

ĐỀ CƯƠNG

Hệ điều hành là gì? Tổ chức

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

điều hành Quản lý quy trình

Quản lý tài nguyên An

ninh và bảo vệ

Ảo hóa

Lịch sử hệ điều hành

Phân loại hệ điều hành


Machine Translated by Google

VẬN HÀNH HỆ ĐIỀU HÀNH

Chương trình Bootstrap – mã đơn giản để khởi tạo hệ thống, tải kernel
Tải hạt nhân

Khởi động các daemon hệ thống (các dịch vụ được cung cấp bên ngoài kernel) Điều khiển

ngắt kernel (phần cứng và phần mềm) Ngắt phần cứng bởi một trong

các thiết bị Ngắt phần mềm (ngoại lệ hoặc bẫy):

Lỗi phần mềm (ví dụ chia cho 0) Yêu cầu

cho dịch vụ hệ điều hành – lời gọi hệ

thống Các vấn đề về quy trình khác bao gồm vòng lặp

vô hạn, các quy trình sửa đổi lẫn nhau hoặc hệ điều hành
hệ thống

34
Machine Translated by Google

LẬP TRÌNH ĐA NĂNG (HỆ THỐNG BATCH)

Một người dùng không thể luôn luôn khiến CPU và các thiết bị I/O

bận rộn Đa chương trình tổ chức các công việc (mã và dữ liệu) để CPU luôn có một người để
hành hình

Một tập hợp con của tổng số công việc trong hệ thống được lưu giữ trong bộ nhớ

Một công việc được lựa chọn và thực hiện thông qua lập kế hoạch công việc

Khi công việc phải chờ (ví dụ I/O), hệ điều hành sẽ chuyển sang công việc khác

35
Machine Translated by Google

Đ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

Ý tưởng như sau:

Hệ điều hành giữ đồng thời nhiều công việc trong bộ


nhớ.

Nói chung, bộ nhớ chính quá nhỏ để


đáp ứng tất cả các công việc, các công việc ban đầu được lưu giữ

trên đĩa trong nhóm công việc.

Nhóm này bao gồm tất cả các tiến trình nằm trên đĩa
đang chờ cấp phát bộ nhớ chính.

36
Machine Translated by Google

ĐA CHƯƠNG TRÌNH

Tập các công việc trong bộ nhớ có thể là một tập hợp con của các công việc được lưu trong nhóm công việc.

Hệ điều hành chọn và bắt đầu thực thi một trong các công việc trong bộ nhớ.

Cuối cùng, công việc có thể phải chờ một số tác vụ, chẳng hạn như thao tác I/O, để
hoàn thành

Làm thế nào về hệ thống không đa chương trình ?

37
Machine Translated by Google

CHIA SẺ THỜI GIAN (HOẶC ĐA NHIỆM VỤ)

Một phần mở rộng hợp lý của hệ thống Batch – CPU chuyển đổi công việc thường xuyên đến mức người dùng có thể tương tác với từng công việc trong khi

nó đang chạy, tạo ra tính toán tương tác

Thời gian đáp ứng < 1 giây

Mỗi người dùng có ít nhất một chương trình đang thực thi trong bộ nhớ tiến trình

Nếu nhiều công việc sẵn sàng chạy cùng lúc Lập lịch CPU Nếu các

tiến trình không vừa trong bộ nhớ, việc hoán đổi sẽ di chuyển chúng vào và ra

để chạy Bộ nhớ ảo cho phép thực thi các tiến trình không hoàn toàn trong bộ nhớ

38
Machine Translated by Google

BỐ TRÍ BỘ NHỚ CHO HỆ THỐNG ĐA CHƯƠNG TRÌNH

39
Machine Translated by Google

HOẠT ĐỘNG CHẾ ĐỘ KÉP

Hoạt động ở chế độ kép cho phép HĐH tự bảo vệ chính nó và các thành phần hệ thống khác

Chế độ người dùng và chế độ kernel

Bit chế độ được cung cấp bởi phần cứng

Cung cấp khả năng phân biệt khi hệ thống đang chạy mã người dùng hoặc mã hạt nhân. Khi người dùng đang

chạy bit chế độ là “người dùng” Khi mã kernel đang thực

thi bit chế độ là “kernel”

Làm thế nào để chúng tôi đảm bảo rằng người dùng không thiết lập rõ ràng bit chế độ thành “kernel”?

Cuộc gọi hệ thống thay đổi chế độ sang kernel, trả về từ cuộc gọi sẽ đặt lại nó cho người dùng

Một số lệnh được chỉ định là đặc quyền, chỉ thực thi được ở chế độ kernel

40
Machine Translated by Google

CHUYỂN TỪ NGƯỜI DÙNG SANG CHẾ ĐỘ Kernel

41
Machine Translated by Google

VÍ DỤ VỀ CUỘC GỌI HỆ THỐNG WINDOWS VÀ UNIX


Machine Translated by Google

VÍ DỤ THƯ VIỆN TIÊU CHUẨN C

Chương trình C gọi thư viện printf(), gọi


lệnh gọi hệ thống write()
Machine Translated by Google

ĐỀ CƯƠNG

Hệ điều hành là gì? Tổ chức

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

điều hành Quản lý quy trình

Quản lý tài nguyên An

ninh và bảo vệ

Ảo hóa

Lịch sử hệ điều hành

Phân loại hệ điều hành


Machine Translated by Google

QUẢN LÝ QUY TRÌNH

Một tiến trình là một chương trình đang được thực thi. Nó là một đơn vị công việc trong hệ thống. Chương trình là một

thực thể thụ động; tiến trình là một thực thể tích cực.

Tiến trình cần nguồn lực để hoàn thành nhiệm vụ của nó

CPU, bộ nhớ, I/O, tập tin


Khởi tạo dữ liệu

Chấm dứt tiến trình yêu cầu lấy lại bất kỳ tài nguyên nào có thể tái sử dụng

Tiến trình đơn luồng có một bộ đếm chương trình xác định vị trí của lệnh tiếp theo
để thực thi

Tiến trình thực hiện các lệnh một cách tuần tự, từng lệnh một cho đến khi hoàn thành

Tiến trình đa luồng có một bộ đếm chương trình trên mỗi luồng Thông thường

hệ thống có nhiều tiến trình, một số người dùng, một số hệ điều hành chạy đồng thời trên một hoặc nhiều CPU
Đồng thời bằng cách ghép kênh các CPU giữa

các tiến trình/luồng

45
Machine Translated by Google

HOẠT ĐỘNG QUẢN LÝ QUY TRÌNH

Hệ điều hành chịu trách nhiệm cho các hoạt động sau liên quan đến quản lý
tiến trình: Tạo và xóa cả

tiến trình hệ thống và người dùng Tạm dừng và tiếp tục

các tiến trình

Cung cấp cơ chế đồng bộ hóa quy trình

Cung cấp cơ chế giao tiếp giữa các tiến trình

Cung cấp cơ chế xử lý deadlock

46
Machine Translated by Google

ĐỀ CƯƠNG

Hệ điều hành là gì? Tổ chức

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

điều hành Quản lý quy trình

Quản lý tài nguyên An

ninh và bảo vệ

Ảo hóa

Lịch sử hệ điều hành

Phân loại hệ điều hành


Machine Translated by Google

QUẢN LÝ BỘ NHỚ

Để thực thi một chương trình, tất cả (hoặc một phần) lệnh phải nằm trong bộ nhớ

Tất cả (hoặc một phần) dữ liệu mà chương trình cần phải có trong bộ nhớ

Quản lý bộ nhớ xác định những gì có trong bộ nhớ và khi nào

Tối ưu hóa việc sử dụng CPU và phản hồi của máy tính đối với người dùng

Hoạt động quản lý bộ nhớ

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 nào (hoặc một phần của nó) và dữ liệu nào sẽ di chuyển vào và ra khỏi bộ nhớ

Cấp phát và giải phóng không gian bộ nhớ khi cần thiết

48
Machine Translated by Google

QUẢN LÝ HỆ THỐNG TẬP TIN

Hệ điều hành cung cấp cái nhìn thống nhất, logic về việc lưu trữ thông tin

Tóm tắt các thuộc tính vật lý thành đơn vị lưu trữ logic - file

Mỗi phương tiện được điều khiển bởi thiết bị (tức là ổ đĩa, ổ băng từ)

Các thuộc tính khác nhau bao gồm tốc độ truy cập, dung lượng, tốc độ truyền dữ liệu, phương thức truy cập (tuần tự hoặc ngẫu nhiên)

Quản lý hệ thống tập tin

Các tập tin thường được tổ chức thành các thư mục

Kiểm soát truy cập trên hầu hết các hệ thống để xác định ai có thể truy cập những gì Các

hoạt động của hệ điều hành bao gồm

Tạo và xóa các tập tin và thư mục Nguyên thủy

để thao tác các tập tin và thư mục Ánh xạ các tập tin

vào bộ nhớ thứ cấp Sao lưu các tập tin vào

phương tiện lưu trữ ổn định (không thay đổi)

49
Machine Translated by Google

QUẢN LÝ BỘ LƯU TRỮ KHỔ LỚN

Thông thường các đĩa được sử dụng để lưu trữ dữ liệu không vừa với bộ nhớ chính hoặc dữ liệu phải được lưu trữ
được giữ trong một khoảng thời gian “dài”

Quản lý phù hợp có tầm quan trọng trung tâm Toàn bộ

tốc độ hoạt động của máy tính phụ thuộc vào hệ thống con đĩa và các thuật toán của nó Hoạt động của hệ

điều hành

Gắn và tháo Quản lý không gian

trống Phân bổ lưu trữ Lập kế

hoạch đĩa Phân vùng

Bảo vệ

50
Machine Translated by Google

BỘ NHỚ

Nguyên tắc quan trọng, được thực hiện ở nhiều cấp độ trong máy tính (phần cứng,

hệ điều hành, phần mềm)

Thông tin đang sử dụng được sao chép tạm thời từ nơi lưu trữ chậm hơn sang nơi lưu trữ nhanh hơn

Bộ lưu trữ nhanh hơn (cache) được kiểm tra trước tiên để xác định xem thông tin có ở đó không

Nếu đúng như vậy, thông tin được sử dụng trực tiếp từ bộ đệm (nhanh)

Nếu không, dữ liệu được sao chép vào bộ đệm và sử dụng ở đó

Bộ nhớ đệm nhỏ hơn bộ nhớ đang được lưu vào bộ nhớ đệm

Quản lý bộ đệm vấn đề thiết kế quan trọng

Kích thước bộ đệm và chính sách thay thế

51
Machine Translated by Google

DI CHUYỂN DỮ LIỆU “A” TỪ ĐĨA ĐỂ ĐĂNG KÝ

Môi trường đa nhiệm phải cẩn thận để sử dụng giá trị gần đây nhất, bất kể
nơi nó được lưu trữ trong hệ thống phân cấp lưu trữ

Môi trường đa bộ xử lý phải cung cấp tính nhất quán bộ đệm trong phần cứng như
rằng tất cả các CPU đều có giá trị gần đây nhất trong bộ đệm của chúng

52
Machine Translated by Google

HỆ THỐNG I/O

Một mục đích của HĐH là che giấu những đặc điểm của thiết bị phần cứng khỏi người dùng

Hệ thống con I/O chịu trách nhiệm về

Quản lý bộ nhớ I/O bao gồm đệm (lưu trữ dữ liệu tạm thời trong khi nó đang được

được chuyển), bộ nhớ đệm (lưu trữ các phần dữ liệu trong bộ lưu trữ nhanh hơn để đạt hiệu suất), lưu đệm (sự chồng

chéo giữa đầu ra của một công việc với đầu vào của các công việc khác)

Giao diện trình điều khiển thiết bị chung

Trình điều khiển cho các thiết bị phần cứng cụ thể

53
Machine Translated by Google

BẢO VỆ VÀ AN NINH

Bảo vệ – bất kỳ cơ chế nào để kiểm soát quyền truy cập của các tiến trình hoặc người dùng vào
tài nguyên do hệ điều hành xác định

Bảo mật – bảo vệ hệ thống khỏi các cuộc tấn công bên trong và bên ngoài

Phạm vi rộng lớn, bao gồm từ chối dịch vụ, sâu, vi-rút, trộm danh tính, trộm dịch vụ

Hệ thống thường phân biệt trước tiên giữa những người dùng để xác định ai có thể làm gì

Danh tính người dùng (ID người dùng, ID bảo mật) bao gồm tên và số liên kết, mỗi người một tên ID người

dùng sau đó được liên kết với tất cả các tệp, quy trình của người dùng đó để xác định quyền kiểm soát truy

cập Mã định danh nhóm (ID nhóm) cho phép xác định tập hợp người dùng và các điều khiển được quản lý, sau
đó cũng liên kết với từng tiến trình, tập tin

Leo thang đặc quyền cho phép người dùng thay đổi ID hiệu dụng với nhiều quyền hơn

54
Machine Translated by Google

ĐỀ CƯƠNG

Hệ điều hành là gì? Tổ chức

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

điều hành Quản lý quy trình

Quản lý tài nguyên An

ninh và bảo vệ

Ảo hóa

Lịch sử hệ điều hành

Phân loại hệ điều hành


Machine Translated by Google

ẢO HÓA

Cho phép hệ điều hành chạy các ứng dụng trong hệ điều hành khác

Ngành công nghiệp rộng lớn và đang phát triển

Mô phỏng được sử dụng khi loại CPU nguồn khác với loại đích (ví dụ: PowerPC đến Intel
x86)

Phương pháp chậm nhất

Khi ngôn ngữ máy tính không được biên dịch sang mã gốc – Phiên dịch

Ảo hóa – Hệ điều hành được biên dịch nguyên bản cho CPU, chạy hệ điều hành khách cũng nguyên bản
biên soạn

Xem xét VMware chạy WinXP khách, từng ứng dụng đang chạy, tất cả đều trên hệ điều hành máy chủ WinXP gốc

VMM (virtual machine Manager) cung cấp dịch vụ ảo hóa


56
Machine Translated by Google

ẢO HÓA (TIẾP THEO)

Các trường hợp sử dụng liên quan đến máy tính xách tay và máy tính để bàn chạy nhiều hệ điều hành để khám phá

hoặc khả năng tương thích

Laptop Apple chạy máy chủ Mac OS X, Windows với tư cách khách

Phát triển ứng dụng cho nhiều hệ điều hành mà không cần nhiều hệ thống

Ứng dụng kiểm tra đảm bảo chất lượng mà không cần có nhiều hệ thống

Thực thi và quản lý môi trường tính toán trong trung tâm dữ liệu

VMM có thể chạy tự nhiên, trong trường hợp đó chúng cũng là máy chủ

Không có máy chủ đa năng (VMware ESX và Citrix XenServer)

57
Machine Translated by Google

MÔI TRƯỜNG MÁY TÍNH - ẢO HÓA

58
Machine Translated by Google

ĐỀ CƯƠNG

Hệ điều hành là gì? Vận hành

hệ điều hành Quản lý quy trình

Tổ chức hệ thống máy

tính Quản lý tài nguyên An

ninh và bảo vệ

Ảo hóa

Lịch sử hệ điều hành

Phân loại hệ điều hành


Machine Translated by Google

LỊCH SỬ HỆ ĐIỀU HÀNH

Phần lớn lịch sử hệ điều hành


(mục tiêu và do đó là nhân vật) được thúc đẩy

bởi các yếu tố chi phí tương đối của phần


Chi phí CTNH /

cứng và con người. Chi phí nhân sự

Thời gian

Quá khứ Hiện tại

Tỷ lệ H/P theo thời gian

60
Machine Translated by Google

Những ngày đầu - H/P RẤT CAO

Máy tính là những cỗ máy khổng lồ, đắt tiền, một người dùng, sử
dụng thẻ đục lỗ

Mục tiêu: tối đa hóa việc sử dụng phần cứng

Vấn đề: Mã để thao tác với các thiết bị I/O bên ngoài.
Rất phức tạp và là nguồn chính của
khó lập trình

Giải pháp: Xây dựng thư viện chương trình con (trình điều
khiển thiết bị) để quản lý sự tương tác với các thiết bị I/
O. Thư viện được tải vào phần trên cùng của bộ nhớ và giữ nguyên Máy Tính Eniac -
1946
ở đó. Đây là ví dụ đầu tiên về điều gì đó
sẽ phát triển thành một hệ điều hành
61
Machine Translated by Google

Những ngày đầu - H/P RẤT CAO

Bởi vì chiếc máy này rất đắt tiền nên điều quan trọng là phải giữ cho nó luôn bận rộn.

Vấn đề: máy tính không hoạt động trong khi lập trình viên thiết lập mọi thứ. Sử dụng kém nguồn vốn đầu tư lớn

Giải pháp: Thuê người chuyên trách setup. Nhanh hơn lập trình viên, nhưng vẫn chậm hơn rất nhiều
hơn cái máy. => hệ thống hàng loạt

Vấn đề: Tại bất kỳ thời điểm nào, công việc đang tích cực sử dụng CPU hoặc thiết bị I/O và phần còn lại của máy ở chế độ
rảnh và do đó không được sử dụng.

Giải pháp: Cho phép công việc chồng chéo tính toán và I/O. Xử lý bộ đệm và ngắt được thêm vào thư viện chương trình con

Vấn đề: một công việc không thể giữ cho cả CPU và thiết bị I/O đều bận. Sử dụng CPU kém
hoặc các thiết bị I/O.

Giải pháp: đa chương trình - hệ thống chia sẻ nhiều công việc. Tự động chuyển từ công việc này sang công việc khác khi
công việc đang chạy thực hiện I/O.
62
Machine Translated by Google

CHUYỂN PHA - GIẢM H/P

Máy tính trở nên rẻ hơn nhiều. Chi phí con người trở nên đáng kể.

Mục tiêu: làm cho máy tính dễ sử dụng hơn và nâng cao năng suất của con người.
Nhiều người sử dụng máy tính một cách tương tác - chia sẻ thời gian tương tác.

Vấn đề: mọi người cần thời gian phản hồi hợp lý từ máy tính; mọi người
cần có dữ liệu và chương trình của họ xung quanh; ông chủ đăng nhập và nhận được thời
gian phản hồi khủng khiếp.

Giải pháp: lập kế hoạch ưu tiên; thêm hệ thống tập tin để truy cập nhanh vào dữ liệu; lập
kế hoạch ưu tiên.

63
Machine Translated by Google

H/P THẤP HƠN (1970)

Mục tiêu: tặng một máy tính cho mỗi người dùng.

Vấn đề: Chi phí ban đầu rất quan trọng trên thị trường - Phần cứng tối thiểu. Tiêu
thụ tài nguyên hệ điều hành trở thành một vấn đề lớn (bộ nhớ 640K)

64
Machine Translated by Google

H/P THẤP

Phần cứng trở nên rẻ hơn, mạnh hơn và người dùng phức tạp hơn

Mục tiêu: Cho phép mọi người chia sẻ tài nguyên, dữ liệu và thông tin với người

khác. Vấn đề: Mạng, bảo mật trở nên rất quan trọng

Giải pháp: Hệ điều hành ngày càng tinh vi hơn. Bắt đầu đưa các tính năng có
trong hệ thống chia sẻ cũ trở lại

65
Machine Translated by Google

Sự trỗi dậy của INTERNET

Internet là một hiện tượng phổ biến rộng rãi và thúc đẩy những cách nghĩ mới về

tin học.
Mục tiêu: Cho phép mọi người làm việc với internet dễ dàng hơn.

Vấn đề: tương tác với internet và bảo mật

Giải pháp:

API Java

Mạng máy tính

66
Machine Translated by Google

HỆ THỐNG DI ĐỘNG

Máy tính trở nên rẻ, nhỏ gọn và di động.

Mục tiêu: Chạy các ứng dụng thông thường trên thiết bị di động

Vấn đề: phần cứng yếu (CPU, mem), màn hình nhỏ, thông tin giả thời gian thực như giọng
nói và video

Giải pháp: Hệ điều hành sẽ phải điều chỉnh để mang lại khả năng chấp nhận được

hiệu suất.

67
Machine Translated by Google

ĐỀ CƯƠNG

Hệ điều hành là gì? Vận hành

hệ điều hành Quản lý quy trình

Tổ chức hệ thống máy

tính Quản lý tài nguyên An

ninh và bảo vệ

Ảo hóa

Lịch sử hệ điều hành

Phân loại hệ điều hành


Machine Translated by Google

DANH MỤC HỆ ĐIỀU HÀNH PHỔ BIẾN

Dưới đây là danh sách một số hệ điều hành máy tính cá nhân dựa trên Windows phổ biến:

Windows XP

Windows 7

Windows 8

Windows 8.1

Windows Vista

Windows 10
Windows 10

và nhiều hơn nữa

Và sau đây là danh sách một số hệ điều hành dựa trên linux phổ biến, được người dùng máy tính nâng cao sử dụng nhiều nhất:

Ubuntu

Quay lại

Kali Linux

Fedora

Linux Mint

và nhiều hơn nữa

69
Machine Translated by Google

PHÂN LOẠI HỆ ĐIỀU HÀNH

Single-User: chỉ cho phép một người dùng sử dụng chương trình cùng một lúc

Multi-user: là loại cho phép hai hoặc nhiều người dùng sử dụng chương trình của họ cùng một lúc.
Một số hệ điều hành cho phép hàng trăm, thậm chí hàng nghìn người dùng cùng lúc

Đơn tác vụ: Cho phép các phần khác nhau của một chương trình chạy ở bất kỳ phần nào
thời gian

Đa tác vụ: Cho phép nhiều chương trình chạy cùng lúc

Đa bộ xử lý: Hỗ trợ mở cùng một chương trình nhiều hơn chỉ trong một CPU

Hệ thống thời gian thực

70
Machine Translated by Google

PHÂN LOẠI HỆ ĐIỀU HÀNH

Khung chính

Máy chủ

Đa CPU

Máy tính

PDA (Hệ điều hành nhúng)

Thẻ thông minh

71
Machine Translated by Google

HỆ ĐIỀU HÀNH MÁY TÍNH CHÍNH

Những máy tính này phân biệt chúng với máy tính cá nhân về khả năng I/O của chúng.
Một máy tính lớn với 1000 đĩa và hàng nghìn gigabyte dữ liệu.
Hệ điều hành dành cho máy tính lớn thiên về xử lý nhiều
công việc cùng một lúc.

Họ thường cung cấp ba loại dịch vụ: xử lý theo lô, xử lý giao dịch và
chia sẻ thời gian:

Hệ thống hàng loạt là hệ thống xử lý các công việc thường ngày mà không có bất kỳ người dùng tương tác nào, ví dụ, báo
cáo bán hàng cho một chuỗi cửa hàng thường được thực hiện ở chế độ hàng loạt.

Hệ thống xử lý giao dịch xử lý số lượng lớn các yêu cầu nhỏ, ví dụ như xử lý séc tại ngân hàng hoặc đặt vé máy bay.
Mỗi đơn vị công việc tuy nhỏ nhưng hệ thống phải xử lý hàng trăm hoặc hàng nghìn mỗi giây.

Hệ thống chia sẻ thời gian cho phép nhiều người dùng từ xa thực hiện các công việc trên máy tính cùng một lúc, chẳng hạn như
truy vấn một cơ sở dữ liệu lớn.

72
Machine Translated by Google

HỆ ĐIỀU HÀNH MÁY CHỦ

Chúng chạy trên các máy chủ, là máy tính cá nhân rất lớn, máy trạm hoặc thậm chí là
máy tính lớn.

Chúng phục vụ nhiều người dùng cùng một lúc qua mạng và cho phép người dùng chia sẻ tài nguyên
phần cứng và phần mềm.

Máy chủ có thể cung cấp dịch vụ in, dịch vụ file hoặc dịch vụ Web. Internet

các nhà cung cấp chạy nhiều máy chủ để hỗ trợ khách hàng của họ lưu trữ các
trang Web và xử lý các yêu cầu đến.

Hệ điều hành máy chủ điển hình là UNIX và Windows 2000.

73
Machine Translated by Google

HỆ ĐIỀU HÀNH ĐA BỘ XỬ LÝ

Nhiều CPU vào một hệ thống.

Những hệ thống này được gọi là máy tính song song, máy tính đa
bộ đa xử lý tùy thuộc vào cách chúng được kết nối và những gì được chia sẻ.

Họ cần những hệ điều hành đặc biệt, nhưng thường đây là những biến thể của hệ
điều hành máy chủ, với những tính năng đặc biệt để liên lạc và kết nối.

74
Machine Translated by Google

HỆ ĐIỀU HÀNH MÁY TÍNH CÁ NHÂN

Hạng mục tiếp theo là hệ điều hành máy tính cá nhân.

Công việc của họ là cung cấp giao diện tốt cho một người dùng. Chúng được sử
dụng rộng rãi để xử lý văn bản, bảng tính và truy cập Internet.

Ví dụ phổ biến là Windows 98, Windows 2000, hệ điều hành Macintosh và Linux.

Hệ điều hành máy tính cá nhân được biết đến rộng rãi đến mức có lẽ cần ít sự giới thiệu. Trên thực

tế, nhiều người thậm chí còn không biết rằng có những loại khác tồn tại.

75
Machine Translated by Google

HỆ THỐNG VẬN HÀNH THỜI GIAN THỰC

Thời gian là thông số quan trọng trong hệ thống này. Ví dụ, trong các hệ thống điều khiển
quy trình công nghiệp, máy tính thời gian thực phải thu thập dữ liệu về quy trình
sản xuất và sử dụng nó để điều khiển máy móc trong nhà máy.

Thường có những thời hạn cứng nhắc. Nếu hành động nhất định phải xảy ra tại một thời điểm nhất

định (hoặc trong một phạm vi nhất định), chúng ta có một hệ thống thời gian thực cứng rắn. Một hệ

thống thời gian thực mềm , trong đó việc thiếu thời hạn thường xuyên là có thể chấp nhận được.

VxWorks và QNX là những hệ điều hành thời gian thực nổi tiếng.

76
Machine Translated by Google

HỆ ĐIỀU HÀNH NHÚNG

PDA (Personal Digital Assistant) là một chiếc máy tính nhỏ có thể bỏ vừa túi áo sơ mi
và thực hiện một số ít chức năng.

Hệ thống nhúng chạy trên các 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.

Chúng thường có một số đặc điểm của hệ thống thời gian thực nhưng cũng có kích thước,
bộ nhớ và những hạn chế về năng lượng khiến chúng trở nên đặc biệt.

Ví dụ về các hệ điều hành chung cũ như vậy là PalmOS và Windows


CE (Điện tử tiêu dùng).

77
Machine Translated by Google

DI ĐỘNG

Điện thoại thông minh, máy tính bảng, v.v.

Sự khác biệt về chức năng giữa chúng và máy tính xách tay “truyền thống” là gì?

Tính năng bổ sung - nhiều tính năng hệ điều hành hơn (GPS, con quay hồi chuyển)

Cho phép các loại ứng dụng mới như thực tế tăng

cường Mạng dữ liệu di động để kết nối

Dẫn đầu là Apple iOS và Google Android

78
Machine Translated by Google

HỆ ĐIỀU HÀNH THẺ THÔNG MINH

Hệ điều hành nhỏ nhất chạy trên thẻ thông minh, là những thiết bị có kích
thước bằng thẻ tín dụng chứa chip CPU.

Chúng có khả năng xử lý và hạn chế về bộ nhớ rất nghiêm trọng. Một số trong số chúng
chỉ có thể xử lý một chức năng duy nhất, chẳng hạn như thanh toán điện tử, nhưng
một số khác có thể xử lý nhiều chức năng trên cùng một thẻ thông minh.

Một số thẻ thông minh được định hướng Java và chứa trình thông dịch cho
Máy ảo Java (JVM).

79

You might also like