หน้าเว็บ

บทที่ 2 ระบบปฏิบัติการ

บทที่ 2 ระบบปฏิบัติการ


แบบทดสอบก่อนเรียน

ระบบปฏิบัติการคือ

ระบบปฏิบัติการเป็นโปรแกรมควบคุมการทำงาน (ควบคุมการRun) ของโปรแกรมประยุกต์  ทำหน้าที่
โต้ตอบและเป็นสื่อกลางระหว่างโปรแกรมประยุกต์และฮาร์ดแวร์ (Hardware)
ระบบปฏิบัติการ (Operating System :OS) เป็นซอฟต์แวร์ระบบ (System Software) ที่ทำหน้าที่ควบคุมการทำงานของเครื่องและอุปกรณ์  ควบคุมและสั่งการให้ Hardware สามารถทำงานได้   เช่น ทำหน้าที่ในการตรวจเช็คอุปกรณ์  Keyboard ขณะเปิดเครื่อง  ถ้าผู้ใช้ลืมเสียบสาย Keyboard ที่ port ด้านหลังของเครื่อง ขณะที่ซอฟต์แวร์ระบบตรวจสอบแล้วไม่พบอุปกรณ์เชื่อมต่อดังกล่าว จะมีข้อความแจ้งเตือนความผิดพลาด  “Keyboard Error”  นอกจากนี้ยังทำหน้าที่เป็นสื่อกลางในการเชื่อมการทำงานระหว่าง User ในการใช้โปรแกรมประยุกต์ ( Application Software) ของ user กับระบบเครื่องฯ  อำนวยความสะดวกในการใช้งาน  และเพิ่มประสิทธิ์ภาพของระบบ
               

         บทบาทและเป้าหมายของระบบปฏิบัติการ (Goals & Roles of an OS)

•         อำนวยความสะดวก ทำให้ผู้ใช้ (user) ใช้เครื่องฯ ได้ง่าย (Operating System Objectives  Convenience)
ทำให้คอมฯ ง่ายและสะดวกต่อการใช้งาน
•         ใช้งานเครื่องได้อย่างมีประสิทธิภาพ (Efficiency)  จัดการการใช้ทรัพยากรของระบบได้อย่างมีประสิทธิภาพ
•         เพิ่มความสามารถเพื่อพัฒนาโปรแกรม  (Ability to evolve) เพื่อรองรับให้ผู้ใช้เพื่อให้ผู้ใช้สามารถพัฒนาโปรแกรมได้อย่างมี ประสิทธิภาพ, สามารถทดสอบโปรแกรม, และสามารถใช้ฟังก์ชั่นใหม่ ๆ ของระบบ  โดยปราศจากการแทรกแซงของระบบปฏิบัติการในระหว่างการทำงาน

สรุปเป้าหมายและบทบาทของระบบปฏิบัติการ (OS)  สามารถจำแนกได้ 2 เป้าหมายคือ
1.       เป้าหมายหลัก ( Primary goal) คือ  การอำนวยความสะดวกแก่ผู้ใช้งาน ให้สามารถใช้ระบบคอมฯ ได้ง่าย และสะดวกที่สุด (convenience for the user)
2.       เป้าหมายหมายรอง (Secondary goal)  คือ เพิ่มประสิทธิภาพให้กับระบบ
บางครั้ง 2 เป้าหมายนี้อาจขัดแย้งกัน เช่น  ระบบ OS ที่ชาญฉลาดนั้นระหว่างทำงานระบบจะ
ตรวจจับข้อผิดพลาด (Error) อยู่ตลอดเวลา หากพบข้อผิดพลาดระหว่างการทำงานก็จะมีข้อความแจ้ง (Message) แก่ผู้ใช้  และหากมีข้อความแจ้งบ่อยครั้ง ก็จะกลายเป็นการขัดจังหวะการทำงานทำให้ผู้ใช้ ทำงานได้ไม่สะดวก   ดังนั้นการออกแบบระบบปฏิบัติการ (OS) และการออกแบบสถาปัตยกรรมด้านตัวเครื่องควรมีความสอดคล้อง และหาจุดกลางระหว่างกันโครงสร้างระบบปฏิบัติการ (OPERATING SYSTEM STRUCTURES)ระบบปฏิบัติการเป็นซอฟต์แวร์ที่ทำหน้าที่ควบคุมการทำงานของฮาร์ดแวร์  ซึ่ง  OS จะเป็นซอฟต์แวร์ที่ทำงานในระดับ Low level ควบคุมและสั่งการเครื่องและอุปกรณ์ได้โดยตรง  สามารถแสดงโครงการการเข้าถึงฮาร์ดแวดร์ ได้ตามรูปด้านล่างนี้
โครงสร้างการเข้าถึงฮาร์ดแวร์
3. อธิบายหลักการทำงานของ Personal computer Systems  และเชื่อมโยงด้วยว่าสัมพันธ์กับสิ่งเหล่านี้ อย่างไรบ้าง  ? (CPU, ALU, Control Unit,  Register, Bus, RAM, Input device, Output device)
โปรแกรมระบบปฏิบัติการ (Operating System)เป็นซอฟต์แวร์ที่สามารถเข้าถึงฮาร์ดแวร์ได้โดยตรง  โดยทำหน้าที่จัดสรรทรัพยากร  ควบคุมการทำงานของฮาร์ดแวร์  และทำหน้าที่เป็นตัวกลางในการควบคุมการสั่งการ ระหว่างโปรแกรมอรรถประโยชน์ (Utilities)  และโปรแกรมประยุกต์ของผู้ใช้ (Application Programs)ซอฟต์แวร์ที่พัฒนาด้วยภาษาเครื่องจักร (Machine code)จะสามารถควบคุมและเข้าถึงฮาร์ดแวร์ได้โดยตรง แต่จะขั้นตอนที่ยุ่งยากในการเขียนชุดคำสั่ง
โปรแกรมอรรถประโยชน์ (Utilities)โปรแกรมอรรถประโยชน์ (Utilities)  เป็นโปรแกรมอำนวยความสะดวกต่าง ๆ ในการทำงานเพื่อเพิ่ม
ประสิทธิภาพ แก่ระบบ  เป็นกลุ่มโปรแกรมที่เน้นการจัดการไฟล์ (File)  ควบคุม I/O, อุปกรณ์อื่น  เช่น  การสำรองข้อมูล  การจัดเรียงไฟล์  หรือการเคลียร์ Temporary file โปรแกรมประยุกต์  (Application program)เป็นซอฟต์แวร์ที่อยู่ห่างไกลกับฮาร์ดแวร์ ไม่สามารถเข้าถึงฮาร์ดแวร์ได้โดยตรง จะต้องอาศัย OS เป็น
ตัว กลางในการเชื่อมการทำงาน โปรแกรมประยุกต์จะถูกเขียนขึ้นโดยโปรแกรมเมอร์ และใช้โปรแกรมภาษาระดับสูงในการพัฒนา  ที่พัฒนาจาก programmer

ระบบปฏิบัติการสนับสนุนการทำงานของระบบในด้านใดบ้าง? (OS Support)
การจัดเตรียมบริการต่าง ๆ  ของ OS ที่มีไว้เพื่อสนับสนุนการทำงานของระบบ  มีดังนี้
• การพัฒนาโปรแกรม (Program development)
สนับสนุนเรื่องการพัฒนาโปรแกรม  โดยจัดเตรียมบริการต่าง ๆ ให้ผู้พัฒนานั้นสามารถใช้งาน Editor ได้ง่าย สะดวก และหลากหลาย เช่น มี Editor และ debugger สำหรับช่วยโปรแกรมเมอร์ระหว่างเขียนโปรแกรมและตรวจสอบข้อผิดพลาด (Error) โดยระบบปฏิบัติการจะสนับสนุนสิ่งอำนวยความสะดวกและบริการต่างๆมากมาย เพื่อช่วยผู้พัฒนาโปรแกรมในการสร้างโปรแกรมประยุกต์ขึ้นมาใช้งาน
•  การประมวลผลโปรแกรม (Program execution)
ช่วยในการทำงานและประมวลผลโปรแกรมประยุกต์  ซึ่งการประมวลผลโปรแกรมหนึ่งๆ นั้นจะมีงานที่เข้ามา เกี่ยวข้องมากมาย คำสั่ง ( instruction ) และข้อมูล ( data ) จะต้องถูกนำเข้ามาเก็บไว้ในหน่วยความจำหลัก อุปกรณ์ไอโอและแฟ้มข้อมูลที่ต้องการใช้  รวมทั้งทรัพยากรที่จำเป็นอื่นๆจะต้องถูกเตรียมพร้อมใช้งาน ระบบปฏิบัติการจะเป็นผู้ทำงานทั้งหมดนี้ให้โดยอัตโนมัติ
• การเข้าถึงอุปกรณ์ไอโอ (Access to I/O devices )การใช้อุปกรณ์ I/O แต่ละชิ้นจะต้องอาศัยชุดคำสั่งหรือสัญญาณควบคุมของตนเอง ระบบปฏิบัติการจะจัดการในรายละเอียดของการทำงานเหล่านี้  ทำให้ผู้พัฒนาโปรแกรมเหลือเพียงการตัดสินใจว่าจะทำการอ่านข้อมูลหรือบันทึก ข้อมูลเหล่านั้น
•  การควบคุมการเข้าถึงแฟ้มข้อมูล (Controlled access to files)เช่น การการเปิดไฟล์  จะมีกระบวนการทำงานหลายขั้นตอน และในอนาคตกรณีของระบบที่ทำงานกับ ระบบปฏิบัติการหลายระบบ (multiuser  OS) จะมีการเตรียมกลไกในการควบคุมการเข้าถึงไฟล์
การควบคุมการใช้งานแฟ้มข้อมูล นอกจากจะต้องเข้าใจลักษณะโดยธรรมชาติของอุปกรณ์ ที่จะนำมาใช้งานแล้ว ยังต้องเข้าใจในรูปแบบของข้อมูลที่เก็บอยู่ในสื่อจัดเก็บ ระบบปฏิบัติการจะทำหน้าที่ในส่วนนี้แทนผู้ใช้ และในกรณีที่ในระบบมีผู้ใช้งานได้หลายคนพร้อมกันก็จะต้องควบคุมลำดับและวิธี การเข้าถึงแฟ้มข้อมูลสำหรับผู้ใช้ทุกคนด้วย
•  การเข้าถึงระบบ (System access)
การติดต่อระบบ ในกรณีที่เป็นระบบสาธารณะ หรือเป็นระบบที่ใช้งานร่วมกันระบบปฏิบัติการจะควบคุมการติดต่อเข้ากับระบบ คอมพิวเตอร์โดยส่วนรวม และทรัพยากรแต่ละชิ้น ฟังก์ชั่นการติดต่อจะต้องสนับสนุนการป้องกันทรัพยากร และข้อมูลจากผู้ที่ไม่มีสิทธิในการใช้งาน และจะต้องสามารถแก้ปัญหาการแย่งชิงการใช้อุปกรณ์ได้ด้วย  ดังนั้นระบบที่มีการแบ่งปัน ( Share) การเข้าถึงข้อมูลและระบบแบบสาธารณะ (public)   OS จะป้องกัน  (protect) ทรัพยากรจากคนหรืองานที่ไม่ได้รับอนุญาต ตัวอย่างเช่นการป้องกันการเข้าใช้งานเครื่อง Mainframe จำเป็นต้องต้องมีการขออนุญาตเข้าใช้   กำหนดสิทธิ์การใช้งาน   กำหนดการอนุญาตใช้ฮาร์ดแวร์  จะเห็นว่า OS ทำงานมากขึ้นสำหรับคอมพิวเตอร์ขนาดใหญ่อย่าง Mainframe    ถ้าเป็นเครื่อง  PC เราจะขออนุญาตตัวเองในการเข้าใช้งาน
•  การตรวจจับข้อผิดพลาดและตอบกลับ (Error detection and response)

การตรวจหาข้อผิดพลาดในระบบและตอบกลับ   ข้อผิดพลาด (Error)  มีหลายชนิด ขึ้นอยู่กับระบบคอมพิวเตอร์ที่ทำงานอยู่
1)ข้อผิดพลาดที่เกิดจากทั้งภายในและภายนอกตัวเครื่อง(Hardwar) เช่น
•  หน่วยความจำผิดพลาด (memory error)
•  อุปกรณ์ผิดพลาด (device failure)
2)ข้อผิดพลาดที่เกิดจากซอฟต์แวร์ (Software)  เช่น
• หน่วยคำนวณเต็ม (arithmetic overflow)
•  การถูกยับยั้ง  หรือไม่อนุญาตให้เข้าถึงพื้นที่หน่วยความจำ (memory location

การพยายามที่จะเข้าถึงพื้นที่ ที่ไม่อนุญาตในตำแหน่ง ( location) ของหน่วยความจำ ก็จะทำให้เกิดข้อผิดพลาด (error) ขึ้นได้
•         โปรแกรมระบบปฏิบัติการ (OS) ไม่สามารถอนุญาตตามการร้องขอของโปแกรมประยุกต์ได้
Note : ในแต่ละกรณีที่เกิดข้อผิดพลาด   OS มักจะเตรียมการแจ้งกลับ ( response) และพยายามจัดการกับเงื่อนไขของข้อผิดพลาด ( error) ที่เกิดขึ้นและให้มีผลกระทบน้อยที่สุดในการ run program
การตรวจหาข้อผิดพลาดและการตอบสนอง ข้อผิดพลาดสามารถเกิดขึ้นได้โดยสาเหตุต่างๆมากมายขณะที่ระบบกำลังทำงาน ในความผิดพลาดแต่ละกรณีที่เกิดขึ้น ระบบปฏิบัติการจะต้องตอบสนองโดยทำให้เกิดผลกระทบต่อโปรแกรมที่กำลังประมวลผล อยู่ในระดับต่ำที่สุด การตอบสนองโดยทั่วไปได้แก่ การหยุดการทำงานของโปรแกรมนั้น การพยายามทำคำสั่งนั้นใหม่ เป็นต้น
•         การจัดทำบัญชี (Accounting)
–       เก็บรวบรวมสถิติการใช้งานระบบ (collect statistics)
–       ตรวจวัดประสิทธิภาพการใช้งานระบบ  (monitor performance) เช่น เวลาในการตอบสนอง
–       เพื่อเป็นข่าวสารที่จะใช้เป็นประโยชน์ในการยกระดับการทำงานให้สูงขึ้นในอนาคต(used to anticipate future enhancements)
–       ใช้สำหรับออกรายชื่อผู้ใช้  (used for billing users)
บัญชีผู้ใช้ ระบบปฏิบัติการที่ดีจะรวบรวมข้อมูลสถิติการใช้งานของทรัพยากรต่างๆ และตรวจสอบตัวกำหนดค่าประสิทธิภาพเช่น ระยะเวลาการตอบสนอง ในระบบใดๆ ข้อมูลเหล่านี้จะเป็นประโยชน์สำหรับการคาดเดาการขยายขีดความสามารถของระบบใน อนาคต และในการปรับตัวกำหนดค่าทั้งหลายเพื่อให้ระบบมีประสิทธิภาพมากยิ่งขึ้น ในระบบที่มีผู้ใช้หลายคน ข้อมูลนี้สามารถนำมาใช้ในทางบัญชี เช่น การเรียกเก็บค่าบริการได้

            ระบบปฏิบัติการในฐานะผู้บริหารทรัพยากร (The Operating System as Resource Manager)
ระบบคอมพิวเตอร์ประกอบด้วยอุปกรณ์ต่างๆ สำหรับการเคลื่อนย้าย การจัดเก็บ และการประมวลผลข้อมูลและการควบคุมฟังก์ชั่นการทำงานต่างๆ ระบบปฏิบัติการมีความรับผิดชอบในการบริหารทรัพยากรต่างๆเหล่านี้
อาจมีข้อสงสัยว่า ระบบปฏิบัติการเป็นตัวควบคุมการเคลื่อนย้าย การจัดเก็บ และการประมวลผลข้อมูลหรือไม่ ในมุมมองหนึ่งอาจตอบว่าใช่ เนื่องจากระบบปฏิบัติการจะต้องควบคุมหน้าที่การทำงานพื้นฐานในการบริหาร ทรัพยากรของเครื่องคอมพิวเตอร์ อย่างไรก็ตามการควบคุมนี้เป็นการกระทำในทางอ้อม โดยปกติผู้คนมักจะคิดว่ากลไกในการควบคุมเป็นองค์ประกอบภายนอกของสิ่งที่ถูก ควบคุม หรือย่างน้อยที่สุดก็เป็นอะไรบางอย่างที่มีตัวตนและเป็นส่วนที่แยกออกจาก สิ่งที่ถูกควบคุม
       จากรูป แสดงให้เห็นว่าระบบปฏิบัติการคือผู้บริหารทรัพยากร ส่วนหนึ่งของระบบปฏิบัติการซึ่งได้แก่ส่วนที่เรียกว่า เคอร์นอล(kernel) และนิวเคลียส( nucleus) จะถูกเก็บไว้ที่หน่วยความจำหลัก หน่วยความจำส่วนที่เหลือจะถูกใช้ในการเก็บโปรแกรมและข้อมูลอื่นๆของผู้ใช้ การจัดสรรทรัพยากร(ในกรณีนี้คือหน่วยความจำ) ให้แก่โปรแกรมต่างๆรวมทั้งโปรแกรมระบบปฏิบัติการ จะถูกควบคุมร่วมกันระหว่างระบบปฏิบัติการกับฮาร์ดแวร์ที่ทำหน้าที่บริหาร หน่วยความจำ ระบบปฏิบัติการจะทำการตัดสินใจว่า จะมอบอุปกรณ์ไอโอตัวใดให้แก่โปรแกรมใดที่กำลังประมวลผลอยู่ รวมทั้งการควบคุมการเข้าถึงและเรียกใช้งานแฟ้มข้อมูล ตัวโปรเซสเซอร์เองก็จัดว่าเป็นทรัพยากรชนิดหนึ่ง จึงเป็นหน้าที่อย่างหนึ่งของระบบปฏิบัติการที่จะต้องกำหนดระยะเวลาการใช้งาน โปรเซสเซอร์ในการประมวลผลโปรแกรมผู้ใช้

ภาพรวมอื่นของระบบปฏิบัติการ (Other views of the OS)
•         OS  ทำหน้าที่เป็นผู้จัดสรรทรัพยากรภายในระบบ (resource allocator)
–          ดูและและจัดสรรให้ใช้ทรัพยากร อันได้แก่  ฮาร์ดแวร์ (hardware),ซอฟต์แวร์ (Software) และข้อมูล (data) ในระหว่างการทำงานภายในระบบได้อย่างเหมาะสมและถูกต้อง
–     จัดเตรียมสภาพแวดล้อมต่าง ๆ ระหว่างที่โปรแกรมมีการทำงาน
•         OS  ทำหน้าที่ควบคุมการทำงานของโปรแกรม (control program)
–          ควบคุมการประมวลผล (execution) ของโปรแกรมและป้องกันโปรแกรมผู้ใช้จากข้อผิดพลาดและการใช้งานโปรแกรมที่ไม่เหมาะสมในระบบ
–      ต้องควบคุมการทำงานและการจัดสรรอุปกรณ์ ไอโอ (I/O devices)

การประมวลผลข้อมูลของคอมพิวเตอร์
โครงสร้างด้านการประมวลของคอมพิวเตอร์ ประกอบด้วย
Input — > Process — > Output
แสดงดังภาพตัวอย่างข้าล่างนี้

1.  Input : User ทำการ Input data เข้าสู่ระบบ   โดยอาศัยอุปกรณ์ Input device
2.  Process : เครื่องเริ่มทำการประมวลผล  โดยข้อมูลที่ User  Input เข้ามาจะส่งไปเก็บใน
หน่วย ความจำหลัก (Memory :RAM)  จากนั้น Control  Unit จะควบคุมการไหลของข้อมูลผ่านระบบ Bus system จาก  RAM  ไปยัง  CPU และ ALU   เพื่อให้ทำงานตามคำสั่งระหว่างการประมวลผล  Register จะคอยเก็บชุดคำสั่งขณะที่ load ข้อมูลอยู่  และ Cacheจะ คอยดักชุดคำสั่งที่ CPU เรียกใช้บ่อย ๆ  และคอยจัดเตรียมข้อมูลหรือชุดคำสั่งเหล่านั้นเพื่อเอื้อให้ CPU ประมวลผลข้อมูลได้เร็วขึ้น ซึ่งการประมวลผลของเครื่องนี้จะทำงานตามรอบสัญญาณนาฬิกาของเครื่อง (Machine cycle)

Note:
Machine cycle  หมายถึง  เวลาที่ใช้ในการประมวลผลชุดคำสั่งของเครื่องต่อรอบสัญญาณ นาฬิกา              เป็นเวลาที่ร้องขอการทำงาน เช่น การเรียก (Load) ข้อมูล,  การประมวลผล (Execute)  และการจัดเก็บข้อมูล  ซึ่งใน Machine cycle  จะประกอบด้วย 2 ช่วงจังหวะการทำงาน ได้แก่
1.   Instruction time ( I-time)  หมายถึง  ช่วงเวลาที่   Control unit รับคำสั่ง (Fetch)จาก memory และนำคำสั่งนั้นใส่ลงไปใน register    จากนั้น Control unit จะทำการถอดรหัสชุดคำสั่งและพิจารณาที่อยู่ของข้อมูลที่ต้องการ
2. Execution time  หมายถึง   ช่วงเวลาที่  Control unit จะย้ายข้อมูลจาก  memory ไปยัง registers  และส่งข้อมูลให้    ALU จะทำงานตามคำสั่งนั้น    เมื่อ ALU ทำงานเสร็จ  Control unit จะเก็บผลลัพธ์ไว้ใน memory   ก่อนส่งไปแสดงผลที่ Monitor หรือ Printer
3.  Output : หลังจาก CPU ประมวลผลเสร็จ Control  Unit จะควบคุมการไหลของข้อมูลผ่านBus  system เพื่อส่งมอบ (Transfer)  ข้อมูลจาก CPU  มายังหน่วยความจำ  จากนั้นส่งข้อมูลออกไปแสดงผลที่ Output device (หากคุณใช้ card เพิ่มความเร็วในการแสดงผลของจอภาพ ก็จะส่งผลต่อความเร็วของระบบได้เช่นกัน) ผลลัพธ์ที่ได้จากการประมวลผลข้อมูล (Data)  เรียกว่า   ข่าวสารหรือสารสนเทศ (Information)
4.  Storage : หน่วยจัดเก็บข้อมูล ซึ่งหมายถึงสื่อจัดเก็บสำรอง เช่น Harddisk,  Disk หรือ CDทำ งาน 2 ลักษณะ คือ  การ Load ข้อมูลเพื่อนำไปประมวลผล: ถ้าข้อมูลถูกจัดเก็บอยู่ใน Harddisk แล้วคุณต้องการ  Load  ข้อมูลขึ้นมาแก้ไขหรือประมวลผล ข้อมูลที่ถูก Load และนำไปเก็บในหน่วยความจำ (Memory: RAM) จากนั้นส่งไปให้ CPUการเก็บข้อมูลเมื่อประมวลผลเสร็จ: เมื่อ CPU ประมวลผลข้อมูลเสร็จ ข้อมูลนั้นจะถูกเก็บอยู่ใน
   หน่วย ความจำ (Memory: RAM) แต่ RAM จะเก็บข้อมูลเพียงชั่วขณะที่เปิดเครื่อง (Power On)  เมื่อไรที่คุณปิดเครื่อง โดยที่ยังไม่สั่งบันทึกข้อมูล (Save)   ข้อมูลก็จะหาย (Loss)   ดังนั้นหาก User  ต้องการจัดเก็บข้อมูลเพื่อไว้งานในครั้งต่อไปจะต้องสั่งบันทึก โดยใช้คำสั่ง Save File  ข้อมูลก็จะถูกนำไปเก็บในสื่อจัดเก็บสำรอง ได้แก่  Disk,  Harddisk, CD  หรือ  Thumb Drive แล้วแต่ว่าคุณจะเลือก Save ไว้ในสื่อชนิดใด

โครงสร้างระบบคอมพิวเตอร์ (Computer system structures)
ภาพรวมโครงสร้างระบบคอมพิวเตอร์ มีองค์ประกอบโดยรวม 4 ส่วน ที่ประกอบกันขึ้นเป็นระบบ ดังนี้
1.  Processor  คือ หน่วยประมวลผล (CPU) ซึ่งเป็นหน่วยในการประมวลผลและควบคุมการทำงาน
2.  Main Memory : หน่วยความจำหลัก เป็นหน่วยความจำจริง(real memory)  หรือหน่วยความจำหลัก
(primary memory)  เก็บข้อมูลแบบชั่วคราวลบเลือนได้
3. I/O modules : อุปกรณ์ไอโอ  เป็นหน่วยในการนำเข้าและแสดงผลข้อมูล  เช่น
– อุปกรณ์หน่วยความจำสำรอง (secondary memory devices): เป็นอุปกรณ์สำหรับ
หน่วยความจำประเภทที่ 2 เช่น Disk หรือ  Harddisk หรืออาจจะเป็น File อย่างหนึ่ง  พวก File พิเศษ
– อุปกรณ์สื่อสาร (communications equipment ) : อุปกรณ์ในการสื่อสาร หรือส่งสัญญาณข้อมูลระหว่างเครื่อง
4.  System bus  : ระบบบัส คือ ช่องทางการขนส่งข้อมูล จะทำหน้าที่ในการเชื่อมข้อ Processor, Main Memory และ I/O modules เข้าด้วยกัน


จากรูปจะเห็นว่ามี Main bus เชื่อมต่อทั้ง 3 ส่วนเข้าด้วยกัน