chapter 8:bộ nhớ chính nguyễn thị thanh an võ thị hoàng anh saykham khammanyxay

57
Silberschatz, Galvin and Gagne ©2007 ating System Concepts with Java – 7 th Edition, Nov 15, 2006 Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

Upload: apu

Post on 07-Jan-2016

31 views

Category:

Documents


0 download

DESCRIPTION

Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay. Chapter 8: Quản lý bộ nhớ. Khái quát Sự hoán đổi Cấp phát bộ nhớ liền kề Sự phân trang Cấu trúc bảng trang Phân đoạn Ví dụ: Intel Pentium. Mục tiêu. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Chapter 8:Bộ Nhớ chínhNguyễn Thị Thanh An

Võ Thị Hoàng Anhsaykham khammanyxay

Page 2: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.2 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Chapter 8: Quản lý bộ nhớ

Khái quát Sự hoán đổi Cấp phát bộ nhớ liền kề Sự phân trang Cấu trúc bảng trang Phân đoạn Ví dụ: Intel Pentium

Page 3: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.3 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Mục tiêu

Cung cấp một mô tả chi tiết các phương pháp khác nhau để tổ chức một bộ nhớ phần cứng

Thảo luận các kỹ thuật khác nhau để quản lý bộ nhớ bao gồm: phân trang và phân đoạn

Cung cấp một mô tả chi tiết của Intel pentium để hỗ trợ cho phân đoạn hoàn toàn và phân đoạn với phân trang

Page 4: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.4 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Khái quát

Chương trình phải được mang (từ đĩa) đến bộ nhớ và đặt trong một tiến trình để nó được thực hiện

Bộ nhớ chính và thanh ghi chỉ được lưu trữ trong CPU có thể truy nhập trực tiếp

Thanh ghi truy nhập trong một đồng hồ CPU (hoặc less)

Bộ nhớ chính có thể thực hiện nhiều chu kỳ Cache đặt giữa bộ nhớ chính và thanh ghi CPU Bảo vệ của bộ nhớ được yêu cầu để đảm bảo

hoạt động chính xác

Page 5: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.5 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Thanh ghi cơ sỡ và giới hạn

Một cặp thanh ghi cơ sỡ và giới hạn xác định không gian địa chỉ logic

Page 6: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.6 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Sự liên kết của các lệnh và dữ liệu với bộ nhớ

Địa chỉ liên kết của các lệnh và dữ liệu đến địa chỉ bộ nhớ có thể xảy ra ở 3 giai đoạn khác nhau: Thời gian biên dịch: Nếu vị trí bộ nhớ biết một tiên

nghiệm(priori), mã tuyệt đối có thể được tạo ra; phải biên dịch lại mã nếu vị trí bộ nhớ bắt đầu thay đổi

Thời gian nạp: Phải tạo ra mã xác định lại vị trí nếu vị trí bộ nhớ không được biết ở thời gian biên dịch

Thời gian thi hành:Trì hoãn sự liên kết cho đến khi thời gian bắt đầu được tính nếu một tiến trình có thể di chuyển trong suốt quá trình thực hiện của nó từ một phân đoạn bộ nhớ đến một phân đoạn khác. Cần phần cứng để hỗ trợ cho ánh xạ địa chỉ (ví dụ: thanh ghi cơ sỡ và giới hạn)

Page 7: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.7 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Các bước xử lý một chương trình của người sử dụng

Page 8: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.8 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Không gian địa chỉ logic và địa chỉ vật lý

Khái niệm của không gian địa chỉ logic qui định giới hạn để chia không gian địa chỉ vật lý, là trung tâm để quản lý bộ nhớ đúng cách Địa chỉ logic – được tạo ra bởi CPU; cũng

được nói đến như là địa chỉ ảo Địa chỉ vật lý – địa chỉ được hiểu bởi đơn vị

bộ nhớ Địa chỉ logic và địa chỉ vật lý là tương tự nhau

trong thời gian biên dịch và thời gian nạp của lược đồ liên kết địa chỉ; địa chỉ logic(ảo) và địa chỉ vật lý khác nhau trong thời gian thi hành của lược đồ liên kết địa chỉ

Page 9: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.9 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Đơn vị quản lý bộ nhớ (MMU)

Thiết bị phần cứng đó là ánh xạ ảo đến địa chỉ vật lý

Trong lược đồ MMU, giá trị trong thanh ghi tái định vị được thêm vào mọi địa chỉ được sinh ra bởi tiến trình người sử dụng tại thời gian mà nó được gửi tới bộ nhớ

Chương trình người sử dụng xử lý với địa chỉ logic; nó không hiểu địa chỉ vật lý thực

Page 10: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.10 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Tái định vị động bằng cách sử dụng thanh ghi tái định vị

Page 11: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.11 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Nạp động

Thường trình không được nạp cho đến khi nó được gọi

Tận dụng tốt không gian bộ nhớ; thường trình chưa bao giờ được sử dụng là không bao giờ được nạp

Hữu dụng khi một số lượng lớn mã cần được điều khiển trường hợp hiếm khi xảy ra

Không được hỗ trợ đặc biệt từ hệ điều hành, nó được yêu cầu để thực hiện trong suốt quá trình thiết kế chương trình

Page 12: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.12 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Liên kết động

Liên kết hoãn cho đến thời gian thi hành Một số lượng mã nhỏ, stub , được sử dụng để

định vị thư viện thường trình bộ nhớ cư trú thích hợp

Stub thay thế nó với địa chỉ của thường trình và thực hiện thường trình

Hệ điều hành cần được kiểm tra nếu thường trình ở trong một tiến trình của địa chỉ bộ nhớ

Liên kết động đặc biệt hữu dụng trong thư viện Hệ thống cũng được biết đến như là thư viện

chia sẻ

Page 13: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.13 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Sự hoán đổi

Một tiến trình có thể được hoán đổi tạm thời ra khỏi bộ nhớ đến một bộ nhớ phụ, và sau đó mang trở lại bộ nhớ để tiếp tục thi hành

Bộ nhớ phụ – đĩa đủ lớn để điều chỉnh các sao chép của tất cả bộ nhớ hình ảnh cho tất cả người sử dụng, phải cung cấp truy nhập trực tiếp đến những bộ nhớ hình ảnh này

Chuyển ra, chuyển vào –hoán đổi biến thể sử dụng các danh mục thuật toán ưu tiên; tiến trình ưu tiên thấp hơn được hoán đổi ra để các tiến trình ưu tiên cao hơn được nạp và thi hành

Phần thời gian hoán đổi chủ yếu là thời gian truyền; toàn bộ thời gian truyền trực tiếp tỉ lệ tương ứng với số lượng bộ nhớ hoán đổi

Các phiên bản sửa đổi của sự hoán đổi được tìm thấy trong nhiều hệ thống (ví dụ: UNIX, Linux, và Windows)

Hệ thống duy trì một hàng sẵn sàng của tiến trình sẵn sàng để chạy, có bộ nhớ hình ảnh trên đĩa

Page 14: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.14 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Biểu đồ của sự hoán đổi

Page 15: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.15 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Sự cấp phát bộ nhớ liền kề

Bộ nhớ chính thường chia thành 2 phân vùng: Hệ điều hành cư trú, thường chứa trong bộ nhớ cấp

thấp với vector ngắt Các tiến trình người sử dụng sau đó được chứa trong

bộ nhớ cấp cao hơn

Các thanh ghi tái định vị sử dụng để bảo vệ các tiến trình người sử dụng từ các tiến trình khác, và từ sự thay đổi mã và dữ liệu của hệ điều hành Các thanh ghi cơ sỡ chứa các giá trị địa chỉ vật lý nhỏ

nhất Thanh ghi giới hạn chứa miền địa chỉ logic – mỗi địa

chỉ logic phải ít hơn thanh ghi giới hạn MMU ánh xạ địa chỉ logic dynamically

Page 16: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.16 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Sự bảo vệ địa chỉ HW với thanh ghi cơ sỡ và giới hạn

Page 17: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.17 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Sự cấp phát bộ nhớ liền kề (tiếp theo)

Sự cấp phát nhiều phân vùng Ô trống – một khối bộ nhớ xác định; các kích thước khác

nhau của các ô trống được đặt khắp bộ nhớ Khi một tiến trình đến, nó được cấp phát từ một ô trống

lớn đủ để cung cấp cho nó Hệ điều hành duy trì các thông tin về:

a) cấp phát các phân vùng b) các phân vùng trống (hole)

OS

process 5

process 8

process 2

OS

process 5

process 2

OS

process 5

process 2

OS

process 5

process 9

process 2

process 9

process 10

Page 18: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.18 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Bộ nhớ động-vấn đề về việc cấp phát

First-fit: cấp phát ô trống đầu tiên có kích thước đủ lớn Best-fit: cấp phát ô trống nhỏ nhất có kích thước đủ

lớn; phải tìm danh sách thực thể, trừ khi sắp xếp theo kích thước Tạo ra các ô trống dư nhỏ nhất

Worst-fit: cấp phát ô trống lớn nhất; cũng phải tìm kiếm danh sách thực thể Tạo ra các ô trống dư lớn nhất

Làm thế nào để đáp ứng n kích cỡ từ danh sách các ô trống

First-fit và best-fit tốt hơn worst-fit trong giới hạn của tốc độ và dung lượng sử dụng

Page 19: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.19 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Sự phân đoạn

Sự phân đoạn bên ngoài – tất cả không gian bộ nhớ tồn tại để đáp ứng yêu cầu, nhưng nó không liên tục

Sự phân đoạn bên trong– cấp phát bộ nhớ có thể có kích thước hơi lớn hơn so với yêu cầu bộ nhớ; kích thước khác nhau này ở bộ nhớ trong đến một phân vùng, nhưng không được sử dụng

Giảm sự phân đoạn bên ngoài bởi giao ước Sắp xếp lại nội dung bộ nhớ để đặt tất cả bộ nhớ rỗng

với nhau trong một khối lớn Giao ước có thể là only nếu sự tái định vị là động, và

được thực hiện ở thời gian thi hành Vấn đề về xuất/nhập

Việc then chốt trong bộ nhớ trong khi nó tham gia vào xuất/nhập

Xuất/nhập chỉ làm việc trong hệ điều hành đệm

Page 20: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.20 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Sự phân trang

Không gian địa chỉ logic của một tiến trình có thể không liên tiếp; tiến trình được cấp phát bộ nhớ vật lý bất cứ khi nào nó tồn tại

Chia bộ nhớ vật lý thành khối kích thước cố định gọi là các khung trang (kích thước là luỹ thừa của 2, giữa 512 bytes và 8,192 bytes)

Chia bộ nhớ logic thành các khối có kích thước tương tự nhau gọi là các trang

Theo dõi tất cả các khung trang trống Để chạy chương trình có kích thước n trang, cần tìm n

khung trống và nạp chương trình Đưa ra một bảng trang để chuyển địa chỉ logic thành địa

chỉ vật lý Sự phân đoạn bên ngoài

Page 21: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.21 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Lược đồ dịch địa chỉ

Địa chỉ được tạo ra bởi CPU được chia ra thành:

Số hiệu trang (p) –sử dụng như một chỉ số trong một bảng trang chứa địa chỉ cơ sỡ của mỗi trang trong bộ nhớ vật lý

Địa chỉ tương đối trong trang (d) – kết hợp với địa chỉ cơ sỡ để xác định địa chỉ vật lý được gửi tới đơn vị nhớ

Đưa ra một không gian địa chỉ logic 2m and kích thước trang 2n

page number page offset

p d

m - n n

Page 22: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.22 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Sự phân trang phần cứng

Page 23: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.23 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Mô hình sự phân trang của bộ nhớ logic và vật lý

Page 24: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.24 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Ví dụ về sự phân trang

32-byte memory and 4-byte pages

Page 25: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.25 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Các khung trang trống

Before allocation After allocation

Page 26: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.26 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Quá trình thực hiện của bảng trang

Bảng trang được giữ trong bộ nhớ chính Thanh ghi bảng trang cơ sỡ (PTBR) trỏ tới bảng trang Thanh ghi độ dài bảng trang (PRLR) chỉ ra kích thước của

bảng trang Trong lược đồ này mọi dữ liệu/lệnh truy cập yêu cầu 2 bộ

nhớ truy cập. Một cho bảng trang và một cho dữ liệu/lệnh Vấn đề truy cập 2 bộ nhớ có thể được giải quyết bằng cách

sử dụng phần cứng lưu trữ đặc biệt tìm kiếm nhanh gọi là bộ nhớ liên kết hoặc dịch biến đệm sang một bên (TLBs)

Một số TLBs chứa không gian nhận dạng địa chỉ (ASIDs) trong mỗi mục TLB – xác định duy nhất mỗi tiến trình để cung cấp bảo vệ không gian địa chỉ cho tiến trình

Page 27: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.27 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Bộ nhớ kết hợp

Bộ nhớ kết hợp – tìm kiếm song song

dịch địa chỉ (p, d) Nếu p là thanh ghi kết hợp, nhận khung trang # Nếu không nhận khung trang # từ bảng trang

trong bộ nhớ

Page # Frame #

Page 28: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.28 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Sự phân trang phần cứng với TLB

Page 29: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.29 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Thời gian truy nhập hiệu quả

Kết hợp Lookup = đơn vị thời gian Thừa nhận chu kỳ thời gian nhớ là 1 phần triệu giây Tỷ lệ trúng – tỷ lệ phần trăm số lần mà một số hiệu trang

được tìm thấy trong thanh ghi kết hợp; tỉ lệ này liên quan đến số thanh ghi kết hợp

Tỷ lệ trúng = Thời gian truy nhập hiệu quả (EAT)

EAT = (1 + ) + (2 + )(1 – )

= 2 + –

Page 30: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.30 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Sự bảo vệ bộ nhớ

Sự bảo vệ bộ nhớ được thực hiện bằng cách kết hợp các bit bảo vệ với mỗi khung trang

Bit hợp lệ - không hợp lệ gắn với mỗi mục trong bảng trang: “hợp lệ” chỉ ra rằng các trang kết hợp ở trong tiến

trình của không gian địa chỉ logic, và do đó nó là một trang hợp lệ

“không hợp lệ” chỉ ra rằng trang không nằm trong tiến trình của không gian địa chỉ logic

Page 31: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.31 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Bit hợp lệ (v) hoặc không hợp lệ (i) trong một bảng trang

Page 32: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.32 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Chia sẻ trang

Chia sẻ mã Một bảng sao chép của mã chỉ đọc (tái lập) chia sẻ

giữa các tiến trình (ví dụ: soạn thảo văn bản, các chương trình biên dịch, các hệ thống window).

Chia sẻ mã phải xuất hiện trong các vị trí như nhau trong không gian địa chỉ logic của tất cả các tiến trình

Mã và dữ liệu cá nhân Mỗi tiến trình giữ một bảng sao chép của mã và dữ

liệu Các trang chứa mã và dữ liệu cá nhân có thể xuất

hiện ở bất cứ đâu trong không gian địa chỉ logic

Page 33: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.33 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Ví dụ về chia sẻ trang

Page 34: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.34 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Cấu trúc của bảng trang

Sự phân trang phân cấp

Bảng trang tham khảo

Bảng trang ngược

Page 35: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.35 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Phân cấp bảng trang

Chia không gian địa chỉ logic vào nhiều bảng trang

Một kỹ thuật đơn giản đó là bảng trang 2 cấp độ

Page 36: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.36 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Lược đồ bảng trang cấp 2

Page 37: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.37 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Ví dụ về sự phân trang cấp độ 2

Một địa chỉ logic (trên 32-bit máy có 1K kích thước trang) được chia thành: Một số hiệu trang gồm 22 bits Một địa chỉ tương đối trang 10 bits

Kể từ khi bảng trang được phân trang, số hiệu trang được chia thành: Một số hiệu trang12-bit Một địa chỉ tương đối trang10-bit

Do đó một địa chi logic là như sau:

p là một chỉ mục vào bảng trang bên ngoài, và p, là sự thay thế bên trong trang của bảng trang bên ngoài

Số hiệu trang Địa chỉ tương đối trang

pi p2 d

12 10 10

Page 38: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.38 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Lược đồ sự dịch địa chỉ

Page 39: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.39 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Lược đồ thứ tự phân trang cấp độ 3

Page 40: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.40 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Bảng trang tham khảo

Một không gian địa chỉ thường > 32 bits

Số hiệu trang ảo được tham khảo trong bảng trang. Bảng trang này chứa một chuỗi các thành phần băm tới các vị trí tương tự nhau.

Số hiệu trang ảo được so sánh trong một chuỗi tìm kiếm cho phù hợp. Nếu tìm thấy là phù hợp, khung trang vật lý tương ứng được trích.

Page 41: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.41 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Bảng trang tham khảo

Page 42: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.42 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Bảng trang ngược

Một mục cho mỗi trang thực của bộ nhớ Mục bao gồm địa chỉ vật lý của trang chứa trong một

vị trí bộ nhớ thực, với thông tin về tiến trình quản lý trang

Giảm bộ nhớ cần để chứa mỗi bảng trang, nhưng tăng thời gian cần thiết để tìm kiếm bảng trang khi một tham chiếu trang xảy ra

Sử dụng bảng tham khảo trang đẻ giới hạn việc tìm kiếm tới một — hoặc tất cả một số — mục bảng trang

Page 43: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.43 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Cấu trúc bảng trang ngược

Page 44: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.44 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Phân đoạn

Một lược đồ điều khiển bộ nhớ để hỗ trợ cho người xem của bộ nhớ

Một chương trình là một tập hợp các đoạn. Một đoạn là một đơn vị logic như là: chương trình chính,

thủ tục, hàm,phương thức,đối tượng,biến địa phương, biến toàn cục,khối phổ biến,ngăn xếp,bảng biểu tượng, mảng

Page 45: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.45 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Tổng quan của người sử dụng về chương trình

Page 46: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.46 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Tổng quan địa chỉ logic của sự phân đoạn

1

3

2

4

1

4

2

3

Không gian sử dụng Không gian bộ nhớ vật lý

Page 47: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.47 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Cấu trúc phân đoạn

Địa chỉ vật lý bao gồm 2 bộ:

<segment-number, offset>, Bảng phân đoạn – ánh xạ -kích cỡ địa chỉ vật lý; mỗi

bảng mục gồm: Cơ sỡ – chứa địa chỉ vật lý nơi các phân đoạn cư

trú trong bộ nhớ Giới hạn – định rõ chiều dài của phân đoạn

Bảng phân đoạn thanh ghi cơ sỡ (STBR) trỏ tới vị trí của bảng phân đoạn trong bộ nhớ

Bảng phân đoạn chiều dài thanh ghi (STLR) chỉ ra số phân đoạn sử dụng trong một chương trình;

phân đoạn s là hợp lệ nếu s < STLR

Page 48: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.48 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Cấu trúc phân đoạn (tiếp theo)

Sự bảo vệ Với mỗi mục trong bảng phân đoạn kết hợp:

Xác nhận bit = 0 phân đoạn không hợp lệ Đọc/viết/thi hành các đặc quyền

Các bit bảo vệ kết hợp với các phân đoạn; mã chia sẻ xảy ra ở cấp phân đoạn

Kể từ khi các phân đoạn khác nhau về chiều dài, sự cấp phát bộ nhớ là sự lưu trữ động –vấn đề về sự cấp phát

Một ví dụ về sự phân đoạn được thể hiện trong biểu đồ dưới đây

Page 49: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.49 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Sự phân đoạn phần cứng

Page 50: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.50 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Ví dụ về sự phân đoạn

Page 51: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.51 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Ví dụ: Intel Pentium

Hỗ trợ cho cả sự phân đoạn và sự phân đoạn với phân trang

CPU tạo ra địa chỉ logic Đưa ra một đơn vị phân đoạn

Tạo ra một địa chỉ tuyến tính Địa chỉ tuyến tính đưa ra đơn vị phân trang

Tạo ra địa chỉ vật lý trong bộ nhớ chính Đơn vị phân trang tương đương với MMU

Page 52: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.52 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Chuyển địa chỉ logic thành địa chỉ vật lý trong Pentium

Page 53: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.53 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Sự phân đoạn trong Intel Pentium

Page 54: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.54 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Cấu trúc phân trang trong Pentium

Page 55: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.55 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Địa chỉ tuyến tính trong Linux

Chia thành 4 phần:

Page 56: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

8.56 Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Phân trang cấp 3 trong Linux

Page 57: Chapter 8:Bộ Nhớ chính Nguyễn Thị Thanh An Võ Thị Hoàng Anh saykham khammanyxay

Silberschatz, Galvin and Gagne ©2007Operating System Concepts with Java – 7th Edition, Nov 15, 2006

Kết thúc Chapter 8