Mục lục:
Định nghĩa - Bộ nhớ chia sẻ có nghĩa là gì?
Bộ nhớ dùng chung cho phần mềm là loại bộ nhớ có thể được chia sẻ bởi nhiều ứng dụng hoặc quy trình với mục đích cung cấp liên lạc giữa các ứng dụng hoặc tránh các bản sao dữ liệu dư thừa. Đây là một phương tiện hiệu quả để chia sẻ hoặc truyền dữ liệu vì nó loại bỏ nhu cầu sử dụng quy trình khác như đầu vào / đầu ra (I / O). Một ứng dụng lưu dữ liệu trong bộ nhớ dùng chung, trong khi một ứng dụng khác có thể sử dụng nó khi được tìm thấy.
Trong ngữ cảnh của bộ xử lý, bộ nhớ dùng chung là một phần của bộ nhớ truy cập ngẫu nhiên (RAM) có thể được truy cập bởi tất cả các bộ xử lý trong hệ thống đa bộ xử lý.
Techopedia giải thích Bộ nhớ dùng chung
Bộ nhớ dùng chung cho phần mềm là cách để các chương trình khác nhau giao tiếp và truyền dữ liệu mà không cần thêm chi phí từ các quy trình truyền thông. Với bộ nhớ dùng chung, một chương trình ghi vào bộ nhớ dùng chung bất kỳ dữ liệu nào nó cần chương trình khác để nhận.
Ví dụ: nếu Chương trình A muốn đưa ra một danh sách cho Chương trình B, nó sẽ lưu dữ liệu trong bộ nhớ dùng chung và đánh dấu nó bằng một semaphore hoặc hệ thống gắn cờ khác để báo hiệu rằng nó đã sẵn sàng để đọc bởi Chương trình B.
Khi Chương trình B tìm thấy tệp, nó sẽ kiểm tra semaphore để xem liệu nó có được phép chạm vào tệp đó không. Nếu được phép, thì nó sẽ làm những gì nó cần làm với tệp, đặt nó vào bộ nhớ dùng chung hoặc cập nhật nó. Nó cũng cập nhật semaphore, để Chương trình A biết rằng nó sẽ lấy tệp.
Về phần cứng, cụ thể là bộ vi xử lý, bộ nhớ dùng chung là một khối RAM lớn được sử dụng bởi nhiều bộ xử lý. Nó rất dễ lập trình vì tất cả các bộ xử lý đều có chung quan điểm về dữ liệu, tạo điều kiện cho việc giao tiếp nhanh hơn. Tuy nhiên, điều này có thể trở nên phức tạp vì bộ nhớ cache của bộ xử lý để truy cập nhanh hơn, điều này có thể dẫn đến các vấn đề như sự kết hợp bộ đệm.
