• Master Boot Code thực hiện các chức năng: – Quét bảng partition để tìm Active Partition – Tìm Sector khởi động của Active Partition – Tải Boot Sector của Active Partition vào bộ nhớ..
Trang 1Môn học: Kiến trúc máy tính
Trang 2• Từ trái sang phải:
– Dung lượng tăng dần
– Tốc độ giảm dần
– Giá thành trên 1 bit giảm dần
2
Bộ nhớ trong
Trang 5• Mô hình phẳng (Flat Model)
– Bộ nhớ là 1 không gian địa chỉ liên tục, tuyến tính (Linear Address Space)
– Đoạn mã lệnh, dữ liệu và ngăn xếp đều được chứa trong không gian này
– Không gian địa chỉ được xác định địa chỉ theo byte: 0 236 – 1
Trang 6• Mô hình phân đoạn (Segmented Model)
– Bộ nhớ được chia thành các không gian địa chỉ độc lập nhau được gọi là các đoạn (segment)
– Các đoạn mã lệnh, dữ liệu và ngăn xếp chứa trong các đọan riêng biệt
– Tăng tính tin cậy của chương trình và hệ thống
6
Trang 7KB
Trang 8• CPU 8086 có 20 tín hiệu địa chỉ không gian địa chỉ là 1 MB
• CPU 80286 có 24 tín hiệu 16 MB
• CPU 80386, 80486 và Pentium có 32 tín hiệu 4 GB
• CPU Pentium Pro, Pentium II và Pentium III có 36 tín hiệu 64 GB
8
Trang 9• Bộ nhớ trong
• Bộ nhớ ngoài
Trang 11• ROM (Read Only Memory):
– PROM (Programmable ROM)
– EPROM (Erasable Programmable ROM)
– EAROM (Electrically Alterable ROM)
– EEPROM (Electrically EPROM) hay Flash ROM
• RAM (Random Access Memory):
– SRAM (Static RAM)
– NV RAM (Non – Volatile RAM)
– RAM (Dynamic RAM)
Trang 13• Một số bộ nhớ ngoài thông dụng:
– Băng từ (Magnetic tape)
– Đĩa từ (Magnetic disk)
– Đĩa quang (Optical disk)
– Flash disk
Trang 1414
Trang 18• Digital Video Disk: chỉ
dùng trên ổ đĩa xem
Trang 22• Mục đích sử dụng đĩa cứng:
– Lưu trữ dài hạn các tập tin
– Thiết lập 1cấp bộ nhớ bên dưới bộ nhớ trong
để làm bộ nhớ ảo lúc chạy chương trình
22
Trang 2424
Cấu trúc chi tiết của đĩa cứng
Trang 25• Một đĩa cứng có nhiều platter (1-4)
• Tốc độ quay: 3.600 – 15.000 vòng/phút
• Đường kính: 1.3 – 8 inch
• Mỗi mặt đĩa có 10.000 – 30.000 track
• Mỗi track có 64 – 800 sector
• Một sector có dung lượng 512 bytes
Trang 26Sơ đồ một platter
Trang 28• MBR (Master Boot Record) nằm ở vị trí đầu tiên trên đĩa cứng (Head 0, Cylinder 0, Sector 1):
– Master Boot Code
– Master Partition Table
28
Trang 29• Master Boot Code thực hiện các chức năng:
– Quét bảng partition để tìm Active Partition
– Tìm Sector khởi động của Active Partition
– Tải Boot Sector của Active Partition vào bộ nhớ
– Chuyển quyền điều khiển cho đọan mã khởi động trong Boot Record
Trang 30• Partition Table: là cấu trúc dữ liệu 64 byte
dùng để xác định loại và vị trí của các Partition trên đĩa cứng, gồm tối đa 4 entry, mỗi entry gồm 16 byte và bắt đầu ở các offset được xác định từ vị trí bắt đầu của Sector như sau:
Trang 31• Bước 1: BIOS nạp đoạn mã trong MBR và chuyển
quyền điều khiển cho nó
• Bước 2: Đoạn mã trong MBR sẽ kiểm tra Master
Partition Table xem liệu có Extended DOS Partition
và có một partition có thể khởi động được trong bảng partition không
• Bước 3: Nếu MBR tìm ra 1 Partition mở rộng trên
đĩa, nó sẽ nạp bảng partition mở rộng này để tìm ra Volume logic đầu tiên trong Partition mở rộng và tìm tiếp xem bảng Partition mở rộng này có trỏ tiếp đến
Trang 32• Bước 4: Sau khi nạp thông tin về các Partition
mở rộng (nếu có), đoạn mã khởi tạo sẽ tìm Partition có thể khởi động được (ACTIVE)
• Bước 5: Nếu tìm thấy 1 primary partition, quá
trình khởi động sẽ tiếp tục bằng cách đọc Volume Boot Sector
• Bước 6: Volume Boot Sector được tải lên bộ
nhớ và nắm quyền điều khiển hệ thống
• Bước 7: Đoạn mã khởi động trong Boot Sector
sẽ kiểm tra cấu trúc của đĩa, nếu có vấn đề thì
hệ thống sẽ báo lỗi
32
Trang 33• Bước 8: Đoạn mã sẽ tìm kiếm trên thư mục gốc
trên đĩa khởi động để tìm ra các file hệ thống của
hệ điều hành như “IO.SYS”, “MSDOS.SYS” và
“COMMAND.COM” trong DOS
• Bước 9: Nếu không tìm thấy các file hệ thống thì
chương trình khởi động sẽ báo lỗi
• Bước 10: Nếu tìm thấy các file hệ thống, chương
trình khởi động sẽ tải nó vào bộ nhớ và chuyển quyền điều khiển cho nó và nạp file COMMAND.COM, CONFIG.SYS và AUTOEXEC.BAT