1. Trang chủ
  2. » Công Nghệ Thông Tin

slide bài giảng kiến trúc máy tính và hệ điều hành chương 6 quản lý bộ nhớ, quản lý vào ra và quản lý tệp của hệ điều hành

50 2,1K 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

Định dạng
Số trang 50
Dung lượng 2,43 MB

Nội dung

Giới thiệu: CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA, TỆP + Một trong những nhiệm vụ quan trọng nhất của HĐH + Trong các hệ thống đa chương, HĐH phải đảm bảo các yếu tố sau: - Phương pháp chuyể

Trang 1

KIẾN TRÚC MÁY TÍNH

VÀ HỆ ĐIỀU HÀNH

Trang 2

6.1 Quản lý bộ nhớ

CHƯƠNG 6:

QUẢN LÝ BỘ NHỚ, QUẢN LÝ VÀO

RA VÀ QUẢN LÝ TỆP CỦA HỆ ĐIỀU

HÀNH

6.2 Quản lý vào ra

6.3 Quản lý tệp

Trang 3

6.1 Quản lý bộ nhớ

6.1.1 Giới thiệu:

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

+ Một trong những nhiệm vụ quan trọng nhất của HĐH

+ Trong các hệ thống đa chương, HĐH phải đảm bảo các yếu tố sau:

- Phương pháp chuyển đổi địa chỉ

- Phương pháp mở rộng bộ nhớ

- Phương pháp chia sẻ thông tin trong bộ nhớ

- Phương pháp bảo vệ vùng nhớ của các tiến trình

Trang 5

- Cấu trúc chương trình Overlay

- Cấu trúc chương trình phân trang

- Cấu trúc chương trình phân đoạn

- Cấu trúc chương trình tuyến tính

- Cấu trúc chương trình động

Trang 6

6.1 Quản lý bộ nhớ

6.1.1 Giới thiệu:

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Cấu trúc chương trình tuyến tính:

- Cấu trúc đơn giản, dễ viết, nhiều NNLT hỗ trợ

- Tập tin thực thi có tính độc lập cao, tốc độ thực hiện chương trình cao

- Tốn bộ nhớ

- Các modun, thư viện được biên dịch lại thành 1 modun

- HĐH nạp toàn bộ modun chương trình vào bộ nhớ

Trang 7

- Modun chính có thể gọi các modun khác vào bộ nhớ

- HĐH chỉ nạp modun chính vào bộ nhớ khi bắt đầu

- Tiết kiệm bộ nhớ

- Chương trình được viết dưới dạng các modun riêng lẻ

- Các thư viện không được tích hợp trong modun chính

- Tính độc lập kém đi, chương trình thực hiện chậm hơn

Trang 8

6.1 Quản lý bộ nhớ

6.1.1 Giới thiệu:

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Cấu trúc chương trình Overlay:

- Các modun lớp 0 có thể gọi nạp modun ở lớp 1, 2, 3,…

- Các modun trong 1 lớp không thể gọi lẫn nhau

- Chương trình được viết dưới dạng các modun riêng lẻ

và được phân thành các lớp khác nhau (0, 1, 2, 3,…)

- Kích thước của modun lớn nhất được xem là kích thước của lớp

Trang 9

6.1 Quản lý bộ nhớ

6.1.1 Giới thiệu:

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Cấu trúc chương trình Overlay:

- Người lập trình cung cấp đầy đủ các thông tin:

 Chương trình gồm bao nhiêu modun

 Mỗi modun bao gồm thư viện và thủ tục nào

 Kích thước của mỗi modun

 CT được chia thành bao nhiêu lớp modun

Xây dựng sơ đồ biên dịch và quản lý  sơ đồ Overlay

Trang 10

6.1 Quản lý bộ nhớ

6.1.1 Giới thiệu:

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Cấu trúc chương trình Overlay:

- HĐH nạp sơ đồ Overlay, nạp các modun ở lớp 0

- Cơ chế nạp các modun khác:

 Các modun phải nạp đúng đoạn bộ nhớ của lớp

 Modun gọi nạp sau được quyền ghi đè modun cùng lớp đã nạp vào bộ nhớ trước đó

- Tiết kiệm bộ nhớ hơn cấu trúc động

- Công tác cấp phát bộ nhớ đơn giản

Trang 11

6.1 Quản lý bộ nhớ

6.1.1 Giới thiệu:

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Cấu trúc chương trình phân trang:

- CT được biên dịch thành 1 modun duy nhất

- Chia modun thành các phần bằng nhau  trang CT

- Bộ nhớ cũng được phân trang  khung trang (frame)

- HĐH nạp các trang CT vào các khung trang bộ nhớ

- HĐH xây dựng bảng điều khiển trang PCT

- Tiết kiệm bộ nhớ nhưng tốc độ truy xuất dữ liệu chậm

Trang 12

6.1 Quản lý bộ nhớ

6.1.1 Giới thiệu:

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Cấu trúc chương trình phân đoạn:

- CT biên dịch thành các modun riêng lẻ  đoạn CT

- Bộ nhớ cũng được phân đoạn (segmentation)

- HĐH nạp các đoạn CT vào các phân đoạn bộ nhớ

- HĐH xây dựng bảng điều khiển trang SCT

- Tiết kiệm bộ nhớ nhưng tốc độ truy xuất dữ liệu chậm

Trang 13

6.1 Quản lý bộ nhớ

6.1.2 Các chiến lược quản lý bộ nhớ

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

+ Các chiến lược nạp (fetch):

- Các chiến lược nạp yêu cầu

- Các chiến lược nạp phòng ngừa+ Các chiến lược sắp xếp

- Best - fit

- Worst - fit+ Các chiến lược thay thế

- First - fit

Trang 14

- Đa chương với phân vùng động

- Đa chương với kỹ thuật chuyển đổi (swapping)

Trang 15

Người sử dụng

Hệ điều hành

Không sử dụng

0 a

b c

CPU

Thanh ghi giới hạn a

Trang 16

+ Yêu cầu phải có kế hoạch cẩn thận và thời gian chi phối chặt chẽ

Trang 17

Pha tiến hành

Phần đoạn mã và dữ liệu

phải được tồn tại trong bộ

nhớ chính trong suốt thời

gian thực thi

Pha xuất

1 2 3

Trang 18

+ Các công việc được sắp xếp vào các hàng đợi ứng với mỗi phần của bộ nhớ chính

Trang 19

6.1 Quản lý bộ nhớ

6.1.3 Cấp phát liên tục

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Các hệ thống đa chương với phân vùng cố định:

+ Hạn chế của phân vùng cố định kích thước bằng nhau:

- Kích thước CT quá lớn so với kích thước 1 phân vùng:

- Kích thước CT quá nhỏ so với kích thước 1 phân vùng:

 Thiết kế CT theo cấu trúc overlay

 Phân mảnh bộ nhớ

 Lãng phí bộ nhớ

Sử dụng các phân vùng có kích thước không bằng nhau

Trang 20

Phần 3

Hàng đợi cho vùng 1 Hàng đợi cho vùng 2

Hàng đợi cho vùng 3

0 a b

c

d

Trang 21

Phần 3

Hàng đợi cho vùng 1 Hàng đợi cho vùng 2

Hàng đợi cho vùng 3

0 a b

c

d

Trang 22

Phần 3

Hàng đợi

0 a b

c

d

Trang 23

Hệ điều hành

Tự do

Trang 25

Tiến trình B 20K

Trang 26

Tiến trình H cần 18K Tiến trình A 15K

Tiến trình B 20K Tiến trình C 10K

Trang 27

Tiến trình I cần 9K Tiến trình A 15K

Tiến trình B 20K Tiến trình C 10K

Tiến trình D 25K

Trang 28

Tiến trình A 15K Tiến trình B 20K Tiến trình C 10K

Tiến trình D 25K

Tiến trình E 14K

Trang 29

Lỗ hổng 15K Tiến trình B 20K

Lỗ hổng 10K

Lỗ hổng 25K

Tiến trình E 14K

Trang 30

Lỗ hổng 15K Tiến trình B 20K

Lỗ hổng 35K

Tiến trình E 14K

Trang 31

Lỗ hổng 15K Tiến trình B 20K

Tiến trình F 32K

Tiến trình E 14K

Trang 32

Tiến trình B 20K

Tiến trình F 32K

Tiến trình E 14K Tiến trình G 11K

Trang 33

Tiến trình B 20K

Tiến trình F 32K

Lỗ hổng 14K Tiến trình G 11K

Trang 34

Tiến trình B 20K

Tiến trình F 32K

Lỗ hổng 21K Tiến trình G 11K

Trang 35

Tiến trình B 20K

Tiến trình F 32K

Tiến trình H 18K Tiến trình G 11K

Trang 36

Tiến trình I 9K

Trang 37

6.1 Quản lý bộ nhớ

6.1.3 Cấp phát liên tục

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Các hệ thống đa chương với phân vùng động:

+ Bản đồ Bit và Danh sách liên kết:

Trang 38

- Worst - fit: Đặt tiến trình vào lỗ hổng vừa, lớn nhất

- First - fit: Đặt tiến trình vào lỗ hổng vừa, tự do đầu tiên

+ Ví dụ: Nạp tiến trình 18K vào bộ nhớ sau:

Trang 40

6.1 Quản lý bộ nhớ

6.1.3 Cấp phát liên tục

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Các hệ thống đa chương với kỹ thuật chuyển đổi:

+ Swap - out: đưa 1 tiến trình đang hoạt động trên bộ nhớ chính ra ngoài bộ nhớ phụ

+ Swap - in: nạp lại tiến trình swap - out vào bộ nhớ chính+ Vị trí nạp vào có thể thay đổi giữa lần đầu và sau khi swap - in  tái định vị tiến trình vào lại bộ nhớ

+ Bảo vệ vùng nhớ của mỗi tiến trình (dùng 2 thanh ghi)

Trang 42

+ Địa chỉ ảo trong hệ thống phân trang là 1 cặp (p, d):

+ Tiến trình thực thi nếu trang hiện thời của nó đang ở trong bộ nhớ chính

+ Bộ nhớ chính chia thành các blocked  khung trang

- p: chỉ số trang trong bộ nhớ ảo

- d: độ dịch chuyển bên trong trang p

Trang 43

10 Page 1 0

Page 1 1 Page 1 2 Page 1 3

Page 2 0 Page 2 1 Page 2 2

Trống

9 8 7 6 5 4 3 2 1 0

Page Table

của tiến trình

8 1 3

Trang 44

- kích thước của không gian địa chỉ là 2m

- kích thước của trang là 2n

 (m - n) bit cao của địa chỉ logic là số hiệu trang (page)

 n bit còn lại là địa chỉ tương đối trong trang (offset)

Trang 45

6.1 Quản lý bộ nhớ

6.1.5 Các thuật toán thay thế trang

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Nguyên tắc tối ưu:

+ Trang thay thế là trang sẽ không được dùng lại trong thời gian lâu nhất trong tương lai

7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1

Trang 46

6.1 Quản lý bộ nhớ

6.1.5 Các thuật toán thay thế trang

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Nguyên tắc tối ưu:

+ Trang thay thế là trang sẽ không được dùng lại trong thời gian lâu nhất trong tương lai

Trang 47

6.1 Quản lý bộ nhớ

6.1.5 Các thuật toán thay thế trang

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Nguyên tắc thay thế vào trước ra trước:

+ Trang thay thế là trang đã ở trong bộ nhớ chính lâu nhất

7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1

Trang 48

6.1 Quản lý bộ nhớ

6.1.5 Các thuật toán thay thế trang

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Nguyên tắc thay thế vào trước ra trước:

+ Trang thay thế là trang đã ở trong bộ nhớ chính lâu nhất

Trang 49

6.1 Quản lý bộ nhớ

6.1.5 Các thuật toán thay thế trang

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Nguyên tắc thay thế trang “lâu nhất chưa sử dụng”:

+ Trang thay thế là trang chưa được sử dụng trong một thời gian lâu nhất

7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1

Trang 50

6.1 Quản lý bộ nhớ

6.1.5 Các thuật toán thay thế trang

CHƯƠNG 6: QUẢN LÝ BỘ NHỚ, VÀO RA,

TỆP

* Nguyên tắc thay thế trang “lâu nhất chưa sử dụng”:

+ Trang thay thế là trang chưa được sử dụng trong một thời gian lâu nhất

Ngày đăng: 17/10/2014, 07:13

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w