สารบัญ:
คำจำกัดความ - มัลติเธรดหมายถึงอะไร
Multithreading เป็นรูปแบบการดำเนินการที่อนุญาตให้มีหลายเธรดอยู่ภายในบริบทของกระบวนการที่พวกเขาดำเนินการอย่างอิสระ แต่ใช้ทรัพยากรกระบวนการร่วมกัน เธรดรักษารายการข้อมูลที่เกี่ยวข้องกับการดำเนินการรวมถึงกำหนดการลำดับความสำคัญตัวจัดการข้อยกเว้นชุดของการลงทะเบียน CPU และสถานะสแต็กในพื้นที่ที่อยู่ของกระบวนการโฮสต์
มัลติเธรดเรียกว่าเธรด
Techopedia อธิบายมัลติเธรด
เธรดสามารถมีประโยชน์ในระบบตัวประมวลผลเดียวโดยอนุญาตให้เธรดการประมวลผลหลักตอบสนองต่ออินพุตผู้ใช้ในขณะที่เธรดผู้ปฏิบัติงานเพิ่มเติมสามารถรันงานที่รันนานซึ่งไม่ต้องการการแทรกแซงของผู้ใช้ในพื้นหลัง เธรดในระบบมัลติโปรเซสเซอร์ส่งผลให้เกิดการประมวลผลเธรดพร้อมกันอย่างแท้จริงในโปรเซสเซอร์หลายตัว อย่างไรก็ตามจำเป็นต้องมีการเขียนโปรแกรมอย่างระมัดระวังเพื่อหลีกเลี่ยงพฤติกรรมที่ไม่ใช้งานง่ายเช่นสภาพการแข่งรถการหยุดชะงัก
ระบบปฏิบัติการใช้เธรดในสองวิธี:
- มัลติเธรดที่ว่างไว้ล่วงหน้าซึ่งสวิตช์บริบทถูกควบคุมโดยระบบปฏิบัติการ การสลับบริบทอาจดำเนินการในเวลาที่ไม่เหมาะสมดังนั้นเธรดที่มีลำดับความสำคัญสูงสามารถทำการจองทางอ้อมล่วงหน้าโดยเธรดที่มีลำดับความสำคัญต่ำ
- มัลติเธรดแบบมีส่วนร่วมซึ่งการสลับบริบทถูกควบคุมโดยเธรด สิ่งนี้อาจนำไปสู่ปัญหาเช่นการหยุดชะงักหากเธรดถูกบล็อกรอให้ทรัพยากรว่าง
Windows รุ่น 32- และ 64- บิตใช้มัลติเธรดแบบ pre-emptive ซึ่งมีการแชร์เวลาตัวประมวลผลที่มีอยู่เพื่อให้เธรดทั้งหมดได้รับการแบ่งเวลาเท่ากันและให้บริการในโหมดคิว ระหว่างการสลับเธรดบริบทของเธรดที่จองไว้แล้วจะถูกจัดเก็บและโหลดใหม่ในเธรดถัดไปในคิว การแบ่งเวลาสั้นมากจนเธรดที่กำลังรันดูเหมือนจะถูกเรียกใช้งานแบบขนาน
คำจำกัดความนี้เขียนขึ้นในบริบทของสถาปัตยกรรมคอมพิวเตอร์
