1. Trang chủ
  2. » Tất cả

Chương 2. Những vấn đề cơ bản của nguyên lý HĐH (1)

40 5 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Những Vấn Đề Cơ Bản Của Nguyên Lý Hệ Điều Hành
Định dạng
Số trang 40
Dung lượng 366,95 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Định nghĩa Hệ điều hành Hệ điều hành operating system: Chương trình trung gian giữa phần cứng MT và người sử dụng, có chức năng điều khiển và phối hợp việc sử dụng phần cứng và cung

Trang 1

Chương 2:

NHỮNG VẤN ĐỀ CƠ BẢN CỦA NGUYÊN LÝ HỆ ĐIỀU HÀNH

1

Trang 3

Định nghĩa Hệ điều hành

Hệ điều hành (operating system):

Chương trình trung gian giữa phần cứng MT và người sử dụng, có

chức năng điều khiển và phối hợp việc sử dụng phần cứng và cung cấp các dịch vụ cơ bản cho các ứng dụng

Trang 4

 Quản lý và cấp phát tài nguyên HT một cách hiệu quả

 Size (Mem): hữu hạn

 Size (Process): lớn

4

Trang 5

Định nghĩa Hệ điều hành (3)

 Góc nhìn hệ thống (System):

Banking system

Airline reservation

Web browser Application

programs Compilers Editors Command

Interpreter System

programs Operating system

Machine language

Hardware Microprogramming

Physical devices

5

Trang 6

Định nghĩa Hệ điều hành (4)

 Góc nhìn user:

6

Trang 7

Các nguyên lý xây dựng Hệ điều hành

 Nguyên lý modul

 Nguyên lý tương đối trong định vị

 Nguyên lý phủ chức năng

 Nguyên lý Macro-Processor

 Nguyên lý khởi tạo trong cài đặt

 Nguyên lý bảng tham số điều khiển

 Nguyên lý giá trị chuẩn

 Nguyên lý bảo vệ nhiều mức

7

Trang 8

Các loại Hệ điều hành

 Dưới góc độ loại MT:

 HĐH dành cho máy MainFrame

 HĐH dành cho máy Server

 HĐH dành cho máy nhiều CPU

 HĐH dành cho máy tính cá nhân PC

 HĐH dành cho máy PDA (Embedded OS – hđh nhúng)

 HĐH dành cho máy chuyên biệt

 HĐH dành cho thẻ chip (SmartCard)

8

Trang 12

Các loại Hệ điều hành (5)

 Hệ thống xử lý đa chương (Multiprogrammed systems)

 Nhiều tác vụ sẵn sàng thi hành cùng một thời điểm

 Khi một tác vụ thực hiện I/O, bắt đầu tác vụ khác

 Bộ xử lý và thiết bị thi hành toàn thời gian

12

Trang 13

Các loại Hệ điều hành (6)

Hệ thống xử lý đa chương

 Nhiều công việc được nạp đồng thời vào bộ nhớ chính

 Khi một tiến trình thực hiện I/O, một tiến trình khác được thực thi

 Tận dụng được thời gian rảnh, tăng hiệu suất sử dụng CPU

 Y/c đối với HĐH:

 Định thời công việc (job scheduling): chọn job trong job pool trên đĩa và nạp vào

13

0

512 K

Trang 14

Time Multiprogramming with three programs

Trang 15

Các loại Hệ điều hành (8)

 Hệ thống chia xẻ thời gian (Time – sharing systems)

 Còn gọi là HT đa nhiệm (Multitasking)

 Giống như HT đa chương: Khi 1 process (A) xử lý sk I/O thì process khác (B,C,…) cũng được đưa vào CPU

 Khác ở chỗ (slice time): P(A) đc đưa vào để xl sk I/O => giống như

đa chương là sẽ được cấp khoảng tg (VD:100ms), nhưng khi hết 100ms vẫn chưa xong => P(A) sẽ được đưa trở lại BNC để chọn P(B) vào thực thi

 Mục tiêu: tăng khả năng tương tác với user

15

 Windows

 Linux

Trang 16

Các loại Hệ điều hành (9)

 Hệ thống chia xẻ thời gian (Time – sharing systems)

 Multiprogrammed systems ko cung cấp k/n tương tác hiệu quả với users

 CPU luân phiên thực thi các công việc: mỗi công việc được chia một phần nhỏ tg CPU

 Một công việc chỉ được chiếm CPU khi nó nằm trong BNC

 Khi cần, 1 công việc nào đó có thể được chuyển từ BNC ra th.bị lưu trữ thứ cấp: đĩa cứng (cơ chế swapping), nhường BNC cho công việc khác

16

Trang 17

Các loại Hệ điều hành (10)

 Hệ thống chia xẻ thời gian (Time – sharing systems)

 Y/c đối với OS:

 Định thời công việc: mỗi process được cấp 1 khoảng tg, nếu sau khoảng tg

đó mà chưa kết thúc thì phần còn lại của process đó được đưa trở lại BNC

để chờ xử lý tiếp.

 Quản lý bộ nhớ ảo: ~ đa chương

 Quản lý các quá trình (tiến trình): định thời CPU, đồng bộ các quá trình, giao tiếp các quá trình, tránh deadlock

 Quản lý HT file, HT lưu trữ

 Cấp phát hợp lý các tài nguyên

 Bảo vệ (protection)

17

Trang 18

Các loại Hệ điều hành (11)

 Hệ thống đa xử lý (xử lý song song)

 Hai hoặc nhiều bộ xử lý cùng chia sẻ một bộ nhớ

 Theo cơ chế Master/Slave: 1 bộ xl chính kiểm soát một số bộ xl còn lại

 Có 2 mô hình sau:

CPU chuyên đọc dl/ghi dl/tính toán/… =>an toàn hơn (vì lí do nào đó, 1 CPU bị hỏng => master sẽ giao công việc đó cho 1 CPU khác)

18

CPU MEM CPU MEM CPU MEM

MEM

Trang 19

 Càng nhiều processor =>tăng khả năng tính toán => nhanh xong công việc

 Ít tốn kém hơn multiple single-processor system vì có thể dung chung tài nguyên (đĩa, bộ nhớ,…)

 Độ tin cậy: khi 1 processor hỏng thì công việc của nó được chia sẻ với các processor còn lại

19

Trang 20

Các loại Hệ điều hành (13)

 Hệ thống phân tán

 Nhiều MT liên kết với nhau bằng đường truyền thông đặc biệt

 Tương tự HT đa xử lý nhưng ko chia sẻ bộ nhớ

Trang 21

 Chia sẻ tài nguyên (resource sharing)

 Chia sẻ sức mạnh tính toán (computational sharing)

 Độ tin cậy cao (high reliability)

 Độ sẵn sàng cao (high availability): các d.vụ của HT được cung cấp liên tục cho

dù 1 thành phần hardware trở nên hỏng

21

Trang 23

Các loại Hệ điều hành (16)

Hệ thống thời gian thực (real time system)

 Sử dụng trong các thiết bị chuyên dụng như điều khiển, các thử nghiệm khoa học, điều khiển trong y khoa, dây chuyền công nghiệp, thiết bị gia dụng, quân sự

 Ràng buộc về thời gian: hard và soft real-time

Phân loại:

 Hard real-time:

 Hạn chế/ko có bộ nhớ phụ, tất cả dl nằm trong BNC (RAM/ROM)

 Y/c về thời gian đáp ứng/xử lý rất nghiêm ngặt, thường sử dụng trong điều khiển công nghiệp, robotics,…

 Soft real-time: thường dùng trong lĩnh vực multimedia, virtual reality với y/c mềm dẻo hơn về thời gian đáp ứng

23

Trang 24

Các loại Hệ điều hành (17)

Thiết bị cầm tay (handheld system)

 Personal digital assistant (PDA): Palm, Pocket – PC

 Điện thoại di động (cellular phones)

 Đặc trưng:

 Bộ nhớ nhỏ: 512 KB – 128 MB

 Tốc độ processor thấp (để ít tốn pin)

 Màn hình kích thước nhỏ, độ phân giải thấp

 Có thể dùng các công nghệ kết nối như IrDA, Bluetooth, Wireless

24

Trang 25

Các thành phần Hệ điều hành

 Quản lý quá trình (process management)

 Quản lý bộ nhớ chính

 Quản lý file (file management)

 Quản lý hệ thống I/O (I/O system management)

 Quản lý HT lưu trữ thứ cấp (secondary storage management)

 HT bảo vệ

 HT thông dịch lệnh

 HT mạng

25

Trang 26

Các thành phần Hệ điều hành (2)

 Quản lý quá trình (process management)

 Quá trình (hay tiến trình – process) là gì? Là ct thực thi

 Khác chương trình ở điểm gì? (ct nằm ở đĩa cứng, qt nằm ở BNC)

 Một qt cần các tài nguyên của HT: CPU, bộ nhớ, file, th.bị I/O,…để hoàn thành công việc

Trang 27

Các thành phần Hệ điều hành (3)

 Quản lý bộ nhớ chính

 BNC là trung tâm của các thao tác, xử lý

 Để nâng cao hiệu suất sử dụng CPU, HĐH cần quản lý bộ nhớ thích hợp

 Các nhiệm vụ:

 Theo dõi, quản lý các vùng nhớ trống và vùng đã cấp phát

 Quyết định sẽ nạp ct nào khi có vùng nhớ trống

 Cấp phát và thu hồi vùng nhớ khi cần thiết

27

BNTC (HD)

Cache BNC (RAM, ROM)

Trang 28

 “Ánh xạ” file/TM vào th.bị lưu trữ thứ cấp tương ứng

 Sao lưu và phục hồi dữ liệu

28

Trang 29

Các thành phần Hệ điều hành (5)

 Quản lý hệ thống I/O

 Che dấu sự khác biệt của th.bị I/O trước người dùng

 Có chức năng:

 Cơ chế bộ đệm: buffering, caching, spooling

 Cung cấp giao diện chung đến trình điều khiển th.bị (device – drive interface)

 Bộ điều khiển các th.bị (device driver) phần cứng

29

Trang 30

Các thành phần Hệ điều hành (5)

 Quản lý hệ thống lưu trữ thứ cấp

 BNC: kích thước nhỏ, là môi trường chứa tin ko bền vững

=> cần HT lưu trữ thứ cấp để lưu trữ bền vững dl, ct

 Phương tiện lưu trữ thông dụng: đĩa từ, đĩa quang

 Nhiệm vụ của HĐH trong quản lý đĩa:

 Quản lý ko gian trống trên đĩa (free space management)

 Cấp phát ko gian lưu trữ (storage allocation)

 Định thời hoạt động cho đĩa (disk scheduling)

=> Sử dụng thường xuyên, ảnh hưởng đến tốc độ của cả HT

=> cần hiệu quả

30

Trang 31

Các thành phần Hệ điều hành (6)

Hệ thống bảo vệ: (hai góc độ: user & process)Trong HT cho phép nhiều user hay nhiều process diễn ra đồng thời

 Kiểm soát qt user đăng nhập/xuất và sử dụng HT

 Kiểm soát việc truy cập tài nguyên HT

 Đảm bảo các user/process chỉ được phép sử dụng tài nguyên dành cho nó

 Các nhiệm vụ:

 Cung cấp cơ chế kiểm soát đăng nhập/xuất (login, log out)

 Phân định được sự truy cập tài nguyên hợp pháp và bất hợp pháp

 Phương tiện thi hành các chính sách: chính sách cần bảo vệ dl của ai đối với ai

31

Trang 32

Các thành phần Hệ điều hành (7)

Hệ thống thông dịch lệnh

 Là giao diện chủ yếu giữa user và OS

VD: shell, mouse-based window-and-menu

Khi user login: command line interpreter (shell) chạy, và chờ nhận lệnh

từ user, thực thi lệnh và trả kết quả về

 Các lệnh ->bộ điều khiển lệnh ->HĐH

 Các lệnh có quan hệ với các việc:

 Tạo, hủy, quản lý qt, HT

 Kiểm soát I/O

 Quản lý bộ nhớ thứ cấp

 Quản lý BNC

 Truy cập HT file và cơ chế bảo mật

32

Trang 33

Cấu trúc của hệ điều hành

 Cấu trúc đơn giản

 Cấu trúc phân tầng

 Vi nhân

 Máy ảo

33

Trang 34

Cấu trúc của hệ điều hành (2)

 Cấu trúc đơn giản (monolithique): phân chia modul

 MS DOS: khi thiết kế, do giới hạn

về dung lượng bộ nhớ nên ko

chưa phân chia rõ c/n giữa các phần của HT

 Bảo mật kém, dễ hư hỏng th.bị (VD: điều khiển truyền dl tới các th.bị ngoại vi-> ngắt bất ngờ ->mất nguồn ->sụt áp ->hư hỏng th.bị

34

Aplication program Resident system program

MS-DOS device drivers

ROM BIOS device drivers

Cấu trúc phân tầng của MS DOS

Trang 35

Cấu trúc của hệ điều hành (3)

 Cấu trúc đơn giản:

 UNIX: gồm 2 phần có thể tách rời nhau

 Nhân (cung cấp file system, CPU scheduling, memory management, một

số c/n khác) và system program

35

Trang 36

Cấu trúc của hệ điều hành (4)

 Cấu trúc phân tầng: HĐH được chia thành nhiều lớp

 Lớp dưới cùng: hardware

 Lớp trên cùng: giao tiếp với user

 Lớp trên chỉ phụ thuộc lớp dưới

 Một lớp chỉ có thể gọi hàm của lớp dưới và các hàm của nó được gọi bởi lớp trên

 Mỗi lớp tương đương 1 đối tượng trừu tượng: CTDL + thao tác

 Phân lớp có lợi gì? Gỡ rối (debugger, kiểm tra HT, thay đổi c/n)

36

Trang 37

Cấu trúc của hệ điều hành (5)

Trang 38

Cấu trúc của hệ điều hành (6)

 Vi nhân: phân chia modul theo microkernel (CMU Mach OS, 1980)

 Chuyển một số c/n của OS từ kernel space sang user space

 Thu gọn kernel =>microkernel, microkernel chỉ bao gồm các c/n tối thiểu như quản lý qt, bộ nhớ và cơ chế giao tiếp giữa các qt

 Giao tiếp các modul qua cơ chế truyền thông điệp

38

Trang 39

Cấu trúc của hệ điều hành (7)

 Vi nhân:

 Tru64 UNIX: nhân Mach

 Apple Mac OS server: nhân Mach

 QNX-vi nhân cung cấp: truyền thông điệp, định thời CPU, giao tiếp mạng cấp thấp, ngắt phần cứng

 Windows NT: chạy các ứng dụng khác nhau như win32, OS/2, POSIX (Portable OS for uniX)

39

Trang 40

Cấu trúc của hệ điều hành (8)

 Là những bản sao ảo chính xác các đặc tính phần cứng của máy tính thực

 Cho phép một hệ điều hành khác hoạt động trên đó như trên phần cứng thực sự

 Phức tạp nhất của máy ảo là hệ thống đĩa: giả sử HT chỉ có 3 bộ điều khiển đĩa nhưng có 7 máy ảo =>XD HT đĩa ảo

Ngày đăng: 05/07/2021, 14:55

🧩 Sản phẩm bạn có thể quan tâm

w