งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

ระบบคอมพิวเตอร์และ ระบบปฏิบัติการ โครงสร้างระบบและสถาปัตยกรรม คอมพิวเตอร์ วิเชษฐ์ พลายมาศ นงลักษณ์ พรมทอง.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "ระบบคอมพิวเตอร์และ ระบบปฏิบัติการ โครงสร้างระบบและสถาปัตยกรรม คอมพิวเตอร์ วิเชษฐ์ พลายมาศ นงลักษณ์ พรมทอง."— ใบสำเนางานนำเสนอ:

1 ระบบคอมพิวเตอร์และ ระบบปฏิบัติการ โครงสร้างระบบและสถาปัตยกรรม คอมพิวเตอร์ วิเชษฐ์ พลายมาศ นงลักษณ์ พรมทอง

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

3 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 3 หัวข้อบรรยาย n Computer System Components n What is an Operating System? n Mainframe Systems n Desktop Systems n Multiprocessor Systems n Distributed Systems n Clustered System n Real -Time Systems n Handheld Systems n การติดต่อระหว่างอุปกรณ์รอบข้างกับซีพียู n System Call n ไมโครคอมพิวเตอร์และระบบปฏิบัติการ

4 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 4

5 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 5 ส่วนประกอบของระบบคอมพิวเตอร์ Computer System Components n ฮาร์ดแวร์ (h/w) ทำหน้าที่จัดหาทรัพยากรเพื่อการ คำนวณพื้นฐาน ได้แก่ ซีพียู หน่วยความจำ i/o devices เป็นต้น n ระบบปฏิบัติการ (Operating System) ควบคุมและ ประสานงานการใช้ฮาร์ดแวร์เหล่านั้นที่ถูกเรียกใช้โดย หลายแอพพลิเคชันโปรแกรม สำหรับผู้ใช้ต่างๆ n แอพพลิเคชันโปรแกรม (application program) กรรมวิธีที่ทรัพยากรระบบจะถูกใช้เพื่อแก้ปัญหาในทาง คำนวณของผู้ใช้งาน เช่น คอมไพเลอร์ ระบบ ฐานข้อมูล เกมส์วีดิโอ ซอฟต์แวร์ธุรกิจ เป็นต้น n ผู้ใช้ (users) ได้แก่ คน เครื่องคอมพิวเตอร์ และ คอมพิวเตอร์เครื่องอื่นๆ

6 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 6 Abstract View of System Components

7 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 7 ระบบปฏิบัติการ OS: Operating Systems n คือ กลุ่มโปรแกรมที่ทำหน้าที่เป็นตัวกลาง ระหว่างผู้ใช้ กับเครื่องคอมพิวเตอร์ n มีจุดมุ่งหมายเพื่อจัดหาสภาพแวดล้อมที่ เหมาะสมเพื่อให้ผู้ใช้กระทำการกับโปรแกรม (execute programs) n โดยมีเป้าหมายหลักเพื่อให้การใช้ระบบ คอมพิวเตอร์ของผู้ใช้เป็นไปอย่างสะดวก และ การใช้ฮาร์ดแวร์เป็นไปอย่างมีประสิทธิภาพ

8 Silberschatz, Galvin and Gagne  Operating System Concepts แบบจำลองพื้นผิวแต่ละชั้นที่แสดงปฏิสัมพันธ์ระหว่างผู้ใช้, โปรแกรมประยุกต์, ระบบปฏิบัติการ และฮาร์ดแวร์

9 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 9 Operating System Definitions n ผู้จัดสรรทรัพยากร (Resource allocator) ทำหน้าที่จัดการและจัดสรรทรัพยากร n โปรแกรมควบคุม (Control program) ควบคุมการกระทำการ (execution) ของ โปรแกรมผู้ใช้และปฏิบัติต่างๆ (operations) ของอุปกรณ์ i/o n เคอร์แนล (Kernel) โปรแกรมชนิดหนึ่งที่ รันอยู่ตลอดเวลา เพื่อให้แอพพลิคชัน โปรแกรมอื่นๆ สามารถดำรงอยู่ได้

10 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 10 วิวัฒนาการและชนิดของระบบปฏิบัติการ n ระบบปฏิบัติการและสถาปัตยกรรมคอมพิวเตอร์มีอิทธิพล ซึ่งกันและกันอย่างมาก n พบได้จากวิวัฒนาการของคอมพิวเตอร์ ตั้งแต่อดีตจาก หลอดสุญญากาศที่ไม่มีระบบปฏิบัติการ ซึ่งเป็นสิ่งที่ทำให้ ต้องมีการเพิ่มประสิทธิภาพของระบบปฏิบัติการให้มี โครงสร้างที่ทันสมัยเหมาะสำหรับการใช้งาน n ถูกพัฒนามาจากระบบเครื่องเมนเฟรมที่ต้องการเพียง ระบบปฏิบัติการอย่างง่ายๆ สำหรับทำงานกับแอพพลิเคชัน เพียงอย่างเดียว จนกระทั่งถึงระบบแบ่งกันใช้เวลาที่ ซับซ้อน n จากนั้น จึงพัฒนาไปอยู่บนระบบคอมพิวเตอร์ขนาดเล็ก อย่างคอมพิวเตอร์แบบตั้งโต๊ะ มาเป็นระบบคอมพิวเตอร์ แบบมือถือ และอุปกรณ์แบบเคลื่อนได้ในปัจจุบัน

11 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 11 พัฒนาการที่สำคัญของระบบปฏิบัติการ n Mainframe Systems n Desktop Systems n Multiprocessor Systems n Distributed Systems n Clustered System n Real -Time Systems n Handheld Systems

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

13 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 13 ภาพที่ 1.2 โครงร่างของหน่วยความจำสำหรับระบบเชิง กลุ่มอย่างง่าย

14 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 14 ระบบเชิงกลุ่มแบบอัตโนมัติ (Automatic Batch Systems) n เป็น os รุ่นแรกใช้กับเครื่อง IBM 701 n os รุ่นนี้เป็นเพียงโปรแกรมฝังตัวเล็กๆ (resident monitor) ซึ่งวิ่งอยู่ภายในเครื่องตลอดเวลา และทำ การส่งมอบการควบคุมเครื่องให้กับโปรแกรมของผู้ใช้ ทีละโปรแกรมตามลำดับ n ใช้ภาษาควบคุมงาน JCL (Job Control Language) n ช่วงเวลารอคอย (turnaround time) คือตั้งแต่ส่งมอบ งานเข้าเครื่อง (job submission) จนกระทั่งงานเสร็จ สมบูรณ์ (job completion) n ยังมีปัญหาในเรื่องความแตกต่างของความเร็วระหว่าง i/o กับ cpu ทำให้ประโยชน์ใช้สอยของซีพียู (cpu utilization) ยังทำไม่เต็มที่

15 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 15 ระบบบัฟเฟอร์ (Buffering) n มีหลักการทำงานคือ ให้ i/o ทำงานขนานไป พร้อมกับ cpu ให้มากที่สุด เพื่อลดเวลาที่ cpu รอ i/o n ในขณะที่ cpu กำลังประมวลผล i/o จะอ่านข้อมูล ถัดไปมาไว้ที่หน่วยความจำ ที่เรียกว่า บัฟเฟอร์ (buffer) n บัฟเฟอร์ของ i/o ได้แก่ เครื่องอ่านบัตร (card reader) และเครื่องพิมพ์รายบรรทัด (line printer) n i/o จะทำงานติดต่อกับ cpu โดยตรง เรียกว่า ระบบต่อตรง (On-Line)

16 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 16 ระบบบัฟเฟอร์ (Buffering) (cont.) n ถ้าการอ่าน/เขียนสำหรับข้อมูลแต่ละหน่วยใช้เวลา เท่ากับการประมวลผลแต่ละหน่วยพอดี i/o กับ cpu จะไม่มีการรอคอยซึ่งกันและกัน n ปัญหาสำคัญของระบบนี้คือ ความเหลื่อมล้ำด้าน เวลา  cpu มีความเร็วสูงกว่า i/o มาก แม้จะมีบัฟเฟอร์เข้ามา ช่วย cpu ก็ต้องรอi/o อยู่ดี  หากเป็นงานประเภทต้องใช้ i/o มาก (I/O bounded) cpu ต้องรอ i/o  หากเป็นงานประเภทต้องใช้ cpu มาก (CPU bounded) ทำให้ i/o ต้องรอ cpu

17 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 17 การประมวลผลออฟไลน์ (Off-Line Processing) n แบบไม่เชื่อมตรง แตกต่างจากระบบออนไลน์ n ระบบออฟไลน์จะใช้เทปแม่เหล็ก (magnetic tape) แทนเครื่องอ่านบัตรและเครื่องพิมพ์ที่มี ความเร็วต่ำมาก โดยคั่นระหว่าง input unit กับ cpu และ cpu กับ output unit n การถ่ายเทข้อมูลผ่านเทปแม่สามารถทำได้โดยใช้ เครื่องอ่านบัตรและเครื่องพิมพ์ที่ได้รับการ ออกแบบเป็นพิเศษ ให้สามารถถ่ายเทข้อมูลโดย ไม่ต้องผ่านซีพียู หรือเพิ่มหน่วยประมวลผลขนาด เล็กที่ทำหน้าที่เฉพาะด้านนี้ เรียกว่า I/O Processor

18 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 18 ภาพที่ 1.3 การทำงานของ i/o (a) แบบออนไลน์ (b) แบบออฟไลน์

19 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 19 Off-Line Processing (cont.) n ระบบออฟไลน์ก็ยังมีข้อจำกัดดังนี้  โปรแกรมต้องผ่านขั้นตอนมากขึ้น จะมีค่าใช้จ่าย อื่น (overhead) สูง  ต้องการระบบปฏิบัติการที่ซับซ้อนมากขึ้น  ในการเก็บข้อมูลลงเทปจำเป็นต้องรอให้มีหลายๆ โปรแกรมเสียก่อน จึงค่อยนำเข้าสู่เครื่องใหญ่เสียที หนึ่ง แม้จะทำให้ประโยชน์ใช้สอยของซีพียูดีขึ้น แต่ผู้ใช้ต้องมีเวลารอคอย (turnaround time) มากขึ้น

20 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 20 ระบบสพูลิง (Spooling) n ในยุคนี้เทคโนโลยีสื่อบันทึกได้พัฒนาจากเทป แม่เหล็กเป็นดิสก์ ซึ่งได้นำไปสู่การเปลี่ยนโฉมหน้า ของการออกแบบระบบปฏิบัติการและแอพพลิเคชันใน เวลาต่อมา n ระบบสพูลิง หรือระบบการเก็บพักได้ใช้ระบบดิสก์แทน เทปแม่เหล็ก n เทปไม่สามารถทำการประมวลผลข้อมูลในเทปใน ขณะที่กำลังถ่ายเทข้อมูลจากเครื่องอ่านบัตรลงในเทป ม้วนเดียวกันได้ n หลักการใช้ดิสก์แทนอุปกรณ์รับและแสดงผล เรียกว่า การเก็บพักหรือสพูลิง (spooling--Simultaneous Peripheral Operating On-Line)

21 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 21 Spooling (cont.) n เทปแม่เหล็ก  เทปเป็นอุปกรณ์ประเภทที่มีการเข้าถึงข้อมูลแบบเรียงลำดับ (sequential-access device)  การประมวลผลโดยอาศัยเทปเป็นแบบออฟไลน์ n ดิสก์  ดิสก์เป็นอุปกรณ์ประเภทที่มีการเข้าถึงข้อมูลแบบสุ่ม (random- access device) สามารถเข้าถึงข้อมูลโดยตรง (direct access) ได้ จึงทำให้สามารถแยกงานออกจากกัน โดยสร้างตารางบ่งบอกว่าข้อมูล หรือผลลัพธ์อยู่ที่ส่วนใดของดิสก์  การประมวลผลของดิสก์เป็นแบบเชื่อมโดยตรงกับซีพียู (On-Line system) ดังนั้น หน่วยที่ใช้ในการถ่ายเทข้อมูลระหว่างดิสก์กับอุปกรณ์ ไอ/โอ จึงต้องเป็นตัวเดียวกับหน่วยที่ใช้ประมวลผลงานของผู้ใช้  ใช้โปรแกรมพิเศษตัวหนึ่ง เรียกว่า โปรแกรม spool วิ่งคู่ขนานไปกับ โปรแกรมของผู้ใช้ เพื่อทำการถ่ายเทข้อมูลกับดิสก์ จึงก่อให้เกิดระบบ หลาบโปรแกรม (Multiprogramming) ขั้นพื้นฐาน

22 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 22 ภาพที่ 1.4 ระบบสพูลิง

23 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 23 ข้อแตกต่างระหว่างระบบบัฟเฟอร์กับสพูลิง n ระบบบัฟเฟอร์ เป็นการเหลื่อมกันระหว่างการ ประมวลผลกับหน่วยนำเข้า/ส่งออก ของโปรแกรม เดียวกัน ซึ่งไม่อาจทำได้มากนักด้วยข้อจำกัดของ ขั้นตอนการทำงานของโปรแกรมนั้นๆ n ระบบสพูลิง เป็นการเหลื่อมกันของการประมวลผล กับการรับและแสดงผลของอีกงานหนึ่ง โดยผ่าน โปรแกรมสพูล (spool) n ระบบสพูลิง สามารถจัดการงานที่ถูกป้อนเข้ามา แบบเรียงลำดับได้โดยอิสระ เกิดเป็นกองกลาง งาน (job pool) ซึ่งระบบปฏิบัติการสามารถเลือก งานเข้าประมวลผลตามความเหมาะสมก่อให้เกิด ระบบการจัดลำดับงาน (job scheduling)

24 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 24 ระบบหลายโปรแกรม (Multiprogrammed Systems) n ความสามารถของการทำงานแบบหลายโปรแกรม (multiprogramming) ผู้ใช้ไม่สามารถใช้ cpu หรือ i/o แต่ เพียงผู้เดียวตลอดเวลา n การทำงานแบบหลายโปรแกรมเป็นการเพิ่มการใช้งาน cpu โดยการจัดงานให้กับ cpu ทำอยู่ตลอดเวลา n งานหลายๆ งานจะถูกเก็บไว้ในหน่วยความจำพร้อมๆ กันใน งานกองกลาง (job pool) n os จะหยิบหนึ่งงานในหน่วยความจำมาดำเนินการ จนกระทั่งงานนั้นอาจต้องรอให้งานบางอย่างเสร็จสมบูรณ์ n ในระบบแบบหลายโปรแกรม os ต้องสับเปลี่ยนไปทำงาน อื่น เมื่องานนั้นต้องหยุดรอบางอย่างอีก ซีพียูก็จะสลับไป ทำงานอื่นอีกเป็นเช่นนี้ต่อไปเรื่อยๆ

25 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 25 ภาพที่ 1.5 โครงร่างหน่วยความจำสำหรับระบบ หลายโปรแกรม จะมีหลายงานเก็บอยู่ใน หน่วยความจำหลักพร้อมๆกัน และซีพียูจะเลือกมา หนึ่งงานเพื่อกระทำการ

26 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 26 Multiprogrammed Systems (cont.) n os ต้องเลือกว่างานใดจะสามารถเข้าใช้หน่วยความจำ ได้ก่อน การตัดสินใจนี้เรียกว่า การสับเปลี่ยนงาน (job scheduling) n os ต้องเลือกว่าจะ run งานใดที่พร้อมถูก run ก่อน เรียกว่า การจัดลำดับการใช้ซีพียู (CPU scheduling) n การที่มีหลายๆ งานดำเนินไปพร้อมๆ กัน ความสามารถของแต่ละงานที่จะมีผลกระทบต่องานอื่น ต้องถูกจำกัดในทุกขั้นตอนของระบบปฏิบัติการ ได้แก่  การจัดลำดับกระบวนการ (process scheduling)  หน่วยเก็บข้อมูลแบบจานบันทึก (disk storage)  การจัดการหน่วยความจำ (memory management)  การจัดสรร i/o (i/o allocation)

27 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 27 ภาพที่ 1.6 เปรียบเทียบการทำงานระหว่าง สภาพแวดล้อมแบบโปรแกรมเดียวและแบบหลาย โปรแกรม

28 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 28 ระบบการแบ่งกันใช้เวลา (Time-Sharing Systems) n เป็นเทคนิคที่ผู้ใช้หลายคนสามารถแบ่งปันการใช้ ทรัพยากรคอมพิวเตอร์ร่วมกันในเวลาเดียวกัน n os จะแบ่งเวลาออกเป็นช่วงสั้นๆ เรียกว่า เสี้ยวเวลา (time slice) n เวียนกระทำการกับโปรแกรมหรือกระบวนการของผู้ใช้ เป็นลำดับไป n ช่วยให้เวลาการตอบสนอง (response time) ต่อผู้ใช้ ทั้งหมดดีขึ้นและซีพียูทำงานได้เต็มประสิทธิภาพ n เวลาการตอบสนอง หมายถึง ช่วงเวลาตั้งแต่ผู้ใช้ป้อน คำสั่งให้คอมพิวเตอร์จนกระทั่งคอมพิวเตอร์ตอบรับมา

29 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 29 Time-Sharing Systems (cont.) n แบบหลายภารกิจ (multitasking)  หมายถึงสมรรถนะการทำงานแบบหลายโปรแกรมของ ระบบปฏิบัติการสำหรับผู้ใช้คนเดียว อย่างเช่นในคอมพิวเตอร์ ส่วนบุคคล โดยที่ผู้ใช้คนหนึ่งสามารถดำเนินการ (run) หลายโปรแกรมในเวลาเดียวกันบนเครื่องเดียวกัน n แบบมัลติเธรด (multithreading)  สามารถแบ่งโปรแกรมหรือกระจายกระบวนการออกเป็น กระบวนการย่อยๆ เรียกว่า เธรด ( thread ) ซึ่งเป็นหน่วยย่อยที่ เล็กที่สุดของกระบวนการที่สามารถกระทำการได้ (execution unit of process หรือ executable entity)  ในระบบมัลติเธรด จะซอยโปรแกรม หรือกระบวนการ ออกเป็นหน่วยย่อยๆ แล้วทำงานคู่ขนานกันไป ซึ่งจะช่วยให้ โปรแกรมทำงานเสร็จเร็วขึ้น

30 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 30 Time-Sharing Systems (cont.) n หน่วยเก็บเสมือน (virtual storage)  เป็นเทคนิคในการแบ่งปันหน่วยความจำเพื่อให้สามารถ กระทำการกับหลายโปรแกรมได้อย่างมีประสิทธิภาพ บางทีเรียกว่าหน่วยความจำเสมือน (virtual memory)  โดยวิธีการแบ่งส่วนของโปรแกรมออกเป็นสองส่วน ส่วนแรกจะเก็บเฉพาะส่วนที่จำเป็นสำหรับการกระทำ การไว้ในหน่วยความจำหลักจึงเรียกส่วนนี้ว่า หน่วยเก็บ จริง (real storage) และส่วนที่เหลือจะเก็บไว้ในหน่วย เก็บรอง เช่นดิสก์ จึงเรียกส่วนนี้ว่า หน่วยเก็บเสมือน (virtual storage)  โดยที่โปรแกรมประยุกต์จะถูกแบ่งออกเป็นส่วนๆ ลงใน หน้า (page) ซึ่งมีขนาดคงที่ หรือ ส่วน (segment) ซึ่ง มีขนาดที่แปรเปลี่ยนได้

31 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 31 ภาพที่ 1.7 หน่วยเก็บเสมือนเป็นเทคนิคที่ช่วยขยาย หน่วยความจำหลักของคอมพิวเตอร์

32 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 32 ระบบคอมพิวเตอร์แบบตั้งโต๊ะ (Desktop Systems) n คอมพิวเตอร์ส่วนบุคคล (personal computer) ถูก ออกแบบมาเพื่อรองรับการใช้งานสำหรับผู้ใช้คนเดียว n อุปกรณ์ i/o ต่างๆ ได้แก่ แป้นพิมพ์ เมาส์ เครื่องพิมพ์ จอภาพ n คุณลักษณะของระบบปฏิบัติการใหญ่ๆได้ถูกลดขนาด ลงให้เหมาะกับพีซี มีความสามารถมากขึ้น เร็วขึ้น และ ระบบฮาร์ดแวร์ที่มีความซับซ้อนมากขึ้นได้ถูก พัฒนาขึ้นมา n เน้นความสะดวกและการตอบสนองต่อผู้ใช้เป็นหลัก ไม่เน้นการใช้ประโยชน์จากซีพียูและระบบป้องกันที่มี อยู่บนระบบเมนแฟรม

33 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 33 ระบบหลายตัวประมวลผล (Multiprocessor Systems) n ระบบในปัจจุบันส่วนมากเป็นแบบตัวประมวลผล เดี่ยว (single-processor systems) แต่สามารถ ขยายขีดความสามารถได้หลายวิธี เช่น dual core, hyper threading, multi-core n ระบบแบบหลายตัวประมวลผล (multiprocessor systems) บางทีเรียกว่าระบบขนาน (parallel systems) หรือระบบคู่แน่น (tightly coupled systems) n เป็นระบบที่มีตัวประมวลผลมากกว่า 1 ตัวอยู่ใน ระบบสื่อสารแบบปิด มีการใช้บัสคอมพิวเตอร์ และ นาฬิการ่วมกัน และบางครั้งรวมถึงหน่วยความจำ และอุปกรณ์ต่อพ่วงด้วย

34 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 34 Multiprocessor Systems (cont.) n ข้อดีสำคัญของระบบหลายตัวประมวลผล  การเพิ่มปริมาณงาน (throughput)  การประหยัดอันเนื่องมาจากขนาด (economy of scale)  เพิ่มความเชื่อถือได้ (increased reliability)

35 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 35 Multiprocessor Systems (cont.) n ระบบมัลติโพรเซสเซอร์แบบสมมาตร หรือ SMP (symmetric multiprocessing)  ทุกตัวประมวลผลอยู่ในระดับเดียวกัน (peers) ไม่มี ความสัมพันธ์แบบหลัก-รอง ระหว่างตัวประมวลผล  แต่ละตัวประมวลผลจะดำเนินสำเนาของ ระบบปฏิบัติการชุดเดียวกันไปพร้อมๆ กัน  ทุกตัวประมวลผลจะรันกระบวนการจำนวนเท่าๆ กัน  ระบบปฏิบัติการส่วนใหญ่สนับสนุน SMP

36 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 36 Multiprocessor Systems (cont.) n แบบระบบมัลติโพรเซสเซอร์แบบอสมมาตร (asymmetric multiprocessing)  ตัวประมวลผลแต่ละตัวจะถูกมอบหมายงานเฉพาะให้ทำ  มีตัวประมวลผลหลัก (master processor) คอยควบคุม ระบบ  ส่วนตัวประมวลผลอื่นๆ อาจเรียกว่าตัวประมวลผลร่วม จะรอคำสั่งจากตัวหลัก หรืออาจทำงานที่กำหนดไว้ ล่วงหน้า (predefined tasks)  รูปแบบความสัมพันธ์นี้เรียกว่า ความสัมพันธ์แบบหลัก- รอง (master-slave relationship)  ตัวประมวลผลหลักจัดตารางและกำหนดงานให้กับตัว ประมวลผลร่วม

37 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 37 รูปที่ 1.7 สถาปัตยกรรมมัลติโพรเซสเซอร์แบบ สมมาตร หรือ SMP

38 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 38 ระบบทำงานแบบทันที (Real-Time Systems) n ระบบทำงานแบบทันที การประมวลผลจะต้องถูกดำเนินการ ภายในเวลาที่กำหนด มิฉะนั้นระบบจะหยุดหรือล้มเหลว n ถูกใช้เมื่อต้องการการตอบสนองแบบทันทีของการทำงานของตัว ประมวลผลหรือกลไกลของข้อมูล n มักถูกใช้เป็นอุปกรณ์ควบคุมในโปรแกรมประยุกต์เฉพาะงาน ตัว รับรู้ (sensors) นำข้อมูลเข้าสู่เครื่องคอมพิวเตอร์ และเครื่อง คอมพิวเตอร์ต้องวิเคราะห์ข้อมูลและอาจจะปรับการควบคุมเพื่อ แก้ไขการรับข้อมูลเข้าของตัวรับรู้ n ประเภทของระบบทำงานแบทันที  ระบบฮาร์ดเรียลไทม์ (hard real-time system) เป็นระบบที่รับรองว่า ภารกิจวิกฤต (critical task) ต้องเสร็จตามเวลาที่กำหนด  ระบบซอฟต์เรียลไทม์ (soft real-time system) ซึ่งงานที่วิกฤตจะได้รับ ลำดับความสำคัญ (priority) เหนือกว่างานอื่นๆ และจะได้รับลำดับ ความสำคัญนั้นจนกระทั่งงานเสร็จสมบูรณ์

39 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 39 ระบบกระจาย (Distributed Systems) n เครือข่ายคอมพิวเตอร์ที่ใช้ระบบแบบคู่หลวม (loosely coupled) หรือระบบแบบกระจาย  ประกอบด้วยกลุ่มของตัวประมวลผลซึ่งไม่ได้แบ่งกันใช้ หน่วยความจำหรือนาฬิการะบบ  แต่ละตัวประมวลผลมีหน่วยความจำของตัวเอง (local memory)  ตัวประมวลผลติดต่อกับผู้อื่นผ่านเส้นทางสื่อสารต่างๆ เช่น บัส ความเร็วสูง หรือสายโทรศัพท์ n ระบบปฏิบัติการเครือข่าย (network operating system- NOS)  เป็นระบบปฏิบัติการที่มีคุณลักษณะ เช่น การแบ่งกันใช้ แฟ้มข้อมูลข้ามเครือข่าย รูปแบบการติดต่อสื่อสารซึ่งอนุญาตให้ กระบวนการต่างกันบนเครื่องคอมพิวเตอร์ต่างเครื่องกันได้ แลกเปลี่ยนข้อมูลข่าวสารกัน  เครื่องคอมพิวเตอร์ที่รัน NOS ปฏิบัติตัวอย่างเป็นอิสระจาก คอมพิวเตอร์เครื่องอื่นบนเครือข่าย

40 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 40 Distributed Systems (cont.) n ระบบปฏิบัติการแบบกระจาย (distributed operating system) มีสภาพแวดล้อมที่เป็น อิสระน้อยกว่าระบบปฏิบัติการเครือข่าย n แบ่งออกเป็น 2 ประเภท  ระบบรับ-ให้บริการ (client-server systems)  ระบบเพียร์ทูเพียร์ (peer-to-peer systems)

41 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 41 ภาพที่ 1.8 โครงสร้างทั่วไปของระบบ client/server Distributed Systems (cont.)

42 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 42 n ต้องการโครงสร้างพื้นฐานของเครือข่ายรองรับ เช่น LAN หรือ WAN n อาจใช้เป็นระบบ client/server หรือ peer-to- peer ก็ได้ Distributed Systems (cont.)

43 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 43 n ข้อดี  ใช้ทรัพยากรร่วมกัน (Resources Sharing)  เพิ่มความเร็วในการคำนวณ แบ่งปันภาระงาน (Computation speed up – load sharing)  เพิ่มความเชื่อถือได้ (Reliability)  ระบบการสื่อสาร (Communications) Distributed Systems (cont.)

44 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 44 ระบบคลัสเตอร์ (Clustered systems) n ระบบคลัสเตอร์ยอมให้หลายระบบสามารถใช้ระบบ หน่วยเก็บชุดเดียวกันได้ n คล้ายกับระบบขนาน ซึ่งรวมหลายหน่วยประมวลผล กลางเข้าประมวลผลร่วมกัน หรือช่วยกันประมวลผล งานใหญ่ๆ ให้เสร็จในเวลาที่รวดเร็ว และยอมรับการ เข้าถึงจากเครื่องของสมาชิก มีความเชื่อถือได้สูงมาก n คลัสเตอร์แบบสมมาตร (Asymmetric clustering)  1 server runs แอพพลิเคชันในขณะที่ servers อื่นทำหน้าที่ standby. n คลัสเตอร์แบบอสมมาตร (Symmetric clustering)  ทุกโฮสต์ช่วยกันรันแอพพลิเคชัน (all N hosts are running the application)

45 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 45 ระบบคอมพิวเตอร์มือถือ (Handheld systems) n บางทีเรียกว่า ระบบเคลื่อนที่ได้ (Mobile system) รวมไป ถึงพีดีเอ (PDA: personal digital assistants) เช่น พาล์ม (Palm), พ็อกเก็ตพีซี (Pocket PC) หรือโทรศัพท์แบบ เซลลูลาร์ (cellular telephone) สมาร์ทโฟน iPod, iPhone Tablet และอุปกรณ์แบบเคลื่อนที่ได้อื่นๆ ซึ่ง เชื่อมต่อเป็นเครือข่าย ผ่านระบบ Wi-Fi, Bluetooth เป็นต้น n ฮาร์ดแวร์ของอุปกรณ์ประเภทพกพาได้รับการพัฒนาให้มี ขีดความสามารถที่เพิ่มมากขึ้นเรื่อยๆ n ประเด็นที่พึงพิจารณา  ข้อจำกัดของหน่วยความจำ  หน่วยประมวลผลความเร็วต่ำ  ขนาดของหน่วยแสดงผล  การบริโภคพลังงาน

46 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 46 หน้าที่ของระบบปฏิบัติการ n การจัดการกระบวนการ (process management) n การจัดการหน่วยความจำหลัก (main memory management) n การจัดการแฟ้ม (file management) n การจัดการระบบไอ/โอ (I/O system management) n การจัดการหน่วยเก็บรอง (secondary-storage management) n เครือข่าย (networking) n ระบบการป้องกัน (protection system) n ระบบตัวแปลคำสั่ง (command interpreter system)

47 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 47 Migration of Operating-System Concepts and Features

48 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 48 Computing Environments n Traditional computing n Web-Based Computing n Embedded Computing n Mobile Computing

49 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 49 การติดต่อระหว่างอุปกรณ์รอบข้างกับซีพียู n การหยั่งสัญญาณ หรือพอลลิง (polling) n การขัดจังหวะ หรืออินเทอร์รัพต์ (interrupt) n ตู้ไปรษณีย์ หรือเมลบ็อกซ์ (mailbox)

50 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 50 การติดต่อระหว่างอุปกรณ์รอบข้างกับซีพียู n การพอลลิง  เป็นการติดต่อที่ช่วงเวลาหนึ่งๆ ซีพียู จะหยุดงานที่ทำอยู่ชั่วคราวเพื่อ เข้าไปตรวจอุปกรณ์ไอ/โอแต่ละอุปกรณ์ว่ามีการขอบริการอะไรจาก ซีพียู บ้างจนครบทุกอุปกรณ์ แล้วจึงจะกลับไปทำงานที่ค้างไว้ต่อ n การขัดจังหวะ  จะเป็นลักษณะการติดต่อโดยการส่งสัญญาณการขัดจังหวะไปยัง interrupt driven โดยฮาร์ดแวร์หรือซอฟต์แวร์เพื่อบอกซีพียู  เมื่อซีพียูรับรู้ก็จะหยุดทำงานรอจนกระทั่งการส่งข้อมูลจากอุปกรณ์นั้น เสร็จสิ้นลง จึงกลับไปทำงานต่อ n ตู้ไปรษณีย์  ระบบจะกันเนื้อที่บางส่วนไว้ในหน่วยความจำเพื่อให้ i/o สามารถส่ง ข้อมูลเข้าไปเก็บในหน่วยความจำส่วนนี้  ในช่วงเวลาหนึ่ง ซีพียูจะหยุดงานที่ทำ เมื่อพบว่ามีข้อมูลก็จะโหลด ข้อมูลเหล่านั้น  จากนั้น ซีพียูจะกลับไปทำงานที่ค้างอยู่ต่อ  ซึ่งวิธีนี้เป็นการผสมผสานวิธีแบบพอลลิงและการขัดจังหวะเข้าด้วยกัน

51 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 51 การเรียกระบบ (System Calls) n ทำหน้าที่จัดเตรียมส่วนต่อประสานระหว่าง กระบวนการหนึ่งกับระบบปฏิบัติการ n การเรียกระบบมักเป็นคำสั่งภาษาเอสแซมบลี หรืออาจเขียนด้วยภาษาระดับสูงก็ได้ เรียกว่า การเรียกระบบย่อย (subroutine call)

52 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 52 ภาพที่ 1.9 การส่งผ่านพารามิเตอร์โดยตารางใน หน่วยความจำ

53 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 53 System Calls (cont.) n ประเภทของ system call  การควบคุมกระบวนการ (process control)  การจัดการแฟ้ม (file management)  การจัดการอุปกรณ์ (device management)  การใช้งานข้อมูลของระบบ (information maintenance)  การสื่อสาร (communication)

54 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 54 ระบบปฏิบัติการสำหรับไมโครคอมพิวเตอร์ n การบูต (booting) n ภารกิจดูแลทั่วไปหรืองานแม่บ้าน (housekeeping tasks) n ส่วนต่อประสานกับผู้ใช้ (user interface) n การจัดการทรัพยากรคอมพิวเตอร์ (managing computer resources) n การจัดการภารกิจ (managing tasks)

55 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 55 สรุป n คอมพิวเตอร์และระบบปฏิบัติการ n วิวัฒนาการและชนิดของระบบปฏิบัติการ n หน้าที่ของระบบปฏิบัติการ n การติดต่อระหว่างอุปกรณ์รอบข้างกับซีพียู n การเรียกระบบ n ไมโครคอมพิวเตอร์และระบบปฏิบัติการ

56 วิเชษฐ์ พลายมาศ | โครงสร้างระบบและสถาปัตยกรรมคอมพิวเตอร์ | ระบบคอมพิวเตอร์และระบบปฏิบัติการ | 56


ดาวน์โหลด ppt ระบบคอมพิวเตอร์และ ระบบปฏิบัติการ โครงสร้างระบบและสถาปัตยกรรม คอมพิวเตอร์ วิเชษฐ์ พลายมาศ นงลักษณ์ พรมทอง.

งานนำเสนอที่คล้ายกัน


Ads by Google