สำหรับผู้ใช้ระบบปฏิบัติการวินโดวส์ ไปที่เมนูบาร์ใน Vista Session A แล้วเลือก
File -> Reconnect Ask. (สำหรับระบบปฏิบัติการอื่น: ตั้งค่าโปรแกรมจำลองการทำงานของคุณตามค่าที่แสดงอยู่นี้)
สำหรับ Host IP Name บนระบบ z/OS ที่คุณจะใช้เชื่อมต่อในการแข่งขันค รั้งนี้คือ
129.35.161.131 และ IP Port คือ
23 ให้กรอกตัวเลขสองค่านี้ลงไป แล้วจึงคลิก Connect:
ซึ่งคุณจะได้เห็นหน้าจอต้อนรับของ z/OS:
นั่นแสดงว่าคุณสามารถเชื่อมต่อกับเมนเฟรมได้แล้ว ยินดีด้วย
ข้อมูลสั้นๆ เกี่ยวกับ z/OS: z/OS เป็นระบบปฏิบัติการที่พัฒนามาจากระบบปฏิบัติการ OS/390 ซึ่งทั้งสองระบบปฏิบัติการเป็นวิวัฒนการของ MVS หรือ Multiple Virtual Storage ซึ่งทั้ง MVS และ OS/390 ยังคงมีการพูดถึงอยู่เสมอในงานเขียนที่เกี่ยวข้องกับเมนเฟรม ในการเข้าสู่ระบบเมนเฟรมได้คุณต้องใช้ยูสเซอร์เนมของคุณ ล็อกอินเข้าสู่ TSO (หรือ Time Sharing Option ซึ่งคุณไม่จำเป็นต้องใส่ใจกับมันก็ได้) และต่อไปนี้คือขั้นตอนการล็อกอิน ซึ่งอาจต่างกันเล็กน้อยขึ้นอยู่กับคุณใช้โปรแกรมจำลองการทำงานบนระบบปฏิบัติการณ์อะไร โดยที่หน้าจอล็อกอินของ TSO ให้พิมพ์ LOGON SMC##### ( ตัวอักษร SMC##### หมายถึงยูสเซอร์เนมของคุณที่ได้จากไอบีเอ็ม โดยในรหัสนั้นตัวอักษร “0” หมายถึงเลขศูนย์ ไม่ใช่ตัวโอ) โดยหลังจากนี้หากคุณพบ SMC##### ให้คุณแทนที่ด้วยยูสเซอร์เนมของคุณเอง
โดยในระบบเมนเฟรมปุ่มคำสั่ง Ctrl ด้านขวานั้นหมายถึง การป้อนคำสั่ง ส่วนปุ่ม Enter ปุ่ม Tab และปุ่มลูกศร จะใช้สำหรับควบคุมตำแหน่งทิศทางของเคอเซอร์ และถ้าคุณลองใช้เป็นแล้ว เท่ากับคุณใช้ระบบเมนเฟรมเป็น กลายเป็นพ่อมดเมนเฟรมได้ครึ่งทางแล้ว ดังนั้นอย่าพึ่งเลิกกลางคันเสียก่อนล่ะ
ที่หน้าจอปรากฎ Enter USERID ให้คุณพิมพ์ยูสเซอร์เนมที่ได้จากไอบีเอ็มแล้วกดปุ่ม Ctrl (จากนี้ไป หากในขั้นตอนของกิจกรรมการแข่งขันนี้เอ่ยถึงปุ่ม Ctrl ให้คุณเข้าใจว่าเป็นปุ่ม Ctrl ด้านขวา)
บันทึก: ตัวอักษร “0” ใน SMC##### หมายถึงเลขศูนย์ ไม่ใช่ตัวอักษรโอ
ถึงตอนนี้คุณควรได้เห็นหน้าจอเป็นลักษณะนี้:
ยูสเซอร์เนมที่คุณได้ จะมีพาสส์เวิร์ดสำหรับการล็อกอินครั้งแรกมาด้วย ให้คุณใส่ข้อมูลยูสเซอร์เนมและพาสส์เวิร์ดลงไปตามฟิลด์ที่กำหนด แล้วกดปุ่ม Ctrl ถึงตรงนี้คุณจะเห็นเครื่องหมายรอให้คุณป้อนพาสส์เวิร์ดใหม่:

ให้คุณกำหนดพาสส์เวิร์ดใหม่ และพิมพ์ลงไปสองครั้งเพื่อยืนยันความถูกต้อง บันทึก: พาสส์เวิร์ดตั้งได้สูงสุด 8 ตัวอักษร และต้องเป็นตัวอักษรเท่านั้น เสร็จแล้วคุณจะเห็นหน้าจอต้อนรับหน้าใหม่ของ z/OS:
โดยข้อความด้านล่างหน้าจอ คุณจะเห็น *** ดอกจันทร์สามจุดที่มีความหมายว่าระบบพร้อมรอให้คุณป้อนคำสั่งต่อไป กดปุ่ม Ctrl เพื่อทำงานต่อ (คุณมาถูกทางแล้วละ)
โดยหน้าจอต่อไปที่แสดงอยู่ข้างหน้าคุณจะมีคำสั่งที่ใช้งานได้บนเมนเฟรมให้คุณเลือ กค่อนข้างมาก โดยทั้งหมดนี้เรียกว่า ISPF Primary Option Menu (ISPF หมายถึง Interactive System Productivity Facility แต่คุณไม่จำเป็นต้องใส่ใจก็ได้) ให้คุณกดปุ่ม Ctrl เพื่อเคลียร์หน้าจอแสดงลิขสิทธิ์ให้หายไป
เมื่อหน้าจอ ISPF ปรากฎขึ้น เท่ากับว่าคุณสามารถล็อกเข้าสู่ระบบ z/OS ของเมนเฟรมได้ และคุณยังทำขั้นตอนในโจทย์ที่หนึ่งเสร็จแล้วถึง 3 ขั้นตอนด้วยกัน ขอแสดงความยินดีและต้อนรับเข้าสู่โลกแห่งเมนเฟรม
ค่ามาตรฐานของ ISPF สำหรับบรรทัดคำสั่งจะแสดงอยู่ที่ด้านล่างของหน้าจอ แต่โปรแกรมเมอร์ส่วนใหญ่เคยชินกับการสั่งพิมพ์คำสั่งที่ด้านบนหน้าจอ ดังนั้นเรามาลองเปลี่ยนสภาพแวดล้อมให้เหมือนที่ๆ คุณเคยใช้งาน
โดยไปที่บรรทัดคำสั่ง แล้วพิมพ์ 0 (กดปุ่ม Ctrl ไม่ใช่ปุ่ม Enter นะ อย่าลืม) เพื่อเข้าสู่เมนูการตั้งค่าของ ISPF
บนหน้าจอนี้ คุณสามารถเลื่อนไปยังเมนูต่างๆ ได้ด้วยการกดปุ่ม Tab ไปเรื่อยๆ เพื่อเปลี่ยนตำแหน่งเคอเซอร์ไปยังจุดต่างๆ ทุกจุดบนหน้าจอที่สั่งงานได้ ที่นี่ลองกดปุ่ม Enter ซ้ำๆ เคอเซอร์จะหยุดเฉพาะฟิลด์แรกของทุกๆ กลุ่มเมนูแทน
เมื่อเลือกฟิลด์ที่เขียนว่า Command line at bottom แล้ว ให้ลบ “/” ออกด้วยปุ่ม Del (ส่วนปุ่ม backspace จะแค่เลื่อนตำแหน่งคุณออกไป แต่ไม่ได้ลบตัวอักษร) กดปุ่ม Ctrl แล้วบรรทัดคำสั่งจะถูกย้ายไปแสดงผลที่ด้านบนของหน้าจอ:
แล้วตอนนี้หน้าของของคุณก็ได้รับการตั้งค่าให้มีความรู้สึกเดียวกับความเคยชินของโปรแก รมเมอร์แล้วใช่ไหม เจ๋งไหมล่ะ ย้อนกลับไปที่เมนูเริ่มต้น ISPF Primary Option Menu ด้วยการกดปุ่ม F3 โดยปุ่ม F3 นี้จะถูกใช้สำหรับการย้อนกลับมายังหน้าจอเริ่มต้นของคุณ และแน่นอนว่าเหมือนกับทุกสิ่งใน z/OS ปุ่มฟังก์ชันทั้งหลาย ก็สามารถตั้งให้ทำงานต่างๆ ได้ตามผู้ใช้หรือตามแอพพลิเคชันต้องการ แต่ปุ่ม F3 เป็นปุ่มที่คุณควรจดจำไว้ให้ดีที่สุด (หากเผลอกดปุ่ม F3 สองครั้ง คุณจะย้อนกลับไปยังหน้าจอเริ่มต้น TSO โดยจะย้อนกลับมายังหน้าจอ ISPF Primary Option Menu ได้ก็ให้พิมพ์ ISPF และกดปุ่ม Ctrl)
หมายเหตุสำคัญในการล็อกออฟ (และล็อกอินกลับเข้ามาใหม่) (ถ้าคุณไม่คิดจะล็อกออฟก่อนเสร็จทุกขั้นตอนในโจทย์ส่วนที่หนึ่ง “ทำความรู้จักกับเมนเฟรม: โจทย์ที่ 1” แล้ว คุณสามารถข้ามขั้นตอนต่อไปนี้ ไปยังขั้นตอนข้อที่
5 ได้เลย แต่เพื่อให้แน่ใจว่าคุณสามารถกลับเข้ามาในระบบได้ใหม่ ควรอ่านขั้นตอนเหล่านี้ก่อนที่จะคุณยกเลิกการทำงานของคุณ เพื่อป้องกันปัญหายูสเซอร์เนมของคุณถูกล็อกไม่ให้ใช้งาน) โดยเมื่อคุณต้องการล็อกออฟออกจากระบบ z/OS ให้กดปุ่ม F3 จนกว่าย้อนมาถึงหน้าจอต้อนรับของ TSO แล้วให้พิมพ์ LOGOFF และกดปุ่ม Ctrl :
เพียงแค่นี้ก็ก็สามารถล็อกออฟได้อย่างปลอดภัยและปิดโปรแกรมจำลองการทำงานได้ อย่างไรก็ดี ถ้าหากคุณยังมีงานคั่งค้างอยู่และยังจัดการไม่เสร็จ เมื่อคุณกดปุ่ม F3 เพื่อย้อนไปยังหน้าจอเริ่มต้นนั้น เมื่อถึงหน้า ISPF Primary Option Menu คุณจะพบกับหน้าจอลักษณะนี้:
โดยถ้าคุณพบกับหน้าจอนี้ (ซึ่งคุณจะได้พบหลังจากเสร็จขั้นตอนสุดท้าย) ให้เลือก 2 “Delete data set with out printing” แล้วกดปุ่ม Ctrl คุณก็จะกลับมาสู่หน้าจอต้อนรับ TSO ซึ่งเป็นหน้าจอที่พร้อมให้คุณพิมพ์คำสั่ง
LOGOFF เพื่อจบการทำงานของคุณ:
โดยถ้าคุณเจอหน้าจอลักษณะนี้ ให้คุณพิมพ์ LOGON แล้วใส่ยูสเซอร์เนม โดยในหน้าจอถัดไปให้ใส่พาสส์เวิร์ด (แต่ไม่ต้องกดปุ่ม Ctrl)
แล้วกดปุ่ม Tab เพื่อเลื่อนเคอเซอร์ลงมายังคำว่า Reconnect แล้วให้พิมพ์ S ลงไป จากนั้นจึงกดปุ่ม Ctrl ถึงตรงนี้คุณจะเห็นหน้าจอพร้อมรับคำสั่งของ TSO ให้คุณพิมพ์ ISPF แล้วกดปุ่ม Ctrl:
เพียงเท่านี้คุณก็สามารถกลับมาทำงานได้ตามปกติที่มีเมนูของ ISPF แล้ว และจำให้มั่นว่า คำสั่ง *** คือ
เครื่องหมายที่บอกว่าระบบกำลังรอให้คุณป้อนคำสั่งแล้วกด Ctrl
ถ้าคุณไม่สามารถล็อกอินได้ให้รอ 5 นาที เพื่อรอให้เซสชันการทำงานของคุณหมดเวลา แล้วจึงค่อยล็อกอินใหม่ได้
จากหน้าเมนูหลักของ ISPF:
ปรากฎบรรทัดคำสั่ง Option ให้เลือก 3 หรือ Utilities แล้วกดปุ่ม Ctrl
บนหน้าจอถัดไป:
ให้เลือก 4 หรือ Dslist ซึ่งเป็นคำย่อของ Data Set List แล้วกดปุ่ม Ctrl
ที่นี้เรามาดูรายการของชุดดาต้า (Data Set) ทั้งหมดที่ระบบสร้างให้คุณกัน:
โดยไปที่บรรทัด Dsname Level แล้วพิมพ์ยูสเซอร์เนมของคุณ (SMC#### หมายถึงให้แทนที่ #### ด้วยตัวเลขสี่ตัวสุดท้ายในยูสเซอร์เนมของคุณ) แล้วตามด้วยปุ่ม Ctrl คุณจะได้เห็นรายการของดาต้าเซ็ตทั้งหมดที่ระบบสร้างคุณให้คุณ:
Partitioned Data Set หรือ PDF ในระบบเมนเฟรมเปรียบเทียบได้กับโฟลเดอร์หรือไดเรกทอรีบนคอมพิวเตอร์ทั่วไป ส่วนคำว่า members นั้นหมายถึงไฟล์
เรามาลองดูเมมเบอร์ ที่อยู่ในชุดดาต้า (data set) ที่ชื่อ SMC#####.PDS.CNTL ด้วยการกด Tab เพื่อเลื่อนเคอเซอร์ลงมาจนถึงด้านหน้าของชุดดาต้า แล้วพิมพ์ B (หมายถึง Browse หรือเปิดดู) แล้วกดปุ่ม Ctrl:
คุณจะได้เห็นรายชื่อเมมเบอร์:
ซึ่งเมมเบอร์ทั้งหมดว่างไม่มีข้อมูลอยู่ ยกเว้น JOBSTMT ที่มีคำสั่งเล็กๆ ของ JCL (Job Control Language) ซึ่งเราจะดูในภายหลัง
ถึงตอนนี้คุณสามารถดูข้อมูลเมมเบอร์ต่างๆ ได้แล้วด้วยคำสั่ง b โดยพิมพ์บนฟิลด์หน้าข้อมูลนั้นๆ ซึ่งคุณจะลองดูกับเมมเบอร์สักไฟล์ก็ได้ (ถ้าคุณต้องการแก้ไขเมมเบอร์ ให้พิมพ์ e แต่ตอนนี้คุณยังไม่จำเป็นต้องทำเช่นนั้น) แม้คำสั่งทั้งหมดนี้จะดูไม่มากมายอะไร แต่สิ่งที่คุณทำมาทั้งหมดนี้ช่วยให้คุณได้เรียนรู้วิธีการค้นหา เปิดดูดาต้าเซ็ตและเมมเบอร์แล้ว ทีนี้เราจะมาลองสร้างอะไรสักอย่างขึ้นมาสักอัน
พื้นฐานการเพื่อการเรียนรู้: เรื่องคร่าวๆ สำหรับระบบไฟล์ในเมนเฟรม
จากทั้งหมดนี้คุณจะเห็นว่าการสร้างไฟล์ใดๆ สักไฟล์หนึ่งบนเมนเฟรมนั้นยุ่งยากกว่าบนพีซีมาก ซึ่งไม่ใช่เพราะเป็นเทคโนโลยีเก่า แต่มีเหตุผลดีๆ ที่ต้องแตกต่าง บนคอมพิวเตอร์พีซีหรือบนแมค ไม่ว่าจะใช้ระบบปฏิบัติการใด (วินโดวส์ ลินุกซ์ หรือแมคโอเอส) ต่างก็ใช้วิธีการจัดเก็บไฟล์ข้อมูลเป็นบิตๆ แต่สำหรับระบบปฏิบัติการหลัก z/OS ที่เราใช้งานนี้จะใช้วิธีจัดเก็บไฟล์ข้อมูลเชิงระเบียนหรือ Record-oriented File System โดยสิ่งที่แตกต่างกันคือ ระบบจัดเก็บไฟล์เป็นบิตนั้นแต่ละไฟล์ข้อมูลต่างๆ ถูกจัดเก็บตามลำดับข้อมูลบิต และมีข้อมูลพิเศษที่บอกว่าข้อมูลเริ่มต้นและจบที่ใด แต่ในระบบจัดเก็บไฟล์ข้อมูลเชิงระเบียนนั้น แทนที่จะเป็นลำดับข้อมูลบิต แต่ไฟล์ต่างๆ จะถูกจัดการแยกออกเป็นเรคคอร์ดหรือระเบียน ด้วยเพราะวิธีนี้ช่วยให้คุณสามารถกำหนดขนาดและคุณสมบัติของระเบียนได้ โดยไม่จำเป็นต้องใช้ข้อมูลพิเศษในการบอกตำแหน่งเริ่มและจบ ซึ่งช่วยเรื่องความปลอดภัยของระบบได้สูงกว่า (ปัจจุบันเมนเฟรมรองรับระบบไฟล์แบบบิตที่เรียกว่า HFSes และ ZFSes ด้วย)
นอกจากนี้ z/OS ยังมีจุดเด่นกว่าระบบอื่นๆ ตรงที่ z/OS รองรับการบริหารควบคุมทรัพยากรเต็มรูปแบบรวมถึงระบบไฟล์ด้วย โดยเมื่อคุณสร้างดาต้าเซ็ตใหม่ คุณสามารถกำหนดได้ว่าดาต้าเซ็ตที่สร้างนั้นสามารถขยายใหญ่ได้มากเท่าไร ซึ่งคุณอาจบอกว่ายุ่งยาก เพราะ “ผมไม่เห็นต้องกำหนดขนาดไฟล์ใดๆ ในพีซีเลย” แน่นอนคุณอาจคิดเช่นนั้น แต่เหตุผลที่ z/OS ต้องการคือ การติดตามควบคุมทุกไฟล์ เพราะเหตุนี้ความเร็วในการเข้าถึงดิสก์บนเมนเฟรมนั้นจึงสุดยอดกว่าพีซี ลองสมมติดูว่าคุณมีโปรแกรมที่กำลังพยายามเขียนไฟล์เกินขนาดดิสก์หรือเกิดความจำเป็น แล้วถ้าคุณไม่มีฟีเจอร์เช่นนี้ในเมนเฟรมละก็ คุณอาจมีไฟล์ขนาดระดับเทราไบต์อยู่ในดิสก์ก็ได้ จากตัวอย่างนี้คุณอาจไม่คิดว่าจะเกิดขึ้นได้ อาจไม่สำคัญหากคุณดาวน์โหลดไฟล์เพลงลงพีซี แต่ลองดูว่าหากเหตุการณ์นี้เกิดขึ้นกับธนาคารหรือสายการบินที่ต้องประมวลผลทรานส์แ อ็กชันน ับล้านแล้ว เหตุการณ์นี้ก็อาจทำลายระบบทั้งหมดได้เลยทีเดียว และนั้นจึงเป็นที่มาว่าทำไมเมนเฟรมถึงต้องตอบสนองการทำงานและให้ความสำคัญกับอง ค์กรขนาดใหญ่
ระบบเมนเฟรมออกแบบมาเพื่อให้ใช้ทรัพยากรของระบบน้อยที่สุด และเพื่อให้ได้ผลลัพธ์เช่นนี้ เรื่องง่ายๆ อย่างการสร้างพาร์ทิชั่นดาต้าเซ็ต (โฟลเดอร์) ใหม่ จึงมีกระบวนการที่สามารถปรับแต่งได้ เพราะผู้ใช้นับพันสามารถเชื่อมต่อเข้ากับเครื่องเพียงเครื่องเดียว มีทรานส์แอ็กชันนับล้านเกิดขึ้นภายในวินาทีเดียว ดังนั้นกระบวนการนี้จึงเป็นเรื่องสำคัญ
กด F3 จนกว่าคุณจะย้อนกลับมายังเมนู ISPF Primary Option Menu ให้เลือก 3 (utilities) บนหน้าจอถัดไปให้เลือก 2 (Data Set) แล้วคุณจะพบกับหน้าจอลักษณะนี้:
ตรงจุดนี้คุณต้องใส่ชื่อใหม่ของดาต้าเซ็ตที่คุณจะสร้าง โดยชื่อดาต้าเซ็ตต้องประกอบด้วยตัวอักษร 1-8 ตัวและแยกชื่อลำดับชั้นด้วยจุด ตัวอย่างเช่น SMC####.ZOS.PARTONE โดยระบบจะใส่ชื่อลำดับชั้นแรกด้วยยูสเซอร์เนมของคุณ (ยกเว้นคุณใส่เครื่องหมายคำพูดครอบชื่อของคุณ) ในกรณีนี้ให้คุณสร้างชื่อดาต้าเซ็ต โดยพิมพ์ ZOS.PARTONE (หรือพิมพ์ ‘SMC####.ZOS.PARTONE’ ก็ได้ผลลัพธ์เหมือนกัน)
บนบรรทัดคำสั่งให้พิมพ์ A เพื่อกำหนดสร้างดาต้าเซ็ตใหม่ แล้วกด Ctrl เพื่อดำเนินการต่อ
ในหน้าจอถัดไปเป็นหน้าจอสำหรับให้คุณปรับแต่งดาต้าเซ็ตใหม่ของคุณ ทีนี้ลองไปดูที่มุมด้านบนขวาสุดที่เขียนว่า More: + เห็นไหม? มันหมายถึงหน้าจอเมนูนี้มีขนาดใหญ่เกินกว่าจะแสดงผลในหน้าจอเดียวหมด ให้คุณใช้ปุ่ม F7 และ F8 ในการเลื่อนหน้าขึ้นและลง ตามลำดับ
ระบุคุณสมบัติสำหรับ PDSE ของคุณ: PDSE ควรสร้างในแทร็กส์ ด้วยการกำหนดค่า Primary quantity ให้เป็น 1 และกำหนดค่า Secondary quantity ให้เป็น 2 ส่วนค่า Record format ต้องกำหนดเป็น FB (Fixed block) และค่า Record length เป็น 80 ค่า Block size เป็น 32000 โดยกำหนดชนิดดาต้าเซ็ตหรือ Data set name type เป็น LIBRARY (ทั้งหมดนี้เป็นการกำหนดให้ระบบสร้าง PDSE ให้คุณ)
เมื่อกำหนดเสร็จแล้วค่าต่างๆ ควรเป็นตามรูปหน้าจอด้านบน ฟิลด์ข้อมูลทุกฟิลด์ไม่จำเป็นต้องกรอกทั้งหมด อาจมีบางฟิลด์ที่เว้นว่างไว้หรือเว้นไว้ให้ระบบใส่ค่าตามค่ามาตรฐาน จากนั้นกดปุ่ม Ctrl เพื่อดำเนินการต่อ
ในหน้าจอถัดไป จะพบข้อความแจ้งเตือนด้านมุมขวาบนว่า: Data set allocated ซึ่งเมื่อคุณเห็นข้อความลักษณะนี้ปรากฎขึ้นที่มุมด้านขวาบน ให้คุณกดปุ่ม F1 (ปุ่ม Help) เพื่ออ่านรายละเอียดเพิ่มเติม
ตอนนี้เท่ากับว่าคุณได้สร้างดาต้าเซ็ตใหม่บนเมนเฟรมเป็นที่เรียบร้อยแล้ว ขั้นตอนต่อไปเราจะไปลองใช้เครื่องมือสนุกๆ อีกตัวหนึ่งกัน
พื้นฐานการเพื่อการเรียนรู้:แล้วมีดาต้าเซ็ตชนิดใดบ้างที่ฉันสามารถสร้างได
คุณพึ่งสร้าง PDSE หรือ Partitioned Data Set Extended โดยมีองค์ประกอบเพิ่มเติมตามที่แนะนำ แต่เดิมเราจะมีแค่ PDS ซึ่ง PDSEs นั้นก็คล้ายกับ PDSs มาก แต่ได้รับการปรับปรุงให้ดีขึ้น โดยชนิดดาต้าเซ็ตอื่นที่มีได้แก่ Sequential Data Set โดย Sequential Data Set มีลักษณะเมื่อไฟล์ต่อเนื่อง โดยจะเก็บเมมเบอร์ต่อเนื่องกันไป ทำให้คุณสามารถแก้ไขข้อมูลต่างๆ ได้โดยตรง ดังนั้นดาต้าเซ็ตชนิดนี้จึงไม่มีเมมเบอร์ประกอบ
ตอนนี้ดาต้าเซ็ตส่วนใหญ่ของคุณยังคงว่างเปล่า ดังนั้นเราจึงต้องใส่เมมเบอร์ลงไปบ้าง โดยเมมเบอร์นั้นสามารถเป็นได้ทุกอย่างที่คุณต้องการ เช่น ข้อมูลเท็กซ์ ไฟล์ปฏิบัติงาน ไฟล์ผลลัพธ์ของโปรแกรม เป็นต้น เหมือนกับไฟล์ทั่วๆ ไปของคอมพิวเตอร์ส่วนบุคคลในบ้านของคุณนั่นเอง ทีนี้เราลองมาสร้างไฟล์ข้อมูลตัวอักษรง่ายๆ กัน
ตอนนี้ไม่ว่าคุณจะอยู่หน้าจอได้ให้กดปุ่ม F3 เพื่อย้อนกลับมาที่หน้าจอเมนู ISPF Primary Option Menu แล้วเลือก 2 (Edit) เพื่อเราจะมาลองกำหนดชื่อเมมเบอร์ใหม่ที่สร้างด้วยชื่อของคุณเอง
ในการสร้างเมมเบอร์ ให้คุณใส่ชื่อดาต้าเซ็ตของคุณพร้อมชื่อเมมเบอร์ใหม่ (สามารถกำหนดได้สูงสุด 8 ตัวอักษรโดยให้คุณใช้ตัวอักษร 8 ตัวแรกของชื่อคุณ) ในวงเล็บ ลักษณะดังรูปนี้:
แล้วกดปุ่ม Ctrl ระบบจะสร้างเมมเบอร์ใหม่ด้วยชื่อของคุณเอง ในดาต้าเซ็ต SMC####.ZOS.PARTONE และเปิดเมมเบอร์ชึ้นมาให้คุณแก้ไขอัตโนมัติ
คุณยังคงอยู่ใน ISPF editor และตอนนี้ที่หน้าจอจะแสดงผลข้อมูลในเมมเบอร์ที่ว่างเปล่า:
ให้คุณกดปุ่ม Tab เพื่อเลื่อนเคอเซอร์ไปยังบรรทัดแรก (สองบรรทัดแรกคือ ข้อความแจ้งเตือนต่างๆ ):
ถึงตอนนี้ให้คุณพิพม์อะไรก็ได้ที่ต้องการลงไปสามบรรทัด ถ้าคิดไม่ได้เรามีโคลงกลอนที่เหมาะสมสำหรับเมนเฟรมให้คุณพิมพ์
แต่คุณก็ยังสามารถพิมพ์อะไรลงไปก็ได้ที่คุณต้องการนะ เพราะสิ่งสำคัญคือ การฝึกพิมพ์ข้อความลงไปสามบรรทัดต่างหาก (แม้คุณอาจไม่ได้มีทักษะในการแต่งกลอน แต่เราก็ยังอยากได้อ่านกลองดีๆ จากคุณนะ) เมื่อคุณพิมพ์เสร็จทั้งสามบรรทัดแล้ว ให้กดปุ่ม Ctrl (ซึ่งถ้าคุณลองพิมพ์แล้วไม่ต้องการและอยากจะลบทิ้งทั้งหมด ให้พิมพ์ CAN (หมายถึง Cancel) บนบรรทัดคำสั่ง แล้วงานที่คุณทำจะไม่ได้รับการบันทึก พร้อมกับนำคุณย้อนกลับไปยังหน้าจอก่อนหน้านี้ ให้คุณกดปุ่ม Ctrl ที่หน้าจอนี้แล้วคุณจะได้เข้ามาแก้ไขจัดการดาต้าเซ็ตเมมเบอร์เดิมก่อนหน้าที่คุณจะแก้ไข นอกจากนี้คุณยังสามารถพิมพ์ HELP บนบรรทัดคำสั่งได้ทุกเวลาเพื่อศึกษาข้อมูลเพิ่มเติมเกี่ยวกับการใช้งาน ISPF Editor)
ถึงจุดนี้หน้าจอของคุณจะแสดงผลลักษณะนี้:
โปรแกรม ISPF Editor จะทำงานโดยคำนึงถึงการใช้ทรัพยากรระบบเป็นสำคัญ ดังนั้นมันจะสร้างเมมเบอร์ยาวเพียงแค่สามบรรทัดและตัดบรรทัดว่างๆ ทิ้งทั้งหมด โดยคุณสามารถบันทึกงานที่คุณทำได้ด้วยการพิมพ์ SAVE บนบรรทัดคำสั่งแล้วกด Ctrl ยืนยัน
ถึงตอนนี้เรามาลองใช้งานคำสั่งง่ายๆ ของ ISPF Editor ซึ่งเป็นเครื่องมือพื้นฐานในการสร้างและแก้ไขเมมเบอร์ เพิ่มเติมกัน
สำหรับการแทรกบรรทัดว่างลงไปเพิ่มในเมมเบอร์เดิมให้ใช้คำสั่ง I (หมายถึง Insert) โดยการสั่งงานโปรแกรม Editor ทำได้โดยสั่งคำสั่งที่ต้องการลงไปยังฟิลด์ด้านหน้าของบรรทัดที่ต้องการ ตรงหน้าสุดหน้าตัวเลขบอกลำดับของบรรทัด ทีนี้เราจะเพิ่มบรรทัดลงไปสองบรรทัดต่อท้ายบรรทัดที่สาม ด้วยคำสั่ง I2 (ไปยังบรรทัดที่สามแล้วพิมพ์คำสั่งด้านหน้าของตัวเลขบอกลำดับบรรทัด):
แล้วกดปุ่ม Ctrl คุณจะเห็นบรรทัดว่างเพิ่มขึ้นมาสองบรรทัด:
ทีนี้ลองมาสำเนาข้อความของคุณ สัก 50 ครั้งดูไหม เราทำได้โดยพิมพ์คำสั่ง CC ลงบนบรรทัดแรกที่ต้องการสำเนา และพิมพ์คำสั่ง CC อีกครั้งลงบนบรรทัดสุดท้ายที่ต้องการสำเนา (ในการนี้คือ บรรทัดแรกและบรรทัดที่สามของเรา)
ทีนี้เราจะบอกโปรแกรมให้สร้างข้อความใหม่จากสำเนาที่เราบันทึกไว้แล้ว 50 ครั้ง ด้วยการไปยังบรรทัดสุดท้าย แล้วพิมพ์ A50 ในฟิลด์คำสั่งของบรรทัดสุดท้าย (A หมายถึง Paste After this Line ส่วน B หมายถึง Paste it before the line).
ทีนี้ที่หน้าจอของคุณจะแสดงผลเช่นนี้:
ให้กดปุ่ม Ctrl ข้อความหรือโคลงกลอนที่คุณพิมพ์ไว้ ก็จะถูกสำเนาและแทรกลงไปรวม 50 ครั้ง ดังหน้าจอด้านล่างนี้:
คุณจะเห็นมีบรรทัดว่างหนึ่งบรรทัด อย่างที่บอกแล้วว่า ISPF จะไม่ปล่อยให้ทรัพยากรเสียเปล่า ดังนั้นเมื่อคุณลองเปลี่ยนหน้าจอเพื่อดูผลลัพธ์ด้วยปุ่ม F7 และ F8 แล้ว ระบบจะแสดงผลใหม่โดยลบบรรทัดว่างๆ ทิ้งอัตโนมัติ แต่คุณก็สามารถลบบรรทัดว่างด้วยตนเองได้โดยพิมพ์ D ที่ด้านซ้ายสุดของบรรทัดนั้น แล้วกด Enter ถ้าคุณต้องการ บรรทัดจะถูกลบในทันที:
ทีนี้บรรทัดข้อมูลควรแสดงผลเช่นนี้:
และคุณยังสามารถใช้คำสั่ง DD หากต้องการลบหลายบรรทัดได้ โดยใช้งานลักษณะเดียวกับคำสั่ง CC นั่นเอง
ทีนี้เราลองมาทำสำเนาบรรทัดแรก 10 ครั้ง โดยใช้คำสั่ง R หมายถึง Repeat ให้พิมพ์ R10 ที่ฟิลด์คำสั่งในบรรทัดแรก:
แล้วกดปุ่ม Ctrl ทันใดนั้นคุณจะได้เห็นบรรทัดแรกถูกสำเนา 10 ครั้ง พร้อมเลขบรรทัดใหม่ดังนี้:
ลองพิมพ์คำสั่ง BOTTOM ที่บรรทัดคำสั่งดู คำสั่งนี้จะพาคุณไปยังบรรทัดสุดท้ายของเมมเบอร์ จากนั้นกด Tab และใช้คำสั่ง I เพื่อแทรกบรรทัดลงไปอีกบรรทัดหนึ่งต่อจากบรรทัดสุดท้าย โดยในบรรทัดใหม่นี้ ให้คุณพิมพ์ขนาดเสื้อทีเชิร์ตที่คุณต้องการ หากคุณชนะการแข่งขันในโจทย์แรกนี้:
ถึงตอนนี้คุณได้เรียนรู้วิธีการล็อกอินเข้าสู่เมนเฟรม วิธีการใช้ค้นหา วิธีสร้างและแก้ไขดาต้าเซ็ตเมมเบอร์ของคุณเองได้แล้ว ก็ถือว่าไม่ขี้ริ้วขี้เหล่อย่างใด ลำดับต่อไปเราไปเรียนรู้วิธีการรันโปรแกรมที่เกี่ยวข้องกับเมมเบอร์ที่คุณสร้างดีกว่า
พื้นฐานการเพื่อการเรียนรู้: ทำไมเราต้องกดเปลี่ยนหน้าขึ้น และเปลี่ยนหน้าลง ?
มีหลายอย่างในโปรแกรม ISPF Editor ที่ไม่เหมือนกับการใช้โปรแกรมบนพีซี อย่างเช่นการเลื่อนบรรทัดที่ไม่สามารถใช้ปุ่มสกรอลขึ้นหรือลงได้ ด้วยเหตุผลด้านประสิทธิภาพการทำงานนั้นเอง ในโลกที่ไม่ใช่เมนเฟรม เมื่อคุณใช้โปรแกรมแก้ไขจัดการแก้ไขไฟล์ เราสามารถเลื่อนบรรทัดได้แบบเรียลไทม์ โดยข้อมูลจะถูกดึงและส่งจากเซิร์ฟเวอร์ผ่านเน็ตเวิร์กตลอดเวลาที่มีการกดปุ่มใดๆ แต่ในเมนเฟรม (และใช้โปรแกรมจำลองการทำงานที่คุณใช้อยู่) ข้อมูลต่างๆ จะถูกส่งไปยังเมนเฟรมเมื่อคุณกดปุ่ม Ctrl หรือปุ่ม Function ใดๆ เท่านั้น ซึ่งวิธีการนี้ช่วยประหยัดทราฟฟิกในเน็ตเวิร์ก ลองนึกถึงว่าเมื่อมีผู้ใช้ทำงานพร้อมๆ กันกว่า 10,000 งานพร้อมกัน จะมีข้อมูลรับส่งอยู่ในเน็ตเวิร์กมากเท่าไร แต่ด้วยวิธีการบนเมนเฟรมจึงช่วยประหยัดทราฟฟิก โดยเฉพาะอย่างยิ่งช่วยประหยัดค่าใช้จ่ายการเชื่อมต่อเครือข่ายแบบ WAN ด้วย
กดปุ่ม F3 เพื่อออกจากหน้าจอดาต้าเซ็นของคุณ โดยระบบจะบันทึกงานอัตโนมัติ (แต่ถ้าคุณต้องการออกจากโปรแกรมโดยไม่ต้องบันทึก ก็ใช้คำสั่ง CAN สำหรับการยกเลิกการทำงาน)
จากหน้าเมนู ISPF Primary Option ให้เลือกคำสั่งที่ 6 (Command)
ที่หน้าจอนี้ให้คุณสามารถใส่คำสั่งของ TSO ได้จากหน้าจอ ISPF ตอนนี้เราต้องการรันโปรแกรม REXX (REXX เป็นภาษาการโปรแกรมที่ใช้งานได้ง่ายบนเมนเฟรม) ซึ่งถูกเก็บอยู่ในเมมเบอร์ชื่อ ZOS.CONTEST.REXX(COUNT) ภายในเมมเบอร์ที่คุณสร้างขึ้น
“EX” เป็นคำสั่งของ TSO หมายถึงให้รันโปรแกรม
ดังนั้นเมื่อเราต้องการรันโปรแกรม REXX ให้พิมพ์คำสั่งบนบรรทัดคำสั่งว่า: EX 'ZOS.CONTEST.REXX(COUNT)' 'XXXXXX' (โดย XXXXXX หมายถึงชื่อของคุณหรือตัวอักษร 8 ตัวแรกในชื่อของคุณ)
โปรแกรมจะเริ่มต้นการทำงาน และแจ้งข้อความให้คุณดังนี้:
หวังว่าคุณคงจำ *** ที่หมายถึงระบบพร้อมให้คุณป้อนคำสั่งได้ ให้คุณกดปุ่ม Ctrl เพื่อรันโปรแกรม
กดปุ่ม Ctrl อีกครั้งเพื่อล้างข้อมูลผลลัพธ์ของระบบ ตอนนี้โปรแกรมทำงานเสร็จสิ้นแล้ว เรามาดูว่าโปรแกรมนี้ทำงานอะไร โดยการกดปุ่ม F3 เพื่อย้อนกลับไปยังเมนู ISPF Primary Opion Menu แล้วลองใช้ช็อตคัท โดยที่บรรทัดคำสั่งให้พิมพ์ “=3.4”:

ซึ่งหมายถึง เลือกคำสั่งที่ 3 จาก Primary Option Menu แล้วเลือกคำสั่งที่ 4 จากเมนูหน้าต่อไป
ซึ่งถึงตอนนี้คุณคงจำได้ว่าหน้าจอที่กำลังเห็นอยู่นั้นหมายถึงอะไร
ให้คุณดูยูสเซอร์เนมของคุณบนฟิลด์ Dsname Level ให้ถูกต้อง และกดปุ่ม Ctrl เพื่อเข้าสู่หน้าจอถัดไป แล้วพิมพ์ E เพื่อแก้ไขข้อมูลที่อยู่ในดาต้าเซ็ต SMC#####.ZOS.PARTONE:
กดปุ่ม Ctrl อีกครั้ง คุณจะเห็นเมมเบอร์ใหม่ในดาต้าเซ็ตของคุณ ที่มีชื่อเดียวกับยูสเซอร์เนมของคุณ ให้ใส่คำสั่ง E ลงในฟิลด์คำสั่ง แล้วกด Ctrl เพื่อเข้าไปดูข้อมูลภายใน
โดยโปรแกรม REXX นั้นจะทำงานโดยการนับจำนวนบรรทัดในงานที่เราให้คุณสร้างขึ้น (กลอนที่คุณแต่ง บวกด้วยขนาดเสื้อทีเชิร์ตของคุณ) และสร้างผลลัพธ์เก็บไว้ในเมมเบอร์ใหม่
อย่าลืม: พิมพ์ SAVE บนบรรทัดคำสั่ง แล้วกดปุ่ม Ctrl เพื่อให้ระบบบันทึกเวลาที่คุณทำเสร็จ เพื่อให้ไอบีเอ็มรู้ว่าเวลาไหนที่คุณทำขั้นตอนนี้เสร็จแล้ว
ซึ่งถ้าคุณทำขั้นตอนนี้ผิดพลาด ข้อมูลที่คุณทำทั้งหมดจะไม่ถูกนำมาพิจารณา:
หลังจากบันทึกเมมเบอร์แล้ว คุณสามารถตรวจสอบว่าได้บันทึกถูกต้องหรือไม่ โดยดูจากข้อความแจ้งเตือนที่มุมบนด้านขวาที่เขียนว่า Member SMC##### saved:
กด F3 เพื่อย้อนกลับไปหนึ่งหน้า แล้วคุณจะพบว่าที่คอลัมน์ Prompt จะมีข้อความว่าเมมเบอร์ที่คุณจัดการอยู่ได้รับการแก้ไขแล้ว:
ถึงตอนนี้ถือได้ว่าคุณร่วมการแข่งขันในโจทย์ที่ 1 “ทำความรู้จักกับเมนเฟรม” เป็นที่เรียบร้อยแล้ว งานสำคัญต่อไปคือ ส่งผลลัพธ์งานที่คุณทำให้กับไอบีเอ็ม เรามาเริ่มกันเลยดีกว่า
บนบรรทัดคำสั่ง พิมพ์ =6 ซึ่งหมายถึงช็อตคัท สำหรับย้อนกลับไปยังหน้าเมนูแรกของ ISPF Primary Option Menu แล้วเลือกคำสั่งที่ 6 คือ Command
ถึงตอนนี้คุณต้องส่งผลลัพธ์งานทั้งหมดในการเข้าร่วมการแข่งขันที่คุณทำให้ไอบีเอ็มโดยผ ่านผู้ใช้งานที่มียูสเซอร์เนมว่า BABEYS เพื่อส่งเมมเบอร์ผลลัพธ์ของ REXX ไปให้ยู สเซอร์เนมดังกล่าว ให้คุณพิมพ์คำสัง ต่อไปนี้ลงบนบรรทัดคำสั่ง (คำว่า your_id หมายถึง ยูสเซอร์เนมของคุณนั้นเอง):
xmit TSTMVS01.BABEYS DA(ZOS.PARTONE(your_id))
ระบบจะสร้างข้อความที่บอกให้คุณทราบว่าเมมเบอร์ทั้งหมดได้รับการส่งแล้ว:
กดปุ่ม Ctrl เพื่อดำเนินการต่อ โดยข้อความแจ้งเตือนชุดต่อไป จะปรากฎคำว่า “0 WAS THE HIGHEST SEVERITY CODE”:
ซึ่งเท่ากับคุณได้ส่งข้อมูลเรียบร้อยแล้ว - ยินดีด้วย
ในความสนุกสนานตื่นเต้นทั้งหมดที่คุณได้พบมา คุณอาจไม่คิดว่าคุณได้รียนรู้อะไรมากขึ้นตั้งหลายอย่าง เพราะไม่เพียงแต่คุณจะได้เรียนรู้การสร้างและแก้ไขดาต้าเซ็ตและเมมเบอร์ แต่คุณยังได้เรียนรู้การรันโปรแกรม การสร้างผลลัพธ์และการส่งข้อมูลให้กับผู้ใช้คนอื่นๆ ในระบบด้วย
คุณควรใส่ประสบการณ์ความสำเร็จในการร่วมกิจจกรรมส่วนนี้ของคุณลงในจดหมายแนะนำตัว ด้วยประสบการในการใช้เมนเฟรมของคุณอาจมีส่วนช่วยให้คุณได้รับเลือกจากบริษัท ที่กำลังมองหาอยู่ เพราะปัจจุบันโปรแกรมเมอร์ที่สร้างเมนเฟรมส่วนใหญ่อายุมากแล้ว ดังนั้นบริษัทมากมายจึงมองหาบุคลากรใหม่ที่มีทักษะความสามารถด้านเมนเฟรม ซึ่งจุดนี้เองคือเป้าหมายเหตุผลหลักในการจัดการแข่งขันครั้งนี้ขึ้นมา
สำหรับข้อมูลพื้นฐานและข้อมูลปัจจุบันของเมนเฟรม คุณสามารถศึกษาได้จากเมนเฟรมมากมายที่ใช้อยู่ในองค์กร หรือดูข้อมูลได้จากเว็บไซต์เหล่านี้:
และถ้าคุณเป็นหนึ่งใน 100 ผู้เข้าแข่งขันแรกที่ทำโจทย์ส่วนแรกนี้สำเร็จและถูกต้อง
และส่งข้อมูลผลลัพธ์งานของคุณให้กับผู้ใช้ที่มียูสเซอร์เนม BABEYS แล้ว ไอบีเอ็มจะติดต่อคุณภายในไม่เกิน 15 วันทำการ ถึงตอนนี้คุณมีประสบการณ์ด้านเมนเฟรมเพียงพอที่จะเริ่มทำอะไรที่ยากขึ้นใน “โจทย์ที่ 2: ฝึกฝนประสบการณ์” แล้ว
ขอขอบคุณที่เข้าร่วมกิจกรรม และขอให้โชคดีกับการแข่งขันโจทย์ที่สอง