Phần trình bày bài tập 4.02Cache - ngoài Cache của CPU cần nói thêm về các loại Cache khác Phần 1: Tổng quan về cache Cache bộ nhớ đệm là nơi lưu trữ dữ liệu tạm thời các ứng dụng, trình
Trang 1ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO BÀI TẬP 4.02 MÔN HỆ THỐNG MÁY TÍNH
Giảng viên: Thái Hùng Văn
Lớp: 21_2
Học kỳ 2 – Năm học 2022-2023
Trang 2BỐ CỤC BÁO CÁO
1 Danh sách sinh viên tham gia bài tập – bảng phân chia công việc.
2 Phần trình bày bài tập 4.02: Cache - ngoài Cache của CPU cần nói thêm về các loại Cache khác
2.1 Tổng quan về cache
2.2 CPU cache
2.3 Các loại cache khác
3 Tổng hợp nguồn tài liệu sử dụng
Trang 3Danh sách sinh viên tham gia:
21120140 Trần Gia Thịnh - CPU cache
21120144 Phạm Phúc Thuần - Các loại cache khác
21120201 Bùi Đình Bảo - Tổng quan về cache
Trang 4Phần trình bày bài tập 4.02
Cache - ngoài Cache của CPU cần nói thêm về các loại Cache khác
Phần 1: Tổng quan về cache
Cache (bộ nhớ đệm) là nơi lưu trữ dữ liệu tạm thời các ứng dụng, trình duyệt và website chạy được tải nhanh hơn
Lợi ích của cache
Cache cải thiện hiệu suất của hệ thống
Với chức năng lưu trữ tạm thời dữ liệu, cache sẽ thúc tăng hiệu suất hoạt động của hệ thống Ví dụ browser cache lưu các file người dùng đã tải lần đầu, ở những lần truy cập tiếp trình duyệt chạy êm ái, nhanh chóng vì không mất công tải lại
Cache giúp tiết kiệm dữ liệu
Cache không chỉ cho phép mọi thứ chạy nhanh hơn mà còn tiết kiệm dữ liệu Trong một
số trường hợp nó giúp các ứng dụng hoạt động khi không có Internet Chẳng hạn như khi bạn không thể kết nối mạng, nhiều ứng dụng dựa vào thông tin, dữ liệu có ở cache để bạn được tiếp tục hoạt động
Cache lưu trữ dữ liệu để sử dụng về sau
Các bản sao của file đều được cache lưu trữ để sử dụng về sau Những file này ứng dụng
sẽ không cần tải lần hai nên tiết kiệm thời gian, pin và các tài nguyên khác
Một số hạn chế của cache
Chiếm nhiều không gian lưu trữ
Cache ở thiết bị, website hay ứng dụng chỉ chiếm một không gian nhỏ Tuy nhiên thực tế
có nhiều cache phát triển quá lớn và chiếm nhiều dung lượng của thiết bị Vì thế xóa cache
là một trong những giải pháp để xóa file và khôi phục bộ nhớ
Cache hỏng ảnh hưởng tới hoạt động của ứng dụng
Trang 5Cache tác động tới hoạt động của ứng dụng Trường hợp một file nào đó ở cache bị hỏng thì dữ liệu được ứng dụng hiển thị sẽ trục trặc hoặc sai lệch Đó cũng chính là lý do khiến nhiều trình duyệt lựa chọn xóa cache
Cache ngăn cản ứng dụng tải phiên bản mới của web
Như chúng ta đã biết cache có chức năng lưu các file mà ứng dụng đã tải Những file này
sẽ không tải ở lần truy cập tiếp theo nên đôi khi ứng dụng không thể cập nhật phiên bản mới của file Cách duy nhất để khắc phục điều này đó là xóa cache
https://bkhost.vn/blog/cache-la-gi/#bo_nho_cache_la_gi
Phân loại cache theo nguyên tắc ghi của hệ thống
Write-back Cache
Write-back cache là bộ nhớ đệm ghi lại, cho phép chuyển toàn bộ các hoạt động sang bộ nhớ cache
Ưu điểm: Tốc độ truy cập và hiệu năng hoạt động của website hay ứng dụng nhanh hơn, thông qua việc dữ liệu đã lưu trữ trên bộ nhớ Cache
Nhược điểm: Cơ chế hoạt động của bộ nhớ Cache quyết định đến độ bảo mật thông tin Vì thế, đôi khi sẽ xảy ra trường hợp mất dữ liệu trước khi nó được lưu trong bộ nhớ chính Write-through Cache
Write-through cache là kỹ thuật cho phép ghi đè dữ liệu lên bộ nhớ Cache và Storage
Ưu điểm: Dữ liệu luôn được lưu trữ tạm thời nên việc xuất/đọc dữ liệu rất nhanh chóng, tiện lợi
Nhược điểm: Thời gian lưu trữ khá dài do hoạt động ghi chỉ hoàn tất khi tất cả dữ liệu đã ghi trên bộ nhớ Cache và bộ nhớ Primary Storage
Write-around Cache
Write-around cache có khả năng ghi lại các hoạt động trực tiếp vào bộ nhớ, hoàn toàn bỏ qua cache
Ưu điểm: Giúp bộ nhớ đệm cache không bị quá tải khi có quá nhiều bản ghi I/O (Input/Output) được thực hiện cùng lúc
Nhược điểm: Dữ liệu sẽ không được lưu trữ, trừ khi nó được truy xuất từ bộ nhớ Điều này khiến cho hoạt động truy cập lúc đầu sẽ tương đối chậm
Trang 6Cache hit và Cache miss
1 Cache Hit là gì?
Một cache hit là trạng thái trong đó: dữ liệu được yêu cầu, được xử lý bởi một thành phần hoặc một ứng dụng được tìm thấy trong bộ nhớ cache Đây là hình thức cung cấp dữ liệu với tốc độ nhanh chóng hơn cho bộ xử lý vì bộ nhớ cache lúc này đã chứa sẵn dữ liệu được yêu cầu đó rồi
Cache hit xảy ra khi nội dung mà client yêu cầu được tìm thấy trong bộ nhớ cục bộ (local storage) là cập nhật nhất khi so sánh với cùng một nội dung trên máy chủ gốc (origin server)
Cụ thể quy trình của Cache hit như sau:
Một cache hit xảy ra khi một ứng dụng hoặc phần mềm có request về dữ liệu Đầu tiên, bộ
xử lý trung tâm (CPU) tìm kiếm dữ liệu ở vị trí bộ nhớ gần nhất, thường là primary cache (bộ nhớ đệm chính) Nếu dữ liệu được yêu cầu được tìm thấy trong bộ nhớ cache, nó được gọi là cache hit
Một cache hit sẽ luôn có khả năng phục vụ dữ liệu nhanh hơn, vì lúc này dữ liệu có thể được truy xuất bằng cách đọc bộ nhớ cache Cache hit cũng có thể nằm trong những dish cache, đây là nơi lưu trữ các dữ liệu được yêu và truy cập lần đầu tiên
Có thể thấy cache hit sẽ gắn liền với những sự xuất hiện lần đầu của dữ liệu
2 Cache Miss là gì?
Một cache miss là trạng thái nơi dữ liệu được yêu cầu xử lý bởi một thành phần hoặc ứng dụng không được tìm thấy trong bộ nhớ cache (cache memory) Nó gây ra sự chậm trễ trong các thực thi bởi chúng cần yêu cầu các chương trình hoặc ứng dụng tìm nạp dữ liệu
từ các cấp bộ nhớ cache khác hoặc bộ nhớ chính Vì không có sẵn các dữ liệu được yêu cầu
Trái ngược với cache hit, Cache miss xảy ra khi nội dung mà client yêu cầu hoặc không được lưu trong bộ nhớ cache, hoặc có được lưu trong bộ nhớ cache nhưng đã hết hạn và nội dung không được cập nhật khi so sánh với cùng một nội dung trên máy chủ gốc
Cụ thể cơ chế của cache miss như sau:
Trang 7Cache miss xảy ra trong các mô hình và phương thức truy cập bộ cache memory Đối với mỗi yêu cầu mới, bộ xử lý sẽ ưu tiên tìm kiếm dữ liệu đó trong primary cache trước tiên Nếu dữ liệu không được tìm thấy tại đây, nó được coi là một cache miss
Mỗi cache miss sẽ góp phần làm chậm quá trình xử lý tổng thể bởi vì sau một cache miss,
bộ xử lý trung tâm (CPU) sẽ tìm một bộ nhớ đệm có mức cao hơn, chẳng hạn như L1, L2, L3 và bộ nhớ truy cập ngẫu nhiên (RAM) cho dữ liệu đó Hơn nữa, một entry mới còn phải được tạo ra và được sao chép trong cache trước khi nó có thể được truy cập bởi bộ vi
xử lý
https://bizflycloud.vn/tin-tuc/cache-hit-va-cache-miss-la-gi-phan-biet-nhu-the-nao-20180620104436225.htm
Có rất nhiều thuật toán Cache, sau đây là các thuật toán cơ bản nhất:
Least Frequently Used (LFU): theo dõi tần suất truy cập một dữ liệu Các dữ liệu có số lần truy cập thấp nhất được loại bỏ đầu tiên
Least Recently Used (LRU): lưu trữ các dữ liệu được truy cập gần đây gần đầu bộ đệm Khi bộ đệm đạt đến giới hạn của nó, các liệu được truy cập gần đây nhất sẽ bị xóa Most Recently Used (MRU): loại bỏ các dữ liệu truy cập gần đây nhất đầu tiên Cách tiếp cận này là tốt nhất khi các data cũ có nhiều khả năng được sử dụng
Bộ nhớ đệm được sử dụng ở đâu?
Sử dụng trong thiết bị phần cứng
Cụ thể là bộ nhớ cache CPU – một vùng lưu trữ nhỏ được thiết kế giúp CPU truy xuất thông tin thường được sử dụng với tốc độ nhanh nhất để theo kịp tiến trình xử lý dữ liệu của CPU
Sử dụng trong phần mềm và ứng dụng
Tương tự bộ nhớ đệm CPU, bộ nhớ đệm trên các ứng dụng hay phần mềm cũng có nhiệm
vụ lưu các tệp hay dữ liệu thường xuyên sử dụng nhất để khi CPU cần truy xuất và xử lý thì sẽ có ngay
Sử dụng trên trình duyệt web
Trang 8Có thể bạn đã biết, hầu hết trình duyệt web đều được thiết kế với bộ nhớ cache riêng biệt – nơi sẽ lưu trữ các dữ liệu, tệp HTML, hình ảnh hoặc bất cứ thông tin nào mà bạn đã từng truy cập nhằm giúp bạn tiết kiệm thời gian hơn trong những lần sử dụng về sau
https://www.capapham.com/tat-tan-tat-ve-cache-khai-niem-phan-loai-cac-thuat-toan/
#Write-back_Cache
https://dienthoaivui.com.vn/bo-nho-dem-la-gi-tim-hieu-ve-bo-nho-cache/
#Su_dung_trong_thiet_bi_phan_cung
https://vi.wikipedia.org/wiki/Cache_(tin_h%E1%BB%8Dc)
Trang 9Phần 2: CPU cache
Trang 10Phần 3: Các loại cache khác
* Chi tiết hơn 1 chút (1 người, sơ lược thôi)
Ngoài CPU cache, còn có nhiều loại cache khác được sử dụng trong các thiết bị điện tử và máy tính Sau đây là một số loại cache phổ biến khác:
Cache trình duyệt (Browser cache): Lưu trữ các tài nguyên được tải xuống khi truy cập vào các trang web như hình ảnh, tệp CSS và JavaScript Khi truy cập lại trang web đó, trình duyệt có thể lấy các tài nguyên này từ cache để tăng tốc độ tải trang
Cache DNS: Lưu trữ thông tin liên quan đến các máy chủ tên miền (DNS), bao gồm các bản ghi tên miền và địa chỉ IP của chúng Việc lưu trữ cache DNS giúp giảm thời gian để xác định địa chỉ IP của một tên miền, từ đó giảm thời gian tải trang web
Cache ổ đĩa (Disk cache): Lưu trữ các tập tin được tải xuống từ ổ đĩa và các tập tin được tạo bởi các ứng dụng để tăng tốc độ truy cập dữ liệu
Cache định tuyến (Routing cache): Lưu trữ các thông tin định tuyến của các gói tin truyền thông trên mạng Các thông tin này bao gồm địa chỉ nguồn và đích của gói tin và cách định tuyến tốt nhất để chuyển gói tin đến đích
Cache hệ thống tệp (File system cache): Lưu trữ các dữ liệu được đọc từ đĩa và lưu vào bộ nhớ đệm để truy cập nhanh hơn trong các lần truy cập tiếp theo
Tùy vào mục đích sử dụng và phạm vi ứng dụng, các loại cache này có cấu trúc và thuật toán quản lý riêng để đáp ứng các yêu cầu sử dụng
* Sơ qua về cái cuối
Cache ảnh (Image cache): Lưu trữ các bản sao ảnh đã tải xuống để tránh việc tải lại ảnh đó trong các trang web, ứng dụng, hoặc các dịch vụ lưu trữ ảnh
Cache lưu trữ đệm (Buffer cache): Lưu trữ các dữ liệu được đọc và ghi vào bộ đệm của hệ thống lưu trữ (storage system) như ổ đĩa cứng hoặc ổ đĩa mạng Cache lưu trữ đệm giúp tăng tốc độ truy cập dữ liệu của hệ thống lưu trữ
Cache ứng dụng (Application cache): Lưu trữ các tài nguyên của ứng dụng trên thiết bị để tăng tốc độ truy cập và sử dụng chúng khi cần thiết Ví dụ như cache của ứng dụng di động để lưu trữ dữ liệu và tài nguyên trên điện thoại di động
Trang 11Cache dữ liệu (Data cache): Lưu trữ các dữ liệu được sử dụng thường xuyên trong bộ nhớ đệm để tăng tốc độ truy cập Cache dữ liệu thường được sử dụng trong các ứng dụng xử lý
dữ liệu như hệ thống quản lý cơ sở dữ liệu (Database Management System - DBMS) Cache video (Video cache): Lưu trữ các video đã tải xuống để giảm thời gian tải lại video khi xem lại nó
Trang 12NGUỒN TÀI LIỆU THAM KHẢO VÀ TRÍCH DẪN
I Nguồn tài liệu tham khảo