หน่วยความจำคอมพิวเตอร์ในอดีตถักด้วยมือสตรี



.
เทคโนโลยีคอมพิวเตอร์มีวิวัฒนาการและเปลี่ยนแปลงรวดเร็วมาก
จากเดิมที่มีขนาดใหญ่โตเทอะทะ ทั้งทน ทั้งถึก
จนมีขนาดเล็กกระทัดรัดและเล็กลงจากเดิมมาก
ภาพยอดนิยมที่ใช้กันบ่อยและเผยแพร่กันมาก
คือ กล่องขนาดใหญ่ที่ยกขึ้นไปที่ห้องเก็บสัมภาระ Pan American Airways
มีคำบรรยายประกอบภาพระบุว่าเป็น IBM 305 RAMAC
ซึ่งเป็นฮาร์ดดิสก์เชิงพาณิชย์เครื่องแรกของโลก ที่พัฒนาขึ้นในปี 1957
มีความจุเพียง 5 เมกะไบต์ น้ำหนักรวม 1 ตัน
.


.
ในช่วงแรก หน่วยความจำของคอมพิวเตอร์มีความจุน้อยมาก
คอมพิวเตอร์เครื่องแรกที่พัฒนาขึ้นมาในช่วงสงครามโลกครั้งที่ 2
เพื่อช่วยให้ทหารคำนวณตาราง/มุมองศาในการยิงปืนใหญ่
ยังใช้หลอดสุญญากาศเพื่อเก็บข้อมูล/เป็นหน่วยความจำ
ต่อมา John Presper Eckert จึงได้ประดิษฐ์อุปกรณ์ที่ซับซ้อน
โดยใช้หลอดแก้วที่เต็มไปด้วยสารปรอทและคริสตัลควอตซ์
ซึ่งสามารถเก็บข้อมูลได้ไม่กี่แสนบิต 
ทำให้ต่อมา  เทคโนโลยีหน่วยความจำจึงได้เริ่มต้นพัฒนาขึ้น
เพราะต้องประการประสิทธิ์ผลและประสิทธิภาพ
ในการคำนวณสูงขึ้นมากกว่าเดิม
.
.

core memory module ความจุ 128 bytes
© Konstantin Lanzet/Wikimedia Commons


.
ในช่วงปลายปี 1940 Frederick W. Viehe 
นักประดิษฐ์มือสมัครเล่นจาก Los Angles 
ได้ยื่นขอจดสิทธิบัตรสำหรับหน่วยความจำรูปแบบใหม่
ที่ใช้หม้อแปลงขนาดเล็กเพื่อจัดเก็บข้อมูล
ต่อมาอุปกรณ์ชิ้นนี้ได้รับการปรับปรุงอย่างมีนัยสำคัญ
โดย An Wang นักฟิสิกส์ของฮาร์วาร์ด ผู้มาก่อนกาลเวลา
ผู้ประดิษฐ์เครื่องพิมพ์งานเอกสารภาษาอังกฤษ
ที่พิมพ์ผ่านจอสีเขียวและแก้ไขได้เลยดีกว่าพิมพ์ดีด
หลังจากตรวจทานเสร็จแล้วค่อยสั่ง Printer พิมพ์
ภายหลังมีคอมพิวเตอร์รุ่นใหม่จะมีโปรแกรมพวก Word ที่ดีกว่ามาทดแทน 

ต่อมาก็ Jay Forrester กับ Jan A. Rajchman ในช่วงปี 1950
ได้พัฒนาการหน่วยความจำแกนแม่เหล็ก
เทคโนโลยีหน่วยความจำใหม่แบบนี้
เป็นหน่วยความจำแบบถาวรไม่ลบเลือนครั้งแรก
หน่วยความจำที่ไม่สูญเสียข้อมูลแม้ไฟฟ้าดับ
หน่วยความจำชนิดนี้ได้รับการพัฒนาจนมีการนำไปใช้อย่างกว้างขวาง
ในคอมพิวเตอร์ Whirlwind ของกองทัพเรือสหรัฐฯ
เพื่อใช้ในการติดตามเครื่องบินตามเวลาจริง
.

Project Whirlwind core memory, circa 1951


.
หน่วยความจำแกนแม่เหล็กประกอบด้วย
วงกลมคล้ายขนมโดนัทขนาดเล็กทำจากเฟอร์ไรต์ ferrite
.
.


.
แล้วร้อยสายไฟเข้าไปซ้อนทับกันเรียงตามลำดับ
โดนัทแต่ละอันมีหน่วยความจำเพียงเล็กน้อยและค่าของบิต (ศูนย์หรือหนึ่ง)
ซึ่งจะถูกระบุโดยทิศทางของฟลักซ์แม่เหล็ก magnetic flux
ปริมาณเส้นแรงแม่เหล็กหรือจำนวนของเส้นแรงแม่เหล็ก
ที่พุ่งจากขั้วหนึ่งไปยังขั้วหนึ่ง ของแท่งแม่เหล็ก
มีหน่วยเป็น เวเบอร์ (Weber,Wb)  ที่มา http://bit.ly/2OZ13k7
สายไฟที่ไหลผ่านรูในโดนัทสามารถตรวจจับ
(นั่นคืออ่าน) และเปลี่ยน (นั่นคือเขียน)
ตามผลของการดึงดูดของแกนแม่เหล็ก

หน่วยความจำหลักแบบนี้ คือ
เทคโนโลยีหน่วยความจำที่มีความโดดเด่นมาก
ในช่วงสองทศวรรษแรกของสงครามเย็น
(ระหว่างสหรัฐฯ กับ รัสเซีย)
แต่การผลิตชิ้นงานนี้เป็นงานที่ละเอียดอ่อน
แกนโดนัทมีขนาดเล็กและจะต้องถูกตีเกลียว
ด้วยมือที่มั่นคงแม่นยำโดยใช้แว่นขยาย
เมื่อแกนมีขนาดเล็กลงไปเรื่อย ๆ
วิศวกรก็มักจะพูดติดตลกว่า
แกนใหม่ทำจากหลุมเดิมที่เจาะของเก่าออกมา
.

core memory module : Konstantin Lanzet
/Wikimedia Commons
.

Diagram of a 4×4 plane of magnetic core 
memory in an X/Y line coincident-current setup.
X and Y are drive lines, 
S is sense, Z is inhibit
Arrows indicate the direction of current 
for writing. Diagram by Tetromino/Wikimedia Commons


.
หน่วยความจำแบบนี้  ก็เหมือนกับงานฝีมือ
ที่เกี่ยวข้องกับการทอ การตัดเย็บ
และการทำสิ่งทอในรูปแบบต่าง  ๆ
ที่ผู้หญิงมีความชำนาญการมาก่อน/มากกว่าผู้ชาย
ในระหว่างการปฏิบัติภารกิจแรกของ Apollo
ซอฟต์แวร์ของ Apollo Guidance Computer
มีหน่วยความจำสูงนั้นก็ถูกถักทอขึ้นมา
เรียกว่า  core rope memory
ซึ่งมีลักษณะคล้ายกับ หน่วยความจำแกนแม่เหล็ก

เพื่อสร้างหน่วยความจำนี้จำนวนมากขึ้นมา
NASA จึงว่าจ้างผู้หญิงที่มีทักษะด้านสิ่งทอ
ทั้งจากอุตสาหกรรมสิ่งทอในท้องถิ่น
รวมทั้งจาก Waltham Watch Company
เพราะทักษะนี้ต้องการความแม่นยำอย่างมาก
ในการทำงานรอบแกนโดนัทด้วยเข็ม
คนงานผู้หญิงเหล่านี้ต่างนั่งอยู่บนโต๊ะทำงานยาว
ต่างนั่งตรงข้ามกันเพื่อทำหน้าที่ร้อยสายไฟ
ให้ผ่านรูของตาไก่(แกนกลางโดนัท) 
เส้นลวดก่อนที่จะร้อยผ่านรูตาไก่
จะสร้างรหัส 1 เมื่อผ่านเข้าไปในรูแล้วจะสร้างรหัส 0 

.
หน่วยความจำ  core rope memory
มีชื่อเล่นว่า LOL memory มาจาก Little Old Ladies
เพราะหัวหน้างานงานสร้างหน่วยความจำนี้ก็เป็นผู้หญิง
และหัวหน้าใหญ่ก็คือ Margaret Hamilton 
Software Engineer คนแรกของโลก เป็นผู้อำนวยการ
ของ MIT Instrumentation Laboratory
ซึ่งพัฒนาซอฟต์แวร์การบินของยานอวกาศ
โครงการอวกาศ Apollo ของ NASA

หนึ่งในภารกิจหลักของ Margaret Hamilton 
คือ การคิดหาวิธีจัดการกับข้อผิดพลาดของคอมพิวเตอร์
ในปี 1960 มีแนวทางปฏิบัติอย่างเป็นทางการเล็กน้อยมาก
เกี่ยวกับวิธีการเขียนเอกสารและทดสอบซอฟต์แวร์ที่ซับซ้อน
แต่ซอฟต์แวร์ Apollo นั้นปราศจากข้อผิดพลาดอย่างน่าทึ่ง
ทั้งที่สิ่งนั้นไม่ใช่มนุษย์แต่อย่างใด

.
ในช่วงการลงจอดของยานอวกาศ Apollo 11
นักบินอวกาศได้เปิดสวิตช์เรดาร์นัดพบโดยไม่ได้ตั้งใจ
ทำให้คอมพิวเตอร์ต้องทำงานประมวลผลหนักจนเกินไป
แต่ Margaret Hamilton คาดการหรือเดาว่า
ถ้ามีเหตุฉุกเฉินดังกล่าวเกิดขึ้น
การที่กลไกการทำงานเครื่องยนต์ กับ
คอมพิวเตอร์ทำงานไม่สอดคล้องต้องกัน
ก็จะอนุญาตให้คอมพิวเตอร์ Lunar Module
ถ้าทำงานหนักมากเกินไป สามารถกระจาย
การคำนวณส่วนที่เป็นภารกิจที่ไม่สำคัญออกไป
ให้มุ่งเน้นไปที่กลไกลการควบคุมหลักขอขงเครื่องยนต์ก่อน

“ หากคอมพิวเตอร์ไม่ได้ตระหนักถึงปัญหานี้
แล้วยังมุ่งแต่กู้คืน(คำนวณแต่ปัญหาเรื่องปุ่มสวิตช์เรดาเปิด)
ฉันสงสัยว่า Apollo 11 จะประสบความสำเร็จ
ในการจอดลงบนดวงจันทร์ ได้หรือไม่
(อาจจะขึ้นมาไม่ได้อีกเลย
เพราะคอมพิวเตอร์ทำงานหนักจน Hang เอ๋อไปเลย)
ตามจดหมายที่ Margaret Hamilton
เขียนถึงผู้อำนวยการ Apollo Flight Computer Programming

ในกรณีต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ
การทำงานของหน่วยความจำแกนแม่เหล็ก
National Science Foundation of Florida 
มีแบบเรียนให้ลองศึกษาและทดสอบที่ http://bit.ly/320yCHR

 
Margaret Hamilton กับกองเอกสารโปรแกรม software  ใน Apollo Project

ในยานอวกาศ

นิรนามกำลังร้อยสายหน่วยความจำให้ Apollo Guidance Computer

 
นิรนามกำลังร้อยสายหน่วยความจำให้ Apollo Guidance Computer

 
สาวเทคนิคร้อยสายผ่านโดนัทที่โรงงาน Raytheon ในเขต Boston

 

กล่องใส่ชุดหน่วยความจำ Apollo Guidance Computer

สาวเทคนิคติดตั้ง micrologic กับหน่วยความจำในสถานที่ผลิต Apollo Guidance Computer

microSD card หน่วยความจำ 8-GB  กับmagnetic-core memory หน่วยความจำ 8-Bytes 
 : Daniel Sancho/Wikimedia Commons







.
เรียบเรียง/ที่มา

Computer History Museum 
Daniela K. Rosner et al. Making Core Memory 
Ken Shirriff's blog 
National Air And Space Museum 
Magnetic Core Memory 
IEEE Specturm 
Margaret_Hamilton




แก้ไขข้อความเมื่อ
แสดงความคิดเห็น
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่