Skip to main content

บล็อกควบคุมไฟล์คืออะไร?

บล็อกควบคุมไฟล์ (FCB) หรือที่เรียกว่าตัวอธิบายไฟล์เป็นประเภทของโครงสร้างข้อมูลที่จัดสรรชั่วคราวโดยระบบปฏิบัติการคอมพิวเตอร์เพื่อรักษาสถานะของไฟล์ข้อมูลที่ถูกสร้างขึ้นหรือจัดการอย่างอื่นในอินสแตนซ์ส่วนใหญ่บล็อกควบคุมไฟล์จะใช้เพื่อจัดเก็บข้อมูลพื้นฐานเกี่ยวกับไฟล์เช่นชื่อส่วนขยายและตำแหน่งบนไดรฟ์เชิงตรรกะรวมถึงข้อมูลแบบไดนามิกเช่นที่อยู่ปัจจุบันภายในไฟล์ที่กำลังอ่านในขั้นต้นบล็อกควบคุมไฟล์เป็นโครงสร้างที่กำหนดไว้อย่างดีภายใต้ระบบปฏิบัติการบางอย่าง แต่เนื่องจากได้กลายเป็นคำทั่วไปสำหรับโครงสร้างที่ใช้ในการติดตามข้อมูลเกี่ยวกับไฟล์ที่จัดการอย่างแข็งขันจุดประสงค์หนึ่งที่สำคัญของบล็อกควบคุมไฟล์คือการช่วยให้ระบบไฟล์ติดตามว่าไฟล์อยู่ในสถานะใดเพื่อป้องกันการดำเนินการที่แตกต่างจากการพยายามปรับเปลี่ยนไฟล์ในรูปแบบที่ขัดแย้งกันเช่นการอ่านจากพื้นที่ของไฟล์เขียนถึง.โครงสร้างไม่เพียง แต่ใช้สำหรับไฟล์ข้อมูล แต่ยังสามารถใช้ในการติดตามข้อมูลเกี่ยวกับไดเรกทอรีแม้ว่าโครงสร้างข้อมูลมักจะสั้นลงเพื่อลบฟิลด์ที่ไม่จำเป็นเนื่องจากไดเรกทอรีไม่สามารถมีข้อมูล

ระบบปฏิบัติการสองระบบโดยเฉพาะ Microsoft ระบบปฏิบัติการดิสก์ (MS-DOS) และโปรแกรมควบคุมสำหรับไมโครโปรเซสเซอร์ (CP/M) เป็นระบบปฏิบัติการแรกที่ใช้โครงการบล็อกควบคุมไฟล์เพื่อจัดการไฟล์ระบบเหล่านี้ใช้โครงสร้างที่คล้ายกันมากเพื่อช่วยจัดการไฟล์ที่เข้าถึงได้เมื่อระบบปฏิบัติการและระบบไฟล์อื่น ๆ ได้รับการพัฒนาแนวคิดของบล็อกควบคุมไฟล์ยังคงอยู่ แต่การใช้งานเปลี่ยนไปและโครงสร้างข้อมูลแตกต่างกันอย่างมากจากระบบหนึ่งไปยังระบบถัดไประบบปฏิบัติการคอมพิวเตอร์ส่วนใหญ่ที่ใช้ในปี 2554 ใช้รูปแบบของบล็อกควบคุมไฟล์บางรูปแอปพลิเคชันการเขียนโปรแกรมระดับสูง

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