แคช

จากวิกิพีเดีย สารานุกรมเสรี
ไปยังการนำทาง ไปยังการค้นหา

แคช (อังกฤษ: cache) คือส่วนของข้อมูลที่ถูกเก็บซ้ำไว้ในคอมพิวเตอร์ เพื่อใช้ในการใช้งานครั้งต่อไปโดยไม่ต้องเรียกข้อมูลจากต้นแหล่งอีกครั้ง นิยมใช้เมื่อเรียกข้อมูลจากต้นแหล่งได้ยาก เมื่อแคชถูกสร้างขึ้น การเรียกใช้ข้อมูลในครั้งต่อไปจะถูกอ่านข้อมูลจากแคช แทนที่จะอ่านข้อมูลจากต้นฉบับหรือต้นแหล่งเพื่อประหยัดเวลาและค่าใช้จ่าย รวมถึงการเพิ่มความเร็วในการเรียกใช้งาน แคชนิยมใช้เมื่อรูปแบบการใช้ข้อมูลมีลักษณะที่ใกล้เคียงกันและมีการใช้ซ้ำบ่อยครั้ง

เนื่องจากแคชมีจุดประสงค์เพียงแค่ต้องการจะเพิ่มความเร็วในการเข้าถึงข้อมูล ไม่ใช่ใช้เก็บข้อมูลจริงๆ ข้อมูลในแคชจึงมีโอกาสหายไปได้ตลอดเวลา ในกรณีที่มีคำสั่งเรียกข้อมูลและข้อมูลยังไม่หายไปจากแคช จะเรียกว่า cache hit(แคช ฮิท) นั่นคือสามารถอ่านข้อมูลจากแคชได้ อย่างไรก็ตามหากข้อมูลไม่อยู่ในแคชแล้ว จะเรียกว่า cache miss(แคช มิสส์) ซึ่งทำให้ต้องไปอ่านข้อมูลจากต้นแหล่งซึ่งเสียเวลามากกว่า

แคชมีหลายประเภท เช่น แคชหน่วยความจำ แคชจานข้อมูล แคชเว็บ เป็นต้น

การดำเนินการ (Operation)[1][แก้]

เมื่อคอมพิวเตอร์ต้องการเข้าถึงข้อมูลที่อาจจะเก็บอยู่ภายใน cache คอมพิวเตอร์จะทำการตรวจสอบว่า cache hit หรือ cache miss ถ้าหากเกิด cache miss ก็จะเข้าไปหาข้อมูลในหน่วยความจำต่อ ระหว่างการเกิด cache miss ข้อมูลแคชบางรายการก็จะถูกกำจัดออกเมื่อแคชเต็ม เพื่อให้มีพื้นที่ว่างสำหรับข้อมูลที่เข้ามาใหม่โดยใช้ นโยบายการแทนที่(replacement policy) หนึ่งในนโยบายการแทนที่ที่ดีที่สุดคือ Least Recently Used (LRU) โดยนำข้อมูลใหม่แทนที่รายการข้อมูลที่เก่าที่สุด และรายการที่มีการเข้าถึงหรือเรียกใช้น้อยกว่ารายการอื่นๆ

การนำไปใช้งาน[แก้]

แคชหน่วยความจำ[แก้]

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

แคชจานข้อมูล[แก้]

แคชเว็บ[แก้]

แคชอื่น ๆ[แก้]

ความแตกต่างระหว่างแคชกับบัฟเฟอร์[แก้]

อ้างอิง[แก้]