Cache นั้นสำคัญไฉน

posted on 20 Jul 2008 13:28 by micle555 in Computer
  •  

    Cache นั้นสำคัญไฉน

    [ 15 Mar. 1999 ]

     

    • Cache คืออะไร? และ ที่มาของ Cache

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

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

      เรามาว่ากันถึงเรื่อง Cache ของเรากันต่อดีกว่า จากที่กล่าวมาแล้วข้างต้น ในปัจจุบัน เราจะพบการใช้งาน Cache อยู่ 2 แบบ นั่นก็คือ Memory Cache และ Disk Cache โดยที่หลักการทำงานของทั้ง 2 ชนิดนี้ก็คล้ายๆ กัน กล่าวคือ Disk Cache นั้น จะเป็นการอ่านข้อมูลที่ต้องการใช้งานเข้ามาเก็บไว้ในหน่วยความจำหลัก เมื่อ CPU มีการเรียกใช้งาน ก็จะเข้าไปค้นหาในหน่วยความจำหลักก่อน หากว่าไม่พบจึงจะไปค้นหาใน Harddisk ต่อไป และ ในกรณีของ Memory Cache นั้น ก็เป็นอีกลำดับขั้นหนึ่งถัดจาก Disk Cache นั่นก็คือ จะทำการดึงข้อมูลที่มีการเรียกใช้งานบ่อยๆ เข้ามาเก็บไว้ในหน่วยความจำ ขนาดเล็ก ที่มีความไวสูงกว่าหน่วยความจำหลัก เมื่อ CPU ต้องการใช้งาน ก็จะมองหาข้อมูลที่ต้องการที่ หน่วยความจำขนาดเล็กนั้นก่อน ก่อนที่จะเข้าไปหาในหน่วยความจำหลักที่ มีการเข้าถึงและการส่งถ่ายข้อมูลที่ช้ากว่าต่อไป และ หน่วยความจำขนาดเล็กๆ นั้น เราก็เรียกมันว่า Cache นั่นเอง

      สำหรับในบทความนี้ เราจะพูดถึงเรื่อง Memory Cache กันอย่างเดียว เพราะฉะนั้นผมจะขอเรียกแค่สั้นๆว่า Cache ก็ขอให้เป็นอันเข้าใจตรงกันนะครับ ว่ามันหมายถึง Memory Cache




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