คำอธิบายโดยละเอียดของการบูตเซกเตอร์ FAT

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 140418 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

สรุป

การทำความเข้าใจเกี่ยวกับเนื้อหาและฟังก์ชันของระบบแฟ้ม "เซกเตอร์สำหรับเริ่มระบบ" มีประโยชน์เมื่อแก้ไขปัญหาความล้มเหลวในการเริ่มระบบหรือความเสียหายของดิสก์

เป็นครั้ง โดยปกติเนื่องจากฮาร์ดแวร์ล้มเหลวหรือไวรัสติด เพื่อบูตเซกเตอร์อาจเสีย ถ้าพาร์ติชันเป็นพาร์ติชันหลักที่ใช้งานอยู่ หรือพาร์ติชันที่ประกอบด้วยแฟ้มระบบปฏิบัติการ นี้สามารถป้องกันระบบจะเริ่มการทำงาน มิฉะนั้น มันอาจจะป้องกันการเข้าถึงข้อมูลบนไดรฟ์

โดยทั่วไป หากคุณสงสัยว่าความเสียหายของดิสก์ จะใช้ไวรัสโปรแกรมทางการค้าหรือซอฟต์แวร์การกู้คืนดิสก์ที่ดีที่สุด ในบางกรณี อย่างไรก็ตาม ทราบรายละเอียดของบูตเซกเตอร์อาจมาใน handy

บทความนี้อธิบายถึงฟิลด์ต่าง ๆ ของเซกเตอร์สำหรับเริ่มระบบ FAT เป็น ใช้ข้อมูลต่อไปนี้ คุณอาจสามารถมีเซกเตอร์การบูต FAT เสียหายการซ่อมแซมด้วยตนเอง เพื่อที่จะพยายามซ่อมแซมการ เครื่องมือดิสก์แก้ไขต่าง ๆ สามารถแก้ไขภาคดิบดิสก์จะต้องใช้ บทความนี้กล่าวถึงเครื่องมือเฉพาะซึ่งสามารถใช้เพื่อดำเนินการเช่นดำเนินการซ่อมเป็น ไม่

ในขณะที่ไม่ต้องเปลืองแรงทุกที่ถูกทำการตรวจสอบความถูกต้องของข้อมูลต่อไปนี้ ระบบปฏิบัติการอื่นรวมถึงระบบปฏิบัติการ Microsoft รุ่นต่อ ๆ ไปอาจใช้โครงสร้างข้อมูลที่แตกต่างกัน ดังนั้น คุณควรทำใช้ข้อมูลต่อไปนี้ของคุณต้องยอมรับความเสี่ยง

ข้อมูลเพิ่มเติม

พื้นหลังและคำศัพท์เฉพาะทาง

ในเอกสารนี้ เป็น "แฟ้มระบบบูตเซกเตอร์" คือ เซกเตอร์กายภาพแรกบนไดรฟ์ข้อมูลแบบลอจิคัล ไดรฟ์แบบลอจิคัลข้อมูลอาจเป็นพาร์ติชันหลัก ไดรฟ์แบบลอจิคัลในพาร์ติชันเสริม หรือ composite ของพาร์ทิ ตั้งแต่สองชัน ตามที่เป็นกรณีนี้กับมิเรอร์ ชุดสไทรพ์ และตั้งค่าระดับเสียง

ในแผ่นฟล็อปปี้ดิสก์ บูตเซกเตอร์คือ เซกเตอร์แรกบนดิสก์ ในกรณีของฮาร์ดดิสก์ เซกเตอร์แรกจะเรียกว่า "บันทึกเริ่มต้นของต้นแบบ" หรือ "MBR" MBR นี้แตกต่างจากเซกเตอร์สำหรับเริ่มระบบระบบแฟ้ม และประกอบด้วยพาร์ติชันตาราง ซึ่งอธิบายโครงร่างของพาร์ทิชันลอจิคัลบนฮาร์ดดิสก์นั้น เซกเตอร์สำหรับเริ่มระบบของระบบไฟล์จะเป็นเซกเตอร์แรกในพาร์ติชันเหล่านั้นอย่างใดอย่างหนึ่ง

กระบวนการเริ่มระบบ

กระบวนการเริ่มระบบของใช้ 80 x x86 คอมพิวเตอร์ส่วนบุคคล (opposed ถึง RISC-ขึ้นอยู่กับระบบ) ทำให้การใช้งานโดยตรงของเซกเตอร์สำหรับเริ่มระบบระบบแฟ้มสำหรับการดำเนินการคำแนะนำ กระบวนการเริ่มต้นสำหรับการเริ่มระบบสามารถถูกสรุปเป็นดังนี้:

  1. พลังงานเมื่อ Self ทดสอบ (หรือ POST) เริ่มต้นระบบ BIOS และ CPU
  2. bios กำหนดอุปกรณ์ที่จะใช้เป็น "เริ่มระบบอุปกรณ์
  3. bios โหลดเซกเตอร์กายภาพที่แรกจากอุปกรณ์สำหรับเริ่มระบบไว้ในหน่วยความจำ และ CPU ดำเนินการโอนย้ายไปจุดเริ่มต้นของที่อยู่หน่วยความจำ ถ้าอุปกรณ์สำหรับเริ่มระบบมีฮาร์ดไดรฟ์ เซกเตอร์ที่โหลดในขั้นตอนที่ 3 MBR และกระบวนการเริ่มระบบดำเนินการต่อไปนี้:

  4. รหัส mbr โหลดเซกเตอร์สำหรับเริ่มระบบที่ถูกอ้างอิงตามตารางพาร์ติชันสำหรับพาร์ติ "ใช้งานอยู่หลักชัน" ลงในหน่วยความจำ และ CPU ดำเนินการโอนย้ายไปจุดเริ่มต้นของที่อยู่หน่วยความจำ
ถึงจุดนี้ กระบวนการเริ่มระบบจะขึ้นอยู่กับวิธีการฟอร์แมตดิสก์และระบบปฏิบัติการใดถูกโหลดทั้งหมด จากจุดนี้บน ทั้งปฏิบัติการและแฟ้มระบบที่ใช้เล่นเป็นส่วนหนึ่ง

ในกรณีของไดรฟ์ข้อมูล FAT ซึ่งมีการติดตั้ง Windows NT เซกเตอร์สำหรับเริ่มระบบ FAT รับผิดชอบสำหรับการระบุตำแหน่งที่ตั้งของแฟ้ม "NTLDR" บนไดรฟ์ข้อมูล กำลังโหลดลงในหน่วยความจำ และการโอนย้ายตัวควบคุมดังกล่าว

ภายในบูตที่ FAT เซกเตอร์

เนื่องจาก MBR โอนย้ายการดำเนินการของ CPU ไปยังเซกเตอร์สำหรับเริ่มระบบ ไบต์สองสามแรกของเซกเตอร์สำหรับเริ่มระบบ FAT ต้องเป็นคำแนะนำที่ปฏิบัติการได้ถูกต้องสำหรับการ 80 x 86 CPU ในการฝึก คำแนะนำเหล่านี้แรก constitute คำสั่ง "ข้าม" และใช้ไบต์ 3 แรกของบูตเซกเตอร์ ข้ามนี้ทำหน้าที่เพื่อข้ามหลายไบต์ซึ่งเป็น "ปฏิบัติ" ไม่ผ่านการถัดไป

ต่อไปนี้คำสั่งการข้ามเป็นไบต์ 8 "OEM ID" นี่เป็นปกติสายอักขระของอักขระที่ระบุระบบปฏิบัติการที่ได้รับการฟอร์แมตไดรฟ์ข้อมูล

ต่อ OEM ID มีโครงสร้างที่เรียกว่าการบล็อกพารามิเตอร์ BIOS หรือ "BPB" BPB ให้ข้อมูลเพียงพอสำหรับส่วนการกระทำของเซกเตอร์สำหรับเริ่มระบบเพื่อให้สามารถค้นหาแฟ้ม NTLDR เป็นจำนวนเต็มนำมา เนื่องจาก BPB ตลอดเวลาเริ่มต้นที่ออฟเซตเดียวกัน พารามิเตอร์มาตรฐานได้ตลอดเวลาในตำแหน่งที่รู้จัก Because the first instruction in the boot sector is a jump, the BPB can be extended in the future, provided new information is appended to the end. In such a case, the jump instruction would only need a minor adjustment. Also, the actual executable code can be fairly generic. All the variability associated with running on disks of different sizes and geometries is encapsulated in the BPB.

The BPB is stored in a packed (that is, unaligned) format. The following table lists the byte offset of each field in the BPB. A description of each field follows the table.
Field               Offset     Length
-----               ------     ------
Bytes Per Sector      11         2
Sectors Per Cluster   13         1
Reserved Sectors      14         2
FATs                  16         1
Root Entries          17         2
Small Sectors         19         2
Media Descriptor      21         1
Sectors Per FAT       22         2
Sectors Per Track     24         2
Heads                 26         2
Hidden Sectors        28         4
Large Sectors         32         4
				
Bytes Per Sector: This is the size of a hardware sector and for most disks in use in the United States, the value of this field will be 512.

Sectors Per Cluster: Because FAT is limited in the number of clusters (or "allocation units") that it can track, large volumes are supported by increasing the number of sectors per cluster. The cluster factor for a FAT volume is entirely dependent on the size of the volume. Valid values for this field are 1, 2, 4, 8, 16, 32, 64, and 128. Query in the Microsoft Knowledge Base for the term "Default Cluster Size" for more information on this subject.

Reserved Sectors: This represents the number of sectors preceding the start of the first FAT, including the boot sector itself. It should always have a value of at least 1.

FATs: This is the number of copies of the FAT table stored on the disk. Typically, the value of this field is 2.

Root Entries: This is the total number of file name entries that can be stored in the root directory of the volume. On a typical hard drive, the value of this field is 512. Note, however, that one entry is always used as a Volume Label, and that files with long file names will use up multiple entries per file. This means the largest number of files in the root directory is typically 511, but that you will run out of entries before that if long file names are used.

Small Sectors: This field is used to store the number of sectors on the disk if the size of the volume is small enough. For larger volumes, this field has a value of 0, and we refer instead to the "Large Sectors" value which comes later.

Media Descriptor: This byte provides information about the media being used. The following table lists some of the recognized media descriptor values and their associated media. Note that the media descriptor byte may be associated with more than one disk capacity.
Byte   Capacity   Media Size and Type
F0     2.88 MB    3.5-inch, 2-sided, 36-sector
F0     1.44 MB    3.5-inch, 2-sided, 18-sector
F9     720 KB     3.5-inch, 2-sided, 9-sector
F9     1.2 MB     5.25-inch, 2-sided, 15-sector
FD     360 KB     5.25-inch, 2-sided, 9-sector
FF     320 KB     5.25-inch, 2-sided, 8-sector
FC     180 KB     5.25-inch, 1-sided, 9-sector
FE     160 KB     5.25-inch, 1-sided, 8-sector
F8     -----      Fixed disk
				
Sectors Per FAT: This is the number of sectors occupied by each of the FATs on the volume. Given this information, together with the number of FATs and reserved sectors listed above, we can compute where the root directory begins. Given the number of entries in the root directory, we can also compute where the user data area of the disk begins.

Sectors Per Track and Heads: These values are a part of the apparent disk geometry in use when the disk was formatted.

Hidden Sectors: This is the number of sectors on the physical disk preceding the start of the volume. (that is, before the boot sector itself) It is used during the boot sequence in order to calculate the absolute offset to the root directory and data areas.

Large Sectors: If the Small Sectors field is zero, this field contains the total number of sectors used by the FAT volume.

Some additional fields follow the standard BIOS Parameter Block and constitute an "extended BIOS Parameter Block." The next fields are:
Field                  Offset   Length
-----                  ------   ------
Physical Drive Number    36        1
Current Head             37        1
Signature                38        1
ID                       39        4
Volume Label             43       11
System ID                54        8
				
Physical Drive Number: This is related to the BIOS physical drive number. Floppy drives are numbered starting with 0x00 for the A: drive, while physical hard disks are numbered starting with 0x80. Typically, you would set this value prior to issuing an INT 13 BIOS call in order to specify the device to access. The on-disk value stored in this field is typically 0x00 for floppies and 0x80 for hard disks, regardless of how many physical disk drives exist, because the value is only relevant if the device is a boot device.

Current Head: This is another field typically used when doing INT13 BIOS calls. The value would originally have been used to store the track on which the boot record was located, but the value stored on disk is not currently used as such. Therefore, Windows NT uses this field to store two flags:

  • The low order bit is a "dirty" flag, used to indicate that autochk should run chkdsk against the volume at boot time.
  • The second lowest bit is a flag indicating that a surface scan should also be run.
Signature: The extended boot record signature must be either 0x28 or 0x29 in order to be recognized by Windows NT.

ID: The ID is a random serial number assigned at format time in order to aid in distinguishing one disk from another.

Volume Label: This field was used to store the volume label, but the volume label is now stored as a special file in the root directory.

System ID: This field is either "FAT12" or "FAT16," depending on the format of the disk.

บนไดรฟ์ข้อมูลที่ใช้เริ่มระบบได้ พื้นที่ต่อขยาย BIOS พารามิเตอร์บล็อกมีรหัสสำหรับการเริ่มระบบปฏิบัติการได้โดยทั่วไป รหัสนี้จะรับผิดชอบการดำเนินการกระทำใด ๆ ก็ตามจำเป็นต้องดำเนินต่อกระบวนการเริ่มระบบแบบ strap บนระบบของ Windows NT รหัสการเริ่มระบบนี้จะระบุตำแหน่งที่ตั้งของแฟ้ม NTLDR โหลดลงในหน่วยความจำ และดำเนินการถ่ายโอนไปที่แฟ้มนั้น แม้แต่ในฟล็อปปี้ดิสก์ไม่ใช่สำหรับ ไม่ปฏิบัติรหัสในพื้นที่นี้ รหัสจำเป็นต้องพิมพ์ข้อความคุ้นเคย "ดิสก์ไม่มีระบบปฏิบัติการหรือข้อผิดพลาดดิสก์" อยู่บนมาตรฐานส่วนใหญ่ MS-DOS จัดรูปแบบฟลอปปีดิสก์ที่ไม่ได้ถูกจัดรูปแบบ ด้วยตัวเลือก "ระบบ"

และสุดท้าย ไบต์สองครั้งสุดท้ายในบูตเซกเตอร์ใด ๆ เสมอมีค่า hexidecimal: 0xAA 0x55

การแก้ไขปัญหา

หากคุณสงสัยว่า บูตที่ FAT เซกเตอร์เสียหาย คุณสามารถตรวจสอบหลายรายการข้างต้นเพื่อดูว่า ค่าระบุไว้ไม่ควรทำให้เขตข้อมูล ตัวอย่างเช่น BytesPerSector จะเป็น 512 ในส่วนใหญ่มักกรณี คุณยังจะคาดว่าจะเห็นสายอักขระข้อความในหัวข้อรหัสการกระทำของบูตเซกเตอร์ที่เหมาะสมสำหรับระบบปฏิบัติการที่ได้รับการฟอร์แมตดิสก์

สายอักขระข้อความทั่วไปในวอลุ่ม FAT ที่จัดรูปแบบ โดย MS-DOS รวม: "ไม่ถูกต้องระบบดิสก์" "I/O ของดิสก์เกิดข้อผิดพลาด"; "แทนดิสก์ แล้ว กดปุ่มใด ๆ คีย์ ระบบไม่ใช่ดิสก์ หรือข้อผิดพลาดดิสก์ แทน แล้วกดแป้นใด ๆ เมื่อพร้อม"; และ "ล้มเหลวการเริ่มระบบดิสก์" สายอักขระข้อความในวอลุ่ม FAT การฟอร์แมต โดยใช้ Windows NT รวม: "เริ่มระบบ: ไม่พบ NTLDR ได้"; "I/O ผิดพลาดอ่านดิสก์"; และ "โปรดใส่แผ่นดิสก์อื่นได้" คุณไม่ควรพิจารณารายการนี้เป็นการ all-inclusive หากคุณค้นหาข้อความอื่น ๆ ในบูตเซกเตอร์ นี้ไม่จำเป็นต้องระบุว่า ไม่มีปัญหากับยังเซกเตอร์สำหรับเริ่มระบบ ในบางครั้ง MS-DOS และ Windows NT รุ่นต่าง ๆ จะมีสายอักขระข้อความที่แตกต่างกันเล็กน้อยในเซกเตอร์สำหรับเริ่มระบบของตนเอง ที่อื่นครอง ถ้าคุณค้นหาข้อความแสดงข้อความไม่มี whatsoever หรือ ถ้าข้อความอย่างชัดเจนไม่เกี่ยวข้องกับ MS-DOS หรือ Windows NT คุณควรพิจารณาว่า เซกเตอร์สำหรับเริ่มระบบของคุณอาจถูกติด โดยไวรัส หรือว่า แบบฟอร์มอื่น ๆ บางอย่างของความเสียหายของข้อมูลที่อาจมีถ่ายอาจเกิดขึ้น

เมื่อต้องการกู้คืนจากเซกเตอร์สำหรับเริ่มระบบที่ได้รับการติดไวรัส โดยไวรัส ได้ดีที่สุดโดยปกติจะใช้โปรแกรม anti-virus เชิงพาณิชย์ ไวรัสจำนวนมากจะทำมากเกินกว่าที่เพิ่งเขียนข้อมูลไปยังเซกเตอร์สำหรับเริ่มระบบ ให้เป็นอันตรายเพื่อซ่อมแซมบูตเซกเตอร์ด้วยตนเองไม่แนะ นำ ตามที่คุณอาจไม่เสร็จสมบูรณ์กำจัดไวรัส และในบางกรณี อาจ ดำเนินการอื่น ๆ ต่อกว่าที่ดี

หากคุณสงสัยว่า บูตเซกเตอร์เสียหายด้วยเหตุอื่น ๆ จะดีที่สุดโดยปกติจะใช้เครื่องมือการกู้คืนดิสก์ที่ใช้ในเชิงพาณิชย์ ในขณะที่คุณอาจสามารถกู้คืนจากความเสียหายของเซกเตอร์สำหรับเริ่มระบบโดยไม่ต้อง resorting การฟอร์แมตไดรฟ์ใหม่โดยการปรับเปลี่ยนเขตข้อมูลที่อธิบายข้างต้นด้วยตนเอง แก้ไขด้วยตนเองของเซกเตอร์สำหรับเริ่มระบบควรมีพยายามเท่านั้นเป็นวิธีสุดท้าย และไม่มีการทำงานในกรณีที่โครงสร้างดิสก์อื่นอาจยังได้รับเสีย

คุณสมบัติ

หมายเลขบทความ (Article ID): 140418 - รีวิวครั้งสุดท้าย: 6 มกราคม 2554 - Revision: 4.0
ใช้กับ
  • Microsoft Windows NT Workstation 3.1
  • Microsoft Windows NT Workstation 3.5
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Server 3.51
Keywords: 
kbmt KB140418 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:140418

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com