Process.

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
กระบวนการ (Process).
Advertisements

Process.
ประกาศกรมสวัสดิการและคุ้มครองแรงงาน เรื่อง หลักเกณฑ์และวิธีการเลือกตั้งคณะกรรมการสวัสดิการในสถานประกอบกิจการ ประกาศราชกิจจานุเบกษา วันที่ 22 พฤษภาคม.
Chapter 2 Process Pisit Nakjai.
เฉลยใบงานที่ 1 องค์ประกอบและหลักการทำงานของคอมพิวเตอร์
 เครือข่ายคอมพิวเตอร์  การที่ระบบเครือข่ายมีบทบาทและ ความสำคัญเพิ่มขึ้น เพราะไมโครคอมพิวเตอร์ได้รับ การใช้งานอย่างแพร่หลาย จึงเกิดความต้องการที่จะ.
จัดทำโดย น. ส. ดวงกมล งามอยู่เจริญ เลขที่ 8 น. ส. ณัชชา เชื้อตา เลขที่ 6 เตรียมบริหารธุรกิจปี 1.
หน่วยที่ 3 ภาษาคำสั่งพื้นฐานที่ใช้เขียนโปรแกรม PLC
ซอฟต์แวร์ระบบที่รู้จักกันดี คือซอฟต์แวร์ควบคุมการปฏิบัติการ ของคอมพิวเตอร์ที่เรียกว่า ระบบปฏิบัติการ ระบบปฏิบัติการเป็นชุดคำสั่งที่ใช้ควบคุมระบบฮาร์ดแวร์และ.
ซอฟต์แวร์และการเลือกใช้
การสื่อสารข้อมูล.
การรักษาความปลอดภัยข้อมูลขั้นพื้นฐาน
ครั้งที่ 7 รีจิสเตอร์ (REGISTER). รีจิสเตอร์ (Register) รีจิสเตอร์เป็นวงจรความจำที่ใช้ในการเก็บค่า ทางไบนารี่ ใช้ในการเก็บค่าในระหว่างการ ประมวลผลโดยใช้ฟลิป.
โปรแกรมสต๊อกสินค้า และ โปรแกรมขายหน้าร้าน Nanosoft Smart INV.NET วิชาโปรแกรมสำเร็จรูปและการ ประยุกต์ใช้งาน อ. วิสุตร์ เพชรรัตน์
เตชิษฐ์ เรือง ไพศาล.  คอมพิวเตอร์เป็นอุปกรณ์ไฟฟ้าที่ใช้ไฟฟ้า กระแสตรงทำงาน  ข้อมูลภายในเป็นข้อมูลดิจิตอล  …..  แทนข้อมูลเหล่านี้ด้วยแรงดันไฟฟ้า.
บทที่ 2 โครงสร้างและหน้าที่ การทำงาน ของระบบคอมพิวเตอร์
โปรแกรมคำนวณคะแนน สหกรณ์ ตามเกณฑ์ดีเด่นแห่งชาติ กรมส่งเสริม สหกรณ์ กองพัฒนาสหกรณ์ด้านการเงิน และร้านค้า วิธีการใ ช้
การจัดเก็บข้อมูลในแฟ้มข้อมูลธรรมดา นั้น อาจจำเป็นที่ใช้แต่ละคน จะต้องมีแฟ้มข้อมูลของตนไว้เป็นส่วนตัว จึง อาจเป็นเหตุให้มีการเก็บข้อมูล ชนิดเดียวกันไว้หลาย.
หน่วยรับตรวจส่วนงานย่อย สพฐ. สพป. / สพม. โรงเรียน สำนัก กลุ่ม / หน่วย กลุ่ม / งาน สำนักงานคณะกรรมการการศึกษาขั้นพื้นฐาน กำหนดหน่วยรับตรวจ และส่วนงานย่อย.
๕ เรื่องเด่นในร่างรัฐธรรมนูญ
ALLPPT.com _ Free PowerPoint Templates, Diagrams and Charts.
เทคโนโลยีพื้นฐานของระบบสารสนเทศ
ระบบบัญชาการในสถานการณ์ Incident Command System: ICS
ระบบตัวแทนจำหน่าย/ ตัวแทนขายอิสระ
Material requirements planning (MRP) systems
ส่วนประกอบของคอมพิวเตอร์ (Personal Computer : PC)
หน่วยที่ 1 ข้อมูลทางการตลาด. สาระการเรียนรู้ 1. ความหมายของข้อมูลทางการตลาด 2. ความสำคัญของข้อมูลทางการตลาด 3. ประโยชน์ของข้อมูลทางการตลาด 4. ข้อจำกัดในการหาข้อมูลทาง.
“วิธีการใช้งาน PG Program New Version สำหรับ PGD”
การจัดการโปรเซส T.Kunlaya Charoenmongkonvilai
stack #2 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
อาจารย์อภิพงศ์ ปิงยศ บทที่ 2 : แบบจำลองเครือข่าย (Network Models) part1 สธ313 การสื่อสารข้อมูลและเครือข่ายคอมพิวเตอร์ทางธุรกิจ อาจารย์อภิพงศ์
การประยุกต์ Logic Gates ภาค 2
ส่วนประกอบของคอมพิวเตอร์ (Personal Computer : PC)
การบริหารโครงการ Project Management
อาจารย์อภิพงศ์ ปิงยศ บทที่ 5 : การตรวจจับข้อผิดพลาด การควบคุมการไหลของข้อมูล และการควบคุมข้อผิดพลาด Part1 สธ313 การสื่อสารข้อมูลและเครือข่ายคอมพิวเตอร์ทางธุรกิจ.
อาจารย์อภิพงศ์ ปิงยศ บทที่ 4 : สื่อกลางส่งข้อมูลและการมัลติเพล็กซ์ (Transmission Media and Multiplexing) Part3 สธ313 การสื่อสารข้อมูลและเครือข่ายคอมพิวเตอร์ทางธุรกิจ.
โครงสร้างภาษา C Arduino
การบัญชีต้นทุนช่วง (Process Costing).
QUEUE คิวจะมีโครงสร้างแบบเชิงเส้นเหมือน stack แต่แตกต่างตรงที่ queue มีตัวชี้ 2 ตัวคือ หัว(Head) และหาง(Tail) โดยการใส่ข้อมูลเข้าและนำข้อมูลออก จะมีลักษณะ.
บทที่ 1 โครงสร้างคอมพิวเตอร์พื้นฐาน
Basic Input Output System
บทที่ 8 การควบคุมโครงการ
บทที่ 3 แฟ้มข้อมูลและฐานข้อมูล
หลักการแต่ง คำประพันธ์ประเภท โคลง. หลักการแต่ง คำประพันธ์ประเภท โคลง.
การรายงานความคืบหน้าหรือสถานะ
บทที่ 8 การควบคุมระบบสารสนเทศทางการบัญชี : การควบคุมเฉพาะระบบงาน
กิจกรรมการแลกเปลี่ยนเรียนรู้ งานบริหารและธุรการ คณะบริหารธุรกิจ
ขั้นตอนการออกแบบ ผังงาน (Flow Chart)
ฝ่ายการดำเนินงานในโรงแรม
กำหนดกรอบระยะเวลาการขึ้นทะเบียนปี2556/57 1. ข้าว
โครงการจัดทำระบบฐานข้อมูล วัตถุเสพติดของกลาง (ระยะที่1)
วิธีการกำหนดค่า Microsoft SharePoint ของคุณ เว็บไซต์ออนไลน์
Data storage II Introduction to Computer Science ( )
ปี 2560 ปฏิทินการประเมินคุณธรรมและความโปร่งใส
Data storage II Introduction to Computer Science ( )
บทที่ 3 : รูปแบบการเชื่อมต่อเครือข่ายและส่วนประกอบของเครือข่ายท้องถิ่น (Topologies and LAN Components) Part1.
บทที่ 9 การเรียงลำดับข้อมูล (Sorting)
หน่วยการเรียนรู้ที่ 7 สรุปบทเรียน และแนวทางการนำไปใช้
บทที่ 8 การแก้ไขข้อผิดพลาดโปรแกรม(Debugging)
หลักเกณฑ์การเก็บรักษาข้อมูลจราจรทางคอมพิวเตอร์ ของผู้ให้บริการ
2 โครงสร้างข้อมูลแบบสแตก (STACK).
3 โครงสร้างข้อมูลแบบคิว (QUEUE).
การจัดบล๊อคและบัฟเฟอร์ (Blocking and Buffering)
คู่มือการใช้งานระบบเสนอหัวข้อของนักศึกษา
บทที่ 4 การจำลองข้อมูลและกระบวนการ (Data and Process Modeling)
นพ.อภิศักดิ์ วิทยานุกูลลักษณ์ รพ.ธัญญารักษ์เชียงใหม่ กรมการแพทย์
ระบบการส่งต่อข้อมูลอาการไม่พึงประสงค์จากการแพ้ยา
การจัดการภาครัฐ และภาคเอกชน Public and private management
MTRD 427 Radiation rotection - RSO
กระดาษทำการ (หลักการและภาคปฏิบัติ)
ใบสำเนางานนำเสนอ:

process

Process กระบวนการ กระบวนการคือ โปรแกรมที่กำลังทำงานอยู่ มีการทำงานเป็นลำดับ กระบวนการ รวมถึง รีจีสเตอร์ของซีพียู Stack ข้อมูลชั่วคราว Data section

Process คืออะไร RAM ไฟล์ .exe One by one CPU Concept โปรแกรมที่ “กำลัง” ทำงาน โปรแกรม คือ “ไฟล์” ที่เก็บอยู่ในสื่อสำรองข้อมูล แต่ Process คือการโหลดไฟล์นั้นเข้าไปใน RAM แล้ว สามารถ “สั่ง” CPU ให้ ทำงานได้ เรียงตามลำดับ RAM ไฟล์ .exe One by one CPU

Process เมื่ออยู่ใน Main Memory

โปรเซสเมื่ออยู่ใน RAM สามารถตาม (Trace) ได้

เมื่อสลับกันทำงานแล้ว Trace มัน Dispatcher เป็น Process ของ O.S.

หน้าที่ของ OS ต่อโปรเซส ให้โปรเซสสามารถเข้าไป Run ได้ เก็บรักษาข้อมูลที่เกี่ยวกับโปรเซสแต่ละตัว ให้บริการ, ให้ทรัพยากรแก่โปรเซส ให้โปรเซสสามารถทำงานหลายตัวได้ (Multi-tasking) ทำการ Load และ Unload โปรเซส ทำการ Kill โปรเซส (End Task) สร้าง Background โปรเซส (Daemon Process) สื่อสารระหว่างโปรเซส (Interprocess Communication)

หน้าที่ของโปรเซส Entry Point Jump Wait End สั่งการ CPU เรียงตามลำดับ ไหล (Flow) ไปเรื่อยๆ จะเริ่มจากคำสั่งแรก (Entry Point) เสมอ การไหลไม่จำเป็นต้องไหลแบบ Sequential เสมอไป สามารถกระโดดไป - มาได้ เมื่อมีการเรียกใช้ทรัพยากร จะต้องมีการหยุดรอ Entry Point Jump Wait End

สถานะของกระบวนการ New กระบวนการถูกสร้างขึ้น Ready กระบวนการรอเข้าใช้หน่วยประมวลผล Running กระบวนการกำลังทำตามคำสั่งของโปรแกรม Waiting กระบวนการกำลังรอให้เหตุการณ์บางอย่างเกิดขึ้น Terminate กระบวนการเสร็จสิ้นการทำงาน

สถานะของโปรเซส Ready Queue Dispatch Running Ready Time out End admit Terminated New wait Wake up Waiting Waiting Queue

โปรเซสเกิดขึ้นได้อย่างไร User สั่งให้ทำงาน เมื่อ User ทำการ Log in เข้าในระบบ (Multi-user) เมื่อมีบริการต่างๆ เช่นการพิมพ์งาน เป็นต้น โปรเซสสร้างโปรเซสอีกอันหนึ่ง โปรเซสลูก Fork

โปรเซสจบการทำงานได้อย่างไร โปรเซสจบการทำงานโดยปกติ (รันคำสั่ง END) User ทำการ Log out ออกจากระบบ User สั่งให้จบการทำงาน (คำสั่ง Quit) เกิด Error หรือ ภาวะ Fault

การทำงานแบบ Multi-tasking เป็นการสลับกันทำงานของโปรเซสหลายๆโปรเซส เมื่อทำอย่างรวดเร็วก็จะเหมือนว่าทำงานพร้อมกัน มี 2 แบบ Non Preemptive Multi-tasking  CPU จะไม่ควบคุมการทำงาน Preemptive Multi-tasking  CPU ควบคุมการทำงาน (ใช้ Time Slice)

Operating System Two state Process สถานะพร้อม (ready state) คือสถานะที่โปรเซส พร้อมที่จะใช้ซีพียูทันที OS มอบหมายให้ในสถานะ นี้ไม่มีการรันของโปรเซส (โปรเซสหยุดนิ่ง) Not running คือ process ไม่ได้ทำงาน สถานะรัน (running state) คือสถานะที่โปรเซส กำลังครอบครองซีพียูอยู่มีการรันของโปรเซส จริงๆ เพราะโปรเซสใช้ซีพียูเอ็กซีคิ้วคำสั่งหรือโค้ด โปรแกรมของโปรเซสนั้น

Two state Process Not running Process are waiting in a queue Operating System Two state Process Not running Process are waiting in a queue

Two state Process (2) ปัญหา จะมีคิวแค่ 1 คิวเท่านั้น Operating System ปัญหา จะมีคิวแค่ 1 คิวเท่านั้น ถ้า process ตัวใดไม่พร้อมจะใช้งานก็จะไปต่อที่คิว และถ้าต้องการ process ตัวใหม่ และ process ตัวนั้นไม่พร้อม ก็จะต้องไปหา process ตัวใหม่ที่พร้อมจะทำงาน การแก้ปัญหา เพิ่มคิวเป็น 2 คิว คือ Ready และ Blocked เพิ่มสถานะ 2 สถานะคือ New และ Exit

Five state Process New คือ process ที่ถูกสร้างขึ้นแต่ยังไม่ได้ทำงาน Operating System Five state Process New คือ process ที่ถูกสร้างขึ้นแต่ยังไม่ได้ทำงาน Ready คือ process พร้อมที่จะทำงาน Running คือ process ที่กำลังทำงาน Exit คือ process ที่สิ้นสุดการทำงาน Blocked หรือ Waiting - process ไม่สามารถทำงานได้เนื่องจากรอเหตุการณ์ใดเหตุการณ์หนึ่ง บางอย่างอยู่ เช่น เกี่ยวกับอุปกรณ์เข้าออก - process ไม่จำเป็นต้องใช้ซีพียูและยังไม่พร้อมที่จะครอบครองซีพียู ซึ่งจะ ทำให้โปรเซสอื่นเข้ามาครอบครองซีพียูในช่วงนี้ได้

Operating System Five state Process (2)

Five state Process (3) ปัญหา Operating System Five state Process (3) ปัญหา ถ้าสถานะ Blocked มีคิวเดียว อาจมี process หลายตัวรอการใช้ I/O เช่น บางตัวรอใช้ Hard Disk ก็ต้องเสียเวลาในการหาว่า process ตัวไหน ต้องการใช้ Hard Disk

Five state Process (4) การแก้ปัญหา มีคิวหลายคิว Operating System Five state Process (4) การแก้ปัญหา มีคิวหลายคิว 1 คิว ก็เป็นของอุปกรณ์ตัวนั้น

Operating System Seven state Process ปัญหาของ 5 สถานะคือ เช่น ไม่มี process ใน CPU เลย ทำให้ CPU ว่าง และจะนำ process ตัวใหม่เข้ามา ก็เข้าไม่ได้ เพราะ memory เต็ม การแก้ปัญหาคือจะ swap process บางตัวออกไปไว้ที่ Hard Disk ซึ่งจะ เรียก Hard Disk แบบนี้ว่า swap area กรณีดังกล่าวจึงเพิ่มสถานะใหม่ คือ suspend ซึ่งแยกได้เป็น 2 สถานะ คือ - Blocked suspend คือ process ที่ถูก copy มาจาก memory และกำลัง รอใช้ I/O - Ready suspend คือ process ที่ใช้ I/O เสร็จ และต้องการจะใช้ CPU

Operating System Seven state Process (2)

PCB (process control box) Os แทนกระบวนการต่างๆ ด้วย pcb ซึ่งจะเก็บรายละเอียดต่างๆของ process

Process Control Block (PCB) Operating System Process Control Block (PCB) 1 พอยเตอร์ (Pointer) 2 สถานะของโปรเซส (Process state) 3 หมายเลขโปรเซส (Program id) 4 ตัวนับจำนวน (Program counter) 5 รีจิสเตอร์ (Register) 6 ข้อมูลการจัดเวลาของซีพียู (CPU scheduling information) 7 ข้อมูลการจัดการหน่วยความจำ (Memory management information) 8 ข้อมูลแอ็กเคาต์ (Account information) 9 ข้อมูลสถานะอินพุต/เอาต์พุต (I/O status information)

pcb Process state เก็บสถานะของ process Program counter บอกตำแหน่งบรรทัดของ process ที่จะทำงานต่อไป CPU register เก็บข้อมูลต่างๆของ process เมื่อเกิดการขัดจังหว่ะ

การจัดการโปรเซส การปฏิบัติการบนโปรเซส Operating System การจัดการโปรเซส การปฏิบัติการบนโปรเซส 1. การสร้างโปรเซส (Process creation) ถ้า process สร้าง process ขึ้นใหม่ เมื่อพิจารณาการ execute 1. โปรเซสแม่ยังประมวลผลต่อไป พร้อมโปรเซสลูก (The parent continues to execute concurrently with its children.) 2. โปรเซสแม่ต้องรอให้โปรเซสลูกบางตัว หรือโปรเซสลูกทั้งหมดสิ้นสุด จึงจะเริ่มประมวลผลได้ใหม่ (The parent waits until some or all of its children have terminated.) ถ้า process สร้าง process ขึ้นใหม่ เมื่อพิจารณา address ของโปรเซสใหม่ 1. โปรเซสลูกเป็นสำเนาของโปรเซสแม่ คือใช้ address เดียวกับแม่ (The child process is a duplicate of the parent process.) 2. โปรเซสลูกมีตำแหน่งของ load address ของตนเอง (The child process has a program loaded into it.)

การจัดการโปรเซส 2. การสิ้นสุดของโปรเซส (Process termination) Operating System การจัดการโปรเซส 2. การสิ้นสุดของโปรเซส (Process termination) 3 เหตุผลที่ โปรเซสแม่จะหยุดการประมวลผลของโปรเซสลูก 1. โปรเซสลูกใช้ resource มากกว่าที่กำหนดไว้ 2. ไม่มีความจำเป็นต้องใช้โปรเซสนั้นอีกแล้ว 3. โปรเซสแม่สิ้นสุด และ OS ไม่ยอมให้โปรเซสลูกทำงานต่อไป

การจัดการโปรเซส โปรเซสสื่อประสาน (Cooperating process) Operating System การจัดการโปรเซส โปรเซสสื่อประสาน (Cooperating process) โปรเซสที่ประมวลผลในระบบอาจเป็นได้มีได้ 2 แบบคือโปรเซสอิสระ (Independent process) ซึ่งทำงานโดยไม่มีผลกระทบ หรือได้รับผลกระทบจากโปรเซสอื่น เป็นอิสระที่ไม่มีการแบ่งปันทรัพยากรร่วมกับใคร ส่วนโปรเซสสื่อประสาน (Cooperating process) อาจได้รับผลกระทบ หรือส่งผลกระทบต่อโปรเซสอื่น หรือกล่าวได้ว่ามีการใช้ทรัพยากรร่วมกับโปรเซสอื่น และเหตุที่ทำให้เกิดโปรเซสสื่อประสานอาจมีได้ดังนี้ 1. การแบ่งปันข่าวสารข้อมูลร่วมกัน (Information sharing) 2. เพิ่มความเร็วในการคำนวณ (Computation speedup) 3. แบ่งงานตามหน้าที่เป็นโมดูล (Modularity) 4. ความสะดวก (Convenience)

การจัดการโปรเซส การสื่อสารในโปรเซส (Interprocess communication : IPC) Operating System การจัดการโปรเซส การสื่อสารในโปรเซส (Interprocess communication : IPC) การสื่อสารในโปรเซส หรือระหว่างโปรเซสมีเรื่องที่ต้องพิจารณาหลายเรื่อง 1. ระบบการผ่านข่าวสาร (Message-passing system) การอำนวยความสะดวกของ IPC มีอย่างน้อย 2 กระบวนการคือ การส่งข่าวสาร Send(message) หรือ การรับข่าวสาร Receive (message) นอกจากนี้การบ่งบอกถึงการเชื่อมโยงข่าวสาร และการรับ-ส่งข่าว มีหลายวิธีดังนี้ - Direct or indirect communication (ทางตรง) - Symmetric or asymmetric communication (สมมาตร) - Automatic or explicit buffering (Explicit = แน่นอน) - Send by copy or send by reference - Fixed-sized or variable-sized messages

Process scheduling Scheduling queue แบบแถวคอย เมื่อกระบวนการเข้าสู่ระบบ จะถูกจัดในแถวคอย ในหน่วยความจำ(disk) เมื่อเข้าสู่หน่วยความจำหลักกระบวนการจะถูกเก็บใน link list แถวพร้อม read queue ซึ่งพร้อมที่จะทำงานใน CPU

Ready Queue And Various I/O Device Queues Operating System Concepts

Representation of Process Scheduling Operating System Concepts แถวคอยที่เป็นตัวแทนของการจัดตารางกระบวนการ

เมื่อกระบวนการเข้าทำงานใน CPU อาจเกิดเหตุการณ์ กระบวนการร้องขออุปกรณ์ รับ ส่งข้อมูล กระบวนการสร้างกระบวนการย่อย และรอจน กระบวนการย่อยทำงานเสร็จ กระบวนการถูกขัดการทำงานโดยระบบ จะถูกหยุดและ ย้ายไปรอในแถวคอย

ตัวจัดตารางการทำงาน กระบวนการจะถูกย้ายจากแถวคอยหนึ่งไปอีกแถวคอนหนึ่งตลอดเวลาที่ กระบวนการทำงานอยู่ ซึ่ง os จะเลือกกระบวนการจากแถวคอยออกมา ตัวจัดตารางระยะยาว เลือกกระบวนการจาก disk สูหน่วยความจำหลัก ตัวจัดตารางระยะสั้น เลือกกระบวนการในแถวพร้อม เข้าใช้ CPU ตัวจัดตารางระยะสั้นจะทำงานบ่อย ทุกๆ10 มิลลิวินาที ตัวจัดตารางระยะยาว จะทำเมื่อมีกระบวนการอกจากระบบ

Addition of Medium Term Scheduling Operating System Concepts

ตัวจัดตารางระยะกลาง ย้ายกระบวนการออกจากหน่วยความจำหลักเพื่อลดจำนวนกระบวนการ ในหน่วยความจำ ทำให้ cpu ทำงานได้ดีขึ้น ซึ่งจะถูกนำกลับมาเมื่อถึง เวลาทีเหมาะสม เรียกว่าการ swapping

การเปลี่ยนงาน คือการเปลี่ยนกระบวนการเข้าทำงานซึ่งจะมีการเก็บค่าของ กระบวนการเดิม และ นำค่าของกระบวนการใหม่เข้ามา

การดำเนินการของกระบวนการ การสร้างกระบวนการ โดยคำสั่งเรียกระบบ การเสร็จสิ้นกระบวนการ

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

การสื่อสารระหว่างกระบวนการ โครงสร้างพื้นฐาน ระบบข่าวสาร send-receive สามารถส่งข้อมูลผ่าน communication link หากันได้

การตั้งชื่อ กระบวนการที่ติดต่อสื่อสารกันสามารถ อ้างอิงได้ทั้งทางตรง และทางอ้อม การสื่อสารโดยตรง ระบุชื่อผู้ส่งผู้รับโดยตรง send(p,message) การสื่อสารทางอ้อมข้อความถูกส่งผ่าน port ไปยังกล่อง รับซึ่งจะมีเฉพาะแต่ละกระบวนการ ถ้าใช้กล่องร่วมกันก็ สามารถติดต่อสื่อสารกันได้

การพักข้อมูล ความจุ ใช้เป็นแหล่งกำหนดการเก็บข้อมูล ความจุแบบศูนย์ ความยาวของแถวเป็นศูนย์ ไม่มีที่เก็บข้อมูล ความจุแบบมีขอบเจต ความจุมีขนาดจำกัด ความจุไร้ขอบเขต

ข้อยกเว้น ข้อความสูญหาย ข้อความเสียหาย

2 การตั้งชื่อ (Naming) 2.1 Direct communication Operating System 2 การตั้งชื่อ (Naming) 2.1 Direct communication - การรับ-ส่ง message ระหว่างโปรเซส 2 โปรเซส โดย OS จะไม่ดำเนินการติดต่อให้ - โปรเซสที่จะติดต่อต้องมีการกำหนดชื่อเฉพาะที่ใช้ติอดต่อทั้งผู้รับและผู้ส่ง - สร้างลิงค์ระหว่างโปรเซสทั้งสอง - จองพื้นที่หน่วยความจำที่แชร์ไว้

โปรเซส A โปรเซส B ส่งข้อมูล รับข้อมูล หน่วย ความจำร่วม การซิงโครไนซ์โปรเซส การส่ง message จากโปรเซส A ไป โปรเซส B (หลังจากสร้างลิงค์เรียบร้อยแล้ว) - โปรเซส A นำข้อมูลไปวางบนหน่วยความจำร่วม - โปรเซส B จะคอยไปตรวจสอบว่า โปรเซส A วางข้อมูลเรียบร้อยหรือยัง ? - ถ้าโปรเซส A ต้องวางข้อมูลใหม่ โปรเซส A ตรวจสอบว่าโปรเซส B นำข้อมูลไปหรือยัง ? เพื่อป้องกันการวางทับของข้อมูล

รูปแบบการติดต่อ send (B, message) : การส่ง message ไปยัง Process B Operating System รูปแบบการติดต่อ send (B, message) : การส่ง message ไปยัง Process B receive (A, message) : การรับ message จาก Process A โปรเซส A โปรเซส B ส่งข้อมูล รับข้อมูล หน่วย ความจำร่วม

Operating System 2.2 Indirect communication การติดต่อสื่อสารทางอ้อม เป็นการติดต่อผ่าน mailbox หรือ port ซึ่งทำหน้าที่เก็บโปรเซส แล้วส่งให้อีกโปรเซสหนึ่ง วิธีนี้ทำให้โปรเซสหนึ่งติดต่อโปรเซสอื่นผ่าน mail box ได้หลาย mail box เมื่อ share mail box ก็จะทำให้การสื่อสารมีประสิทธิภาพ - การรับ-ส่ง message ระหว่างโปรเซส 2 โปรเซส ผ่าน mailbox/port โดย OS จะดำเนินการติดต่อให้ - mailbox เป็นที่เก็บ message จากโปรเซสหนึ่งที่ส่งไปอีกโปรเซส - โปรเซสสามารถติดต่อกับโปรเซสอื่นได้หลาย mailbox - สร้างลิงค์ระหว่างโปรเซสที่มีการแชร์ mailbox

สมมติ P1, P2, P3 แชร์ mailbox A ไว้ P1 ส่ง message ไป mailbox A Operating System สมมติ P1, P2, P3 แชร์ mailbox A ไว้ P1 ส่ง message ไป mailbox A P2, P3 ต้องการรับ message จาก mailbox Aคำถามคือ โปรเซสใดรับ message จาก mailbox A วิธีแก้ ยอมให้มีการลิงค์ทั้งสองโปรเซส ยอมให้การรับ message ได้ครั้งละ 1 โปรเซส ยอมให้ OS เลือกว่าโปรเซสใดที่จะเข้ารับ message โดยระบบจะกำหนดผู้รับไปยังผู้ส่งก่อน

เจ้าของ mailbox อาจเป็น OS หรือโปรเซสก็ได้ Operating System เจ้าของ mailbox อาจเป็น OS หรือโปรเซสก็ได้ ถ้าเจ้าของเป็นโปรเซส เมื่อโปรเซสสิ้นสุดลง mailbox จะถูกทำลาย ถ้าเจ้าของเป็น OS mailbox จะเป็นอิสระ ไม่ผูกติดกับโปรเซสใด ถ้า mailbox ว่าง และมีโปรเซสเข้ามารับข้อมูล OS จะให้โปรเซสหยุดรอ ถ้า mailbox เต็ม และมีโปรเซสเข้ามาส่งข้อมูล OS จะให้โปรเซสหยุดรอจนกว่า mailbox มีเนื้อที่ว่าง OS มีกลไกยอมให้โปรเซสกระทำในสิ่งต่อไปนี้ สร้าง mailbox ใหม่ ส่ง-รับ message ผ่าน mailbox ทำลาย mailbox

รูปแบบของ mailbox มี 3 รูปแบบดังนี้ 1. Mailbox แบบคิว Operating System รูปแบบของ mailbox มี 3 รูปแบบดังนี้ 1. Mailbox แบบคิว ดึงข้อมูลจาก mailbox ตามลำดับก่อน-หลัง ข้อมูลใดเข้ามาก่อนจะถูกดึงไปก่อน ข้อมูลใดเข้ามาทีหลังก็จะถูกดึงออกไปทีหลัง  First in First out : FIFO mailbox แบบคิว จะมีขนาดคงที่ ถ้าใส่ข้อมูลมากจะเต็ม ข้อมูลเข้า mailbox ข้อมูลออกจาก mailbox

- ดึงข้อมูลจาก mailbox ตามลำดับก่อน-หลัง Operating System 2. Mailbox แบบไปป์ - คล้าย mailbox แบบคิว - ดึงข้อมูลจาก mailbox ตามลำดับก่อน-หลัง - ข้อมูลใดเข้ามาก่อนจะถูกดึงไปก่อน ข้อมูลใดเข้ามาทีหลังก็จะถูกดึงออกไปทีหลัง  First In First Out : FIFO - แตกต่างกับmailbox แบบคิวที่ขนาด mailbox จะยืดหยุ่นได้ ข้อมูลเข้า mailbox ข้อมูลออกจาก mailbox

- ดึงข้อมูลจาก mailbox ข้อมูลใดเข้ามาถึงก่อนจะถูกดึงเข้ามาใช้งานทีหลัง Operating System 3. Mailbox แบบสแต็ก - ดึงข้อมูลจาก mailbox ข้อมูลใดเข้ามาถึงก่อนจะถูกดึงเข้ามาใช้งานทีหลัง - ข้อมูลใดเข้ามาทีหลังก็จะถูกดึงออกไปใช้ก่อน  First In Last Out : FILO ข้อมูลเข้า mailbox ข้อมูลออกจาก mailbox

Process Switching หรือ Context Swithcing Operating System Process Switching หรือ Context Swithcing เป็นการสลับการทำงานของ process ก่อนสลับการทำงานต้องมีการเก็บข้อมูลสถานะต่างๆ การสลับจะใช้เวลาอยู่ในช่วง 1-1000 มิลลิวินาที สาเหตุ ของ process switching มี 3 ข้อ คือ interrupt เกิดจากสถาวะภายนอก เช่น I/O System Call คือ process เรียกใช้บริการฟังก์ชั่นจาก OS Exception เกี่ยวกับการจัดการข้อผิดพลาด เช่น หารด้วย 0

Operating System Process Switching(2)

ขั้นตอนการ Process Switching Operating System ขั้นตอนการ Process Switching เก็บข้อมูลสถานะต่างๆใน PCB ของ process ที่กำลังทำงานอยู่ update การทำงาน PCB จาก running ไปเป็นสถานะอื่น เช่น Blocked ย้าย PCB ของ process นี้ไปไว้ใน queue เลือก process ตัวถัดไปขึ้นมาทำงาน Update ค่าสถานะใน PCB ของ process ที่เลือกเป็น running Update ค่าโครงสร้างข้อมูลเกี่ยวกับการจัดการหน่วยความจำ Load ค่า PC และ register ต่างๆ เข้ามา