ระบบปฏิบัติการคือ
ระบบปฏิบัติการเป็นโปรแกรมควบคุมการทำงาน (ควบคุมการ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
แสดงดังภาพตัวอย่างข้าล่างนี้
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 ส่วนเข้าด้วยกัน
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 ส่วนเข้าด้วยกัน
ไม่มีความคิดเห็น:
แสดงความคิดเห็น