CPU làm việc với bộ nhớ ngoài như thế nào?

theo mình được biết thì cpu chỉ có thể làm việc trực tiếp được với cache,ram ? Mong mọi người giúp .Thanks :smiley:

Nhìn hình này là biết

Ref : http://tutorials.jenkov.com/java-concurrency/java-memory-model.html
Section: Hardware Memory Architecture
Nếu theo Java thì trang này là một trong những trang nên đọc.

1 Like

Bộ nhớ ngoài theo ý bạn có phải là ổ cứng không?
Nếu là ổ cứng thì nó sẽ làm việc thông qua các driver theo phương pháp sau:

  • Ổ cứng sẽ có low level driver của ổ cứng đó cho phép đọc ghi theo từng sector.
  • Windows sẽ có driver chuyên dụng làm việc với các ổ cứng đằng trên lớp low level driver đó gọi là các filesystem như ntfs, fat32…
  • Để giao tiếp với các driver thì windows có hệ thống đảm nhiệm gọi là IO Manager. Khi muốn thực hiện một yêu cầu nào đó đối với driver thì IO Manager phải tạo ra một gói tin là IRP. Gói này truyền xuống cho driver xử lý.

Tóm lại nếu câu hỏi của bạn là cpu giao tiếp với ổ bộ nhớ ngoài (disk) thì nó sẽ giao tiếp với driver của bộ nhớ ngoài đó để thực hiện.

Còn để biết kỹ hơn về các low level driver làm sao để đọc ghi từng byte thì bạn cần tìm hiểu các khái niệm về các bus sử dụng trong cpu, DMA… hoặc cần thiết nữa thì lôi mấy con chip như atmega, arm, 8086… để xem nó giao tiếp với thẻ nhớ thế nào? Nếu cuối cùng mà bạn vẫn chưa hiểu được thì bạn nên đăng ký học ngành KTMT của DHBK Hà Nội nhé :wink:

làm việc với bộ nhớ ngoài(disk, usb,đĩa cd,… ) không có dữ liệu trong cache .Mình đã tìm ra câu trả lời rồi .Cảm ơn nha :smile:

Về lý thuyết thì không có cache thì CPU vẫn chạy bình thường, nhưng thực tế thì quay lại 50 năm trước là đã không chạy nổi rồi. CPU thì quản lý tất cả các ô địa chỉ trên RAM, các phép tính trước khi được tính toán thì đều được nạp vào RAM, rồi từ RAM đưa các toán hạng và toán tử vào các thanh ghi khác nhau. Cache là lưu tạm để CPU làm việc cho dễ hơn, lúc mà thanh ghi đang bận dùng để tính thì dữ liệu từ RAM chuyển vào cache rồi chờ.

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?