IMS DB - หน้ากาก PCB

PCB ย่อมาจาก Program Communication Block PCB Mask เป็นพารามิเตอร์ที่สองที่ใช้ในการเรียก DL / I มีการประกาศในส่วนการเชื่อมโยง ด้านล่างนี้เป็นไวยากรณ์ของ PCB Mask -

01 PCB-NAME.
   05 DBD-NAME         PIC X(8).
   05 SEG-LEVEL        PIC XX.
   05 STATUS-CODE      PIC XX.
   05 PROC-OPTIONS     PIC X(4).
   05 RESERVED-DLI     PIC S9(5).
   05 SEG-NAME         PIC X(8).
   05 LENGTH-FB-KEY    PIC S9(5).
   05 NUMB-SENS-SEGS   PIC S9(5).
   05 KEY-FB-AREA      PIC X(n).

ประเด็นสำคัญที่ควรทราบมีดังนี้ -

  • สำหรับแต่ละฐานข้อมูล DL / I จะรักษาพื้นที่จัดเก็บข้อมูลที่เรียกว่าบล็อกการสื่อสารของโปรแกรม จัดเก็บข้อมูลเกี่ยวกับฐานข้อมูลที่เข้าถึงภายในโปรแกรมแอปพลิเคชัน

  • คำสั่ง ENTRY สร้างการเชื่อมต่อระหว่างมาสก์ PCB ในส่วนการเชื่อมโยงและ PCB ภายใน PSB ของโปรแกรม มาสก์ PCB ที่ใช้ในการเรียก DL / I จะบอกว่าจะใช้ฐานข้อมูลใดในการดำเนินการ

  • คุณสามารถสมมติว่าสิ่งนี้คล้ายกับการระบุชื่อไฟล์ในคำสั่ง COBOL READ หรือชื่อเร็กคอร์ดในคำสั่งการเขียนภาษาโคบอล ไม่จำเป็นต้องมีคำสั่ง SELECT, ASSIGN, OPEN หรือ CLOSE

  • หลังจากเรียก DL / I แต่ละครั้ง DL / I จะเก็บรหัสสถานะไว้ใน PCB และโปรแกรมสามารถใช้รหัสนั้นเพื่อตรวจสอบว่าการโทรสำเร็จหรือล้มเหลว

ชื่อ PCB

สิ่งที่ควรทราบ -

  • PCB Name คือชื่อของพื้นที่ซึ่งหมายถึงโครงสร้างทั้งหมดของฟิลด์ PCB

  • ชื่อ PCB ใช้ในคำสั่งโปรแกรม

  • ชื่อ PCB ไม่ใช่ฟิลด์ใน PCB

ชื่อ DBD

สิ่งที่ควรทราบ -

  • ชื่อ DBD มีข้อมูลอักขระ มีความยาวแปดไบต์

  • ฟิลด์แรกใน PCB คือชื่อของฐานข้อมูลที่กำลังประมวลผลและระบุชื่อ DBD จากไลบรารีของคำอธิบายฐานข้อมูลที่เชื่อมโยงกับฐานข้อมูลเฉพาะ

ระดับกลุ่ม

สิ่งที่ควรทราบ -

  • ระดับเซ็กเมนต์เรียกว่า Segment Hierarchy Level Indicator มีข้อมูลอักขระและมีความยาวสองไบต์

  • ฟิลด์ระดับเซ็กเมนต์จะเก็บระดับของเซ็กเมนต์ที่ประมวลผล เมื่อเรียกกลุ่มสำเร็จหมายเลขระดับของกลุ่มที่ดึงข้อมูลจะถูกเก็บไว้ที่นี่

  • ฟิลด์ระดับเซ็กเมนต์ไม่เคยมีค่ามากกว่า 15 เนื่องจากเป็นจำนวนระดับสูงสุดที่อนุญาตในฐานข้อมูล DL / I

รหัสสถานะ

สิ่งที่ควรทราบ -

  • ฟิลด์รหัสสถานะมีข้อมูลอักขระสองไบต์

  • รหัสสถานะมีรหัสสถานะ DL / I

  • ช่องว่างจะถูกย้ายไปยังฟิลด์รหัสสถานะเมื่อ DL / I ดำเนินการประมวลผลการโทรสำเร็จ

  • ค่าที่ไม่ใช่ช่องว่างบ่งชี้ว่าการโทรไม่สำเร็จ

  • รหัสสถานะ GB ระบุจุดสิ้นสุดของไฟล์และรหัสสถานะ GE ระบุว่าไม่พบเซ็กเมนต์ที่ร้องขอ

ตัวเลือก Proc

สิ่งที่ควรทราบ -

  • ตัวเลือก Proc เรียกว่าตัวเลือกการประมวลผลซึ่งประกอบด้วยฟิลด์ข้อมูลสี่อักขระ

  • ฟิลด์ตัวเลือกการประมวลผลระบุประเภทของการประมวลผลที่โปรแกรมได้รับอนุญาตให้ทำบนฐานข้อมูล

DL / I ที่สงวนไว้

สิ่งที่ควรทราบ -

  • DL / I ที่สงวนไว้เรียกว่าพื้นที่สงวนของ IMS มันเก็บข้อมูลไบนารีสี่ไบต์

  • IMS ใช้พื้นที่นี้สำหรับการเชื่อมโยงภายในที่เกี่ยวข้องกับโปรแกรมแอปพลิเคชัน

ชื่อกลุ่ม

สิ่งที่ควรทราบ -

  • ชื่อ SEG เรียกว่าพื้นที่ตอบรับชื่อเซ็กเมนต์ ประกอบด้วยข้อมูลอักขระ 8 ไบต์

  • ชื่อของเซ็กเมนต์จะถูกเก็บไว้ในฟิลด์นี้หลังจากเรียกแต่ละ DL / I

ความยาวคีย์ FB

สิ่งที่ควรทราบ -

  • ความยาวคีย์ FB เรียกว่าความยาวของพื้นที่ป้อนกลับหลัก มันเก็บข้อมูลไบนารีสี่ไบต์

  • ฟิลด์นี้ใช้เพื่อรายงานความยาวของคีย์ที่เรียงต่อกันของกลุ่มระดับต่ำสุดที่ประมวลผลระหว่างการโทรครั้งก่อน

  • ใช้กับพื้นที่แสดงความคิดเห็นที่สำคัญ

จำนวนกลุ่มความไว

สิ่งที่ควรทราบ -

  • จำนวนเซ็กเมนต์ความไวเก็บข้อมูลไบนารีสี่ไบต์

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

พื้นที่ข้อเสนอแนะที่สำคัญ

สิ่งที่ควรทราบ -

  • พื้นที่ป้อนกลับที่สำคัญมีความยาวแตกต่างกันไปในแต่ละ PCB

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

  • หลังจากการดำเนินการฐานข้อมูล DL / I จะส่งคืนคีย์ที่ต่อกันของเซ็กเมนต์ระดับต่ำสุดที่ประมวลผลในฟิลด์นี้และส่งกลับความยาวของคีย์ในพื้นที่ป้อนกลับความยาวของคีย์