- หนังสือเทคนิคที่อธิบายหลักการของ การจัดการหน่วยความจำอัตโนมัติ อย่างเป็นระบบ และอธิบาย อัลกอริทึม garbage collection อย่างครอบคลุมในสภาพแวดล้อมฮาร์ดแวร์และซอฟต์แวร์สมัยใหม่
- เป็น ฉบับพิมพ์ครั้งที่ 2 ต่อจากฉบับที่ออกในปี 1996 และ 2012 โดยบูรณาการผลลัพธ์จากงานวิจัยและการพัฒนาที่สั่งสมมาตลอด 60 ปีที่ผ่านมา
- ครอบคลุม เทคนิคตัวเก็บกวาดประสิทธิภาพสูงสมัยใหม่ เช่น การเก็บแบบขนาน แบบเพิ่มทีละส่วน แบบพร้อมกัน และแบบเรียลไทม์ พร้อมนำเสนออัลกอริทึมอย่างเป็นรูปธรรมด้วยรหัสเทียมและภาพประกอบ
- เพิ่มบทใหม่ที่กล่าวถึง persistence และ การเก็บแบบตระหนักถึงพลังงาน พร้อมเชื่อมโยงกับฐานข้อมูลงานวิจัยที่เกี่ยวข้องมากกว่า 3,400 ฉบับ
- ในยุคที่ภาษาโปรแกรมสมัยใหม่ส่วนใหญ่นำ garbage collection มาใช้ หนังสือเล่มนี้เป็นแหล่งอ้างอิงสำคัญสำหรับนักพัฒนาในการทำความเข้าใจ การเลือกและการตั้งค่าตัวเก็บกวาดที่เหมาะสม
ภาพรวมฉบับพิมพ์ครั้งที่ 2
- เป็นภาคต่อของ Garbage Collection ฉบับปี 1996 และ The Garbage Collection Handbook ฉบับปี 2012 โดยสะท้อน สถานะล่าสุดของสาขาการจัดการหน่วยความจำอัตโนมัติ
- สะท้อนให้เห็นว่าเมื่่อเทคโนโลยีพัฒนาไป การจัดการหน่วยความจำก็ยิ่งซับซ้อนและสำคัญมากขึ้น
- บูรณาการองค์ความรู้ที่นักวิจัยและนักพัฒนาสั่งสมมาตลอด 60 ปีที่ผ่านมาให้อยู่ในกรอบที่เข้าถึงได้
- กล่าวถึง ความท้าทายใหม่จากความก้าวหน้าของฮาร์ดแวร์และซอฟต์แวร์ ที่มีต่อ garbage collection
- สำรวจผลกระทบของการเปลี่ยนแปลงสภาพแวดล้อมการรันโปรแกรมที่มีต่อนักออกแบบและผู้พัฒนาตัวเก็บกวาดประสิทธิภาพสูง
- ครอบคลุมไม่เพียงอัลกอริทึมแบบเรียบง่ายและดั้งเดิม แต่ยังรวมถึง การเก็บแบบขนาน แบบเพิ่มทีละส่วน แบบพร้อมกัน และแบบเรียลไทม์
- อธิบายอัลกอริทึมและแนวคิดด้วย รหัสเทียมและภาพประกอบ
คุณลักษณะสำคัญของหนังสือ
- เป็น ผลงานสืบเนื่องที่สมบูรณ์และทันสมัย จากฉบับปี 1996 และ 2012
- ครอบคลุม อัลกอริทึมการเก็บแบบขนาน แบบพร้อมกัน และแบบเรียลไทม์ อย่างรอบด้าน
- อธิบายการทำงานของ ตัวเก็บกวาดเชิงพาณิชย์ประสิทธิภาพสูง อย่างละเอียด
- กล่าวถึง ปัญหาอินเทอร์เฟซที่ซับซ้อน กับระบบรันไทม์
- เพิ่มเนื้อหากว่า 90 หน้า และมี บทใหม่ เกี่ยวกับ persistence และการเก็บแบบตระหนักถึงพลังงาน
- เชื่อมโยงกับ ฐานข้อมูลงานวิจัยที่เกี่ยวข้องราว 3,400 ฉบับ
อีบุ๊กและฉบับแปล
- อีบุ๊กมีเนื้อหาขยายมากกว่าฉบับพิมพ์ และมี ไฮเปอร์ลิงก์มากกว่า 37,000 รายการ
- เชื่อมไปยังบท หัวข้อย่อย อัลกอริทึม ภาพประกอบ อภิธานศัพท์ ดัชนี และงานวิจัย
- ในปี 2016 มีการตีพิมพ์ ฉบับแปลภาษาจีนและภาษาญี่ปุ่น ทำให้ขยายฐานผู้อ่าน
แหล่งข้อมูลบนเว็บ
- ฐานข้อมูลบรรณานุกรม ออนไลน์มีงานวิจัยเกี่ยวกับ garbage collection ราว 3,400 ฉบับ
- บางรายการมีบทคัดย่อ และส่วนใหญ่ให้ URL หรือ DOI
- มีการอัปเดตอย่างต่อเนื่อง และสามารถดาวน์โหลดได้ในรูปแบบ BibTeX, PostScript, PDF
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
เกร็ดเกี่ยวกับ garbage collection ที่ฉันชอบที่สุดอยู่ในบทความนี้
อยากให้ในหนังสือบอกด้วยว่าผู้เขียนเคยสร้าง production GC อะไรมาบ้าง เพราะในโลกจริงมี กรณีศึกษาที่ไม่เป็นไปตามสัญชาตญาณ ให้เรียนรู้อีกมาก ถ้ามีเนื้อหาแบบนั้นหนังสือคงน่าสนใจและมีประโยชน์ขึ้นมาก
เป็นหนังสือที่ดีมาก มีการคุยกันไว้ก่อนหน้านี้ด้วย: ลิงก์การอภิปรายก่อนหน้า
ในหนังสือมีส่วนสั้น ๆ เกี่ยวกับ real-time GC เลยสงสัยว่าให้ความสำคัญกับ GC ในสภาพแวดล้อมที่มีข้อจำกัดมากแค่ไหน
ฉันเองก็อยากลองทำ เกม 3D ระดับ AA ด้วย GC มานานแล้ว ถ้าไม่ใช่แพลตฟอร์มที่ทรัพยากรถูกจำกัดสุดขีดก็น่าจะทำได้
ตอนนี้งานเริ่มมีเวลาว่างขึ้นมาบ้าง เลยคิดว่าจะลองทำต้นแบบดูในช่วงฤดูหนาวกับฤดูใบไม้ผลินี้
ในทางกลับกัน Godot Engine ไม่ใช้ GC แต่ใช้ reference counting แทน และเพราะไม่รองรับการตรวจจับวงจรอ้างอิง ทุกอ็อบเจ็กต์จึงต้องถูกจัดวางเป็นโครงสร้างแบบต้นไม้
เอกสารที่เกี่ยวข้อง: กรณีศึกษาของ Thales, Aegis Combat System, กรณีของ USS Bunker Hill
ในโลกจริง GC ไม่ได้เหมือนกันหมดทุกแบบ และไม่มีอะไรทำนอง “insert credit to continue” อยู่จริง
หนังสือเล่มนี้เป็น หนังสืออ้างอิงชั้นยอด วิศวกรที่ใช้ GC ควรอ่านทุกคน และแม้คนที่ไม่จำเป็นต้องใช้ GC ส่วนต้น ๆ เกี่ยวกับ ตัวจัดสรรหน่วยความจำ ก็ยังมีประโยชน์มาก
ฉันก็มีหนังสือเล่มนี้เหมือนกัน เป็นหนังสือที่ เขียนดีมากและละเอียดรอบคอบ จึงแนะนำอย่างยิ่ง
ฉันเคยเรียนกับ ศาสตราจารย์ Hosking มาก่อน เป็นประสบการณ์ที่ดีทีเดียว และพอรู้ว่าเป็นหนังสือที่เขาเขียนก็ซื้อทันที
ถึงจะไม่ใช่สิ่งจำเป็น แต่ช่วยให้เข้าใจ ปัญหาในการออกแบบ GC และผลกระทบของ finalizer ได้ลึกขึ้นมาก ตอนอ่านส่วนนั้นฉันได้ข้อคิดครั้งใหญ่เลย
อยากให้มีปุ่ม “buy now” ที่ซื้อทั้งฉบับพิมพ์และ ไฟล์ EPUB พร้อมกันได้ ตอนนี้เว็บไซต์โปรโมตหนังสือก็จริง แต่ขั้นตอนการซื้อมันซับซ้อนเกินไป