ความแตกต่างระหว่างสัญญาณและจอภาพในระบบปฏิบัติการ

ผู้เขียน: Laura McKinney
วันที่สร้าง: 1 เมษายน 2021
วันที่อัปเดต: 5 พฤษภาคม 2024
Anonim
ทำความเข้าใจระหว่าง SMART TV กับ Digital แตกต่างกันอย่างไร
วิดีโอ: ทำความเข้าใจระหว่าง SMART TV กับ Digital แตกต่างกันอย่างไร

เนื้อหา


สัญญาณและการตรวจสอบทั้งสองอนุญาตให้กระบวนการเข้าถึงทรัพยากรที่ใช้ร่วมกันในการยกเว้นซึ่งกันและกัน ทั้งสองเป็นเครื่องมือการประสานกระบวนการ แต่แตกต่างกันมาก ที่ไหน สัญญาณ เป็นตัวแปรจำนวนเต็มซึ่งสามารถดำเนินการโดยการรอ () และสัญญาณ () การดำเนินการนอกเหนือจากการเริ่มต้น ในทางกลับกัน หน้าจอ type เป็นชนิดข้อมูลนามธรรมซึ่งโครงสร้างอนุญาตให้หนึ่งกระบวนการเปิดใช้งานในครั้งเดียว ในบทความนี้เราจะพูดถึงความแตกต่างระหว่างสัญญาณและจอภาพด้วยความช่วยเหลือของกราฟเปรียบเทียบที่แสดงด้านล่าง

  1. แผนภูมิเปรียบเทียบ
  2. คำนิยาม
  3. ความแตกต่างที่สำคัญ
  4. ข้อสรุป

แผนภูมิเปรียบเทียบ

พื้นฐานสำหรับการเปรียบเทียบสัญญาณ หน้าจอ
ขั้นพื้นฐาน Semaphores เป็นตัวแปรจำนวนเต็ม Sจอภาพเป็นชนิดข้อมูลนามธรรม
การกระทำค่าของสัญญาณที่บ่งบอกถึงจำนวนของทรัพยากรที่ใช้ร่วมกันที่มีอยู่ในระบบชนิดการตรวจสอบประกอบด้วยตัวแปรที่แชร์และชุดของโพรซีเดอร์ที่ทำงานกับตัวแปรที่แชร์
ทางเข้าเมื่อกระบวนการใด ๆ เข้าถึงทรัพยากรที่ใช้ร่วมกันก็จะทำการดำเนินการ wait () บน S และเมื่อมันเผยแพร่ทรัพยากรที่ใช้ร่วมกันก็จะทำการดำเนินการ signal () บน Sเมื่อกระบวนการใดต้องการเข้าถึงตัวแปรที่แชร์ในจอภาพมันจำเป็นต้องเข้าถึงมันผ่านขั้นตอน
ตัวแปรเงื่อนไขสัญญาณไม่ได้มีตัวแปรเงื่อนไขจอภาพมีตัวแปรเงื่อนไข


ความหมายของสัญญาณ

เป็นเครื่องมือประสานกระบวนการ สัญญาณ เป็น ตัวแปรจำนวนเต็ม S ตัวแปรจำนวนเต็ม S นี้ถูกเตรียมใช้งานกับ จำนวนทรัพยากร อยู่ในระบบ ค่าของเซมาฟอร์ S สามารถแก้ไขได้ด้วยสองฟังก์ชั่นเท่านั้น รอ() และ สัญญาณ() นอกเหนือจากการเริ่มต้น

การดำเนินการรอ () และสัญญาณ () จะปรับเปลี่ยนค่าของสัญญาณที่แยกไม่ออก ซึ่งหมายความว่าเมื่อกระบวนการปรับเปลี่ยนค่าของสัญญาณไม่มีกระบวนการอื่นสามารถปรับเปลี่ยนค่าสัญญาณได้พร้อมกัน นอกจากนี้ระบบปฏิบัติการยังแยกเซมาฟอร์ออกเป็นสองประเภทคือการนับเซมาฟอร์และเซมาฟอร์ไบนารี

ใน นับเซมาฟอร์ค่าเซมาฟอร์ S นั้นถูกเตรียมใช้งานกับจำนวนของทรัพยากรที่มีอยู่ในระบบ เมื่อใดก็ตามที่กระบวนการต้องการเข้าถึงทรัพยากรที่ใช้ร่วมกันก็จะดำเนินการ รอ() การดำเนินการเกี่ยวกับสัญญาณซึ่ง decrements มูลค่าของสัญญาณโดยหนึ่ง เมื่อเผยแพร่ทรัพยากรที่ใช้ร่วมกันก็จะดำเนินการ สัญญาณ() การดำเนินการเกี่ยวกับสัญญาณซึ่ง เพิ่มขึ้น มูลค่าของสัญญาณโดยหนึ่ง เมื่อจำนวนสัญญาณไปที่ 0มันหมายถึง ทรัพยากรทั้งหมดถูกครอบครอง โดยกระบวนการ หากกระบวนการจำเป็นต้องใช้ทรัพยากรเมื่อจำนวนสัญญาณเป็น 0 จะดำเนินการรอ () และรับ อุดตัน จนกว่ากระบวนการที่ใช้รีซอร์สที่แบ่งใช้จะรีลีสและค่าเซมาฟอร์จะมากกว่า 0


ใน สัญญาณสัญญาณไบนารีค่าของเซมาฟอร์อยู่ในช่วงระหว่าง 0 ถึง 1 ซึ่งคล้ายคลึงกับ mutex lock แต่ mutex เป็นกลไกการล็อคในขณะที่เซมาฟอร์เป็นกลไกการส่งสัญญาณ ในเซมาฟอร์ไบนารีถ้ากระบวนการต้องการเข้าถึงทรัพยากรมันจะทำการดำเนินการ wait () ในเซมาฟอร์และ decrements ค่าเซมาฟอร์จาก 1 ถึง 0 เมื่อกระบวนการเผยแพร่ทรัพยากรจะดำเนินการ สัญญาณ() การดำเนินการกับสัญญาณและเพิ่มมูลค่าเป็น 1 หากมูลค่าของสัญญาณเป็น 0 และกระบวนการที่ต้องการเข้าถึงทรัพยากรจะดำเนินการรอ () การดำเนินการรอ () และบล็อกตัวเองจนถึงกระบวนการปัจจุบันที่ใช้ทรัพยากรปล่อยทรัพยากร

ความหมายของการตรวจสอบ

เพื่อเอาชนะข้อผิดพลาดเกี่ยวกับเวลาที่เกิดขึ้นขณะใช้สัญญาณสำหรับการซิงโครไนซ์กระบวนการนักวิจัยได้แนะนำโครงสร้างการซิงโครไนซ์ระดับสูงเช่น ประเภทจอภาพ. ประเภทจอภาพคือ ชนิดข้อมูลนามธรรม ที่ใช้สำหรับกระบวนการซิงโครไนซ์

การเป็นประเภทการตรวจสอบชนิดข้อมูลนามธรรมประกอบด้วย ตัวแปรข้อมูลที่แชร์ ที่จะใช้ร่วมกันโดยกระบวนการทั้งหมดและบางโปรแกรมที่กำหนดไว้ การดำเนินงาน ที่อนุญาตให้กระบวนการดำเนินการในการกันซึ่งกันและกันภายในจอภาพ กระบวนการสามารถ ไม่ได้เข้าถึงโดยตรง ตัวแปรข้อมูลที่แชร์ในจอภาพ กระบวนการมีการเข้าถึง ผ่านขั้นตอน กำหนดไว้ในมอนิเตอร์ซึ่งอนุญาตให้กระบวนการเดียวเข้าถึงตัวแปรที่แชร์กันในจอภาพในแต่ละครั้ง

ไวยากรณ์ของจอภาพมีดังนี้:

มอนิเตอร์ monitor_name {// การประกาศตัวแปรที่แชร์โพรซีเดอร์ P1 (....) {} โพรซีเดอร์ P2 (...) {} โพรซีเดอร์ Pn (...) {} รหัสเริ่มต้น (...) {}}

จอภาพเป็นโครงสร้างเช่นกระบวนการเดียวเท่านั้นที่ใช้งานได้ในแต่ละครั้งภายในจอภาพ หากกระบวนการอื่นพยายามเข้าถึงตัวแปรที่แชร์ในจอภาพมันจะถูกบล็อกและอยู่ในคิวเพื่อรับการเข้าถึงข้อมูลที่ใช้ร่วมกันเมื่อก่อนหน้านี้การเข้าถึงกระบวนการปล่อยออกมา

ตัวแปรตามเงื่อนไข ถูกนำมาใช้สำหรับกลไกการซิงโครไนซ์เพิ่มเติม ตัวแปรเงื่อนไข อนุญาตให้กระบวนการรอภายในจอมอนิเตอร์ และอนุญาตให้กระบวนการรอดำเนินการต่อโดยทันทีเมื่อกระบวนการอื่นเผยแพร่ทรัพยากร

ตัวแปรตามเงื่อนไข สามารถเรียกใช้เพียงสองการดำเนินการ รอ() และ สัญญาณ() ซึ่งถ้าเป็นกระบวนการ P เรียกใช้การรอ () การทำงานจะหยุดลงในมอนิเตอร์จนกว่าจะมีกระบวนการอื่น Q เรียกใช้สัญญาณ () การดำเนินการเช่นการดำเนินการสัญญาณ () ที่เรียกใช้โดยกระบวนการดำเนินการต่อกระบวนการที่ถูกระงับ

  1. ความแตกต่างพื้นฐานระหว่างสัญญาณและจอภาพคือ สัญญาณ เป็น ตัวแปรจำนวนเต็ม S ซึ่งระบุจำนวนทรัพยากรที่มีอยู่ในระบบในขณะที่ หน้าจอ คือ ประเภทข้อมูลนามธรรม ซึ่งอนุญาตให้กระบวนการเดียวดำเนินการในส่วนวิกฤติได้ตลอดเวลา
  2. มูลค่าของสัญญาณสามารถแก้ไขได้โดย รอ() และ สัญญาณ() การดำเนินการเท่านั้น ในทางกลับกันมอนิเตอร์มีตัวแปรที่แชร์และโพรซีเดอร์เฉพาะซึ่งตัวแปรที่แชร์นั้นสามารถเข้าถึงได้โดยกระบวนการ
  3. ในเซมาฟอร์เมื่อกระบวนการต้องการเข้าถึงทรัพยากรที่ใช้ร่วมกันกระบวนการจะดำเนินการ รอ() การดำเนินการและปิดกั้นทรัพยากรและเมื่อปล่อยทรัพยากรที่ดำเนินการ สัญญาณ() การดำเนินงาน ในจอภาพเมื่อกระบวนการต้องการเข้าถึงทรัพยากรที่ใช้ร่วมกันจะต้องเข้าถึงกระบวนการเหล่านั้นผ่านขั้นตอนในการตรวจสอบ
  4. ประเภทจอภาพมี ตัวแปรเงื่อนไข สัญญาณใดไม่มี

สรุป:

จอภาพใช้งานง่ายกว่าเซมาฟอร์และมีโอกาสผิดพลาดเล็กน้อยในการตรวจสอบเมื่อเปรียบเทียบกับเซมาฟอร์