การจ่ายงาน ( Process Management)

Preview:

DESCRIPTION

บทที่ 3. การจ่ายงาน ( Process Management). พื้นฐานกรทำงานของคอมพิวเตอร์. หัวใจในการทำงานของระบบปฏิบัติการ คือ การจัดการให้งานหรือโปรแกรมต่าง ๆ ของผู้ใช้ และโปรแกรมของระบบสามารถทำงานได้ เพื่อให้สามารถมองเห็นโครงสร้างและหลักการทำงานของระบบปฏิบัติการได้อย่างชัดเจน. - PowerPoint PPT Presentation

Citation preview

การจ่�ายงาน(Process

Management)

บทท�� 3

พื้�นฐานกรทำ�างานของคอมพื้�วเตอร�

หั�วใจ่ในการทำ�างานของระบบปฏิ�บ�ต�การ คอ การจ่�ดการใหั!งานหัรอโปรแกรมต�าง ๆ ของ

ผู้&!ใช้! และโปรแกรมของระบบสามารถทำ�างานได!

เพื้,อใหั!สามารถมองเหั-นโครงสร!างและหัล�กการทำ�างานของระบบปฏิ�บ�ต�การได!อย�างช้�ดเจ่น

น�ยามความหัมายของโปรเซส (Process)

เป/นโปรแกรมทำ0,ก�าล�งทำ�างาน เป/นส�วนของโปรแกรมทำ0,ก�าล�งทำ�างาน งานทำ0,ได!ครองซ0พื้0ย&

การจ่�ดการก�บโปรเซส

สร!างโปรเซสและยกเล�กโปรเซส ควบค1มการทำ�างานของโปรเซส ควบค1มความผู้�ดพื้ลาดแต�ละโปรเซส เตร0ยมทำร�พื้ยากรใช้!งานแต�ละโปรเซส ควบค1มการส,อสารระหัว�างโปรเซส

รู�ปแบบของโปรูเซส

AB

C

D

One Program Counter Process Switch

แสดงการทำ�างานของระบบหัลายโปรแกรม โดยโปรเซสแต�ละโปรเซสทำ0,ทำ�างานอย&�จ่ะถ&กเก-บในหัน�วยความจ่�า

ระบบจ่ะทำ�างานทำ0ละโปรเซสและสล�บการทำ�างานไปย�งโปรเซสอ,น ๆ ในระบบ และวนกล�บมาใหัม�เร,อย ๆ จ่นกระทำ�,งเสร-จ่งาน

รู�ปแบบของโปรูเซส

แสดงการทำ�างานของแต�ละโปรเซสในม1มมองของผู้&!ใช้! แต�ละโปรเซสจ่ะทำ�างานอย�างต�อเน,อง แม!ว�าซ0พื้0ย&จ่ะม0การสล�บเวลาไปทำ�างานใหั!ก�บโปรเซสอ,น โปรเซสทำ0,เหัลอจ่ะคอยล�าด�บงานเพื้,อรอการทำ�างาน เม,อได!ครองซ0พื้0ย&และวนรอบกล�บมาทำ�างาน จ่ะทำ�างานจ่1ดเด�มทำ0,ค!างไว!

Four Program Counter

A B C D

โปรแกรมเคาเตอร� (Program Counter)

รู�ปแบบของโปรูเซส

แสดงการทำ�างานของโปรเซส จ่ะเหั-นว�าในช้�วงเวลาหัน2,งจ่ะม0เพื้0ยงโปรเซสเด0ยวเทำ�าน��นทำ0,ได!ครองซ0พื้0ย& ในขณะทำ0,โปรเซสอ,นต!องคอยทำ0,จ่ะครองซ0พื้0ย&

ABCD

Time

Process

สถานะของโปรเซส (Process Status)

สถานะการทำ�างาน (Running) สถานะพื้ร!อม (Ready) สถานะต�ดข�ด (Blocked)

หัรอ สถานะพื้�ก (Suspend)

สถานะของโปรเซส (Process Status)

สถานะการูท�างาน (Running)

เป/นสถานะทำ0,โปรเซสก�าล�งครอบครองซ0พื้0ย&อย&� และใช้!ซ0พื้0ย& ในการทำ�างาน โดยใช้!ซ0พื้0ย&ทำ�างานตามค�าส�,งในโปรแกรมของโปรเซสน��น

สถานะของโปรเซส (Process Status)

สถานะพรู�อม (Ready)

เป/นสถานะทำ0,โปรเซสคอยทำ0,จ่ะเข!าครองซ0พื้0ย& หัรอพื้ร!อม ทำ0,จ่ะใช้!ซ0พื้0ย&ทำ�นทำ0ทำ0,ระบบปฏิ�บ�ต�การมอบหัมายใหั!ในสถานะน0�ไม�ม0การทำ�างานของโปรเซส แต�การทำ�างานจ่ะเก�ด ข2�นทำ�นทำ0ทำ0,ได!ครองซ0พื้0ย& โดยจ่ะทำ�างานต�อจ่ากงานเด�มทำ0,ทำ�าค!างไว!

สถานะของโปรเซส (Process Status)

สถานะติ�ดข�ด (Blocked) หรู�อ สถานะพ�ก (Suspend)

เป/นสถานะทำ0,โปรเซสต�ดต�อก�บอ1ปกรณ� หัรอคอยเหัต1การณ�ใดเหัต1การณ�หัน2,งใหั!เก�ดข2�น โปรเซสในสถานะน0�ไม�จ่�าเป/นต!องใช้!ซ0พื้0ย&และย�งไม�พื้ร!อมทำ0,จ่ะครอบครองซ0พื้0ย& และเม,อต�ดต�อก�บอ1ปกรณ�เสร-จ่แล!ว หัรอได!เหัต1การณ�ทำ0,คอยแล!วก-จ่ะกล�บเข!ามาในสถานะพื้ร!อม เพื้,อคอยการเข!าครองซ0พื้0ย&เพื้,อใช้!ในการทำ�างานต�อไป

ภาพแสดงการูเปลี่��ยนสถานะของโปรูเซส

พื้ร!อม

สร!าง

รอ

เสร-จ่ส��น

ทำ�างาน

ข�ดจั�งหวะรู�บโปรูเซส ออกจัากรูะบบ

การูเลี่�อกจั%ายงานของก�าหนดการูท�างาน

I/Oเรู�ยบรู�อย

รูอI/O

สถานะของโปรเซส (Process Status)

เม,อผู้&!ใช้!ส� ,งงานผู้�านระบบปฏิ�บ�ต�การ ระบบปฏิ�บ�ต�การจ่ะม0การเตร0ยมการสร!างโปรเซสใหั!ก�บงานใหัม�ทำ0,ส�งเข!ามา โดยโปรเซสทำ0,เข!ามาใหัม� จ่ะเร�,มต!นเป/นโปรเซสในสถานะต�ดข�ดก�อน

ส�วนประกอบของโปรเซส

ข�อม�ลี่เพ��อการูจั�ดการูโปรูเซส

ข�อม�ลี่เพ��อการูจั�ดการูหน%วยความ

จั�า

ข�อม�ลี่เพ��อการูจั�ดการูแฟ้(ม

RegisterProgram counterProgram status wordStack pointerProcess stateTime when process startedCPU time usedChildren's CPU timeTime of next alarmMessage queue pointerPending signal bitsProcess idVarious flag bits for Process management

Pointer to text segmentPointer to data segmentPointer to bss segmentExit statusSignal statusProcess idParent processProcess groupReal uidEffective uidReal gidEffective gidBit maps for signalsVarious flag bits for memory management

UMASK maskRoot directoryWorking directoryFile descriptorsEffective uidEffective gidSystem call parametersVarious flag bits for File management

ข!อม&ลเพื้,อการจ่�ดการโปรเซส

ค�าร0จ่0สเตอร� ทำ�าการเก-บค�าต�าง ๆ ทำ0,ทำ�างานค!างไว!ในร0จ่0สเตอร� ก�อนทำ0,จ่ะปลดปล�อยซ0พื้0ย& เพื้,อใช้!เป/นข!อม&ลในการทำ�างานต�อเม,อได!ครองซ0พื้0ย&อ0กคร��ง โปรแกรมเคาเตอร� เพื้,อเก-บต�าแหัน�งป4จ่จ่1บ�นของการทำ�างานไว! และใช้!ค�าน0�ในการทำ�างานต�อเม,อได!เข!าครองซ0พื้0ย&ใหัม� สถานะของโปรเซสทำ0,เป/นอย&�ในป4จ่จ่1บ�น เวลาเร�,มทำ�างานของโปรเซส เวลาของซ0พื้0ย&ทำ0,ใช้!ไปแล!ว

ข!อม&ลเพื้,อการจ่�ดการหัน�วยความจ่�า

พื้อยน�เตอร�ช้0�ไปย�งต�าแหัน�งของโปรเซสในหัน�วยความจ่�าเพื้,อเก-บต�าแหัน�งของหัน�วยความจ่�าทำ0, ใช้!เก-บข!อม&ลหัรอโปรแกรมของแต�ละโปรเซส เพื้,อใหั!สามารถอ!างอ�ง และน�ามาใช้!งานได!อย�าง ถ&กต!อง พื้อยน�เตอร�ช้0�ไปย�งทำร�พื้ยากรต�าง ๆ ทำ0,โปรเซสครอบครอง หัมายเลขประจ่�าต�วของโปรเซส

ข!อม&ลเพื้,อการจ่�ดการแฟ้6ม

ไดเร-กทำอร0,ราก เป/นการเก-บทำ0,อย&�ของ โปรแกรมของโปรเซสแต�ละโปรเซส เพื้,อการ

อ!างอ�ง และการน�ามาใช้!งาน ไดเร-กทำอร0,ป4จ่จ่1บ�นรายละเอ0ยดของแฟ้6มหัมายเลขประจ่�าต�วของโปรเซส