โอนย้าย isochronous เหนือบัส IEEE 1394 อาจไม่สำเร็จเสร็จสมบูรณ์เมื่อโปรแกรมควบคุมอุปกรณ์ที่ถอด และ reattaches บัฟเฟอร์ ใน Windows 7 และ ใน Windows Server 2008 R2

นำไปใช้กับ: Windows 7Windows 7 Service Pack 1Windows Server 2008 R2

อาการ


บนคอมพิวเตอร์ที่กำลังเรียกใช้ Windows 7 หรือ Windows Server 2008 R2 คุณต้องแนบกับอุปกรณ์ที่ใช้บัส IEEE 1394 เพื่อโอนย้ายข้อมูล อุปกรณ์ใช้โปรแกรมควบคุมที่ถูกควบคุม โดยโปรแกรมควบคุม Windows 7 1394 OHCI โฮสต์คอนโทรลเลอร์ เมื่อคุณเริ่มถ่ายโอน Isochronous จากอุปกรณ์ไปยังคอมพิวเตอร์ ถ่ายโอนข้อมูลอาจไม่สำเร็จเสร็จสมบูรณ์ได้หมายเหตุ ปัญหานี้อาจเกิดขึ้นถ้าโปรแกรมควบคุมสำหรับอุปกรณ์มาตรฐาน IEEE 1394 แนบบัฟเฟอร์เพียงพอ Isochronous สำหรับเฟรมของข้อมูลเดียวเท่านั้น และโปรแกรมควบคุมอุปกรณ์ที่ถอด และ reattaches นี้บัฟเฟอร์ระหว่างเฟรมแต่ละเฟรม

สาเหตุ


ปัญหานี้เกิดขึ้นเฉพาะเมื่อรันการโอนย้าย Isochronous ลงในส่วนท้ายของบัฟเฟอร์ล่าสุดที่แนบกับบริบทโอน Isochronous และบัฟเฟอร์ที่ถูกแยกออกจากบริบทโอน Isochronous ก่อนแนบบัฟเฟอร์เพิ่มเติม ปัญหานี้อาจเกิดขึ้นได้เนื่องจากไดรเวอร์ใน Windows 7 1394 OHCI โฮสต์คอนโทรลเลอร์ไม่ได้อย่างถูกต้องล้าง Isochronous การโอนย้ายบริบทเมื่อบัฟเฟอร์ล่าสุดที่จะประมวลผล และแยกออกจากบริบท Isochronous การโอนย้าย เมื่อแนบบัฟเฟอร์เพิ่มเติมกับบริบท Isochronous และเริ่มการถ่ายโอน Isochronous บัฟเฟอร์สุดท้ายในการโอนย้ายก่อนหน้านี้ถูกประมวลผลอีกครั้ง แทนที่จะเริ่มต้นด้วยบัฟเฟอร์แรกในการโอนย้ายใหม่

การแก้ไข


ข้อมูลโปรแกรมแก้ไขด่วน

มีโปรแกรมแก้ไขด่วนที่รองรับพร้อมให้บริการจาก Microsoft อย่างไรก็ตาม โปรแกรมแก้ไขด่วนนี้มุ่งหวังเพื่อการแก้ไขปัญหาที่อธิบายไว้ในบทความนี้เท่านั้น ใช้การแก้ไขด่วนนี้กับระบบต่าง ๆ ที่พบปัญหาอธิบายไว้ในบทความนี้เท่านั้น โปรแกรมแก้ไขด่วนนี้อาจได้รับการทดสอบเพิ่มเติม ดังนั้น ถ้าคุณไม่ได้รับผลกระทบจากปัญหานี้รุนแรง เราขอแนะนำให้ คุณรอการปรับปรุงซอฟต์แวร์ถัดไปที่ประกอบด้วยโปรแกรมแก้ไขด่วนนี้ หากโปรแกรมแก้ไขด่วนพร้อมสำหรับการดาวน์โหลด คุณจะเห็นส่วน "มีโปรแกรมแก้ไขด่วนพร้อมสำหรับการดาวน์โหลด" ที่ด้านบนของบทความฐานข้อมูลองค์ความรู้นี้ หากส่วนนี้ไม่ปรากฏขึ้น ติดต่อฝ่ายสนับสนุนและบริการลูกค้าของ Microsoft เพื่อขอรับโปรแกรมแก้ไขด่วน หมายเหตุ ถ้ามีปัญหาอื่น ๆ เกิดขึ้น หรือถ้าจำเป็นต้องแก้ไขปัญหาใด ๆ คุณอาจต้องสร้างคำขอรับบริการแยกต่างหาก จะมีค่าใช้จ่ายในการสนับสนุนปกติกับคำถามเพิ่มเติมและเรื่องอื่น ๆ ที่ไม่มีสิทธิได้รับโปรแกรมแก้ไขด่วนเฉพาะนี้ สำหรับรายชื่อทั้งหมด ของหมายเลขโทรศัพท์ของฝ่ายบริการลูกค้าและการสนับสนุนของ Microsoft หรือเพื่อสร้างการร้องขอบริการแยกต่างหาก แวะไปที่เว็บไซต์ของ Microsoft ต่อไปนี้: หมายเหตุ แบบฟอร์ม "มีโปรแกรมแก้ไขด่วนพร้อมสำหรับการดาวน์โหลด" แสดงภาษาที่โปรแกรมแก้ไขด่วนพร้อมใช้งาน ถ้าคุณไม่เห็นภาษาของคุณ อาจเป็น เพราะไม่มีโปรแกรมแก้ไขด่วนพร้อมใช้งานสำหรับภาษานั้น

ข้อกำหนดเบื้องต้น

เมื่อต้องการใช้โปรแกรมแก้ไขด่วนนี้ คุณต้องเรียกใช้ระบบปฏิบัติการต่อไปนี้อย่างใดอย่างหนึ่ง:
  • Windows 7
  • Windows 7 Service Pack 1 (SP1)
  • Windows Server 2008 R2
  • Windows Server 2008 R2 Service Pack 1 (SP1)

ข้อมูลรีจิสทรี

เมื่อต้องการใช้โปรแกรมแก้ไขด่วนในแพ็คเกจนี้ คุณไม่มีการเปลี่ยนแปลงใด ๆ ในรีจิสทรี

ข้อมูลการเริ่มระบบใหม่

คุณอาจต้องรีสตาร์ทคอมพิวเตอร์หลังจากใช้โปรแกรมแก้ไขด่วนนี้

ข้อมูลการแทนที่โปรแกรมแก้ไขด่วน

โปรแกรมแก้ไขด่วนนี้ไม่ได้ใช้แทนโปรแกรมแก้ไขด่วนที่มีการนำออกใช้ก่อนหน้านี้

ข้อมูลไฟล์

ไฟล์การติดตั้งโปรแกรมแก้ไขด่วนรุ่นที่ใช้งานทั่วโลกจะมีคุณลักษณะตามที่แสดงในตารางต่อไปนี้ วันที่และเวลาสำหรับไฟล์เหล่านี้จะแสดงอยู่ใน Coordinated Universal Time (UTC) วันที่และเวลาสำหรับไฟล์นี้ในคอมพิวเตอร์ท้องถิ่นจะแสดงเวลาท้องถิ่นของคุณพร้อมกับเวลาออมแสงปัจจุบัน (DST) นอกจากนี้ วันที่และเวลาอาจเปลี่ยนแปลงเมื่อคุณดำเนินการบางอย่างในไฟล์
หมายเหตุของข้อมูลของไฟล์ Windows 7 และ Windows Server 2008 R2
สิ่งสำคัญ โปรแกรมแก้ไขด่วน Windows 7 และโปรแกรมแก้ไขด่วน Windows Server 2008 R2 จะรวมอยู่ในแพคเกจเดียวกัน อย่างไรก็ตาม โปรแกรมแก้ไขด่วนในหน้าขอโปรแกรมแก้ไขด่วนแสดงอยู่ภายใต้ระบบปฏิบัติการทั้งสอง หากต้องการขอแพคเกจโปรแกรมแก้ไขด่วนที่ใช้ได้กับระบบปฏิบัติการหนึ่งหรือทั้งสอง โปรดเลือกโปรแกรมแก้ไขด่วนที่แสดงอยู่ภายใต้ "Windows 7/Windows Server 2008 R2" ในเพจนั้น โปรดดูส่วน "นำไปใช้กับ" ในบทความนี้อยู่เสมอ เพื่อให้ทราบถึงระบบปฏิบัติการจริงที่สามารถใช้ได้กับโปรแกรมแก้ไขด่วนแต่ละรายการ
  • แฟ้มที่นำไปใช้กับผลิตภัณฑ์เจาะจง SR_Level (RTM, SPn), และสาขาเซอร์วิส (LDR, GDR) สามารถระบุได้ โดยตรวจสอบหมายเลขรุ่นของแฟ้มดังที่ปรากฏในตารางต่อไปนี้
    เวอร์ชันรุ่นผลิตภัณฑ์SR_Levelสาขาบริการ
    6.1.760 0 20xxxWindows 7 และ Windows Server 2008 R2RTMLDR
    6.1.760 1 21xxxWindows 7 และ Windows Server 2008 R2SP1LDR
  • แฟ้ม MANIFEST (.manifest) และแฟ้ม MUM (.mum) ซึ่งติดตั้งสำหรับแต่ละสภาพแวดล้อมจะแสดงรายการแยกต่างหากในส่วน "ข้อมูลแฟ้มเพิ่มเติมสำหรับ Windows Server 2008 R2 และ สำหรับ Windows 7" แฟ้ม MUM และแฟ้ม MANIFEST และ แฟ้มแค็ตตาล็อก (.cat) การรักษาความปลอดภัยที่เกี่ยวข้อง มีความสำคัญอย่างมากในการรักษาสถานะของคอมโพเนนต์ปรับปรุงแล้ว แฟ้มแค็ตตาล็อกการรักษาความปลอดภัยซึ่งแอตทริบิวต์ไม่ได้แสดงรายการไว้จะได้รับการลงชื่อด้วยลายเซ็นดิจิทัลของ Microsoft
สำหรับ Windows 7 เวอร์ชันที่ใช้ x86 ที่สนับสนุนทั้งหมด
ชื่อไฟล์รุ่นของไฟล์ขนาดไฟล์วันที่เวลาแพลตฟอร์ม
1394ohci.sys6.1.7600.20861164,86418-Dec-201003:58x86
1394ohci.sys6.1.7601.21624164,86418-Dec-201006:29x86
สำหรับ Windows 7 และ Windows Server 2008 R2 เวอร์ชัน x64 ที่รองรับทั้งหมด
ชื่อแฟ้มรุ่นของไฟล์ขนาดไฟล์วันที่เวลาแพลตฟอร์ม
1394ohci.sys6.1.7600.20861230,40018-Dec-201004:22x64
1394ohci.sys6.1.7601.21624229,88818-Dec-201007:05x64
สำหรับ Windows Server 2008 R2 รุ่นที่ใช้ IA 64 ทั้งหมดที่สนับสนุน
ชื่อไฟล์รุ่นของไฟล์ขนาดไฟล์วันที่เวลาแพลตฟอร์ม
1394ohci.sys6.1.7600.20861514,56018-Dec-201003:49IA-64
1394ohci.sys6.1.7601.21624515,58418-Dec-201008:01IA-64

การแก้ปัญหา


เมื่อต้องการหลีกเลี่ยงปัญหานี้ เปลี่ยนลักษณะการทำงานของโปรแกรมควบคุมอุปกรณ์ IEEE 1394 เพื่อให้บัฟเฟอร์ที่เพียงพอเพื่อให้การโอนย้าย Isochronous ไม่เคยทำงานกับจุดสิ้นสุดของบัฟเฟอร์ครั้งล่าสุด นี่จะเป็นการดำเนินการทั่วไปเพื่อให้มีการส่งกระแสข้อมูลแบบต่อเนื่องของข้อมูล Isochronous

สถานะ


Microsoft ยืนยันว่าปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ในส่วน "นำไปใช้กับ"

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


ปัญหานี้เกิดขึ้นถ้าโปรแกรมควบคุมอุปกรณ์ IEEE 1394 ใช้ลำดับของการดำเนินการต่อไปนี้:
  1. ตั้งค่าการโอนย้าย Isochronous ซึ่งรวมถึงการปันส่วนทรัพยากร และแนบบัฟเฟอร์ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการตั้งค่าการโอนย้าย Isochronous แวะไปที่เว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:
  2. เริ่มต้นการฟัง Isochronous หรือโอนย้ายพูดคุย [โอนย้าย #1] สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีเริ่มการถ่ายโอน Isochronous ฟังหรือพูดคุย แวะไปที่เว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:
  3. มีการโอนย้ายข้อมูล isochronous
  4. ชุดคำสั่งการเรียกกลับ Isochronous ไดรเวอร์ IEEE 1394 อุปกรณ์ถูกเรียกใช้ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการเรียกใช้ชุดคำสั่งเรียกกลับ Isochronous แวะไปที่เว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:
  5. หยุดการโอนย้าย Isochronous สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการหยุดการโอนย้าย Isochronous แวะไปเว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:
  6. แยกบัฟเฟอร์ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการแยกบัฟเฟอร์ แวะไปที่เว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:
  7. บัฟเฟอร์การประมวลผลข้อมูล
    • สำหรับการดำเนินงานการฟัง Isochronous ไดรเวอร์อุปกรณ์ IEEE 1394 จะประมวลผลข้อมูลที่ได้รับในบัฟเฟอร์ที่ Isochronous
    • สำหรับการดำเนินงานการพูดคุย Isochronous ไดรเวอร์อุปกรณ์ IEEE 1394 จะจัดเตรียมบัฟเฟอร์ Isochronous ที่ มีข้อมูลถูกส่งไป
  8. แนบบัฟเฟอร์ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการแนบ บัฟเฟอร์ แวะไปที่เว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:
  9. เริ่มต้นการฟัง Isochronous หรือโอนย้ายพูดคุย [โอนย้าย #2] สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีเริ่มการถ่ายโอน Isochronous ฟังหรือพูดคุย แวะไปที่เว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:
ในลำดับของการดำเนินงานนี้ เมื่อมีเริ่มสอง Isochronous ฟัง เขียนลงทะเบียนตัวชี้คำสั่งโฮสต์คอนโทรลเลอร์มีตั้งค่าเพื่อชี้ไปยังตัวเลือกสุดท้ายตัวอธิบายคำสั่งในการโอนย้าย Isochronous ของก่อนหน้า (เสร็จสมบูรณ์) แทนที่จะไป ตัวอธิบายคำสั่งแรกในการโอนย้ายใหม่ Isochronous ปัญหานี้เกิดขึ้นถ้าโปรแกรมควบคุมอุปกรณ์ IEEE 1394 ใช้ลำดับของการดำเนินการต่อไปนี้:
  1. ตั้งค่าการโอนย้าย Isochronous ซึ่งรวมถึงการปันส่วนทรัพยากร และแนบบัฟเฟอร์ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการตั้งค่าการโอนย้าย Isochronous แวะไปที่เว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:หมายเหตุ ตรวจสอบให้แน่ใจว่า คุณได้แนบบัฟเฟอร์ที่เพียงพอเพื่อให้บัฟเฟอร์เพิ่มเติมยังคงแนบหลังจากการโอนย้ายของเฟรมปัจจุบันเสร็จสมบูรณ์แล้ว และมีการเรียกใช้ชุดคำสั่งเรียกกลับ Isochronous ในตัวบอกเกี่ยวกับ Isochronous ที่สอดคล้องกัน
  2. เริ่มต้นการฟัง Isochronous หรือโอนย้ายพูดคุย [โอนย้าย #1] สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีเริ่มการถ่ายโอน Isochronous ฟังหรือพูดคุย แวะไปที่เว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:
  3. มีการโอนย้ายข้อมูล isochronous
  4. ชุดคำสั่งการเรียกกลับ Isochronous ไดรเวอร์ IEEE 1394 อุปกรณ์ถูกเรียกใช้ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการเรียกใช้ชุดคำสั่งเรียกกลับ Isochronous แวะไปที่เว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:
  5. แยกบัฟเฟอร์ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการแยกบัฟเฟอร์ แวะไปที่เว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:
  6. บัฟเฟอร์การประมวลผลข้อมูล
    • สำหรับการดำเนินงานการฟัง Isochronous ไดรเวอร์อุปกรณ์ IEEE 1394 จะประมวลผลข้อมูลที่ได้รับในบัฟเฟอร์ที่ Isochronous
    • สำหรับการดำเนินงานการพูดคุย Isochronous ไดรเวอร์อุปกรณ์ IEEE 1394 จะจัดเตรียมบัฟเฟอร์ Isochronous ที่ มีข้อมูลถูกส่งไป
  7. แนบบัฟเฟอร์ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการแนบ บัฟเฟอร์ แวะไปที่เว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:
  8. ทำซ้ำขั้นตอนที่ 4 ถึง 7 เพื่อดำเนินการถ่ายโอนข้อมูล Isochronous อย่างต่อเนื่อง
  9. หยุดการโอนย้าย Isochronous สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการหยุดการโอนย้าย Isochronous แวะไปเว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้:
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการไดรเวอร์อุปกรณ์ 1394 anIEEE ทำการโอนย้าย Isochronous แวะไปที่เว็บไซต์ Microsoft Developer Network (MSDN) ต่อไปนี้: สำหรับคำอธิบายของลำดับโดยทั่วไปสำหรับการดำเนินการถ่ายโอนข้อมูล Isochronous ไปยัง หรือ จากอุปกรณ์ IEEE 1394 คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
970076 การโอนย้ายข้อมูล isochronous ผ่านอุปกรณ์ IEEE 1394 อย่างฉับพลันหยุด ใน Windows Vista หรือ Windows Server 2008
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับศัพท์เฉพาะในการปรับปรุงซอฟต์แวร์ ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
824684 คำอธิบายของคำศัพท์มาตรฐานที่ใช้เพื่ออธิบายโปรแกรมปรับปรุงซอฟต์แวร์ของ Microsoft

ข้อมูลไฟล์เพิ่มเติมสำหรับ Windows 7 และ Windows Server 2008 R2

ไฟล์เพิ่มเติมสำหรับ Windows 7 รุ่น x86 ที่รองรับทั้งหมด
File nameUpdate.mum
File versionNot applicable
File size2,331
Date (UTC)20-Dec-2010
Time (UTC)21:50
PlatformNot applicable
File nameX86_1394.inf_31bf3856ad364e35_6.1.7600.20861_none_fba0efd5804c7eab.manifest
File versionNot applicable
File size3,572
Date (UTC)20-Dec-2010
Time (UTC)21:52
PlatformNot applicable
File nameX86_1394.inf_31bf3856ad364e35_6.1.7601.21624_none_fdb58d697d4fc6d8.manifest
File versionNot applicable
File size3,572
Date (UTC)20-Dec-2010
Time (UTC)21:52
PlatformNot applicable
ไฟล์เพิ่มเติมสำหรับ Windows 7 รุ่น x64 และ Windows Server 2008 R2 ที่รองรับทั้งหมด
File nameAmd64_1394.inf_31bf3856ad364e35_6.1.7600.20861_none_57bf8b5938a9efe1.manifest
File versionNot applicable
File size3,576
Date (UTC)20-Dec-2010
Time (UTC)21:55
PlatformNot applicable
File nameAmd64_1394.inf_31bf3856ad364e35_6.1.7601.21624_none_59d428ed35ad380e.manifest
File versionNot applicable
File size3,576
Date (UTC)20-Dec-2010
Time (UTC)21:55
PlatformNot applicable
File nameUpdate.mum
File versionNot applicable
File size2,347
Date (UTC)20-Dec-2010
Time (UTC)21:50
PlatformNot applicable
แฟ้มเพิ่มเติมสำหรับ Windows Server 2008 R2 รุ่นที่ใช้ IA 64 ทั้งหมดที่สนับสนุน
File nameIa64_1394.inf_31bf3856ad364e35_6.1.7600.20861_none_fba293cb804a87a7.manifest
File versionNot applicable
File size3,574
Date (UTC)20-Dec-2010
Time (UTC)21:50
PlatformNot applicable
File nameIa64_1394.inf_31bf3856ad364e35_6.1.7601.21624_none_fdb7315f7d4dcfd4.manifest
File versionNot applicable
File size3,574
Date (UTC)20-Dec-2010
Time (UTC)21:50
PlatformNot applicable
File nameUpdate.mum
File versionNot applicable
File size1,933
Date (UTC)20-Dec-2010
Time (UTC)21:50
PlatformNot applicable