ไฟล์-11
Files-11คือระบบไฟล์ที่ใช้ในระบบปฏิบัติการRSX-11 , IASและOpenVMS จากบริษัท Digital Equipment Corporationระบบนี้รองรับ การอ่าน/เขียนข้อมูลแบบเน้น ระเบียน (record -oriented I/O) , การเข้าถึง เครือข่าย ระยะไกล และการกำหนดเวอร์ชันของไฟล์ เลเยอร์ ODS-1 ดั้งเดิมเป็นระบบไฟล์แบบแบนราบ (flat file system ) ในขณะที่เวอร์ชัน ODS-2 เป็นระบบไฟล์แบบลำดับชั้น (hierarchical file system ) พร้อมการสนับสนุนรายการควบคุมการเข้าถึง (access control lists )
Files-11 มีลักษณะคล้ายคลึงกับระบบไฟล์ที่ใช้ในระบบปฏิบัติการรุ่นก่อนๆของ Digital Equipment Corporationเช่นTOPS-20และRSTS/Eแต่ มีความก้าวหน้ากว่าอย่างมาก
ประวัติศาสตร์
ระบบไฟล์ Files-11 เวอร์ชัน ODS-1 ดั้งเดิมนั้นมีโครงสร้างไดเร็กทอรีแบบพื้นฐานที่ไม่เป็นลำดับชั้น โดยกำหนดไดเร็กทอรีหนึ่งรายการต่อบัญชีผู้ใช้หนึ่งบัญชี บัญชีผู้ใช้แต่ละบัญชีจะถูกแทนด้วยตัวเลขสองตัว ( คู่) และมีไดเร็กทอรีที่เกี่ยวข้องหนึ่งรายการ ซึ่งคล้ายกับระบบไฟล์ RSTS/E ไฟล์ระบบพิเศษ เช่น ไฟล์ปฏิบัติการของโปรแกรมและระบบปฏิบัติการเอง จะถูกจัดเก็บไว้ในไดเร็กทอรีของบัญชีระบบที่สงวนไว้[project,programmer]
ในขณะที่วิธีการนี้เหมาะสมสำหรับ ระบบ PDP-11ซึ่งมีความจุในการจัดเก็บข้อมูลถาวรจำกัด แต่ระบบVAX ที่มี ฮาร์ดไดรฟ์ ขนาดใหญ่กว่ามาก ต้องการวิธีการจัดเก็บไฟล์ที่ยืดหยุ่นกว่า ดังนั้น Files-11 เวอร์ชัน ODS-2 ที่เปิดตัวใน VMS จึงได้จัดเตรียมโครงสร้างไดเร็กทอรีแบบลำดับชั้นไว้โดยเฉพาะ
ภาพรวม
"Files-11" เป็นคำทั่วไปที่ใช้เรียกโครงสร้างไฟล์ 5 ระบบแยกกัน ซึ่งรู้จักกันในชื่อโครงสร้างบนดิสก์ (ODS) ระดับ 1 ถึง 5
ODS-1คือระบบไฟล์แบบแบนที่ใช้โดยระบบปฏิบัติการ RSX-11 ซึ่งได้รับการสนับสนุนโดย ระบบ VMS รุ่นเก่า เพื่อความเข้ากันได้กับ RSX แต่ไม่เคยถูกนำมาใช้เพื่อสนับสนุน VMS เอง และได้ถูกแทนที่ด้วย ODS-2 และ ODS-5 ไปแล้วเป็นส่วนใหญ่
ODS-2คือระบบไฟล์ VMS รุ่นดั้งเดิม เมื่อเปรียบเทียบกับ ODS-1 แล้ว ODS-2 เป็นระบบไฟล์แบบลำดับชั้น
แม้ว่าจะไม่ค่อยมีการกล่าวถึงโดยใช้ชื่อระดับ ODS แต่ODS-3และODS-4คือมาตรฐาน Files-11 ที่ใช้สำหรับรองรับระบบไฟล์ CD-ROM ISO 9660และHigh Sierra Formatตามลำดับ
ODS-5เป็นเวอร์ชันที่ปรับปรุงแล้วของ ODS-2 ซึ่งใช้งานได้บนแพลตฟอร์มAlpha , IA-64และx86-64 โดยเพิ่มการรองรับชื่อไฟล์ ที่รักษาตัวพิมพ์ใหญ่-เล็กไว้ได้แม้จะมีอักขระที่ไม่ใช่ASCIIและปรับปรุงการรองรับโครงสร้างไดเร็กทอรีแบบลำดับชั้น เดิมทีมีจุดประสงค์เพื่อใช้ในการให้บริการไฟล์แก่Microsoft Windowsหรือระบบอื่นๆ ที่ไม่ใช่ VMS ในฐานะส่วนหนึ่งของโครงการ "NT Affinity" แต่ก็ยังใช้ในดิสก์ของผู้ใช้และเซิร์ฟเวอร์อินเทอร์เน็ต ด้วย
โครงสร้างไดเร็กทอรี

ไฟล์และไดเร็กทอรีทั้งหมดในระบบไฟล์ Files-11 จะถูกบรรจุอยู่ภายในไดเร็กทอรีหลัก หนึ่งหรือหลายไดเร็กทอรี และในที่สุดก็จะอยู่ภายใต้ไดเร็กทอรีราก ซึ่งก็คือไดเร็กทอรีไฟล์หลัก (ดูด้านล่าง) ดังนั้น ระบบไฟล์จึงถูกจัดระเบียบในโครงสร้างกราฟแบบไม่มีวงจรทิศทาง ( DAG )
ในตัวอย่างนี้ ( ดูด้านขวา ) File 2มีรายการไดเร็กทอรีอยู่ภายใต้ทั้งDir 2และDir 3; กล่าวคือ มัน "อยู่ใน" ทั้งสองไดเร็กทอรีพร้อมกัน แม้ว่าจะถูกลบออกจากไดเร็กทอรีหนึ่งแล้ว มันก็จะยังคงอยู่ในไดเร็กทอรีอีกอันจนกว่าจะถูกลบออกจากที่นั่นด้วยเช่นกัน แนวคิดนี้คล้ายกับแนวคิดของฮาร์ดลิงก์ในUNIXแม้ว่าจะต้องระมัดระวังไม่ให้ไฟล์ถูกลบจริง ๆ บนดิสก์ที่ไม่ได้ตั้งค่าไว้สำหรับฮาร์ดลิงก์ (มีเฉพาะในดิสก์ ODS-5 และเฉพาะในกรณีที่ดิสก์เปิดใช้งานฮาร์ดลิงก์ไว้เท่านั้น)
การจัดระเบียบและการตั้งชื่อดิสก์
ระบบ VMS ที่ใช้งานได้จริงจะสามารถเข้าถึงดิสก์ออนไลน์อย่างน้อยหนึ่งแผ่น ซึ่งแต่ละแผ่นจะมีระบบไฟล์ที่สมบูรณ์และเป็นอิสระ ดิสก์เหล่านี้อาจเป็นที่เก็บข้อมูลภายในเครื่อง หรือในกรณีของคลัสเตอร์ จะเป็นที่เก็บข้อมูลร่วมกับระบบระยะไกล

ในการกำหนดค่าคลัสเตอร์ OpenVMS ดิสก์ที่ไม่ใช่ส่วนตัวจะถูกใช้ร่วมกันระหว่างโหนดทั้งหมดในคลัสเตอร์(ดูรูปที่ 1)ในการกำหนดค่านี้ ดิสก์ระบบทั้งสองสามารถเข้าถึงได้โดยทั้งสองโหนดผ่านทางเครือข่าย แต่ดิสก์ส่วนตัวจะไม่ถูกแชร์: มันจะถูกติดตั้งเพื่อใช้งานโดยผู้ใช้หรือกระบวนการเฉพาะบนเครื่องนั้นเท่านั้น การเข้าถึงไฟล์ข้ามคลัสเตอร์ได้รับการจัดการโดย OpenVMS Distributed Lock Manager ซึ่งเป็นส่วนสำคัญของระบบไฟล์
สามารถรวมดิสก์หลายแผ่นเข้าด้วยกันเพื่อสร้างดิสก์เชิงตรรกะขนาดใหญ่แผ่นเดียว หรือชุดวอลุ่มได้ นอกจากนี้ยังสามารถทำสำเนาดิสก์โดยอัตโนมัติไปยังชุดเงาเพื่อความปลอดภัยของข้อมูลหรือเพื่อประสิทธิภาพการอ่านที่เร็วขึ้น
ดิสก์จะถูกระบุด้วยชื่อทางกายภาพหรือ (ส่วนใหญ่) ด้วยชื่อเชิงตรรกะที่ผู้ใช้กำหนด ตัวอย่างเช่น อุปกรณ์บูต (ดิสก์ระบบ) อาจมีชื่อทางกายภาพ$3$DKA100แต่โดยทั่วไปจะเรียกโดยใช้ชื่อเชิงSYS$SYSDEVICEตรรกะ
ระบบไฟล์บนดิสก์แต่ละแผ่น (ยกเว้น ODS-1) เป็นแบบลำดับชั้นชื่อไฟล์ ที่ระบุอย่างครบถ้วน ประกอบด้วยชื่อโหนด ชื่อผู้ใช้และรหัสผ่าน ชื่ออุปกรณ์ ไดเร็กทอรี ชื่อไฟล์ ประเภทไฟล์ และหมายเลขเวอร์ชัน ในรูปแบบ:
NODE"accountname password"::device:[directory.subdirectory]filename.type;ver
ตัวอย่างเช่น[DIR1.DIR2.DIR3]FILE.EXTหมายถึงเวอร์ชันล่าสุดของFILE.EXTบนดิสก์เริ่มต้นปัจจุบัน ใน[DIR1.DIR2.DIR3]ไดเร็กทอรี
DIR1เป็นไดเร็กทอรีย่อยของไดเร็กทอรีไฟล์หลัก (MFD) หรือไดเร็กทอรีรากและDIR2เป็นไดเร็กทอรีย่อยของDIR1MFD ของดิสก์จะถูกระบุ[000000]ด้วย
ส่วนใหญ่ของชื่อไฟล์สามารถละเว้นได้ ในกรณีนั้น ระบบจะนำส่วนต่างๆ มาจากข้อมูลจำเพาะของไฟล์เริ่มต้น ปัจจุบัน ข้อมูลจำเพาะของไฟล์เริ่มต้นจะแทนที่แนวคิดของ "ไดเร็กทอรีปัจจุบัน" ในระบบปฏิบัติการอื่นๆ โดยการกำหนดค่าเริ่มต้นสำหรับโหนด ชื่ออุปกรณ์ และไดเร็กทอรี กระบวนการทั้งหมดมีข้อมูลจำเพาะของไฟล์เริ่มต้นซึ่งรวมถึงชื่อดิสก์และไดเร็กทอรี และรูทีนระบบไฟล์ VMS ส่วนใหญ่ยอมรับข้อมูลจำเพาะของไฟล์เริ่มต้นซึ่งอาจรวมถึงประเภทไฟล์ด้วยTYPEตัวอย่างเช่น คำสั่งจะตั้งค่าเริ่มต้นเป็น " .LIS" เป็นประเภทไฟล์ ดังนั้นคำสั่งTYPE Fโดยไม่มีนามสกุล จะพยายามเปิดF.LISไฟล์
ทุกไฟล์จะมีหมายเลขเวอร์ชัน ซึ่งค่าเริ่มต้นจะเป็น 1 หากไม่มีเวอร์ชันอื่นที่มีชื่อไฟล์เดียวกันอยู่ (มิเช่นนั้นจะเป็นหมายเลขที่สูงกว่าเวอร์ชันสูงสุดหนึ่งหมายเลข) ทุกครั้งที่มีการบันทึกไฟล์ แทนที่จะเขียนทับเวอร์ชันที่มีอยู่ ระบบจะสร้างไฟล์ใหม่ที่มีชื่อเดียวกันแต่มีหมายเลขเวอร์ชันเพิ่มขึ้น เวอร์ชันเก่าสามารถลบได้โดยใช้ คำสั่ง DELETEหรือ หรืออาจลบเวอร์ชันเก่าโดยอัตโนมัติเมื่อถึงขีด จำกัดเวอร์ชันPURGEของไฟล์(ตั้งค่าโดย) ดังนั้นเวอร์ชันเก่าจะไม่ถูกเขียนทับ แต่จะถูกเก็บไว้ในดิสก์และสามารถเรียกคืนได้ตลอดเวลา ขีดจำกัดทางสถาปัตยกรรมของหมายเลขเวอร์ชันคือ 32767 พฤติกรรมการกำหนดเวอร์ชันสามารถเปลี่ยนแปลงได้ง่ายหากไม่ต้องการ โดยเฉพาะอย่างยิ่งไฟล์ที่ได้รับการอัปเดตโดยตรง เช่น ฐานข้อมูล จะไม่สร้างเวอร์ชันใหม่เว้นแต่จะมีการเขียนโปรแกรมไว้อย่างชัดเจนSET FILE/VERSION_LIMIT
ODS-2 จำกัดระดับของไดเร็กทอรีย่อยไว้ที่แปดระดับ และใช้เฉพาะชื่อไฟล์ที่เป็นตัวพิมพ์ใหญ่ ตัวอักษรและตัวเลข (รวมถึงเครื่องหมายขีดล่าง ขีดกลาง และเครื่องหมายดอลลาร์) ได้สูงสุด 39.39 ตัวอักษร (39 สำหรับชื่อไฟล์และอีก 39 สำหรับนามสกุล) ODS-5 ขยายชุดอักขระให้ครอบคลุมถึงตัวพิมพ์เล็กและอักขระ ASCII ที่พิมพ์ได้ส่วนใหญ่ รวมถึง อักขระ ISO Latin-1และUnicodeเพิ่มความยาวชื่อไฟล์สูงสุด และอนุญาตให้มีไดเร็กทอรีย่อยได้ไม่จำกัดระดับ เมื่อสร้างพาธเนมสำหรับไฟล์ ODS-5 ที่ใช้อักขระที่ไม่ได้รับอนุญาตใน ODS-2 จะใช้ไวยากรณ์พิเศษ "^" เพื่อรักษาความเข้ากันได้กับเวอร์ชันก่อนหน้าfile.tar.gz;1ตัวอย่างเช่น ไฟล์ " " บนดิสก์ ODS-5 จะถูกเรียกว่า " file^.tar.gz" —ชื่อไฟล์คือ " file.tar" และนามสกุลคือ " .gz"
ความปลอดภัยของไฟล์: การป้องกันและ ACLs
การควบคุมการเข้าถึงนั้นใช้รหัสประจำตัวผู้ใช้ (UIC) เป็นหลัก โดย UIC ประกอบด้วยหมายเลขผู้ใช้และหมายเลขกลุ่ม ซึ่งหมายเลขกลุ่มนี้เรียกอีกอย่างว่าหมายเลขโครงการ ผู้ใช้ที่เข้าสู่ระบบจะมี UIC และไฟล์แต่ละไฟล์จะเป็นของ UIC นั้นๆ
RSX-11 และ IAS
ใน RSX-11 และ IAS การควบคุมการเข้าถึงจะถูกควบคุมโดยสิทธิ์สี่กลุ่ม: [ 1 ] [ 2 ] [ 3 ] [ 4 ]
| ระบบ | เจ้าของ | กลุ่ม | โลก |
| รเวด | รเวด | รเวด | รเวด |
- ระบบ
- เจ้าของ
- กลุ่ม
- โลก
และส่วนขออนุญาตอีกสี่ส่วน:
- อ่าน
- เขียน
- ขยาย
- ลบ
สิทธิ์การเข้าถึงแบบ "ระบบ" ใช้กับผู้ใช้ทุกคนที่มีหมายเลขกลุ่ม UIC น้อยกว่าหรือเท่ากับ 10 ในเลขฐานแปดหรือ 8 ในเลขฐานสิบ สิทธิ์การเข้าถึงแบบ "เจ้าของ" และ "กลุ่ม" ใช้กับเจ้าของไฟล์และกลุ่มผู้ใช้ของผู้ใช้นั้น และสิทธิ์การเข้าถึงแบบ "ทั่วโลก" ใช้กับผู้ใช้รายอื่น ๆ
วีเอ็มเอส
ใน VMS บิตการอนุญาตทั้งสี่มีดังนี้:
- อ่าน
- เขียน
- ดำเนินการ
- ลบ
โดยใช้สิทธิ์ในการเรียกใช้งาน (Execute permission) แทนที่จะเป็นสิทธิ์ในการขยาย (Extend permission)
สิทธิ์การเข้าถึงแบบ "ระบบ" จะใช้กับผู้ใช้ทุกคนที่มีหมายเลขกลุ่ม UIC น้อยกว่าหรือเท่ากับค่าพารามิเตอร์ของระบบMAXSYSGROUP(โดยทั่วไปคือ 8 หรือ 10 ในระบบเลขฐานแปด ) นอกจากนี้ยังมีบิตสิทธิ์ที่ห้าคือ "ควบคุม" ซึ่งใช้ในการกำหนดสิทธิ์การเข้าถึงเพื่อเปลี่ยนแปลงข้อมูลเมตาของไฟล์ เช่น การป้องกัน กลุ่มนี้ไม่สามารถตั้งค่าได้อย่างชัดเจน มันจะถูกตั้งค่าสำหรับระบบและเจ้าของเสมอ และจะไม่ถูกตั้งค่าสำหรับกลุ่มหรือผู้ใช้ทั่วไป
การรักษาความปลอดภัยของไฟล์ยังได้รับผลกระทบจากสิทธิ์ ระบบสี่ประการ ซึ่งอนุญาตให้ผู้ใช้ที่ถือสิทธิ์เหล่านั้นสามารถยกเลิกการควบคุมการเข้าถึงได้:
BYPASSผู้ใช้มีสิทธิ์อ่าน เขียน และอ่าน (RWED) ในการเข้าถึงไฟล์ทั้งหมดโดยปริยาย โดยไม่คำนึงถึงการป้องกันไฟล์READALLผู้ใช้จะมีสิทธิ์เข้าถึงไฟล์ทั้งหมดโดยปริยายผ่านโปรแกรม RSYSPRVผู้ใช้สามารถเข้าถึงไฟล์ได้โดยขึ้นอยู่กับการป้องกันของระบบGRPPRVผู้ใช้สามารถเข้าถึงไฟล์ได้โดยอาศัยการป้องกันของระบบ หากกลุ่ม UIC ของผู้ใช้ตรงกับกลุ่มของไฟล์นั้น
VMS 4.0 เพิ่ม การควบคุมการเข้าถึงแบบ ACL (Access Control List) ACL อนุญาตให้กำหนดสิทธิ์เพิ่มเติมให้กับผู้ใช้หรือกลุ่มได้ตัวอย่างเช่น UIC ของเว็บเซิร์ฟเวอร์อาจได้รับสิทธิ์ในการอ่านไฟล์ทั้งหมดในไดเร็กทอรีที่กำหนด ACL สามารถกำหนดให้เป็นแบบสืบทอดได้โดย ACL ของไฟล์ในไดเร็กทอรีจะใช้กับไฟล์ทั้งหมดที่อยู่ภายใต้ไดเร็กทอรีนั้น การแก้ไข ACL ทำได้โดยใช้EDIT/ACLคำสั่ง และอยู่ในรูปแบบของคู่ตัวระบุ/สิทธิ์การเข้าถึง ตัวอย่างเช่น รายการ ACL คือ
(IDENTIFIER=HTTP$SERVER,ACCESS=READ+EXECUTE)
จะอนุญาตให้ผู้ใช้HTTP$SERVERสามารถอ่านและเรียกใช้ไฟล์ได้
ชื่อเชิงตรรกะ
ชื่อเชิงตรรกะ ( Logical name)คือตัวแปรระบบที่อาจอ้างอิงถึงดิสก์ ไดเร็กทอรี หรือไฟล์ หรืออาจมีข้อมูลเฉพาะโปรแกรมอื่นๆ ตัวอย่างเช่น ชื่อเชิงตรรกะSYS$SYSDEVICEจะเก็บอุปกรณ์บูตของระบบ ชื่อเชิงตรรกะโดยปกติจะอ้างอิงถึงไดเร็กทอรีหรือดิสก์เดียวเช่นSYS$LOGIN:ไดเร็กทอรีล็อกอิน (โฮม) ของผู้ใช้ (หรือหลายไดเร็กทอรี) ชื่อเชิงตรรกะเหล่านี้ไม่สามารถใช้เป็นชื่อดิสก์จริงได้เพราะSYS$LOGIN:[DIR]FILEไม่ใช่ข้อกำหนดไฟล์ที่ถูกต้อง อย่างไรก็ตามชื่อเชิงตรรกะที่ซ่อนอยู่DEFINE/TRANSLATION=CONCEALED ซึ่งกำหนดโดย สามารถใช้ในลักษณะนั้นได้ ไดเร็กทอรี ราก เหล่านี้ จะถูกกำหนดด้วยเครื่องหมาย "." ต่อท้ายข้อกำหนดไดเร็กทอรี ดังนั้น
$ DEFINE/TRANS=CONCEAL HOME DISK$USERS:[ username .]
จะอนุญาตHOME:[DIR]FILEให้ใช้งานได้ โดยทั่วไปแล้วจะเป็นตัวแปรตรรกะแบบง่ายๆ ที่ชี้ไปยังไดเร็กทอรีเฉพาะที่เกี่ยวข้องกับซอฟต์แวร์แอปพลิเคชันบางตัว ซึ่งอาจอยู่ในดิสก์หรือไดเร็กทอรีใดก็ได้ ดังนั้น ตัวแปรตรรกะ ABC_EXE อาจชี้ไปยังไดเร็กทอรีของโปรแกรมที่สามารถเรียกใช้งานได้สำหรับแอปพลิเคชัน ABC และ ABC_TEMP อาจชี้ไปยังไดเร็กทอรีของไฟล์ชั่วคราวสำหรับแอปพลิเคชันเดียวกันนั้น และไดเร็กทอรีนี้อาจอยู่บนดิสก์เดียวกันและในโครงสร้างไดเร็กทอรีเดียวกันกับ ABC_EXE หรืออาจอยู่บนดิสก์อื่น (และในโครงสร้างไดเร็กทอรีที่แตกต่างกัน) ก็ได้
ในลักษณะที่คล้ายกับ Unix VMS กำหนดช่องสัญญาณอินพุตและเอาต์พุตมาตรฐาน หลาย ช่องซึ่งสามารถเข้าถึงได้ผ่านชื่อเชิงตรรกะSYS$INPUT, SYS$OUTPUT, SYS$ERRORและ[ 5SYS$COMMAND ]
ชื่อเชิงตรรกะไม่มีสิ่งที่เทียบเคียงได้อย่างใกล้เคียงในระบบปฏิบัติการ POSIX มันคล้ายกับตัวแปรสภาพแวดล้อม ของ Unix ยกเว้นว่ามันจะถูกขยายโดยระบบไฟล์ แทนที่จะเป็นเชลล์คำสั่งหรือโปรแกรมแอปพลิเคชัน ต้องมีการกำหนดชื่อเชิงตรรกะก่อนใช้งาน ดังนั้นจึงเป็นเรื่องปกติที่ชื่อเชิงตรรกะจำนวนมากจะถูกกำหนดไว้ในไฟล์คำสั่งเริ่มต้นระบบ รวมถึงไฟล์คำสั่งเข้าสู่ระบบของผู้ใช้ ใน VMS ชื่อเชิงตรรกะอาจอ้างอิงถึงชื่อเชิงตรรกะอื่น ๆ (สูงสุดตามขีดจำกัดการซ้อนกันที่กำหนดไว้ล่วงหน้าคือ 10) และอาจมีรายการชื่อสำหรับค้นหาชื่อไฟล์ที่มีอยู่ ชื่อเชิงตรรกะที่ถูกอ้างอิงบ่อย ๆ ได้แก่:
| ชื่อเชิงตรรกะ | ความหมาย |
|---|---|
SYS$INPUT | อินพุตมาตรฐาน - ใช้ในโหมดโต้ตอบ ซึ่งแทนแป้นพิมพ์ของเทอร์มินัล หากใช้ในไฟล์แบตช์ จะอ่านบรรทัดในไฟล์แบตช์ที่ไม่ได้ขึ้นต้นด้วยสัญลักษณ์ $ หรือไม่ได้ระบุเป็นชุดอินพุตโดยใช้DECKคำสั่ง |
SYS$OUTPUT | เอาต์พุตมาตรฐาน - จะแสดงผลออกทางหน้าจอเทอร์มินัลหรือไฟล์บันทึกแบตช์ ขึ้นอยู่กับว่ากระบวนการนั้นเป็นแบบโต้ตอบหรือไม่ |
SYS$ERROR | ข้อผิดพลาดมาตรฐาน - จะแสดงผลออกทางหน้าจอเทอร์มินัลหรือไฟล์บันทึกข้อผิดพลาดแบบแบตช์ ขึ้นอยู่กับว่ากระบวนการนั้นเป็นแบบโต้ตอบหรือไม่ |
SYS$COMMAND | แหล่งที่มาของคำสั่งในไฟล์แบตช์ มันจะอ่านจากเทอร์มินัลหรือสตรีม SYS$INPUT ขึ้นอยู่กับว่ากระบวนการนั้นเป็นแบบโต้ตอบหรือไม่ |
TT | เทอร์มินัลที่เกี่ยวข้องกับกระบวนการ |
SYS$PRINT | เครื่องพิมพ์เริ่มต้นหรือคิวการพิมพ์ |
SYS$LOGIN | ไดเร็กทอรีหลักสำหรับผู้ใช้แต่ละคน |
SYS$SCRATCH | โฟลเดอร์ชั่วคราว , ไดเร็กทอรีสำหรับไฟล์ชั่วคราว |
SYS$SYSTEM | ไดเร็กทอรีที่ประกอบด้วยโปรแกรมระบบส่วนใหญ่และไฟล์ข้อมูลสำคัญบางส่วน เช่น ไฟล์การอนุญาตระบบ (บัญชีผู้ใช้และรหัสผ่าน) |
SYS$SHARE | ไลบรารีรันไทม์ที่ใช้ร่วมกัน ไฟล์ปฏิบัติการ ฯลฯ |
SYS$LIBRARY | ระบบและไลบรารีเพิ่มเติม |
ระบบปฏิบัติการที่ไม่ใช่ของ DEC ที่ใกล้เคียงที่สุดกับแนวคิดของชื่อเชิงตรรกะคือAmigaOSผ่านASSIGNคำสั่ง ระบบปฏิบัติการดิสก์ของ AmigaOS คือAmigaDOSซึ่งเป็นการพอร์ตมาจากTRIPOSมีความคล้ายคลึงกับระบบปฏิบัติการของ DEC อยู่บ้าง ตัวอย่างเช่น ชื่ออุปกรณ์ทางกายภาพจะใช้รูปแบบเช่น DF0: สำหรับฟลอปปี้ดิสก์ตัวแรก, CDROM2: สำหรับไดรฟ์ CD-ROM ตัวที่ 3 เป็นต้น อย่างไรก็ตาม เนื่องจากระบบสามารถบูตจากไดรฟ์ใดก็ได้ที่เชื่อมต่อ ระบบปฏิบัติการจึงสร้างการกำหนด SYS: เพื่ออ้างอิงถึงอุปกรณ์บูตที่ใช้โดยอัตโนมัติ การกำหนดค่าอื่นๆ เช่น LIBS:, PREFS:, C:, S: และอื่นๆ ก็ถูกสร้างขึ้นเช่นกัน โดยอ้างอิงจาก SYS: ผู้ใช้สามารถสร้างและลบการกำหนดค่าของตนเองได้เช่นกัน
การรับส่งข้อมูลแบบเน้นบันทึก: บริการจัดการบันทึก
บริการจัดการระเบียน (Record Management Services หรือ RMS ) คือเลเยอร์การรับส่งข้อมูลแบบมีโครงสร้างของระบบปฏิบัติการ VMS RMS ให้การสนับสนุนโปรแกรมอย่างครอบคลุมสำหรับการจัดการไฟล์ที่มีโครงสร้าง เช่น ไฟล์ ฐานข้อมูล แบบระเบียนและแบบดัชนี ระบบไฟล์ VMS ร่วมกับ RMS ช่วยขยายการเข้าถึงไฟล์ให้เหนือกว่า การเข้าถึง ข้อมูลไบต์ แบบง่ายๆ และช่วยให้ระบบปฏิบัติการรองรับไฟล์ประเภทต่างๆ ที่มีข้อมูลมากมายได้ แต่ละไฟล์ในระบบไฟล์ VMS อาจเปรียบได้กับฐานข้อมูลซึ่งประกอบด้วยชุดของระเบียน โดยแต่ละระเบียนมี ฟิลด์อย่างน้อยหนึ่งตัวอย่างเช่น ไฟล์ข้อความคือรายการของระเบียน (บรรทัด) ที่คั่นด้วยอักขระขึ้นบรรทัดใหม่ RMS เป็นตัวอย่างของระบบไฟล์แบบเน้นระเบียน
RMS ได้กำหนดรูปแบบการบันทึกไว้สี่รูปแบบ :
- ความยาวคงที่ - ข้อมูลทุกรายการในไฟล์มีความยาวเท่ากัน
- ความยาวแปรผัน - ระเบียนมีความยาวแตกต่างกัน และแต่ละระเบียนจะมีไบต์นับจำนวนนำหน้าซึ่งระบุความยาวของระเบียนนั้น
- ความยาวระเบียนแปรผันได้พร้อมส่วนควบคุมความยาวคงที่ - ระเบียนมีความยาวแตกต่างกัน แต่จะมีบล็อกควบคุมความยาวคงที่นำหน้า
- สตรีม - ข้อมูลแต่ละระเบียนมีความยาวแตกต่างกัน และแต่ละระเบียนจะถูกคั่นด้วยอักขระสิ้นสุด ไฟล์ข้อความเป็นตัวอย่างของไฟล์รูปแบบสตรีมที่ใช้การขึ้นบรรทัดใหม่หรือการขึ้นบรรทัดเพื่อคั่นระเบียน
มีวิธีการเข้าถึงข้อมูลหรือวิธีการดึงข้อมูลที่มีอยู่จากไฟล์อยู่สี่วิธี ได้แก่:
- การเข้าถึงแบบเรียงลำดับ - เริ่มจากระเบียนใดระเบียนหนึ่ง แล้วจึงดึงระเบียนถัดไปตามลำดับจนถึงท้ายไฟล์
- การเข้าถึงโดยใช้หมายเลขระเบียนแบบสัมพัทธ์ - ระเบียนจะถูกเรียกดูโดยใช้หมายเลข ระเบียน ที่สัมพันธ์กับจุดเริ่มต้นของไฟล์
- การเข้าถึงที่อยู่ไฟล์บันทึก - สามารถเรียกดูบันทึกได้โดยตรงจากตำแหน่งที่ตั้งในไฟล์ (RFA หรือ Record File Address)
- การเข้าถึงโดยใช้ดัชนี - ข้อมูลจะถูกดึงมาโดย ใช้คีย์ ในรูปแบบของการจับคู่คีย์-ค่า
โครงสร้างทางกายภาพ: โครงสร้างบนดิสก์
ในระดับดิสก์ ODS แสดงระบบไฟล์เป็นอาร์เรย์ของบล็อกโดยแต่ละบล็อกมีขนาด 512 ไบต์ต่อเนื่องกันบนดิสก์ทางกายภาพหนึ่งแผ่น ( วอลุ่ม ) บล็อกของดิสก์จะถูกจัดสรรเป็นกลุ่ม (เดิมทีมี 3 บล็อกต่อเนื่องกัน แต่ต่อมาได้เพิ่มจำนวนกลุ่มบล็อกเมื่อขนาดดิสก์ใหญ่ขึ้น) โดยหลักการแล้ว ไฟล์บนดิสก์ควรจะต่อเนื่องกันทั้งหมด กล่าวคือ บล็อกที่บรรจุไฟล์จะเรียงลำดับกัน แต่บางครั้งการแตกกระจายของดิสก์อาจทำให้ไฟล์ต้องอยู่ในกลุ่มที่ไม่ต่อเนื่องกัน ซึ่งในกรณีนี้ส่วนที่แตกกระจายจะเรียกว่าเอ็กซ์ เทนต์ ดิสก์อาจถูกรวมเข้ากับดิสก์อื่นเพื่อสร้างชุดวอลุ่มและไฟล์สามารถจัดเก็บได้ทุกที่ในชุดดิสก์นั้น แต่ขนาดดิสก์ที่ใหญ่ขึ้นได้ลดการใช้ชุดวอลุ่มลง เนื่องจากการจัดการดิสก์ทางกายภาพเพียงแผ่นเดียวนั้นง่ายกว่า
ไฟล์ทุกไฟล์บนดิสก์ Files-11 (หรือชุดวอลุ่ม) มีรหัสประจำตัวไฟล์ (FID) ที่ไม่ซ้ำกัน ซึ่งประกอบด้วยตัวเลขสามตัว ได้แก่หมายเลขไฟล์ (NUM) หมายเลขลำดับไฟล์ (SEQ) และหมายเลขวอลุ่มสัมพัทธ์ (RVN) NUM ระบุตำแหน่งในINDEXF.SYSไฟล์ (ดูด้านล่าง) ที่เก็บข้อมูลเมตาของไฟล์นั้น SEQ คือหมายเลขรุ่นซึ่งจะเพิ่มขึ้นเมื่อไฟล์ถูกลบและสร้างไฟล์ใหม่โดยใช้รายการ INDEXF.SYS เดียวกัน (เพื่อป้องกันไม่ให้การอ้างอิงที่ค้างอยู่ไปยังไฟล์เก่าชี้ไปยังไฟล์ใหม่โดยไม่ได้ตั้งใจ) และ RVN ระบุหมายเลขวอลุ่มที่จัดเก็บไฟล์นั้นเมื่อใช้ชุดวอลุ่ม
รายชื่อ
โครงสร้างหลักของวอลุ่ม ODS นั้นได้รับการสนับสนุนโดยไฟล์ไดเร็กทอรีซึ่งเป็นไฟล์พิเศษที่ประกอบด้วยรายการชื่อไฟล์ หมายเลขเวอร์ชันไฟล์ และ FID ที่เกี่ยวข้อง คล้ายกับแคตตาล็อก VSAM บนMVSและไดเร็กทอรีบนระบบไฟล์Unix และ NTFSที่รากของโครงสร้างไดเร็กทอรีคือไดเร็กทอรีไฟล์หลัก (MFD) ซึ่งเป็นไดเร็กทอรีรากที่บรรจุไฟล์ทุกไฟล์ในวอลุ่ม (ไม่ว่าโดยตรงหรือโดยอ้อม)
ไดเร็กทอรีไฟล์หลัก
ในระบบไฟล์ ODS ระดับบนสุดคือไดเร็กทอรีไฟล์หลัก (MFD) ซึ่งประกอบด้วยไฟล์ไดเร็กทอรีระดับบนสุดทั้งหมด (รวมถึงตัวมันเอง) และไฟล์ระบบหลายไฟล์ที่ใช้สำหรับจัดเก็บข้อมูลระบบไฟล์ บนวอลุ่ม ODS-1 จะใช้โครงสร้างไดเร็กทอรีสองระดับ: รหัสประจำตัวผู้ใช้ (UIC) แต่ละรหัสจะมีไดเร็กทอรีไฟล์ผู้ใช้ (UFD) ที่เกี่ยวข้องในรูปแบบ[GROUP.USER]<user_file_directory_name>/< ...
ไฟล์ระบบต่อไปนี้มีอยู่ใน ODS MFD:
INDEXF.SYS;1—ไฟล์ดัชนีBITMAP.SYS;1—ไฟล์บิตแมปสำหรับจัดเก็บBADBLK.SYS;1—ไฟล์บล็อกเสีย000000.DIR;1—ไฟล์ไดเร็กทอรี MFD เองCORIMG.SYS;1—ไฟล์ภาพหลักVOLSET.SYS;1—ไฟล์รายการชุดเสียง (เฉพาะ ODS-2/5)CONTIN.SYS;1—ไฟล์ต่อ (สำหรับ ODS-2/5 เท่านั้น)BACKUP.SYS;1—สำรองไฟล์บันทึก (เฉพาะ ODS-2/5)BADLOG.SYS;1—บล็อกเสียที่รอการแก้ไข (เฉพาะ ODS-2/5)SECURITY.SYS;1—โปรไฟล์ความปลอดภัยของไดรฟ์ (เฉพาะ ODS-2/5)QUOTA.SYS;1—ไฟล์โควต้า (เป็นตัวเลือกเสริม และมีให้ใช้งานเฉพาะใน ODS-2/5 เท่านั้น)GPT.SYS;1—ตารางพาร์ติชั่น GUID (GPT) (โครงสร้างการบูต EFI ของ OpenVMS I64 ซึ่งเป็นตัวเลือกเสริมใน OpenVMS Alpha)
โปรดทราบว่าการใช้งานระบบไฟล์นั้นไม่ได้อ้างอิงถึงไฟล์เหล่านี้ด้วยชื่อ แต่ใช้รหัสไฟล์ซึ่งมีค่าเดียวกันเสมอ ดังนั้น INDEXF.SYS จึงเป็นไฟล์ที่มีNUM = 1และSEQ = 1เสมอ
ไฟล์ดัชนี: INDEXF.SYS
ไฟล์ดัชนีประกอบด้วยข้อมูลพื้นฐานที่สุดเกี่ยวกับชุดวอลุ่ม Files-11
ไฟล์ INDEXF.SYS มีโครงสร้างอยู่สองแบบ คือ โครงสร้างแบบดั้งเดิม และโครงสร้างที่ใช้กับดิสก์ที่มีไฟล์ GPT.SYS ซึ่งใช้โครงสร้าง GUID Partition Table (GPT)
ในการจัดระเบียบแบบดั้งเดิม บล็อกที่ 1 คือบล็อกบูตซึ่งประกอบด้วยตำแหน่งของอิมเมจบูตสแตรปหลักที่ใช้ในการโหลดระบบปฏิบัติการ VMS โดยจะอยู่ที่บล็อกตรรกะที่ 0 บนดิสก์เสมอ เพื่อให้เฟิร์มแวร์ฮาร์ดแวร์สามารถอ่านได้ บล็อกนี้จะมีอยู่เสมอ แม้แต่ในไดรฟ์ที่ไม่ใช่ระบบ (ไม่สามารถบูตได้)
ถัดจากบล็อกบูตคือบล็อกโฮมหลักบล็อกนี้ประกอบด้วยชื่อวอลุ่มตำแหน่งของส่วนขยายที่ประกอบเป็นส่วนที่เหลือของไฟล์ดัชนี รหัสผู้ใช้ (UIC) ของเจ้าของวอลุ่ม และ ข้อมูล การป้องกันวอลุ่มโดยปกติจะมีสำเนาเพิ่มเติมของบล็อกโฮมหลักหลายชุด ซึ่งเรียกว่าบล็อกโฮมรองเพื่อให้สามารถกู้คืนวอลุ่มได้หากสูญหายหรือเสียหาย
ในดิสก์ที่มีไฟล์ GPT.SYS ไฟล์ GPT.SYS จะมีส่วนที่เทียบเท่ากับบล็อกบูต (หรือที่เรียกว่า Master Boot Record (MBR)) และไม่มีบล็อกโฮมหลัก บล็อกโฮมทั้งหมดที่มีอยู่บนดิสก์แบบ GPT เป็นบล็อกโฮมสำรอง โครงสร้างเหล่านี้ไม่ได้รวมอยู่ในไฟล์ INDEXF.SYS และบล็อกในไฟล์ INDEXF.SYS นั้นไม่ได้ถูกใช้งาน
ส่วนที่เหลือของไฟล์ดัชนีประกอบด้วยส่วนหัวของไฟล์ซึ่งอธิบายขอบเขตที่จัดสรรให้กับไฟล์ที่อยู่บนไดรฟ์ และข้อมูลเมตาของไฟล์ เช่น UIC ของเจ้าของ, ACL และข้อมูลการป้องกัน แต่ละไฟล์จะถูกอธิบายด้วยส่วนหัวของไฟล์อย่างน้อยหนึ่งส่วน—อาจต้องใช้มากกว่าหนึ่งส่วนเมื่อไฟล์มีขอบเขตจำนวนมาก ส่วนหัวของไฟล์เป็นบล็อกที่มีความยาวคงที่ แต่ประกอบด้วยส่วนที่มีความยาวคงที่และส่วน ที่มีความยาว แปรผัน :
- ส่วนหัวของไฟล์ประกอบด้วยหมายเลขและลำดับที่ ข้อมูลการป้องกัน (ความปลอดภัย) และตำแหน่งของส่วนหัวไฟล์ส่วนที่เหลือ
- ส่วนidentประกอบด้วยข้อมูลเมตาทางการบัญชี ได้แก่ ชื่อไฟล์ เวลาสร้างและแก้ไข และเวลาของการสำรองข้อมูลครั้งล่าสุด
- แผนผังนี้อธิบายว่าบล็อกทางกายภาพของดิสก์ (ส่วนขยาย) ใดบ้างที่ตรงกับบล็อกเสมือนแต่ละบล็อกของไฟล์
- รายการควบคุมการเข้าถึง ( ACL) ประกอบด้วยข้อมูล ACL สำหรับไฟล์นั้น
- พื้นที่สงวนไว้คือพื้นที่ส่วนท้ายของส่วนหัวไฟล์ซึ่งระบบปฏิบัติการไม่ได้ใช้งาน พื้นที่นี้สามารถใช้สำหรับข้อมูลเฉพาะของลูกค้าหรือผู้ขายได้
- สองไบต์สุดท้ายของส่วนหัวคือค่าตรวจสอบความ ถูกต้อง ของคำ 255 คำก่อนหน้า เพื่อตรวจสอบความถูกต้องของส่วนหัว
ถ้าเป็นไปได้ ส่วนแผนที่และส่วนควบคุมการเข้าถึง (ACL) ของส่วนหัวจะถูกบรรจุไว้ในส่วนหัวหลัก ทั้งหมด อย่างไรก็ตาม หากส่วนควบคุมการเข้าถึง (ACL) ยาวเกินไป หรือไฟล์มีส่วนขยายมากเกินไป จะไม่มีพื้นที่เพียงพอในส่วนหัวหลักสำหรับจัดเก็บข้อมูลเหล่านั้น ในกรณีนี้ จะมีการจัดสรรส่วน หัวเพิ่มเติมเพื่อจัดเก็บข้อมูลส่วนเกิน
ส่วนหัวของไฟล์เริ่มต้นด้วยค่าออฟเซ็ต 4 ค่า ( IDOFFSET , MPOFFSET , ACOFFSETและROFFSET ) เนื่องจากขนาดของพื้นที่หลังจากส่วนหัวที่มีความยาวคงที่อาจแตกต่างกันไป (เช่น พื้นที่แผนที่และพื้นที่ ACL) จึงจำเป็นต้องใช้ค่าออฟเซ็ตเพื่อระบุตำแหน่งของพื้นที่เพิ่มเติมเหล่านี้ ค่าออฟเซ็ตแต่ละค่าคือจำนวนคำ 16 บิตจากจุดเริ่มต้นของส่วนหัวไฟล์ไปยังจุดเริ่มต้นของพื้นที่นั้น
หากไฟล์ต้องการส่วนหัวหลายส่วนหมายเลขส่วนขยาย ( SEGNUM ) จะมีหมายเลขลำดับของส่วนหัวนี้ โดยเริ่มต้นที่ 0 ในรายการแรกใน INDEXF.SYS
STRUCLEVประกอบด้วยระดับโครงสร้างปัจจุบัน (ในไบต์สูง) และเวอร์ชัน (ในไบต์ต่ำ) ของระบบไฟล์ โดย ODS-2 คือระดับโครงสร้างที่ 2 การเพิ่มขึ้นของหมายเลขเวอร์ชันบ่งชี้ถึงการเปลี่ยนแปลงที่เข้ากันได้กับเวอร์ชันก่อนหน้า ซึ่งซอฟต์แวร์รุ่นเก่าอาจไม่สนใจ การเปลี่ยนแปลงในระดับโครงสร้างเองนั้นไม่เข้ากัน
W_FID (ประกอบด้วยสามค่า ได้แก่FID_NUM , FID_SEQและFID_RVNซึ่งสอดคล้องกับไฟล์ ลำดับ และหมายเลขวอลุ่มสัมพัทธ์) เก็บ ID ของไฟล์นี้ ส่วนEXT_FID (ประกอบด้วยสามค่าเช่นกัน) เก็บตำแหน่งของส่วนหัวส่วนขยายถัดไป หากมี ในทั้งสองค่านี้ RVN ถูกกำหนดเป็น 0 เพื่อแสดงถึงวอลุ่ม "ปัจจุบัน" (โดยปกติ 0 ไม่ใช่ RVN ที่ถูกต้อง)
FILECHARมีแฟล็กหลายตัวที่ส่งผลต่อวิธีการจัดการหรือจัดระเบียบไฟล์:
- การตั้ง ค่า NOBACKUPจะทำให้ระบบละเว้นไฟล์นี้เมื่อทำการสำรองข้อมูล
- WRITEBACKช่วยให้สามารถเขียนข้อมูลลงไฟล์โดยใช้แคช (แบบหน่วงเวลา) ได้
- คำ สั่ง READCHECKจะทำการอ่านไฟล์ทั้งหมดสองครั้ง และเปรียบเทียบข้อมูลเพื่อให้แน่ใจว่าข้อมูลมีความถูกต้องสมบูรณ์
- ผลลัพธ์ของ WRITCHECKคือ การเขียนข้อมูลทั้งหมดจะได้รับการตรวจสอบโดยการอ่านและเปรียบเทียบในภายหลัง
- CONTIGBจะทำให้ระบบปฏิบัติการพยายามจัดสรรพื้นที่จัดเก็บข้อมูลสำหรับไฟล์ในลักษณะที่ต่อเนื่องกันมากที่สุดเท่าที่จะเป็นไปได้
- LOCKEDจะถูกตั้งค่าหากไฟล์ถูกล็อกการเข้าถึง หากตั้งค่าเป็น LOCKED แสดงว่าไฟล์ไม่ได้ถูกปิดอย่างถูกต้องหลังจากการใช้งานครั้งล่าสุด และเนื้อหาอาจไม่สอดคล้องกัน
- CONTIGบ่งชี้ว่าไฟล์ถูกจัดเก็บอย่างต่อเนื่องบนดิสก์ กล่าวคือ บล็อกเสมือนi แต่ละบล็อก จะถูกแมปไปยังบล็อกตรรกะ (ทางกายภาพ) i + kสำหรับค่าคงที่k บาง ค่า
- BADACLจะถูกตั้งค่าหากไฟล์มีรายการควบคุมการเข้าถึงที่ไม่ถูกต้อง
- ค่า SPOOLจะถูกตั้งค่าหากไฟล์นั้นเป็นไฟล์สปูล เช่น ไฟล์ชั่วคราวที่ใช้ระหว่างการพิมพ์
- DIRECTORYจะถูกกำหนดค่าหากไฟล์นั้นเป็นไดเร็กทอรี
- ค่า BADBLOCKจะถูกตั้งขึ้นหากไฟล์มีบล็อกเสีย
- ค่า MARKDELจะถูกตั้งขึ้นหากไฟล์ถูกทำเครื่องหมายว่าลบแล้ว แต่ยังคงถูกใช้งานอยู่ ไฟล์นั้นจะถูกลบเมื่อผู้ใช้คนสุดท้ายปิดไฟล์
- หากตั้งค่า NOCHARGEไว้ พื้นที่ที่ไฟล์ใช้จะไม่ถูกหักจากโควต้าพื้นที่เก็บข้อมูลของผู้เป็นเจ้าของ
- คำสั่ง ERASEจะเขียนทับเนื้อหาของไฟล์เมื่อถูกลบ
ACCMODEอธิบายระดับสิทธิ์ที่กระบวนการต้องมีเพื่อให้สามารถเข้าถึงไฟล์ได้ VMS กำหนดระดับสิทธิ์ไว้สี่ระดับ ได้แก่ ผู้ใช้ ผู้ดูแลระบบ ผู้บริหาร และเคอร์เนล การเข้าถึงแต่ละประเภท ได้แก่ อ่าน เขียน เรียกใช้ และลบ จะถูกเข้ารหัสเป็นจำนวนเต็ม 2 บิต
FILEPROTประกอบด้วย ข้อมูล การควบคุมการเข้าถึงตามดุลยพินิจสำหรับไฟล์ โดยแบ่งออกเป็น 4 กลุ่ม กลุ่มละ 4 บิต ได้แก่ ระบบ เจ้าของ กลุ่ม และทุกคน บิตที่ 0 สอดคล้องกับการเข้าถึงแบบอ่าน บิตที่ 1 สำหรับการเขียน บิตที่ 2 สำหรับการเรียกใช้งาน และบิตที่ 3 สำหรับการลบ การตั้งค่าบิตใดบิตหนึ่งจะปฏิเสธการเข้าถึงเฉพาะกลุ่มนั้น ๆ การล้างค่าบิตจะอนุญาตการเข้าถึงนั้น ๆ
หากส่วนหัวของไฟล์เป็นส่วนหัวส่วนขยายBACKLINKจะมีรหัสไฟล์ของส่วนหัวหลัก มิฉะนั้น จะมีรหัสไฟล์ของไฟล์ในไดเร็กทอรีที่มีรายการหลักสำหรับไฟล์นั้น
ไฟล์อื่นๆ
- ไฟล์ภาพบิตแมปสำหรับจัดเก็บ:
BITMAP.SYS
- ไฟล์บิตแมปมีหน้าที่จัดเก็บข้อมูลเกี่ยวกับพื้นที่ที่ใช้ไปและพื้นที่ว่างบนวอลุ่ม ไฟล์นี้ประกอบด้วยบล็อกควบคุมการจัดเก็บ (SCB) ซึ่งมีข้อมูลสรุปรายละเอียด ต่างๆ และบิตแมป ซึ่งเป็นอาร์เรย์ของบิตเพื่อระบุว่ากลุ่มบล็อกบนดิสก์ว่างหรือถูกจัดสรรแล้วหรือไม่ ในเวอร์ชันแรกๆ ของ VMS กลุ่มบล็อกประกอบด้วย 3 บล็อก แต่เมื่อขนาดของดิสก์เพิ่มขึ้น ขนาดของกลุ่มบล็อกก็เพิ่มขึ้นตามไปด้วย
- ไฟล์บล็อกเสีย:
BADBLK.SYS
- ไฟล์บล็อกเสียประกอบด้วยบล็อกเสียทั้งหมดที่ทราบในไดรฟ์ทางกายภาพ จุดประสงค์คือเพื่อป้องกันไม่ให้ระบบจัดสรรบล็อกเหล่านั้นให้กับไฟล์ต่างๆ ไฟล์นี้ถูกใช้มากในยุคแรกๆ ที่ดิสก์มักถูกผลิตโดยมีรอยเสียหายบนพื้นผิวมากกว่า
- ไฟล์รายการชุดเสียง:
VOLSET.SYS
- รายการลำดับเล่มจะอยู่ในเล่มที่ 1 ของชุดหนังสือ และประกอบด้วยรายชื่อป้ายกำกับของทุกเล่มในชุด รวมถึงชื่อของชุดหนังสือด้วย
- ไฟล์ต่อ:
CONTIN.SYS
- เมื่อไฟล์ในชุดเอกสารหลายเล่มข้ามขอบเขตของเอกสารสองเล่มที่ประกอบกัน ไฟล์ส่วนต่อขยายจะถูกใช้เป็นส่วนหัวของไฟล์และอธิบายถึงเล่มที่สามารถพบส่วนที่เหลือของไฟล์ได้
- ไฟล์โควต้า:
QUOTA.SYS
- ไฟล์โควต้าประกอบด้วยข้อมูลเกี่ยวกับการใช้งานพื้นที่ดิสก์ของแต่ละ UIC บนวอลุ่ม โดยมีบันทึกสำหรับแต่ละ UIC พร้อมพื้นที่ที่จัดสรรให้บนวอลุ่ม รวมถึงข้อมูลเกี่ยวกับปริมาณพื้นที่ที่ UIC นั้นใช้งานอยู่หมายเหตุ: คุณสมบัติ DISK QUOTA เป็นตัวเลือกเสริม และไฟล์นี้จะมีอยู่ก็ต่อเมื่อเคยเปิดใช้งานคุณสมบัตินี้เท่านั้น
- โปรไฟล์ความปลอดภัยของวอลุ่ม:
SECURITY.SYS
- โปรไฟล์ความปลอดภัยของวอลุ่มประกอบด้วย UIC ของเจ้าของวอลุ่ม หน้ากากป้องกันวอลุ่ม และรายการควบคุมการเข้าถึงของวอลุ่ม
- ตารางพาร์ติชัน GUID:
GPT.SYS
- ไฟล์นี้จะซ้อนทับและปกป้องโครงสร้างดิสก์ MBR (Master Boot Record) และ GPT (GUID Partitioning Table) ที่ใช้สำหรับเฟิร์มแวร์ที่สอดคล้องกับExtensible Firmware Interface (EPI) ไฟล์นี้จะถูกสร้างขึ้นโดยค่าเริ่มต้นระหว่างการเริ่มต้นดิสก์ OpenVMS I64 และ x86-64 และอาจถูกสร้างขึ้น (ด้วยคำสั่ง INITIALIZE/GPT) ใน OpenVMS Alpha
ดูเพิ่มเติม
อ่านเพิ่มเติม
- Andrew C. Goldstein (19 มิถุนายน 1975). "ข้อกำหนดโครงสร้างบนดิสก์ของ Files-11" (PDF )
- Andrew C. Goldstein (11 มกราคม 1985). "ข้อกำหนดโครงสร้างบนดิสก์ของ Files-11" .
- VMS Software, Inc. (สิงหาคม 2019). "ภาคผนวก A: โครงสร้างดิสก์ไฟล์-11". คู่มือผู้จัดการระบบ VSI OpenVMS เล่ม 2: การปรับแต่ง การตรวจสอบ และระบบที่ซับซ้อน (PDF )
- Kirby McCoy (1990). ระบบไฟล์ VMS ภายใน . เบดฟอร์ด, แมสซาชูเซตส์: Digital Press. ISBN 1-55558-056-4.
ลิงก์ภายนอก
- คู่มือการใช้งานแอปพลิเคชันไฟล์ OpenVMS
- VMS2Linux

