Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> ข้อผิดพลาด Windows

แก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่

ผู้ใช้บางคนพบว่า "The IO operation at logical block address for Disk was retried" ใน Event Viewer หลังประสบการแข็งของระบบทั่วไป หรือ BSOD crashes แบบสุ่ม ปัญหานี้รายงานว่าพบส่วนใหญ่ใน Windows 7 และ Windows 8

แก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่

สาเหตุของข้อผิดพลาด IO operation at logical block address for Disk was retried

เราสำรวจปัญหานี้จากรายงานผู้ใช้และวิธีแก้ที่พวกเขาใช้ ข้อผิดพลาดนี้หมายความว่า IRP (IO Request Packet) หมดเวลา (timed out) ขณะที่ IO System รอให้เสร็จสิ้น กรณีนี้รู้จักกันดีว่าก่อให้เกิดจากหลายเหตุผล

จากที่รวบรวมมา มีสาเหตุหลักหลายอย่างที่อาจรับผิดชอบ:

  • ความไม่เสถียรจากการใช้โหมดดิสก์ AHCI — เกิดกับระบบเก่าที่ไม่ได้ออกแบบมาเพื่อใช้ประโยชน์จากฟีเจอร์ AHCI ขั้นสูง เช่น Native Command Queuing (NCQ)
  • สาย SATA หรือสายจ่ายไฟผิดปกติ — การขาดการเชื่อมต่อหรือล้มเหลวด้านพลังงานอาจเป็นสาเหตุ ยืนยันได้โดยสลับสายที่ใช้อยู่
  • IDE ATA/ATAPI controller ล้าสมัย — เวอร์ชันเก่าของไดรเวอร์ IDE ATA/ATAPI controller ที่ Windows ให้มา รู้จักว่าทำให้ข้อผิดพลาดนี้ โหลดไดรเวอร์ใหม่ควรแก้ได้
  • Dynamic Tick เปิดใช้งานอยู่ — บนคอมพิวเตอร์บางเครื่อง ข้อผิดพลาดอาจเกิดระหว่างตัดต่อวิดีโอ, unified communications, และกิจกรรมมัลติมีเดีย ส่วนใหญ่ ปัญหามาจากปัญหา dynamic tick transitions
  • FC connection ตกแพ็กเก็ต — ตามเอกสาร Microsoft ปัญหานี้อาจเกิด หากแพ็กเก็ตข้อมูลตกระหว่าง Host Bus Adapter (HBA) และ storage array
  • ฮาร์ดแวร์เกิน time-outs ที่กำหนด — ปัญหาอาจเกิด หาก array controller หรืออุปกรณ์ใน array ตอบสนองคำขอ I/O ด้วยการบ่งชี้ว่าฮาร์ดแวร์เกิน time-outs ที่กำหนด
  • เวอร์ชัน BIOS ล้าสมัย — BIOS เก่าอาจก่อให้เกิดข้อผิดพลาดนี้ กรณีส่วนใหญ่รายงานกับเมนบอร์ด MSI อาการคล้าย HDD หรือ SSD ที่กำลังจะล้มเหลว

หากมองหาขั้นตอนแก้ไขสำหรับข้อผิดพลาด IO operation at logical block address for Disk was retried บทความนี้มีกลยุทธ์ซ่อมแซมที่ตรวจสอบ済み ด้านล่างคือชุดวิธีที่ผู้ใช้คนอื่นใช้แก้ได้

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

วิธี 1: อัปเดต IDE ATA/ATAPI controller

หากคุณพบข้อผิดพลาด IO operation at logical block address for Disk was retried อย่างต่อเนื่องใน Event Viewer, อาจเป็นเพราะระบบใช้ IDE ATA/ATAPI controller เก่า

ผู้ใช้หลายรายที่ยุ่งกับข้อผิดพลาดเดียวกัน แก้ได้โดยอัปเดตไดรเวอร์ controller เป็นเวอร์ชันล่าสุด คู่มือเร็ว:

  1. กด Windows key + R เปิด Run dialog box พิมพ์ "devmgmt.msc" กด Enter เปิด Device Managerแก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่
  2. ใน Device Manager ขยายเมนูดรอปดาวน์ IDE ATA/ATAPI controllers คลิกขวาแต่ละรายการภายใต้ IDE ATA/ATAPI controllers เลือก Update driverแก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่
  3. ในหน้าจอถัดไป คลิก Search automatically for updated driver software ทำตามพรอมบนหน้าจอ ติดตั้งเวอร์ชันล่าสุด
  4. ทำซ้ำขั้นตอนข้างต้น (ขั้นตอน 2 และ 3) กับทุก ATA และ ATAPI controller จนแน่ใจว่าทุกรายการรันกับไดรเวอร์ล่าสุด
  5. รีสตาร์ทคอมพิวเตอร์ ดูว่าข้อผิดพลาด IO operation at logical block address for Disk was retried หยุดปรากฏใน Event Viewer หรือไม่

บางคนรายงานว่าช่วยได้อีกด้วยการตั้ง Power plan เป็น High Performance ทำได้โดยเปิด Run dialog box (Windows key + R) พิมพ์ "powercfg.cpl" กด Enter ในหน้าจอ Power Options ตั้ง active power plan เป็น High Performance หรือสร้างใหม่จากศูนย์

แก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่

หากยังประสบพฤติกรรมเดิม ให้ไปวิธีถัดไป

วิธี 2: ปิดใช้งาน Dynamic Tick

บางคนแก้ได้โดยปิดฟีเจอร์ dynamic tick น่าจะมีผลในกรณีที่ระบบหยุดตอบสนองหรือค้างตอนทำกิจกรรมมัลติมีเดียหรือการสื่อสาร

ตามการคาดเดาของผู้ใช้ ปัญหาอาจมาจากปัญหาเกี่ยวกับการปฏิสัมพันธ์ระหว่างเครื่องจักรที่ขับเคลื่อน dynamic tick transitions และเครื่องจักรที่ขับเคลื่อน clock rate changes

หมายเหตุ: ขั้นตอนนี้ยืนยันทำงานได้เฉพาะ Windows 8

หากเจอข้อผิดพลาด IO operation at logical block address for Disk was retried ระหว่างทำกิจกรรมมัลติมีเดียหรือการสื่อสาร ทำตามคำแนะนำด้านล่างเพื่อปิด Dynamic Tick:

  1. กด Windows key + R เปิด Run dialog box พิมพ์ "cmd" กด Ctrl + Shift + Enter เปิด elevated Command Prompt เมื่อ UAC ถาม คลิก Yes ให้สิทธิ์แอดมินแก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่
  2. ใน elevated Command Prompt พิมพ์คำสั่งต่อไปนี้ กด Enter เพื่อปิด Dynamic Tick:
     bcdedit /set disabledynamictick yes
  3. หลังคำสั่งประมวลผลสำเร็จ รีสตาร์ทคอมพิวเตอร์ ดูว่าปัญหาแก้ที่การบูตครั้งต่อไปหรือไม่

หากยังเจอปัญหา ให้ไปวิธีถัดไป

วิธี 3: เพิ่ม TimeOutValue ผ่าน Registry Editor

หากคอมพิวเตอร์เชื่อมต่อกับ storage array เช่น FC (Fibre Channel) storage ปัญหาอาจมาจาก dropped packet หรือ array controller ที่ส่งคำขอที่น่ากลัว

ในสถานการณ์เหล่านี้ Microsoft แนะนำให้ลดค่า disk.sys TimeOutValue ให้น้อยที่สุดเท่าที่จะเป็นไปได้ ผู้ใช้หลายรายที่เจอปัญหาเดียวกัน รายงานว่าแก้ได้หลังทำขั้นตอนด้านล่าง:

  1. กด Windows key + R เปิด Run พิมพ์ "regedit" กด Enter เปิด Registry Editor เมื่อ UAC ถาม คลิก Yes ให้สิทธิ์แอดมินแก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่
  2. ใน Registry Editor ไปที่ subkey ต่อไปนี้ด้วยเมนูด้านซ้าย:
    Computer \ HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Disk
  3. ใน Disk key ไป fruit pane ขวา ดับเบิลคลิก TimeOutValueแก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่
  4. ตั้งค่า Value data ของ TimeOutValue ไม่เกิน 30แก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่
  5. ปิด Registry Editor รีสตาร์ทคอมพิวเตอร์ ดูว่าปัญหาแก้ที่การบูตครั้งต่อไปหรือไม่

หากยังเจอข้อผิดพลาด IO operation at logical block address for Disk was retried ใน Event Viewer ให้ไปวิธี 4

วิธี 4: ปิดใช้งาน Paging Executive

มีวิธีแกชั่วคราว ที่ผู้ใช้หลายรายนำมาใช้ เกี่ยวกับการปิด Paging Executive ผ่าน Registry Editor Paging Executive ป้องกันไม่ให้ Windows สแวปหน่วยความจำที่ใช้โดย device drivers ไปยัง paging files

คู่มือเร็วปิด paging executive:

  1. กด Windows key + R เปิด Run พิมพ์ "regedit" กด Enter เปิด Registry Editor เมื่อ UAC ถาม คลิก Yes ให้สิทธิ์แอดมินแก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่
  2. ใน Registry editor ไปที่ตำแหน่งต่อไปนี้ด้วยเมนูด้านซ้าย:
    \ HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Memory Management
  3. เปิด Memory Management key แล้ว ไป fruit pane ขวา ดับเบิลคลิก DisablePagingExecutiveแก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่
  4. ใน Dword DisablePagingExecutive เปลี่ยน Value data จาก 0 เป็น 1 เพื่อปิด Paging Executiveแก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่
  5. ปิด Registry Editor รีสตาร์ทคอมพิวเตอร์ เพื่อบังคับใช้การเปลี่ยนแปลง

ตอนบูตถัดไป ดูว่าอาการหายหรือไม่ หากยังเห็นข้อผิดพลาด IO operation at logical block address for Disk was retried ใน Event Viewer ให้ไปวิธีถัดไป

วิธี 5: เปลี่ยนสาย SATA ของ HDD

ผู้ใช้บางรายที่เจอข้อผิดพลาด IO operation at logical block address for Disk was retried รายงานว่า ข้อผิดพลาดไม่เกิดขึ้นอีก หลังเปลี่ยนสาย SATA และ power connector cable ที่ต่อดิสก์กับเมนบอร์ดและ power supply

นี่บ่งชี้ว่าข้อผิดพลาดอาจเกี่ยวกับความล้มเหลวของฮาร์ดแวร์ น่าจะเกิดจากขาดการเชื่อมต่อ หรือล้มเหลวด้านพลังงาน

หากคุณสงสัยว่าอาจเจอข้อผิดพลาดจากสาเหตุเดียวกัน และมีสายต่อ HDD สำรอง ลองสลับกับสายปัจจุบัน หากไม่มีสายสำรอง ลองใช้สายจาก DVD writer ดูว่าข้อผิดพลาดหายหรือไม่

หากไม่เห็นข้อผิดพลาด IO operation at logical block address for Disk was retried ใหม่ ขณะสายใหม่ต่ออยู่ คุณเพิ่งระบุสาเหตุได้สำเร็จ

วิธี 6: เปลี่ยน SATA HDD จาก AHCI เป็น ATA (หรือ IDE)

ผู้ใช้หลายรายที่เจอปัญหาเดียวกัน แก้ได้โดยเปลี่ยนโหมดดิสก์จาก AHCI เป็น ATA หรือ IDE แม้ AHCI จะเป็นวิธีใหม่ต่อกับ SATA controller บางระบบไม่ได้ออกแบบมาใช้ประโยชน์จากฟีเจอร์อย่าง Native Command Queuing อาจทำให้เกิดข้อผิดพลาด IO operation at logical block address for Disk was retried

จำไว้ว่า ถ้าไม่ทำตามขั้นตอนนี้ การเปลี่ยนโหมดดิสก์จาก AHCI เป็น ATA จาก BIOS จะทำให้ Windows ไม่สามารถเริ่มได้ ขั้นตอนนี้จะทำให้ระบบโหลด BIOS settings ที่ถูกต้องสำหรับโหมด ATA (หรือ IDE) และให้ registry ถูกกำหนดค่าใหม่

คู่มือเร็วสิ่งที่ต้องทำ:

  1. คลิกไอคอน Start (มุมซ้ายล่าง) แล้วคลิกไอคอน power ด้วย Shift กดค้าง คลิก Restart จะรีสตาร์ทเข้า recovery menu โดยตรงแก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่
  2. ตอนบูตถัดไป จะบูทเข้า recovery menu โดยตรง เห็นแล้ว คลิก Troubleshoot แล้ว Advanced optionsแก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่
  3. ในเมนู Advanced Options คลิก Startup Settingsแก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่
  4. คลิกปุ่ม Restart รีบูทเครื่องในเมนู Startup Settings
  5. ต้นลำดับบูทถัดไป เริ่มกด Setup key ซ้ำๆ จนเข้าสู่ BIOS settings
    แก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่หมายเหตุ: Setup (BIOS) key ขึ้นกับผู้ผลิตเมนบอร์ด แต่มักแสดงตอนหน้าจอแรก ปกติคือ F keys (F4, F6, F8, F10, F12) หรือ Del key ค้นหาออนไลน์หา key สำหรับรุ่นของคุณได้
  6. เข้า BIOS settings แล้ว หา setting SATA Operation ตั้งเป็น ATA บันทึกการเปลี่ยนแปลงก่อนออกจาก BIOSแก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่

    หมายเหตุ: การตั้งค่าและตำแหน่งที่แน่นอนอาจต่างกันตามผู้ผลิตเมนบอร์ด หากไม่หาขั้นตอนเทียบเท่าได้ ค้นหาขั้นตอนเฉพาะตามเมนบอร์ดของคุณ

  7. รอจนเครื่องบูทในเมนู Startup Settings เห็นแล้ว กดปุ่ม 5 (หรือ F5) บูทเข้า Safe Mode with Networking จะให้ OS โหลดไดรเวอร์ที่ถูกต้องสำหรับ BIOS settings ที่เพิ่งโหลดแก้ไข: การดำเนินการ I/O ที่ที่อยู่บล็อกเชิงตรรกะสำหรับดิสก์ถูกลองใหม่
  8. หลังกระบวนการเริ่มต้นเสร็จ รีสตาร์ทปกติ เพื่อบูทเข้าสู่โหมดปกติ ตอนบูตถัดไป ควรไม่เจอข้อผิดพลาด IO operation at logical block address for Disk was retried อีกแล้ว

วิธี 7: อัปเดต BIOS เป็นเวอร์ชันล่าสุด

ผู้ใช้หลายรายที่เจอปัญหาเดียวกัน แก้ได้หลังอัปเดต BIOS เป็นเวอร์ชันล่าสุดที่มี กรณีส่วนใหญ่รายงานกับเมนบอร์ด MSI แต่วิธีแก้นี้อาจใช้ได้กับผู้ผลิตเมนบอร์ดอื่นๆ

จำไว้ว่า อัปเดต BIOS ไม่ยุ่งยากเหมือนเดิม ผู้ผลิตเมนบอร์ดใหญ่ๆ บรรจุ firmware update ใน executable ที่ติดตั้งได้ง่ายโดยดับเบิลคลิก

เพื่อเช็คว่ามี BIOS update ใหม่สำหรับเมนบอร์ดของคุณหรือไม่ ไปที่เว็บผู้ผลิต สำหรับคำแนะนำเฉพาะรุ่นของคุณ ตอนนี้แต่ละผู้ผลิตมี flash program ของตัวเอง (M-Flash สำหรับ MSI, E-Z Flash สำหรับ Asus, ฯลฯ)