วันจันทร์ที่ 18 สิงหาคม พ.ศ. 2551

หน่วยที่ 4 Processes

Process Concept
Process Scheduling
Operation on Processes
Cooperating Processes
Interprocess Communication

Process Concept แนวคิดของ Process
หน้าที่ในการจัดการระบบภายในแนวคิดของ Process ของการจัดการระบบ OS มีด้วยกันทั้งหมด 2 ประเภทคือ
1.เป็นแบบกลุ่ม มีอยู่ด้วยกันเช่น MS DOS
2. เป็นแบบการแบ่งส่วนเวลาทำงานพร้อม ๆ กัน เช่น XP , UNIX
โดยทั่วไปโปรแกรมที่กำลัง Execution อยู่ จะเรียงลำดับเรื่อย ๆ กันไป ซึ่งจะมีโปรแกรมที่สมบูรณ์แบบคือ
1.โปรแกรมนับจำนวน (program counter)
2. คำสั่งโปรแกรม (stack)
3. ข้อมูลที่โปรแกรมต้องการประกอบการทำงาน (data section)
Process State สถานะของ Process
ซึ่งอาจจะมีการเปลี่ยนแปลงดังต่อไปนี้
1. เริ่มต้น
2. พร้อมที่จะทำงาน
3. ครอบครอง CPU (กำลังประมวลผล)
4. สถานะคอย กำลังรอคอยเหตุการณ์บางอย่างที่จะเกดขึ้น และกำลังรอคอย I/O
5. Block/Interrup เกิดการขัดจังหวะของอุปกรณ์ I/O
6. Terminated สิ้นสุดการทำงาน
Process Control Block (PCB)
PCB คือพื้นที่ ในหน่วยความจำที่ OS กำหนดไว้เพื่อเก็บข้อมูลที่สำคัญของ Process ซึ่งประกอบไปด้วย
1. เก็บสถานะของ Process
2. ตัวชี้โปรแกรมเป็นตัวชี้ตำแหน่งที่อยู่ของคำสั่ง
3. Register ของหน่วยประมวลผลกลาง
4. ข้อมูลการทำงานของ CPU
5. ข้อมูลสารสนเทศของข้อมูลหน่วยความจำ
6. เก็บข้อมูลการ Account
7. ข้อมูลแสดงภาพการ I/O ที่ Process ใช้
Process Scheduling
Process Scheduling Queues การจัดตารางแถวคอย
1. Job queue การตั้งค่า Process ในระบบ
2. Ready queue พร้อมที่จะทำงานแต่รอการใช้งาน
3. Device queues เนื่องจากในระบบซึ่งมี I/O หลายตัว และแต่ละ I/O จะมีแถวคอยเป็นของตัวเอง
Schedulers ตัวจัดตารงการทำงานของ Process
Long-term คือ ตัวจัดตารางระยะยาว คือ เลือก Process จากหน่วยเก็บข้อมูลเพื่อเข้าสู่หน่วยความจำ
Short-term คือ ตัวจัดตารางระยะสั้น คือ เลือก Process ที่อยู่ในสถานะรอเพื่อนำมาใช้เป็นหน่วยประมวลผลกลาง
Medium-term คือ ตัวจัดการตารางระยะกลาง คือ ย้าย Process ออกจากหน่วยความจำหลักเพื่อลดจำนวน Process ที่มีมากเกินไปในหน่วยความจำ เพื่อทำให้ CPU ทำงานได้ดีและเร็วขึ้น
Context Switch การเปลี่ยนงาน
เมื่อ Process ทำงานในหน่วยประมวลผลเสร็จแล้วจะต้องมีการเปลี่ยนแปลง จาก Process นึง ไปยัง Process นึง อีกคือ จากสถานะ Process เก่า ซึ่งจะเปลี่ยนไปยังสถานะ Process ใหม่
Overhead ค่าโสหุ้ย
หมายถึง เวลาที่สูญเสียไปหากมีเวลาการเปลี่ยนสถานะมากขึ้นหรือถี่ขึ้น CPU ก็ต้องเอาเวลาส่วนหนึ่งในการเก็บสถานะเดิมของ Process ทำให้ CPU สูญเสียเวลาไปกับการเก็บสถานะ
Process Creation การสร้าง Process
Process หนึ่ง อาจสร้าง Process ใหม่ได้หลาย Process
ซึ่งจะมีชื่อเรียก Process ที่เป็นผู้สร้างชื่อว่า Process แม่
โดยจะมีชื่อเรียก Process ที่ถูกสร้างมาชื่อว่า Process ลูก
และ Process ใหม่จะสร้างโดย System core ที่เรียกว่า fork จาก Process ลูก
Process แม่และ Proces ลูกจะทำการ Execution ไปพร้อมกัน Process แม่จะรอคอยจนกระทั่ง Process ลูกสิ้นสุดการ Execution แล้วจึงเริ่มต้นทำงาน
Process Termination การสิ้นสุด
ระบบจะคืนข้อมูลจาก Process ลูก ไปยัง Process แม่ด้วยคำสั่ง via wait
Process จะต้องคืนทรัพยากรณ์ทั้งหมดให้กับ OS
สิ้นสุดการทำงานของ System core คือใช้คำสั่ง abort
- Process แม่จะหยุดหรือยกเลิก Process ลูก
- เมื่อ Process แม่สิ้นสุด Process ลูกก็จะต้องสิ้นสุดด้วย คือ การยกเลิก แบบลูกโซ่
Coperating Processes การทำงานร่วมกันของ Process
1. Process แบบอิสระ Process นี้จะไม่มีผลกระทบต่อ Process อื่นในระบบ
2. Process ที่ต้องทำงานร่วมกัน Process จะต้องมีการกระทบกับ Process อื่น ๆ ได้
3. ข้อดีของการทำงานร่วมกันของ Process
- การร่วมกันใช้ข้อมูลข่าวสารรวบรัดขึ้น และเร็วขึ้น
- ทำให้การคำนวนเร็วขึ้น
- มีระบบย่อย
- มีความสะดวกสบาย
Inter Process Communication การติดต่อภายในระหว่าง Process กับแต่ละ Process เรียกว่า massage system เป็นระบบที่มีประสิทธิภาพในการติดต่อสื่อสาร
วิธีการติดต่อ
1. Direct Communication การติดต่อโดยตรง Process จะส่งข้อมูลระหว่างกัน
2. InDirect Communication การติดต่อโดยอ้อม คือการส่ง Massage ไปยัง Mail box แล้วส่งต่อไปยัง Process อีกทีหนึ่ง

ไม่มีความคิดเห็น: