Đề XuấT, 2020

Editor Choice

Sự khác biệt giữa bộ nhớ ảo và bộ nhớ cache trong hệ điều hành

Bộ nhớ là một thiết bị phần cứng được sử dụng để lưu trữ thông tin tạm thời hoặc vĩnh viễn. Trong bài viết này, tôi đã thảo luận về sự khác biệt giữa bộ nhớ ảo và bộ nhớ cache. Bộ nhớ cachebộ nhớ tốc độ cao được sử dụng để giảm thời gian truy cập dữ liệu. Mặt khác, bộ nhớ ảo không chính xác là bộ nhớ vật lý mà nó là một kỹ thuật giúp mở rộng dung lượng của bộ nhớ chính vượt quá giới hạn của nó.

Sự khác biệt chính giữa bộ nhớ ảo và bộ nhớ đệm là bộ nhớ ảo cho phép người dùng thực thi các chương trình lớn hơn bộ nhớ chính trong khi đó, bộ nhớ đệm cho phép truy cập nhanh hơn vào dữ liệu được sử dụng gần đây. Chúng tôi sẽ thảo luận về một số khác biệt hơn với sự giúp đỡ của biểu đồ so sánh được hiển thị dưới đây.

Biểu đồ so sánh

Cơ sở để so sánhBộ nhớ ảoBộ nhớ đệm
Căn bảnBộ nhớ ảo mở rộng dung lượng bộ nhớ chính cho người dùng.Bộ nhớ cache tăng tốc độ truy cập dữ liệu của CPU.
Thiên nhiênBộ nhớ ảo là kỹ thuật.Bộ nhớ cache là một đơn vị lưu trữ.
Chức năngBộ nhớ ảo cho phép thực thi chương trình lớn hơn bộ nhớ chính.Bộ nhớ cache lưu trữ các bản sao của dữ liệu gốc đã được sử dụng gần đây.
Quản lý bộ nhớBộ nhớ ảo được quản lý bởi hệ điều hành.Bộ nhớ cache được quản lý hoàn toàn bởi phần cứng.
Kích thướcBộ nhớ ảo lớn hơn nhiều so với bộ nhớ đệm.Bộ nhớ cache có kích thước giới hạn.
Lập bản đồBộ nhớ ảo yêu cầu cấu trúc ánh xạ để ánh xạ địa chỉ ảo thành địa chỉ vật lý.Không có cấu trúc ánh xạ được yêu cầu như vậy trong bộ nhớ đệm.

Định nghĩa bộ nhớ ảo

Bộ nhớ ảo không chính xác là bộ nhớ vật lý của máy tính thay vào đó là một kỹ thuật cho phép thực thi một chương trình lớn có thể không được đặt hoàn toàn trong bộ nhớ chính . Nó cho phép lập trình viên thực thi các chương trình lớn hơn bộ nhớ chính.

Bây giờ hãy cho chúng tôi hiểu bộ nhớ ảo hoạt động như thế nào? Chương trình có địa chỉ bộ nhớ ảo được chia thành một số trang . Bộ nhớ chính cũng được chia thành một số trang . Bây giờ, như chúng ta có thể thấy địa chỉ ảo của một chương trình lớn hơn bộ nhớ chính khả dụng. Vì vậy, bản đồ bộ nhớ được sử dụng để ánh xạ địa chỉ ảo vào bộ nhớ chính.

Trang 0, 1, 2, được ánh xạ vào bộ nhớ chính và bộ nhớ chính sẽ đầy. Bây giờ, khi trang 3 của bộ nhớ ảo yêu cầu không gian trong bộ nhớ chính, trang được đặt cũ nhất tức là trang 0 được chuyển vào đĩa cứng và sơ tán vị trí cho trang 3, trong bộ nhớ chính và quá trình tiếp tục. Trong trường hợp trang 0 là cần thiết một lần nữa, thì một lần nữa trang được đặt cũ nhất tại thời điểm đó được chuyển sang đĩa cứng tạo vị trí cho trang 0.

Nếu hai chương trình cần cùng một dữ liệu, được đặt trong bộ nhớ chính, đơn vị ánh xạ bộ nhớ cho phép cả hai chương trình chia sẻ cùng một không gian địa chỉ trong bộ nhớ chính nơi lưu trữ dữ liệu chung . Điều này làm cho việc chia sẻ các tập tin dễ dàng.

Lợi ích của bộ nhớ ảo là:

  • Các chương trình không còn bị giới hạn bởi giới hạn của bộ nhớ chính.
  • Bộ nhớ ảo tăng mức độ đa chương trình.
  • Tăng mức sử dụng CPU.
  • Đơn vị I / O ít hơn sẽ yêu cầu tải hoặc hoán đổi các chương trình trong bộ nhớ.

Nhưng có một nhược điểm của bộ nhớ ảo, việc đặt nhiều trang của chương trình vào đĩa cứng sẽ làm chậm hiệu suất vì việc truy cập dữ liệu từ đĩa cứng mất nhiều thời gian hơn so với truy cập dữ liệu từ bộ nhớ chính.

Định nghĩa bộ nhớ cache

Không giống như bộ nhớ ảo, Cache là một thiết bị lưu trữ được triển khai trên chính bộ xử lý . Nó mang các bản sao của dữ liệu gốc đã được truy cập gần đây. Dữ liệu gốc có thể được đặt trong bộ nhớ chính hoặc bộ nhớ phụ. Bộ nhớ cache tăng tốc độ truy cập dữ liệu, nhưng làm thế nào? Hãy hiểu.

Chúng ta có thể nói rằng tốc độ truy cập của CPU bị giới hạn ở tốc độ truy cập của bộ nhớ chính . Bất cứ khi nào một chương trình được thực thi bởi bộ xử lý, nó sẽ lấy nó từ bộ nhớ chính. Nếu một bản sao của chương trình đã trong bộ đệm được triển khai trên bộ xử lý. Quá trình sẽ có thể truy cập dữ liệu đó nhanh hơn sẽ dẫn đến thực hiện nhanh hơn.

Sự khác biệt chính giữa bộ nhớ ảo và bộ nhớ cache

  1. Bộ nhớ ảo mở rộng dung lượng của bộ nhớ chính hầu như cho người dùng. Tuy nhiên, bộ nhớ cache giúp truy cập dữ liệu nhanh hơn cho CPU.
  2. Bộ nhớ cache là một đơn vị lưu trữ bộ nhớ trong khi bộ nhớ ảo là một kỹ thuật .
  3. Bộ nhớ ảo cho phép thực thi chương trình lớn hơn bộ nhớ chính. Mặt khác, bộ nhớ đệm lưu trữ các bản sao của dữ liệu gốc được sử dụng gần đây.
  4. Quản lý bộ nhớ ảo được thực hiện bởi hệ điều hành . Mặt khác, quản lý bộ nhớ cache được thực hiện bởi phần cứng .
  5. Bộ nhớ ảo lớn hơn nhiều so với bộ nhớ đệm có kích thước.
  6. Kỹ thuật bộ nhớ ảo yêu cầu các cấu trúc ánh xạ để ánh xạ địa chỉ ảo thành địa chỉ vật lý trong khi đó, bộ nhớ đệm không yêu cầu bất kỳ cấu trúc ánh xạ nào.

Phần kết luận:

Bộ nhớ ảo là một kỹ thuật để mở rộng dung lượng của bộ nhớ chính hầu như cho người dùng. Bộ nhớ đệm là một đơn vị lưu trữ lưu trữ dữ liệu được truy cập gần đây cho phép CPU truy cập nhanh hơn.

Top