ทำไมด้ายถึงมีกระบวนการที่มีน้ำหนักเบา?

สารบัญ:

ทำไมด้ายถึงมีกระบวนการที่มีน้ำหนักเบา?
ทำไมด้ายถึงมีกระบวนการที่มีน้ำหนักเบา?
Anonim

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

ทำไมเธรดจึงมีน้ำหนักเบาและกระบวนการจึงมีน้ำหนักมาก?

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

กระบวนการเธรดที่มีน้ำหนักเบาคืออะไร

กระบวนการที่เบา (LWP) เชื่อมระดับผู้ใช้และระดับเคอร์เนล แต่ละกระบวนการประกอบด้วย LWP หนึ่งหรือหลายรายการ โดยแต่ละกระบวนการจะเรียกใช้เธรดผู้ใช้ตั้งแต่หนึ่งรายการขึ้นไป (ดูรูปที่ 1-1) การสร้างเธรดมักจะเกี่ยวข้องกับการสร้างบริบทของผู้ใช้บางส่วนเท่านั้น แต่ไม่ใช่การสร้าง LWP

เหตุใดจึงเรียกว่ากระบวนการน้ำหนักเบา ทรัพยากรใดบ้างที่ใช้เมื่อสร้างเธรด แตกต่างจากที่ใช้เมื่อสร้างกระบวนการอย่างไร

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

วงจรชีวิตเกลียวคืออะไร

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