Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Operating System Chapter 2

21,828 views

Published on

Computer Operating System Concept Chapter 2

Published in: Technology

Operating System Chapter 2

  1. 1. บทที่ 2 : โครงสร้างระบบคอมพิวเตอร์ Computer-System Structures <ul><li>การปฏิบัติงานของระบบคอมพิวเตอร์ Computer System Operation </li></ul><ul><li>โครงสร้างอินพุทเอ้าท์พุท I/O Structure </li></ul><ul><li>โครงสร้างหน่วยจัดเก็บข้อมูล Storage Structure </li></ul><ul><li>โครงสร้างเชิงลำดับชั้นของหน่วยจัดเก็บข้อมูล Storage Hierarchy </li></ul><ul><li>การป้องกันฮาร์ดแวร์ Hardware Protection </li></ul><ul><li>โครงสร้างเครือข่าย Network Structure </li></ul>
  2. 2. ระบบคอมพิวเตอร์ในสมัยใหม่ A Modern Computer System
  3. 3. การปฏิบัติงานของระบบคอมพิวเตอร์ Computer-System Operation <ul><li>อุปกรณ์อินพุทเอ้าท์พุทกับหน่วยประมวลผลกลางสามารถทำงานหรือเอ็กซ์ซีคิวท์ไปพร้อมกัน </li></ul><ul><li>ตัวควบคุมอุปกรณ์แต่ละตัวต้องเป็นไปตามประเภทของอุปกรณ์แต่ละชนิด </li></ul><ul><li>ตัวควบคุมอุปกรณ์แต่ละตัวมีบัฟเฟอร์เป็นของตนเอง </li></ul><ul><li>หน่วยประมวลผลมีหน้าที่เคลื่อนย้ายข้อมูลจากหน่วยความจำหลักและบัฟเฟอร์แต่ละตัว </li></ul><ul><li>อินพุทเอ้าท์พุทเป็นอุปกรณ์บัฟเฟอร์เฉพาะของหน่วยควบคุม </li></ul><ul><li>หน่วยควบคุมอุปกรณ์มีหน้าที่แจ้งให้หน่วยประมวลผลทราบเมื่อทำงานเสร็จสิ้น ด้วยวิธีการขัดจังหวะการทำงานหรือการอินเตอร์รัพท์ interrupt </li></ul>
  4. 4. หน้าที่ทั่วไปของการขัดจังหวะ interrupt Common Functions of Interrupts <ul><li>โดยปกติการขัดจังหวะจะโอนการควบคุมไปให้กับ ส่วนการบริการงาน interrupt vector อันเกิดจากการขัดจังหวะ หรือ อินเตอร์รัพท์เซอร์วิสรูทีน service routines </li></ul><ul><li>สถาปัตยกรรมการขัดจังหวะ จะต้องทำการบันทึกแอดเดรสของคำสั่งการขัดจังหวะ </li></ul><ul><li>การขัดจังหวะขาเข้า จะถูกยกเลิกการทำงาน เมื่อการขัดจังหวะกำลังถูกโปรเซสเพื่อแก้ไขการสูญหายของการขัดจังหวะ </li></ul><ul><li>แทรป trap คือซอฟต์แวร์ที่ทำให้เกิดการขัดจังหวะอันเนื่องมาจากทั้งการเกิดความผิดพลาด หรือร้องขอบริการจากผู้ใช้ </li></ul><ul><li>ระบบปฏิบัติการคือการทำงานด้วยการขับเคลื่อนการขัดจังหวะ </li></ul>
  5. 5. การจัดการกับการขัดจังหวะ Interrupt Handling <ul><li>ระบบปฏิบัติการเป็นผู้ดูแลสถานะของหน่วยประมวลผลด้วยการเก็บค่ารีจีสเตอร์และโปรแกรมเคาน์เตอร์ program counter </li></ul><ul><li>ประเภทของการขัดจังหวะที่นำมาใช้ </li></ul><ul><ul><li>การทำโพลลิ่ง polling </li></ul></ul><ul><ul><li>ระบบการขัดจังหวะแบบเวกเตอร์ vectored interrupt system </li></ul></ul><ul><li>แตกการทำงานแบบรูทีนของเคอร์แนล เพื่อทราบว่าการกระทำนั้นเป็นการขัดจังหวะประเภทใด </li></ul>
  6. 6. การขัดจังหวะตามการเปลี่ยนแปลงของเวลาเพื่อการโปรเซสเดี่ยวให้ได้ผลลัพท์ Interrupt Time Line For a Single Process Doing Output
  7. 7. โครงสร้างของ I/O Structure <ul><li>I/O แบบสัมพันธ์ Synchronous I/O หลังจาก I/O เริ่มทำงาน การควบคุมจะตอบกลับไปยังโปรแกรมของผู้ใช้ก็ต่อเมื่อ I/O ทำงานเสร็จสิ้นแล้ว </li></ul><ul><li>คำสั่งเพื่อการรอคอยจะทำให้หน่วยประมวลผลว่างจาการทำงานใดๆ จนกว่าจะเกิดการขัดจังหวะลำดับถัดไปขึ้น </li></ul><ul><li>วนรอบแห่งการรอคอย ( เกิดขึ้นเมื่อเกิดการแย่งชิงเพื่อการเข้าถึงหน่วยความจำ ) </li></ul><ul><li>เมื่อเกิดการร้องขอจาก I/O มากกว่าหนึ่ง ในช่วงเวลาเดียวกัน การโปรเซส I/O จะไม่สามารถกระทำได้โดยต่อเนื่อง </li></ul><ul><li>I/O แบบไม่สัมพันธ์ Asynchronous I/O หลังจาก I/O เริ่มทำงานการควบคุมจะตอบกลับไปยังโปรแกรมของผู้ใช้โดยไม่ต้องรอ I/O ทำงานเสร็จสิ้น </li></ul><ul><li>การเรียกระบบ System call เป็นการเรียกร้องให้ ระบบปฏิบัติการอนุญาตให้ผู้ใช้รอคอย เพื่อให้ I/O ทำงานเสร็จสิ้น </li></ul><ul><li>อุปกรณ์ ตารางบันทึกการเข้าใช้งาน Device-status table เพื่อให้อุปกรณ์ I/O สามารถระบุประเภท แอดเดรส และสถานะได้ </li></ul><ul><li>ระบบปฏิบัติการ ทำดัชนีไว้ในส่วนของอุปกรณ์ เพื่อบ่งบอกสถานะของอุปกรณ์ และเปลี่ยนแปลงตาราง และเพื่อการแก้ไขตารางบันทึกการเข้าใช้งานรวมทั้งการขัดจังหวะ </li></ul>
  8. 8. ระเบียบวิธีของทั้งสองระบบปฏิบัติการ Two I/O Methods Synchronous Asynchronous
  9. 9. ตารางสถานะของอุปกรณ์ Device-Status Table
  10. 10. โครงสร้างการเข้าถึงหน่วยความจำแบบโดยตรง Direct Memory Access Structure <ul><li>ถูกใช้สำหรับอุปกรณ์อินพุทเอ้าท์พุทแบบความเร็วสูง เพื่อให้สามารถจัดส่งข้อมูลสารสนเทศให้มีความเร็วใกล้เคียงกับความเร็วของหน่วยความจำ </li></ul><ul><li>ส่วนการควบคุมอุปกรณ์จะจัดส่งข้อมูลเป็นบล็อค ของข้อมูลที่อยู่ในบัฟเฟอร์โดยตรงไปยังหน่วยความจำโดยปราศจากความช่วยเหลือจากหน่วยประมวลผล </li></ul><ul><li>มีเพียงการขัดจังหวะเท่านั้นที่ถูกสร้างขึ้นทีละบล็อค แทนที่จะเป็นหนึ่งไบท์ต่อการขัดจังหวะหนึ่งครั้ง </li></ul>
  11. 11. โครงสร้างหน่วยจัดเก็บข้อมูล Storage Structure <ul><li>หน่วยความจำหลัก Main memory คือสื่อที่ใช้ในการจัดเก็บข้อมูลขนาดใหญ่เท่านัน้ที่หน่วยประมวลผลสามารถเข้าถึงได้โดยตรง </li></ul><ul><li>หน่วยจัดเก็บข้อมูลสำรอง Secondary storage เป็นส่วนขยายจากหน่วยความจำหลักที่เป็นส่วนจัดเก็บข้อมูลขนาดใหญ่ </li></ul><ul><li>ดิสค์แม่เหล็ก Magnetic disks หมายถึงสิ่งที่สร้างขึ้นจากโลหะ หรือแผ่นแก้วที่ถูกเคลือบด้วยแม่เหล็กเพื่อใช้ในการจัดเก็บข้อมูล </li></ul><ul><ul><li>ผิวสัมผัสของแผ่นดิสค์ ในเชิงมโนภาพจะถูกแบ่งออกเป็นแทร็กส์ tracks และแต่ละแทร็กส์จะถูกแบ่งย่อยออกเป็นเซ็กเตอร์ </li></ul></ul><ul><ul><li>ส่วนการควบคุมดิสค์ disk controller หมายถึงผู้ทำหน้าที่ตอบสนองระหว่างอุปกรณ์ต่างๆ กับคอมพิวเตอร์ </li></ul></ul>
  12. 12. กลไกในการเคลื่อนหัวอ่านดิสค์ Moving-Head Disk Mechanism
  13. 13. โครงสร้างลำดับชั้นของหน่วยจัดเก็บ Storage Hierarchy <ul><li>ระบบของหน่วยจัดเก็บถูกจัดระเบียบเชิงลำดับ </li></ul><ul><ul><li>ความเร็ว </li></ul></ul><ul><ul><li>ค่าใช้จ่าย </li></ul></ul><ul><ul><li>ความคงอยู่ของข้อมูลหลังจากไม่มีกระแสไฟฟ้า </li></ul></ul><ul><ul><li>การแคชชิ่ง Caching หรือการเก็บซ่อน </li></ul></ul><ul><ul><li>หมายถึงการทำสำเนาข้อมูลไปไว้ยังระบบการจัดเก็บที่มีความเร็วสูงกว่า </li></ul></ul><ul><ul><li>กล่าวคือ หน่วยความจำหลัก ก็คือแคชสุดท้ายของหน่วยจัดเก็บข้อมูลทุติยภูมิ </li></ul></ul>
  14. 14. โครงสร้างลำดับชั้นของอุปกรณ์หน่วยจัดเก็บข้อมูล Storage-Device Hierarchy
  15. 15. แคชชิ่ง Caching <ul><li>ใช้หน่วยความจำความเร็วสูง เพื่อให้ข้อมูลที่ใช้ล่าสุดอาศัยอยู่ </li></ul><ul><li>จำเป็นต้องใช้นโยบายในการบริหารจัดการแคช </li></ul><ul><li>การทำแคชชิ่งนำไปสู่โครงสร้างการจัดเก็บเชิงลำดับในระดับอื่น </li></ul><ul><ul><li>จำเป็นต้องมีข้อมูลที่ถูกจัดเก็บอย่างต่อเนื่องมากกว่าหนึ่งระดับอย่างสม่ำเสมอ </li></ul></ul>
  16. 16. Migration of Integer “A” From Disk to Register การเคลื่อนย้ายของตัวแปลแบบจำนวนเต็ม A จากดิสค์ไปยังรีจีสเตอร์
  17. 17. การป้องกันฮาร์ดแวร์ Hardware Protection <ul><li>การปฏิบัติการแบบโหมดคู่ Dual-Mode Operation </li></ul><ul><li>การป้องกันอินพุทเอ้าท์พุท I/O Protection </li></ul><ul><li>การป้องกันหน่วยความจำ Memory Protection </li></ul><ul><li>การป้องกันหน่วยประมวลผล CPU Protection </li></ul>
  18. 18. การปฏิบัติการแบบโหมดคู่ Dual-Mode Operation <ul><li>การแบ่งปันทรัพยากรของระบบที่จำเป็นต่อระบบปฏิบัติการเพื่อมั่นใจได้ว่า โปรแกรมที่ไม่ถูกต้องหรือพฤติกรรมอันไม่พึงประสงค์ของมนุษย์ จะมีผลกระทบให้โปรแกรมอื่นๆ ทำงานผิดพลาดหรือไม่ถูกต้องไปด้วย </li></ul><ul><li>ระบบปฏิบัติการต้องสามารถรองรับฮาร์ดแวร์ ที่แตกต่างกันในการทำงานอย่างน้อยสองโหมดขึ้นไป </li></ul><ul><li>1. โหมดผู้ใช้งาน User mode หมายถึง การเอ็กซ์ซีคิวท์นั้นเฉพาะเพื่อผู้ใช้รายนั้นเท่านั้น </li></ul><ul><li>2. โหมดการเฝ้าติดตาม Monitor mode ( หรือเคอร์แนลโหมด kernel mode หรือ โหมดระบบ system mode ) การเอ็กซ์ซีคิวท์นั้นเพื่อการทำงานของระบบปฏิบัติการ </li></ul>
  19. 19. การปฏิบัติการแบบโหมดคู่ Dual-Mode Operation (Cont.) <ul><li>โหมดบิทจะถูกใส่ไว้ในส่วนฮาร์ดแวร์ของคอมพิวเตอร์ เพื่อใช้บ่งชี้ว่าปัจจุบันอยู่ที่โหมดใด อาทิเช่น โหมด 0 หมายถึงโหมดการเฝ้าติดตาม โหมด 1 หมายถึงโหมดผู้ใช้งาน </li></ul><ul><li>เมื่อเกิดการขัดจังหวะ หรือ เกิดข้อผิดพลาดใดๆ ขึ้น ฮาร์ดแวร์จะทำการสลับกลับไปยังโหมดการเฝ้าติดตามโดยอัตโนมัติ </li></ul>Privileged instructions can be issued only in monitor mode monitor user Interrupt/fault set user mode คำอธิบายรูป คำสั่งงานเฉพาะจะเกิดขึ้นได้เฉพาะในโหมดการเฝ้าติดตามเท่านั้น
  20. 20. การป้องกันอินพุทเอ้าท์พุท I/O Protection <ul><li>คำสั่งในส่วนอินพุทเอ้าพุท ทั้งหมดถือเป็นคำสั่งเฉพาะทั้งสิ้น </li></ul><ul><li>ต้องแน่ใจว่าโปรแกรมของผู้ใช้ จะต้องไม่เข้าไปควบคุมคอมพิวเตอร์ในโหมดการเฝ้าติดตาม </li></ul><ul><li>( เพื่อไม่ให้โปรแกรมของผู้ใช้ที่กำลังถูกเอ็กซ์ซีคิวท์ ได้ทำการเพิ่มแอดเดรสใหม่ไว้ในส่วนเวกเตอร์ของการขัดจังหวะ ) </li></ul>
  21. 21. ใช้ส่วนงานการเรียกระบบเพื่อแจ้งเตือนส่วนอินพุทเอ้าท์พุท Use of A System Call to Perform I/O
  22. 22. การป้องกันหน่วยความจำ Memory Protection <ul><li>ต้องสามารถป้องกันหน่วยความจำ อย่างน้อยเพื่อการทำเว็กเตอร์การขัดจังหวะ และการวัตรการทำงานของบริการการขัดจังหวะ </li></ul><ul><li>ความจำเป็นที่ต้องมีการป้องกันหน่วยความจำ อย่างน้อยที่สุดต้องเพิ่มรีจิสเตอร์สองตัวเพื่อสามารถกำหนดขอบเขตของแอดเดรสที่อนุญาตให้โปรแกรมสามารถเข้าถึงได้ </li></ul><ul><ul><li>รีจิสเตอร์ฐาน Base register เพื่อเก็บแอดเดรสของหน่วยความจำเชิงกายภาพขนาดเล็กสุด </li></ul></ul><ul><ul><li>รีจิสเตอร์จำกัด Limit register เพื่อใช้กำหนดขนาดของขอบเขต </li></ul></ul><ul><li>หน่วยความจำที่อยู่นอกเหนือจากที่กำหนดก็จะถูกป้องกันไม่ให้สามารถเข้าถึงได้ </li></ul>
  23. 23. การใช้รีจีสเตอร์แบบฐานและแบบจำกัด Use of A Base and Limit Register
  24. 24. การป้องกันแอดเดรสของฮาร์ดแวร์ Hardware Address Protection
  25. 25. การป้องกันฮาร์ดแวร์ Hardware Protection <ul><li>เมื่อเกิดการเอ็กซ์ซีคิวท์ในโหมดการเฝ้าติดตาม ระบบปฏิบัติการจะไม่เข้าไปควบุคมการเข้าถึงทั้งการเฝ้าติดตาม และหน่วยความจำของผู้ใช้ </li></ul><ul><li>ภาระของการสั่งการของรีจิสเตอร์แบบฐานและแบบจำกัด ล้วนเป็นการสั่งการเฉพาะ </li></ul>
  26. 26. การป้องกันหน่วยประมวลผล CPU Protection <ul><li>ตัวควบคุมเวลา ไทม์เมอร์ Timer </li></ul><ul><ul><li>การขัดจังหวะคอมพิวเตอร์หลังจากช่วงเวลาเฉพาะใดๆ ของระบบปฏิบัติการทำการดูแลรักษาส่วนควบคุม </li></ul></ul><ul><ul><li>ไทม์เมอร์จะทำการลดค่าตัวเองทุกๆ จังหวะเวลา </li></ul></ul><ul><ul><li>เมื่อไทม์เมอร์ลดค่าจนกระทั่งมีค่าเป็น 0 การขัดจังหวะก็จะเกิดขึ้น </li></ul></ul><ul><li>โดยปกติไทม์เมอร์ถูกใช้เพื่อ การแบ่งสรรเวลา </li></ul><ul><li>เวลาส่วนใหญ่ ถูกใช้เพื่อการคำนวณเวลา ณ ปัจจุบัน </li></ul><ul><li>การโหลดไทม์เมอร์ เป็นคำสั่งเฉพาะ </li></ul>
  27. 27. สถาปัตยกรรมระบบทั่วไป General-System Architecture <ul><li>กำหนดให้ส่วนการสั่งงานอินพุทเอ้าท์พุทเป็นส่วนคำสั่งเฉพาะ โปรแกรมของผู้ใช้จะสามารถแจ้งเตือนการทำงานกับอินพุทเอ้าท์พุทได้อย่างไร </li></ul><ul><li>การเรียกระบบ System call หมายถึงระเบียบวิธี ที่ถูกใช้โดยโปรเซสเพื่อร้องขอการทำงานอย่างหนึ่งอย่างใด จากระบบปฏิบัติการ </li></ul><ul><ul><li>โดยปกติเพื่อรับแบบฟอร์มของการแทรปเพื่อกำหนดพื้นที่การทำงานเฉพาะในส่วนเวกเตอร์การขัดจังหวะ </li></ul></ul><ul><ul><li>การควบคุมจะถูกส่งผ่านไปยังเวกเตอร์ของการขัดจังหวะ เพื่อวัตรการดำเนินการของงานบริการ ในระบบปฏิบัติการ และโหมดบิทจะถูกกำหนดไปเป็นโหมดการเฝ้าติดตาม </li></ul></ul><ul><ul><li>การเฝ้าติดตาม บอกถึงความถูกต้องว่าพารามิเตอร์นั้นถูกต้อง ทำการเอ็กซ์ซีคิวท์ตามต้องการ และส่งค่าการควบคุมกลับไปยังการสั่งการตามที่เรียกใช้ระบบ </li></ul></ul>
  28. 28. โครงสร้างเครือข่าย Network Structure <ul><li>เครือข่ายท้องถิ่น Local Area Networks (LAN) </li></ul><ul><li>เครือข่ายระยะไกล Wide Area Networks (WAN) </li></ul>
  29. 29. โครงสร้างเครือข่าย ท้องถิ่น Local Area Network Structure
  30. 30. โครงสร้างเครือข่ายระยะไกล Wide Area Network Structure

×