Tôi biết rằng, khi khởi động, BIOS tải khu vực đầu tiên (512 byte) của ổ đĩa thiết bị được xác định trước trên bộ nhớ 0x7c00 và sau đó chuyển đến địa chỉ đó.BIOS tải thông tin gì vào RAM?
Vì vậy, bộ nhớ từ 0x7c00 đến 0x7dff bị chiếm đóng. Có bất kỳ phần nào khác của RAM đang bị chiếm đóng không?
Nếu tôi đang lập trình hệ điều hành, tôi có thể sử dụng tất cả RAM ngoại trừ 0x7c00 để ox7dff cho mục đích của riêng mình không ?, hoặc có phần nào khác chứa thông tin "quý giá" vào lúc khởi động mà tôi không được ghi đè ?
Tôi biết rằng tại một thời điểm cụ thể, tôi có thể ghi đè MBR được nạp vào bộ nhớ (chainloading), câu hỏi của tôi tập trung vào ... phần bộ nhớ nào có sẵn cho hệ điều hành?
Xin lỗi vì tiếng anh xấu của tôi. Cảm ơn câu trả lời của bạn!!
Bạn không thể quên BIOS. Nó có thể cần một số vùng bộ nhớ được bảo vệ cho các vùng MMIO, hoặc để sử dụng bởi mã SMM. – bdonlan
Có rất nhiều vùng bộ nhớ vật lý không thể sử dụng cụ thể với phần cứng được ánh xạ bộ nhớ. – clemahieu