More Related Content Similar to 2 ca-computer systems (wichet p.'s conflicted copy 2012-12-18)
Similar to 2 ca-computer systems (wichet p.'s conflicted copy 2012-12-18) (20) 2 ca-computer systems (wichet p.'s conflicted copy 2012-12-18)2. วัต ถุป ระสงค์ก ารเรีย นรู้
เพื่อให้รู้จักสาระสำาคัญเกี่ยวกับระบบ
คอมพิวเตอร์ ระบบปฏิบัติการ วิวัฒนาการและ
ชนิดของคอมพิวเตอร์และระบบปฏิบัติการ
เพื่อให้เข้าใจหน้าทีของระบบปฏิบัติการใน
่
การติดต่อระหว่างอุปกรณ์รอบข้างกับหน่วย
ประมวลผลกลาง
เพื่อศึกษาเกียวกับการเรียกระบบ และระบบ
่
ไมโครคอมพิวเตอร์
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 2
ั ิ
3. หัว ข้อ บรรยาย
Computer System Components
What is an Operating System?
Mainframe Systems
Desktop Systems
Multiprocessor Systems
Distributed Systems
Clustered System
Real -Time Systems
Handheld Systems
การติดต่อระหว่างอุปกรณ์รอบข้างกับซีพียู
System Call
ไมโครคอมพิวเตอร์และระบบปฏิบติการ
ั
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 3
ั ิ
4. วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 4
ั ิ
5. ส่ว นประกอบของระบบคอมพิว เตอร์
Computer System Components
ฮาร์ดแวร์ (h/w) ทำาหน้าที่จัดหาทรัพยากรเพื่อการ
คำานวณพื้นฐาน ได้แก่ ซีพียู หน่วยความจำา i/o
devices เป็นต้น
ระบบปฏิบัติการ (Operating System) ควบคุมและ
ประสานงานการใช้ฮาร์ดแวร์เหล่านั้นที่ถูกเรียกใช้
โดยหลายแอพพลิเคชันโปรแกรม สำาหรับผู้ใช้ต่างๆ
แอพพลิเคชันโปรแกรม (application program)
กรรมวิธีที่ทรัพยากรระบบจะถูกใช้เพือแก้ปัญหาใน
่
ทางคำานวณของผู้ใช้งาน เช่น คอมไพเลอร์ ระบบฐาน
ข้อมูล เกมส์วีดิโอ ซอฟต์แวร์ธุรกิจ เป็นต้น
ผู้ใช้ (users) ได้แก่ คน เครื่องคอมพิวเตอร์ และ
คอมพิวเตอร์เครื่องอืนๆ่
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 5
ั ิ
6. Abstract View of System Components
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 6
ั ิ
7. ระบบปฏิบ ต ิก าร
ั
OS: Operating Systems
คือ กลุ่มโปรแกรมทีทำาหน้าทีเป็นตัวกลาง
่ ่
ระหว่างผู้ใช้ กับเครื่องคอมพิวเตอร์
มีจุดมุงหมายเพื่อจัดหาสภาพแวดล้อมที่เหมาะ
่
สมเพื่อให้ผู้ใช้กระทำาการกับโปรแกรม
(execute programs)
โดยมีเป้าหมายหลักเพื่อให้การใช้ระบบ
คอมพิวเตอร์ของผู้ใช้เป็นไปอย่างสะดวก และ
การใช้ฮาร์ดแวร์เป็นไปอย่างมีประสิทธิภาพ
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 7
ั ิ
9. Operating System Definitions
ผู้จัดสรรทรัพยากร (Resource allocator)
ทำาหน้าทีจัดการและจัดสรรทรัพยากร
่
โปรแกรมควบคุม (Control program)
ควบคุมการกระทำาการ (execution) ของ
โปรแกรมผู้ใช้และปฏิบัตต่างๆ
ิ
(operations) ของอุปกรณ์ i/o
เคอร์แนล (Kernel) โปรแกรมชนิดหนึงที่
่
รันอยู่ตลอดเวลา เพื่อให้แอพพลิคชันโปร
แกรมอืนๆ สามารถดำารงอยู่ได้
่
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 9
ั ิ
10. วิว ัฒ นาการและชนิด ของระบบปฏิบ ต ิ
ั
การ
ระบบปฏิบติการและสถาปัตยกรรมคอมพิวเตอร์มีอทธิพลซึ่ง
ั ิ
กันและกันอย่างมาก
พบได้จากวิวัฒนาการของคอมพิวเตอร์ ตั้งแต่อดีตจาก
หลอดสุญญากาศที่ไม่มีระบบปฏิบติการ ซึ่งเป็นสิ่งที่ทำาให้
ั
ต้องมีการเพิ่มประสิทธิภาพของระบบปฏิบติการให้มี
ั
โครงสร้างที่ทันสมัยเหมาะสำาหรับการใช้งาน
ถูกพัฒนามาจากระบบเครื่องเมนเฟรมที่ต้องการเพียงระบบ
ปฏิบติการอย่างง่ายๆ สำาหรับทำางานกับแอพพลิเคชันเพียง
ั
อย่างเดียว จนกระทั่งถึงระบบแบ่งกันใช้เวลาที่ซับซ้อน
จากนั้น จึงพัฒนาไปอยู่บนระบบคอมพิวเตอร์ขนาดเล็ก
อย่างคอมพิวเตอร์แบบตั้งโต๊ะ มาเป็นระบบคอมพิวเตอร์แบบ
มือถือ และอุปกรณ์แบบเคลื่อนได้ในปัจจุบน ั
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 10
ั ิ
11. พัฒ นาการที่ส ำา คัญ ของระบบปฏิบ ต ิก าร
ั
Mainframe Systems
Desktop Systems
Multiprocessor Systems
Distributed Systems
Clustered System
Real -Time Systems
Handheld Systems
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 11
ั ิ
12. ระบบเชิง กลุม
่
(Batch Systems)
เป็นระบบแบบง่ายๆ ตามสถาปัตยกรรมคอมพิวเตอร์
มีหน้าที่หลักคือส่งการควบคุมโดยอัตโนมัติจากงาน
หนึ่งไปยังงานถัดไป
ระบบปฏิบัติการต้องอยู่ในหน่วยความจำาตลอดเวลา
เพื่อทำาให้การประมวลผลเร็วขึ้น ผู้ดูแลระบบทำาการ
รวมกลุ่มงานที่มีความต้องการสิงที่เหมือนกันเข้าด้วย
่
กันและดำาเนินงานงานเหล่านั้นผ่านทางคอมพิวเตอร์
เป็นกลุม่
โปรแกรมเมอร์สามารถทิ้งโปรแกรมไว้กับพนักงานคุม
เครื่องได้ และผู้ดูแลระบบจะเรียงโปรแกรมไว้เป็นกลุ่ม
ที่ต้องการสิ่งทีเหมือนกันและเมื่อคอมพิวเตอร์ว่างก็จะ
่
ดำาเนินงานแต่ละโปรแกรมตามลำาดับ
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 12
ั ิ
14. ระบบเชิง กลุ่ม แบบอัต โนมัต ิ
(Automatic Batch Systems)
เป็น os รุ่นแรกใช้กับเครื่อง IBM 701
os รุ่นนี้เป็นเพียงโปรแกรมฝังตัวเล็กๆ (resident
monitor) ซึ่งวิ่งอยู่ภายในเครื่องตลอดเวลา และ
ทำาการส่งมอบการควบคุมเครื่องให้กับโปรแกรมของผู้
ใช้ทีละโปรแกรมตามลำาดับ
ใช้ภาษาควบคุมงาน JCL (Job Control Language)
ช่วงเวลารอคอย (turnaround time) คือตั้งแต่ส่งมอบ
งานเข้าเครื่อง (job submission) จนกระทั่งงานเสร็จ
สมบูรณ์ (job completion)
ยังมีปัญหาในเรื่องความแตกต่างของความเร็วระหว่าง
i/o กับ cpu ทำาให้ประโยชน์ใช้สอยของซีพียู (cpu
utilization) ยังทำาไม่เต็มที่
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 14
ั ิ
15. ระบบบัฟ เฟอร์ (Buffering)
มีหลักการทำางานคือ ให้ i/o ทำางานขนานไป
พร้อมกับ cpu ให้มากที่สุด เพื่อลดเวลาที่ cpu รอ
i/o
ในขณะที่ cpu กำาลังประมวลผล i/o จะอ่านข้อมูล
ถัดไปมาไว้ที่หน่วยความจำา ที่เรียกว่า บัฟเฟอร์
(buffer)
บัฟเฟอร์ของ i/o ได้แก่ เครื่องอ่านบัตร (card
reader) และเครื่องพิมพ์รายบรรทัด (line printer)
i/o จะทำางานติดต่อกับ cpu โดยตรง เรียกว่า
ระบบต่อตรง (On-Line)
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 15
ั ิ
16. ระบบบัฟ เฟอร์ (Buffering) (cont.)
ถ้าการอ่าน/เขียนสำาหรับข้อมูลแต่ละหน่วยใช้
เวลาเท่ากับการประมวลผลแต่ละหน่วยพอดี i/o
กับ cpu จะไม่มีการรอคอยซึ่งกันและกัน
ปัญหาสำาคัญของระบบนี้คือ ความเหลื่อมลำ้าด้าน
เวลา
cpu มีความเร็วสูงกว่า i/o มาก แม้จะมีบฟเฟอร์เข้ามา
ั
ช่วย cpu ก็ต้องรอi/o อยู่ดี
หากเป็นงานประเภทต้องใช้ i/o มาก (I/O bounded)
cpu ต้องรอ i/o
หากเป็นงานประเภทต้องใช้ cpu มาก (CPU
bounded) ทำาให้ i/o ต้องรอ cpu
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 16
ั ิ
17. การประมวลผลออฟไลน์
(Off-Line Processing)
แบบไม่เชื่อมตรง แตกต่างจากระบบออนไลน์
ระบบออฟไลน์จะใช้เทปแม่เหล็ก (magnetic
tape) แทนเครื่องอ่านบัตรและเครื่องพิมพ์ที่มี
ความเร็วตำ่ามาก โดยคั่นระหว่าง input unit กับ
cpu และ cpu กับ output unit
การถ่ายเทข้อมูลผ่านเทปแม่สามารถทำาได้โดยใช้
เครื่องอ่านบัตรและเครื่องพิมพ์ที่ได้รับการ
ออกแบบเป็นพิเศษ ให้สามารถถ่ายเทข้อมูลโดย
ไม่ต้องผ่านซีพียู หรือเพิ่มหน่วยประมวลผลขนาด
เล็กที่ทำาหน้าที่เฉพาะด้านนี้ เรียกว่า I/O
Processor
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 17
ั ิ
18. CPU
card reader line printer
(a)
CPU
card reader Tape drives tape drives line printer
(b)
ภาพที่ 1.3 การทำางานของ i/o (a) แบบออนไลน์ (b)
แบบออฟไลน์
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 18
ั ิ
19. Off-Line Processing (cont.)
ระบบออฟไลน์ก็ยงมีข้อจำากัดดังนี้
ั
โปรแกรมต้องผ่านขั้นตอนมากขึ้น จะมีค่าใช้จ่าย
อื่น (overhead) สูง
ต้องการระบบปฏิบัติการที่ซับซ้อนมากขึ้น
ในการเก็บข้อมูลลงเทปจำาเป็นต้องรอให้มีหลายๆ
โปรแกรมเสียก่อน จึงค่อยนำาเข้าสู่เครื่องใหญ่เสียที
หนึ่ง แม้จะทำาให้ประโยชน์ใช้สอยของซีพียูดีขึ้น
แต่ผู้ใช้ต้องมีเวลารอคอย (turnaround time) มาก
ขึ้น
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 19
ั ิ
20. ระบบสพูล ิง (Spooling)
ในยุคนี้เทคโนโลยีสื่อบันทึกได้พฒนาจากเทปแม่เหล็ก
ั
เป็นดิสก์ ซึ่งได้นำาไปสู่การเปลี่ยนโฉมหน้าของการ
ออกแบบระบบปฏิบัติการและแอพพลิเคชันในเวลาต่อ
มา
ระบบสพูลิง หรือระบบการเก็บพักได้ใช้ระบบดิสก์แทน
เทปแม่เหล็ก
เทปไม่สามารถทำาการประมวลผลข้อมูลในเทปในขณะ
ที่กำาลังถ่ายเทข้อมูลจากเครื่องอ่านบัตรลงในเทปม้วน
เดียวกันได้
หลักการใช้ดิสก์แทนอุปกรณ์รับและแสดงผล เรียกว่า
การเก็บพักหรือสพูลิง (spooling--Simultaneous
Peripheral Operating On-Line)
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 20
ั ิ
21. Spooling (cont.)
เทปแม่เ หล็ก
เทปเป็นอุปกรณ์ประเภทที่มีการเข้าถึงข้อมูลแบบเรียงลำาดับ
(sequential-access device)
การประมวลผลโดยอาศัยเทปเป็นแบบออฟไลน์
ดิส ก์
ดิสก์เป็นอุปกรณ์ประเภทที่มีการเข้าถึงข้อมูลแบบสุ่ม (random-
access device) สามารถเข้าถึงข้อมูลโดยตรง (direct access) ได้
จึงทำาให้สามารถแยกงานออกจากกัน โดยสร้างตารางบ่งบอกว่าข้อมูล
หรือผลลัพธ์อยู่ที่ส่วนใดของดิสก์
การประมวลผลของดิสก์เป็นแบบเชื่อมโดยตรงกับซีพียู (On-Line
system) ดังนัน หน่วยที่ใช้ในการถ่ายเทข้อมูลระหว่างดิสก์กับ
้
อุปกรณ์ไอ/โอ จึงต้องเป็นตัวเดียวกับหน่วยที่ใช้ประมวลผลงานของผู้
ใช้
ใช้โปรแกรมพิเศษตัวหนึ่ง เรียกว่า โปรแกรม spool วิ่งคู่ขนานไปกับ
โปรแกรมของผู้ใช้ เพื่อทำาการถ่ายเทข้อมูลกับดิสก์ จึงก่อให้เกิดระบบ
หลาบโปรแกรม (Multiprogramming) ขันพื้นฐาน
้
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 21
ั ิ
22. ภาพที่ 1.4 ระบบสพูลิง
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 22
ั ิ
23. ข้อ แตกต่า งระหว่า งระบบบัฟ เฟอร์ก ับ สพู
ลิง
ระบบบัฟเฟอร์ เป็นการเหลื่อมกันระหว่างการ
ประมวลผลกับหน่วยนำาเข้า/ส่งออก ของโปรแกรม
เดียวกัน ซึ่งไม่อาจทำาได้มากนักด้วยข้อจำากัดของ
ขั้นตอนการทำางานของโปรแกรมนั้นๆ
ระบบสพูลง เป็นการเหลื่อมกันของการประมวลผล
ิ
กับการรับและแสดงผลของอีกงานหนึ่ง โดยผ่าน
โปรแกรมสพูล (spool)
ระบบสพูลง สามารถจัดการงานที่ถูกป้อนเข้ามา
ิ
แบบเรียงลำาดับได้โดยอิสระ เกิดเป็นกองกลางงาน
(job pool) ซึ่งระบบปฏิบัติการสามารถเลือกงาน
เข้าประมวลผลตามความเหมาะสมก่อให้เกิดระบบ
การจัดลำาดับงาน (job scheduling)
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 23
ั ิ
24. ระบบหลายโปรแกรม
(Multiprogrammed Systems)
ความสามารถของการทำางานแบบหลายโปรแกรม
(multiprogramming) ผูใช้ไม่สามารถใช้ cpu หรือ i/o แต่
้
เพียงผูเดียวตลอดเวลา
้
การทำางานแบบหลายโปรแกรมเป็นการเพิ่มการใช้งาน cpu
โดยการจัดงานให้กับ cpu ทำาอยู่ตลอดเวลา
งานหลายๆ งานจะถูกเก็บไว้ในหน่วยความจำาพร้อมๆ กัน
ในงานกองกลาง (job pool)
os จะหยิบหนึ่งงานในหน่วยความจำามาดำาเนินการจน
กระทั่งงานนั้นอาจต้องรอให้งานบางอย่างเสร็จสมบูรณ์
ในระบบแบบหลายโปรแกรม os ต้องสับเปลี่ยนไปทำางาน
อื่น เมื่องานนันต้องหยุดรอบางอย่างอีก ซีพียูก็จะสลับไป
้
ทำางานอืนอีกเป็นเช่นนี้ต่อไปเรื่อยๆ
่
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 24
ั ิ
25. ภาพที่ 1.5 โครงร่างหน่วยความจำาสำาหรับระบบ
หลายโปรแกรม จะมีหลายงานเก็บอยู่ในหน่วย
ความจำาหลักพร้อมๆกัน และซีพียจะเลือกมาหนึ่ง
ู
งานเพือกระทำาการ
่
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 25
ั ิ
26. Multiprogrammed Systems (cont.)
os ต้องเลือกว่างานใดจะสามารถเข้าใช้หน่วยความจำา
ได้ก่อน การตัดสินใจนี้เรียกว่า การสับเปลี่ยนงาน
(job scheduling)
os ต้องเลือกว่าจะ run งานใดที่พร้อมถูก run ก่อน
เรียกว่า การจัดลำาดับการใช้ซีพียู (CPU scheduling)
การที่มีหลายๆ งานดำาเนินไปพร้อมๆ กัน ความ
สามารถของแต่ละงานที่จะมีผลกระทบต่องานอืนต้อง ่
ถูกจำากัดในทุกขั้นตอนของระบบปฏิบัติการ ได้แก่
การจัดลำาดับกระบวนการ (process scheduling)
หน่วยเก็บข้อมูลแบบจานบันทึก (disk storage)
การจัดการหน่วยความจำา (memory management)
การจัดสรร i/o (i/o allocation)
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 26
ั ิ
28. ระบบการแบ่ง กัน ใช้เ วลา
(Time-Sharing Systems)
เป็นเทคนิคที่ผู้ใช้หลายคนสามารถแบ่งปันการใช้
ทรัพยากรคอมพิวเตอร์ร่วมกันในเวลาเดียวกัน
os จะแบ่งเวลาออกเป็นช่วงสั้นๆ เรียกว่า เสี้ยวเวลา
(time slice)
เวียนกระทำาการกับโปรแกรมหรือกระบวนการของผู้
ใช้เป็นลำาดับไป
ช่วยให้เวลาการตอบสนอง (response time) ต่อผู้ใช้
ทั้งหมดดีขึ้นและซีพยูทำางานได้เต็มประสิทธิภาพ
ี
เวลาการตอบสนอง หมายถึง ช่วงเวลาตั้งแต่ผู้ใช้ป้อน
คำาสั่งให้คอมพิวเตอร์จนกระทั่งคอมพิวเตอร์ตอบรับมา
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 28
ั ิ
29. Time-Sharing Systems (cont.)
แบบหลายภารกิจ (multitasking)
หมายถึงสมรรถนะการทำางานแบบหลายโปรแกรมของระบบ
ปฏิบัติการสำาหรับผู้ใช้คนเดียว อย่างเช่นในคอมพิวเตอร์ส่วน
บุคคล โดยที่ผู้ใช้คนหนึ่งสามารถดำาเนินการ (run) หลาย
โปรแกรมในเวลาเดียวกันบนเครื่องเดียวกัน
แบบมัล ติเ ธรด (multithreading)
สามารถแบ่งโปรแกรมหรือกระจายกระบวนการออกเป็นกระ
บวนการย่อยๆ เรียกว่า เธรด (thread) ซึ่งเป็นหน่วยย่อยที่เล็ก
ที่สุดของกระบวนการที่สามารถกระทำาการได้ (execution unit
of process หรือ executable entity)
ในระบบมัลติเธรด จะซอยโปรแกรม หรือกระบวนการออก
เป็นหน่วยย่อยๆ แล้วทำางานคู่ขนานกันไป ซึ่งจะช่วยให้
โปรแกรมทำางานเสร็จเร็วขึ้น
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 29
ั ิ
30. Time-Sharing Systems (cont.)
หน่ว ยเก็บ เสมือ น (virtual storage )
เป็นเทคนิคในการแบ่งปันหน่วยความจำาเพื่อให้สามารถ
กระทำาการกับหลายโปรแกรมได้อย่างมีประสิทธิภาพ
บางทีเรียกว่าหน่วยความจำาเสมือน (virtual memory)
โดยวิธีการแบ่งส่วนของโปรแกรมออกเป็นสองส่วน
ส่วนแรกจะเก็บเฉพาะส่วนที่จำาเป็นสำาหรับการกระ
ทำาการไว้ในหน่วยความจำาหลักจึงเรียกส่วนนีว่า หน่วย
้
เก็บจริง (real storage) และส่วนที่เหลือจะเก็บไว้ใน
หน่วยเก็บรอง เช่นดิสก์ จึงเรียกส่วนนีว่า หน่วยเก็บ
้
เสมือน (virtual storage)
โดยที่โปรแกรมประยุกต์จะถูกแบ่งออกเป็นส่วนๆ ลงใน
หน้า (page) ซึ่งมีขนาดคงที่ หรือ ส่วน (segment) ซึ่ง
มีขนาดที่แปรเปลียนได้
่
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 30
ั ิ
32. ระบบคอมพิว เตอร์แ บบตั้ง โต๊ะ
(Desktop Systems)
คอมพิวเตอร์ส่วนบุคคล (personal computer) ถูก
ออกแบบมาเพื่อรองรับการใช้งานสำาหรับผู้ใช้คนเดียว
อุปกรณ์ i/o ต่างๆ ได้แก่ แป้นพิมพ์ เมาส์ เครื่องพิมพ์
จอภาพ
คุณลักษณะของระบบปฏิบัติการใหญ่ๆได้ถูกลดขนาด
ลงให้เหมาะกับพีซี มีความสามารถมากขึ้น เร็วขึ้น และ
ระบบฮาร์ดแวร์ที่มีความซับซ้อนมากขึ้นได้ถูกพัฒนา
ขึ้นมา
เน้นความสะดวกและการตอบสนองต่อผู้ใช้เป็นหลัก
ไม่เน้นการใช้ประโยชน์จากซีพียูและระบบป้องกันที่มี
อยู่บนระบบเมนแฟรม
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 32
ั ิ
33. ระบบหลายตัว ประมวลผล
(Multiprocessor Systems)
ระบบในปัจจุบันส่วนมากเป็นแบบตัวประมวลผล
เดี่ยว (single-processor systems) แต่สามารถ
ขยายขีดความสามารถได้หลายวิธี เช่น dual
core, hyper threading, multi-core
ระบบแบบหลายตัวประมวลผล (multiprocessor
systems) บางทีเรียกว่าระบบขนาน (parallel
systems) หรือระบบคู่แน่น (tightly coupled
systems)
เป็นระบบที่มีตัวประมวลผลมากกว่า 1 ตัวอยู่ใน
ระบบสื่อสารแบบปิด มีการใช้บัสคอมพิวเตอร์ และ
นาฬิการ่วมกัน และบางครั้งรวมถึงหน่วยความจำา
และอุปกรณ์ต่อพ่วงด้วย
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 33
ั ิ
34. Multiprocessor Systems (cont.)
ข้อดีสำาคัญของระบบหลายตัวประมวลผล
การเพิ่มปริมาณงาน (throughput)
การประหยัดอันเนื่องมาจากขนาด (economy of
scale)
เพิ่มความเชื่อถือได้ (increased reliability)
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 34
ั ิ
35. Multiprocessor Systems (cont.)
ระบบมัลติโพรเซสเซอร์แบบสมมาตร หรือ
SMP (symmetric multiprocessing)
ทุกตัวประมวลผลอยู่ในระดับเดียวกัน (peers) ไม่มี
ความสัมพันธ์แบบหลัก-รอง ระหว่างตัวประมวลผล
แต่ละตัวประมวลผลจะดำาเนินสำาเนาของระบบ
ปฏิบัติการชุดเดียวกันไปพร้อมๆ กัน
ทุกตัวประมวลผลจะรันกระบวนการจำานวนเท่าๆ
กัน
ระบบปฏิบัติการส่วนใหญ่สนับสนุน SMP
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 35
ั ิ
36. Multiprocessor Systems (cont.)
แบบระบบมัลติโพรเซสเซอร์แบบอสมมาตร
(asymmetric multiprocessing)
ตัวประมวลผลแต่ละตัวจะถูกมอบหมายงานเฉพาะให้ทำา
มีตัวประมวลผลหลัก (master processor) คอยควบคุม
ระบบ
ส่วนตัวประมวลผลอืนๆ อาจเรียกว่าตัวประมวลผลร่วม
่
จะรอคำาสั่งจากตัวหลัก หรืออาจทำางานที่กำาหนดไว้ลวง
่
หน้า (predefined tasks)
รูปแบบความสัมพันธ์นี้เรียกว่า ความสัมพันธ์แบบหลัก-
รอง (master-slave relationship)
ตัวประมวลผลหลักจัดตารางและกำาหนดงานให้กับตัว
ประมวลผลร่วม
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 36
ั ิ
38. ระบบทำา งานแบบทัน ที
(Real-Time Systems)
ระบบทำางานแบบทันที การประมวลผลจะต้องถูกดำาเนินการ
ภายในเวลาที่กำาหนด มิฉะนั้นระบบจะหยุดหรือล้มเหลว
ถูกใช้เมื่อต้องการการตอบสนองแบบทันทีของการทำางานของตัว
ประมวลผลหรือกลไกลของข้อมูล
มักถูกใช้เป็นอุปกรณ์ควบคุมในโปรแกรมประยุกต์เฉพาะงาน ตัว
รับรู้ (sensors) นำาข้อมูลเข้าสู่เครื่องคอมพิวเตอร์ และเครื่อง
คอมพิวเตอร์ต้องวิเคราะห์ข้อมูลและอาจจะปรับการควบคุมเพื่อ
แก้ไขการรับข้อมูลเข้าของตัวรับรู้
ประเภทของระบบทำางานแบทันที
ระบบฮาร์ดเรียลไทม์ (hard real-time system) เป็นระบบที่รับรองว่า
ภารกิจวิกฤต (critical task) ต้องเสร็จตามเวลาที่กำาหนด
ระบบซอฟต์เรียลไทม์ (soft real-time system) ซึ่งงานที่วิกฤตจะได้รับ
ลำาดับความสำาคัญ (priority) เหนือกว่างานอื่นๆ และจะได้รับลำาดับความ
สำาคัญนั้นจนกระทั่งงานเสร็จสมบูรณ์
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 38
ั ิ
39. ระบบกระจาย
(Distributed Systems)
เครือข่ายคอมพิวเตอร์ทใช้ระบบแบบคูหลวม (loosely
ี่ ่
coupled) หรือระบบแบบกระจาย
ประกอบด้วยกลุ่มของตัวประมวลผลซึ่งไม่ได้แบ่งกันใช้หน่วย
ความจำาหรือนาฬิการะบบ
แต่ละตัวประมวลผลมีหน่วยความจำาของตัวเอง (local memory)
ตัวประมวลผลติดต่อกับผู้อนผ่านเส้นทางสื่อสารต่างๆ เช่น บัส
ื่
ความเร็วสูง หรือสายโทรศัพท์
ระบบปฏิบติการเครือข่าย (network operating system-
ั
NOS)
เป็นระบบปฏิบติการที่มีคณลักษณะ เช่น การแบ่งกันใช้แฟ้ม
ั ุ
ข้อมูลข้ามเครือข่าย รูปแบบการติดต่อสื่อสารซึ่งอนุญาตให้
กระบวนการต่างกันบนเครื่องคอมพิวเตอร์ต่างเครื่องกันได้แลก
เปลี่ยนข้อมูลข่าวสารกัน
เครื่องคอมพิวเตอร์ที่รัน NOS ปฏิบัติตัวอย่างเป็นอิสระจาก
คอมพิวเตอร์เครื่องอืนบนเครือข่าย
่
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 39
ั ิ
40. Distributed Systems (cont.)
ระบบปฏิบัติการแบบกระจาย (distributed
operating system) มีสภาพแวดล้อมทีเป็น
่
อิสระน้อยกว่าระบบปฏิบัติการเครือข่าย
แบ่งออกเป็น 2 ประเภท
ระบบรับ-ให้บริการ (client-server systems)
ระบบเพียร์ทูเพียร์ (peer-to-peer systems)
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 40
ั ิ
41. Distributed Systems (cont.)
ภาพที่ 1.8 โครงสร้างทัวไปของระบบ
่
client/server
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 41
ั ิ
42. Distributed Systems (cont.)
ต้องการโครงสร้างพืนฐานของเครือข่าย
้
รองรับ เช่น LAN หรือ WAN
อาจใช้เป็นระบบ client/server หรือ peer-to-
peer ก็ได้
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 42
ั ิ
43. Distributed Systems (cont.)
ข้อดี
ใช้ทรัพยากรร่วมกัน (Resources Sharing)
เพิ่มความเร็วในการคำานวณ แบ่งปันภาระงาน
(Computation speed up – load sharing)
เพิ่มความเชื่อถือได้ (Reliability)
ระบบการสื่อสาร (Communications)
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 43
ั ิ
44. ระบบคลัส เตอร์
(Clustered systems)
ระบบคลัสเตอร์ยอมให้หลายระบบสามารถใช้ระบบ
หน่วยเก็บชุดเดียวกันได้
คล้ายกับระบบขนาน ซึ่งรวมหลายหน่วยประมวลผลก
ลางเข้าประมวลผลร่วมกัน หรือช่วยกันประมวลผลงาน
ใหญ่ๆ ให้เสร็จในเวลาที่รวดเร็ว และยอมรับการเข้า
ถึงจากเครื่องของสมาชิก มีความเชื่อถือได้สูงมาก
คลัสเตอร์แบบสมมาตร (Asymmetric clustering)
1 server runs แอพพลิเคชันในขณะที่ servers อื่นทำาหน้าที่
standby.
คลัสเตอร์แบบอสมมาตร (Symmetric clustering)
ทุกโฮสต์ช่วยกันรันแอพพลิเคชัน (all N hosts are running
the application)
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 44
ั ิ
45. ระบบคอมพิว เตอร์ม ือ ถือ
(Handheld systems)
บางทีเรียกว่า ระบบเคลื่อนที่ได้ (Mobile system) รวมไป
ถึงพีดเอ (PDA: personal digital assistants) เช่น พาล์ม
ี
(Palm), พ็อกเก็ตพีซี (Pocket PC) หรือโทรศัพท์แบบเซล
ลูลาร์ (cellular telephone) สมาร์ทโฟน iPod, iPhone
Tablet และอุปกรณ์แบบเคลื่อนที่ได้อนๆ ซึ่งเชื่อมต่อเป็น
ื่
เครือข่าย ผ่านระบบ Wi-Fi, Bluetooth เป็นต้น
ฮาร์ดแวร์ของอุปกรณ์ประเภทพกพาได้รับการพัฒนาให้มี
ขีดความสามารถทีเพิ่มมากขึ้นเรื่อยๆ
่
ประเด็นที่พงพิจารณา
ึ
ข้อจำากัดของหน่วยความจำา
หน่วยประมวลผลความเร็วตำ่า
ขนาดของหน่วยแสดงผล
การบริโภคพลังงาน
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 45
ั ิ
46. หน้า ที่ข องระบบปฏิบ ต ก าร
ั ิ
การจัดการกระบวนการ (process management)
การจัดการหน่วยความจำาหลัก (main memory
management)
การจัดการแฟ้ม (file management)
การจัดการระบบไอ/โอ (I/O system management)
การจัดการหน่วยเก็บรอง (secondary-storage
management)
เครือข่าย (networking)
ระบบการป้องกัน (protection system)
ระบบตัวแปลคำาสั่ง (command interpreter system)
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 46
ั ิ
47. Migration of Operating-System Concepts and
Features
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 47
ั ิ
48. Computing Environments
Traditional computing
Web-Based Computing
Embedded Computing
Mobile Computing
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 48
ั ิ
49. การติด ต่อ ระหว่า งอุป กรณ์ร อบข้า งกับ
ซีพ ีย ู
การหยั่งสัญญาณ หรือพอลลิง (polling)
การขัดจังหวะ หรืออินเทอร์รัพต์ (interrupt)
ตู้ไปรษณีย์ หรือเมลบ็อกซ์ (mailbox)
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 49
ั ิ
50. การติด ต่อ ระหว่า งอุป กรณ์ร อบข้า งกับ
ซีพ ีย ู
การพอลลิง
เป็นการติดต่อที่ช่วงเวลาหนึ่งๆ ซีพียู จะหยุดงานที่ทำาอยู่ชั่วคราวเพื่อ
เข้าไปตรวจอุปกรณ์ไอ/โอแต่ละอุปกรณ์ว่ามีการขอบริการอะไรจาก
ซีพียู บ้างจนครบทุกอุปกรณ์ แล้วจึงจะกลับไปทำางานที่ค้างไว้ต่อ
การขัดจังหวะ
จะเป็นลักษณะการติดต่อโดยการส่งสัญญาณการขัดจังหวะไปยัง
interrupt driven โดยฮาร์ดแวร์หรือซอฟต์แวร์เพื่อบอกซีพียู
เมื่อซีพียรับรู้ก็จะหยุดทำางานรอจนกระทั่งการส่งข้อมูลจากอุปกรณ์นั้น
ู
เสร็จสิ้นลง จึงกลับไปทำางานต่อ
ตู้ไปรษณีย์
ระบบจะกันเนื้อที่บางส่วนไว้ในหน่วยความจำาเพื่อให้ i/o สามารถส่ง
ข้อมูลเข้าไปเก็บในหน่วยความจำาส่วนนี้
ในช่วงเวลาหนึ่ง ซีพียจะหยุดงานที่ทำา เมื่อพบว่ามีข้อมูลก็จะโหลด
ู
ข้อมูลเหล่านั้น
จากนั้น ซีพียูจะกลับไปทำางานที่ค้างอยู่ต่อ
ซึ่งวิธีนี้เป็นการผสมผสานวิธีแบบพอลลิงและการขัดจังหวะเข้าด้วยกัน
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 50
ั ิ
51. การเรีย กระบบ
(System Calls)
ทำาหน้าทีจัดเตรียมส่วนต่อประสานระหว่าง
่
กระบวนการหนึ่งกับระบบปฏิบัติการ
การเรียกระบบมักเป็นคำาสั่งภาษาเอสแซมบลี
หรืออาจเขียนด้วยภาษาระดับสูงก็ได้ เรียกว่า
การเรียกระบบย่อย (subroutine call)
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 51
ั ิ
53. System Calls (cont.)
ประเภทของ system call
การควบคุมกระบวนการ (process control)
การจัดการแฟ้ม (file management)
การจัดการอุปกรณ์ (device management)
การใช้งานข้อมูลของระบบ (information
maintenance)
การสื่อสาร (communication)
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 53
ั ิ
54. ระบบปฏิบ ต ิก ารสำา หรับ ไมโคร
ั
คอมพิว เตอร์
การบูต (booting)
ภารกิจดูแลทัวไปหรืองานแม่บ้าน
่
(housekeeping tasks)
ส่วนต่อประสานกับผู้ใช้ (user interface)
การจัดการทรัพยากรคอมพิวเตอร์
(managing computer resources)
การจัดการภารกิจ (managing tasks)
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 54
ั ิ
55. สรุป
คอมพิวเตอร์และระบบปฏิบัติการ
วิวัฒนาการและชนิดของระบบปฏิบัติการ
หน้าที่ของระบบปฏิบัติการ
การติดต่อระหว่างอุปกรณ์รอบข้างกับซีพยู
ี
การเรียกระบบ
ไมโครคอมพิวเตอร์และระบบปฏิบัติการ
วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 55
ั ิ
56. วิเ ชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบตการ | 56
ั ิ