Cache là gì - Stream Hub

BỘ NHỚ ĐỆM CÓ TÁC DỤNG GÌ

by Admin


Đăng vào Thu Nov 30 2017



KHÁI NIỆM TẦNG DỮ LIỆU

Trước khi đến với Cache, bạn hãy tìm hiểu qua “tầng dữ liệu” trong bộ nhớ hệ điều hành. Các tầng bộ nhớ trong máy tính lưu trữ tách biệt mỗi cấp độ với nhau và khác nhau dựa trên thời gian đáp ứng. Ngoài thời gian đáp ứng, độ phức tạp và dung lượng, các tầng có thể được phân biệt với nhau bằng hiệu năng và công nghệ sử dụng.

 

 

 

Càng lên cao, dung lượng của bộ nhớ sẽ càng giảm dần, nhưng tốc độ truy xuất sẽ càng nhanh. Và Cache là mức nhanh thứ 2 sau tốc độ chạy của CPU (thứ 3 nếu tính cả thanh ghi – register). Điều này chứng tỏ cache là một bộ phận vô cùng quan trọng, và dữ liệu trong cache sẽ được xử lý rất nhanh.

 

BỘ NHỚ ĐỆM

Cache (bộ nhớ đệm) là bộ nhớ đệm chứa dữ liệu, các dữ liệu chờ yêu cầu từ ứng dụng hoặc phần cứng. Cache có hai loại chính: một là cache chính (được đính kèm cùng CPU) và hai là cache phụ, là những cache xử lý nhanh tiếp theo.

 

Cách hoạt động của bộ nhớ đệm thật ra rất đơn giản. Bình thường những dữ liệu để chạy một chương trình sẽ được lưu trữ trên bộ nhớ của hệ thống (như RAM). Khi được sử dụng, nó được đẩy vào cache để được thực thi nhanh hơn.

 

Do vậy, những chương trình bạn mở lần đầu có khuynh hướng mở lâu, lý do là do chương trình đó phải được đẩy từ từ. Bên cạnh đó, nếu bạn truy cập lại chương trình đó thường xuyên trong suốt quá trình làm việc, những lần mở sau có khả năng sẽ nhanh hơn.

 

Khi chúng ta thao tác bất kì gì trên máy tính (như mở chương trình, mở trình duyệt web hay bật nhạc), là gửi thông tin/ dữ liệu lên hệ điều hành làm điều gì đó. Hệ điều hành sẽ tiếp nhận và thực thi cho chúng ta.

 

Do vậy, khi yêu cầu thực hiện của chúng ta được gửi lên, hệ điều hành sẽ kiểm tra xem những dữ liệu của hoạt động đó đã được tải lên cache hay chưa. Nếu có, hệ điều hành sẽ lấy ngay chúng và thực thi ngay chương trình, nhờ vậy yêu cầu được diễn ra nhanh. Nếu không, nó sẽ sao chép một bản thông tin mình yêu cầu vào cache, phòng trường hợp mình sử dụng lại dữ liệu đó, và thực thi. Vì vậy, quá trình yêu cầu hệ điều hành thực thi của chúng ta – người dùng sẽ lâu hơn.

 

 

 

Ngoại trừ thanh ghi nội (internal register) được lập trình như một bộ nhớ đệm tốc độ cao cho bộ nhớ chính, tất cả các loại cache còn lại đều được lắp sẵn từ phần cứng. Một bộ cache trung bình của laptop khoảng 3M, và con số này ở khoảng 6M ở các dòng máy bàn, và có thể cao hơn ở các dòng máy trạm, máy server.

 

 

 

TẠI SAO CACHE HOẠT ĐỘNG NHANH HƠN RAM, NHƯNG SAO KHÔNG TĂNG DUNG LƯỢNG CỦA CACHE Ở TẤT CẢ CÁC DÒNG MÁY TÍNH?

Có nhiều lý do cho việc không tăng dung lượng của cache quá nhiều ở các dòng máy tính, càng không ở các dòng máy laptop thông thường. Nhưng tôi chỉ nêu ra hai lý do chính yếu:

1. GIÁ TIỀN

Công thiết kế và lắp đặt cache trong CPU không hề đơn giản, việc tăng dung lượng bộ nhớ đệm lên có phần hơi hao phí.

2. MAIN (BO MẠCH CHỦ) HỖ TRỢ

Những con CPU đi theo cache thường phải đi kèm những main nhất định mới có thể tận dụng hết công suất và hiệu năng của con CPU. Do vậy bạn không thể tăng chỉ số cache lên trong khi không main nào hỗ trợ một số lượng cache cao như vậy. Dẫn tới việc lãng phí.

 

Dòng chãy dữ liệu giữa những “tầng” có thể như hình vẽ hoặc không. Tất cả phụ thuộc vào thiết kế phần cứng của các kỹ sư và hệ điều hành đang chạy. Ví dụ, dữ liệu chạy từ đĩa (HDD hay SSD) đến bộ nhớ chính (RAM) sẽ được quản lý bởi hệ điều hành. Ngược lại, từ cache đến những thanh ghi (register) hay đến CPU thường không có sự can thiệp của phần cứng.

 

 


Để lại bình luận:
Curious developer
Tech seeker
Search