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

Một phần của tài liệu Thiết kế hệ thống hiển thị video trên bảng LED đa sắc – hỗ trợ Flash USB, thẻ nhớ SD và giao tiếp Ethernet (Trang 39 - 41)

1. Nội dung thiết kế tốt nghiệp:

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

MMU là đơn vị quản lý bộ nhớ trong hệ điều hành. MMU có vai trò dịch địa chỉ từ bộ nhớ ảo VM (Virtual Memory) sang bộ nhớ vật lý, mở rộng bộ nhớ khi bộ nhớ vật lý là có giới hạn, cho phép hệ điều hành có thể đổi chỗ hai bộ nhớ khi cần thiết. MMU còn có vai trò ngăn chặn tiến trình (process) truy cập vào những địa chỉ vật lý không được phép.

40

Hình 3.2 minh họa về mô hình bộ nhớ ảo và bộ nhớ vật lý trong hệ điều hành Linux chuẩn.

Hình 3.2 Bộ nhớ ảo và bộ nhớ vật lý trên hệ điều hành Linux [8]

Với bộ nhớ ảo VM, Linux có thể mở rộng một ngăn xếp (stack) của một process đang chạy khi cần thiết. Khi một ứng dụng thử ghi vào vượt quá đỉnh của stack, MMU sẽ mở rộng vùng bộ nhớ mới và tiếp tục ghép vào đó.

Trong các hệ điều hành có MMU, VM tạo ra một lớp trung gian giữa yêu cầu bộ nhớ cho các ứng dụng và MMU. Ưu điểm chính của hệ thống này là bộ nhớ cho các ứng dụng sẽ được phân tách trong bộ nhớ vật lý, nhờ đó mang lại mức độ bảo vệ bộ nhớ cao hơn. Yêu cầu của các ứng dụng về VM sẽ được phân bố với sự hợp tác giữa MMU và kernel. MMU cung cấp một sự bảo vệ bộ nhớ cho ứng dụng khi chạy trên nền tảng khác. Các hệ điều hành không có MMU nên bộ nhớ chương trình được ánh xạ trực tiếp từ bộ nhớ vật lý, kiến trúc này được gọi là mô hình bộ nhớ phẳng (flat memory model). Trong flat memory model, CPU truy cập tuần tự đến vị trí bộ nhớ sẵn có mà không cần phải phân trang hoặc phân đoạn.

Hệ điều hành uClinux thường không có MMU nên sẽ không có VM và không có sự bảo vệ bộ nhớ. Khi xảy ra lỗi về bộ nhớ của một chương trình sẽ gây ra lỗi cho các chương trình khác và cả kernel. uClinux không có sự phân trang theo yêu cầu, cần phải tải toàn bộ mã nguồn chương trình vào trong RAM, thay vì chỉ cần tải những trang mà chương trình thực sự truy cập đến. Trong hệ điều hành uClinux,

41

kích thước bộ nhớ cho các process được cố định nên không thể phân mảnh bộ nhớ, dẫn đến tốn bộ nhớ hơn.

Một phần của tài liệu Thiết kế hệ thống hiển thị video trên bảng LED đa sắc – hỗ trợ Flash USB, thẻ nhớ SD và giao tiếp Ethernet (Trang 39 - 41)

Tải bản đầy đủ (PDF)

(118 trang)