1. Trang chủ
  2. » Giáo án - Bài giảng

Chương 8 Quản lý bộ nhớ

47 504 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 47
Dung lượng 1,99 MB

Nội dung

QUẢN QUẢN BỘ NHỚ BỘ NHỚ Giới thiệu Giới thiệu  Bộ nhớ chính là một tài nguyên của hệ thống dùng để cấp phát và chia sẻ cho nhiều tiến trình đang ở trạng thái hoạt động.  Quảnbộ nhớ là một trong những nhiệm vụ quan trọng và phức tạp nhất của hệ điều hành.  Công cụ cơ bản của quảnbộ nhớ là sự phân trang (paging) và sự phân đoạn(segmentation).Mỗi tiếp cận có ưu điểm và nhược điểm riêng.Có thể kết hợp giữa phân trang và phân đoạn để có được một chiến lược quảnbộ nhớ linh hoạt hơn. Chọn phương pháp quản bộ nhớ cho một hệ thống xác định phụ thuộc vào nhiều yếu tố, đặc biệt trên thiết kế phần cứng của hệ thống. Chúng ta thấy nhiều giải thuật yêu cầu hỗ trợ phần cứng mặc dù các thiết kế gần đây đã tích hợp phần cứng và hệ điều hành. Mục đích Mục đích  Hiểu các cách khác nhau để quản bộ nhớ  Hiểu tiếp cận quản bộ phân trang và phân đoạn  Vận dụng một cách quản bộ nhớ phù hợp với hệ thống xác định QUẢN BỘ NHỚ QUẢN BỘ NHỚ  Nền tảng  Hoán vị  Cấp phát liên tục  Phân trang  Phân đoạn  Kết hợp phân trang với phân đoạn Nền tảng Nền tảng  Bộ nhớ là trung tâm để điều hành hệ thống máy tính. Bộ nhớ chứa một mảng lớn các từ (words) hay các bytes, mỗi phần tử với địa chỉ riêng. CPU lấy các chỉ thị từ bộ nhớ dựa theo giá trị của thanh đếm chương trình. Liên kết địa chỉ Liên kết địa chỉ  Chương trình được nạp vào bộ nhớ và được đặt trong một tiến trình để chạy.  Input queue - tập hợp các tiến trình trên đĩa đang chờ đợi để được đưa vào bộ nhớ để thực thi.  Chương trình người dùng đi qua một vài bước trước khi chạy Liên kết địa chỉ Liên kết địa chỉ  Thời gian biên dịch: nếu tại thời điểm biên dịch có thể biết quá trình nằm ở đâu trong bộ nhớ thì mã tuyệt đối có thể được phát sinh.  Thời điểm nạp: nếu tại thời điểm biên dịch chưa biết nơi quá trình sẽ nằm ở đâu trong bộ nhớ thì trình biên dịch phải phát sinh mã có thể tái định vị.  Thời gian thực thi: nếu quá trình có thể được di chuyển trong thời gian thực thi từ một phân đoạn bộ nhớ này tới một phân đoạn bộ nhớ khác thì việc liên kết phải bị trì hoãn cho tới thời gian chạy. Liên kết các chỉ thị và dữ liệu tới các địa chỉ có thể được Liên kết các chỉ thị và dữ liệu tới các địa chỉ có thể được thực hiện tại bất cứ bước nào sau đây: thực hiện tại bất cứ bước nào sau đây: Xử nhiều bước của chương trình người Xử nhiều bước của chương trình người dùng dùng Không gian địa chỉ logic và không gian Không gian địa chỉ logic và không gian địa chỉ vật lí địa chỉ vật lí  Không gian địa chỉ logic ràng buộc với một không gian địa chỉ vật là trung tâm để quản bộ nhớ thích hợp  Logical address - được tạo ra bởi CPU, còn được gọi là địa chỉ ảo  Physical address - địa chỉ được thấy bởi các đơn vị bộ nhớ  Địa chỉ logic và địa chỉ vật là như nhau trong thời gian biên dịch và thời gian nạp địa chỉ ràng buộc nhau. Cơ chế liên kết địa chỉ tại thời điểm thực thi,không gian địa chỉ logic và vật là khác nhau. Định vị tự động dùng thanh ghi tái định Định vị tự động dùng thanh ghi tái định vị vị [...]... thị cách định vị chương trình con trong thư viện cư trú trong bộ nhớ hay cách nạp thư viện nếu chương trình con chưa hiện diện Khi stub này được thực thi, nó kiểm tra để thấy chương trình con được yêu cầu đã ở trong bộ nhớ hay chưa Nếu chưa, chương trình này sẽ nạp chương trình con vào trong bộ nhớ Dù là cách nào, stub thay thế chính nó với địa chỉ của chương trình con và thực thi chương trình con...     Phân trang là cơ chế quản bộ nhớ cho phép không gian địa chỉ vật của quá trình là không kề nhau Bộ nhớ vật được chia thành các khối có kích thước cố định được gọi là các khung (frames) Bộ nhớ luận cũng được chia thành các khối có cùng kích thước được gọi là các trang (pages) Khi một quá trình được thực thi, các trang của nó được nạp vào các khung bộ nhớ sẳn dùng từ vùng lưu trữ... thước như các khung bộ nhớ Tất cả các khung trống phải giử lại tất cả các track Để thực hiện một chương trình với kích thước n trang thì cần phải tìm n khung trống và nạp chương trình vào Ta phải cài đặt bảng trang để chứa địa chỉ nền của mỗi trang trong bộ nhớ vật Địa chỉ nền này được kết hợp với độ dời trang để định nghĩa địa chỉ bộ nhớ vật mà nó được gởi đến đơn vị bộ nhớ Phương pháp phân... của mỗi trang trong bộ nhớ vật  Địa chỉ nền này được kết hợp với độ dời trang để định nghĩa địa chỉ bộ nhớ vật mà nó được gởi đến đơn vị bộ nhớ Phần cứng phân trang Sự thi hành của bảng trang  Bảng trang được giữ trong bộ nhớ chính  Bảng trang thanh ghi cơ sở được trỏ vào bảng trang  Bảng trang thanh ghi độ dài cho biết kích thước của bảng trang Bảo vệ     Bảo vệ bộ nhớ trong môi trường... VỀ PHÂN ĐOẠN: - Bộ nhớ vật được chia thành các phần cố định có kích thước không nhất thiết bằng nhau và có thể là các đoạn liên tục hoặc không liên tục trong bộ nhớ - Mỗi phân đoạn bao gồm số hiệu và kích thước: + số hiêu: được đánh số bắt đầu từ 0 + kích thước: tùy theo từng đoạn - Phân đoạn là một cơ chế quản bộ nhớ hổ trợ tầm nhìn bộ nhớ của người dùng PHÂN ĐOẠN Tầm nhìn chương trình của... cấp truy xuất trực tiếp tới các hình ảnh bộ nhớ này  Thí dụ, giả sử một môi trường đa chương với giải thuật lập thời biểu CPU round-robin Khi định mức thời gian hết, bộ quản bộ nhớ sẽ bắt đầu hoán vị ra (swap out) vùng lưu trữ phụ tiến trình vừa mới kết thúc và hoán vị vào (swap in) một tiến trình khác tới không gian bộ nhớ được trống (hình 0-4) Do đó, bộ định thời biểu CPU sẽ cấp những phần thời... tiếp giáp Internal Fragmentation - cấp phát bộ nhớ có thể không lớn hơn so với bộ nhớ yêu cầu; sự khác biệt này là kích thước bộ nhớ trong một phân vùng, nhưng không được sử dụng Phân mãnh bộ nhớ có thể là phân mãnh trong hoặc phân mãnh ngoài Xét cơ chế cấp phát nhiều phân khu với một lỗ trống có kích thước 18, 464 bytes Giả sử rằng quá trình tiếp theo yêu cầu 18, 462 bytes Nếu chúng ta cấp phát chính xác... cận thông thường là chia bộ nhớ vật thành những khối có kích thước cố định, và cấp phát bộ nhớ dựa theo đơn vị của kích thước khối Với tiếp cận này, bộ nhớ được cấp phát tới một quá trình có thể là lớn hơn một chút so với khối được yêu cầu Sự chênh lệnh giữa hai số này là phân mãnh trong -bộ nhớ bị phân mãnh trong đối với một phân khu thì không thể được dùng Hệ thống đa chương với phân khu động... tái định vị và giới hạn, mỗi địa chỉ luận phải ít hơn thanh ghi giới hạn; MMU (đơn vị quản bộ nhớ) ánh xạ địa chỉ luận động bằng cách cộng giá trị trong thanh ghi tái định vị Địa chỉ được tái định vị này được gửi tới bộ nhớ (như hinh dưới) Hỗ trợ phần cứng cho các thanh ghi tái định vị và các giới hạn Phân mãnh      External Fragmentation - tổng bộ nhớ không gian tồn tại để đáp ứng yêu cầu,... viện Swapping  Một tiến trình cần ở trong bộ nhớ để được thực thi Tuy nhiên, một tiến trình có thể được hoán vị (swapped) tạm thời khỏi bộ nhớ tới vùng lưu trữ phụ backing store, sau đó mang trở lại bộ nhớ để việc thực thi được tiếp tục  Backing store :Vùng lưu trữ phụ này thường là một đĩa tốc độ cao Nó phải đủ lớn để chứa các bản sao của tất cả hình ảnh bộ nhớ cho tất cả người dùng, và nó phải cung . khác nhau để quản lý bộ nhớ  Hiểu tiếp cận quản lý bộ phân trang và phân đoạn  Vận dụng một cách quản lý bộ nhớ phù hợp với hệ thống xác định QUẢN LÝ BỘ NHỚ QUẢN LÝ BỘ NHỚ  Nền tảng. QUẢN LÝ QUẢN LÝ BỘ NHỚ BỘ NHỚ Giới thiệu Giới thiệu  Bộ nhớ chính là một tài nguyên của hệ thống dùng để cấp phát và chia sẻ cho nhiều tiến trình đang ở trạng thái hoạt động.  Quản. đã ở trong bộ nhớ hay chưa. Nếu chưa, chương trình này sẽ nạp chương trình con vào trong bộ nhớ. Dù là cách nào, stub thay thế chính nó với địa chỉ của chương trình con và thực thi chương trình

Ngày đăng: 13/05/2014, 00:26

HÌNH ẢNH LIÊN QUAN

Bảng trangbảng trang - Chương 8 Quản lý bộ nhớ
Bảng trangb ảng trang (Trang 27)
Bảng trang được bămBảng trang được băm - Chương 8 Quản lý bộ nhớ
Bảng trang được bămBảng trang được băm (Trang 30)
Bảng trang cho phân đoạn này - Chương 8 Quản lý bộ nhớ
Bảng trang cho phân đoạn này (Trang 44)

TỪ KHÓA LIÊN QUAN

w