Process Explorer เป็นยูทิลิตี้ที่ดีที่สุดสำหรับการดูและจัดการกระบวนการ

มียูทิลิตี้จำนวนมากที่ใช้ในการจัดการกระบวนการที่ทำงานในระบบปฏิบัติการไม่ทางใดก็ทางหนึ่ง พิจารณาเฉพาะยูทิลิตี้พื้นฐานเท่านั้น ในตาราง 1 แสดงรายการโปรแกรมหลักที่ออกแบบมาเพื่อควบคุมกระบวนการไม่ทางใดก็ทางหนึ่ง

ตารางที่ 1 โปรแกรมการจัดการกระบวนการ

คำอธิบายโปรแกรม

ดำเนินการคำสั่งในเวลาที่กำหนด

ดำเนินการคำสั่งเมื่อโหลดของระบบอนุญาต

ดำเนินการคำสั่งตามกำหนดเวลาที่กำหนดไว้ล่วงหน้า

ช่วยให้คุณทำงานกับไฟล์ crontab ของผู้ใช้แต่ละราย

หยุดกระบวนการจากการรัน

เปลี่ยนลำดับความสำคัญของกระบวนการก่อนที่จะเริ่มทำงาน

อนุญาตให้กระบวนการทำงานหลังจากที่ผู้ใช้ออกจากระบบ

แสดงข้อมูลเกี่ยวกับกระบวนการ

เปลี่ยนลำดับความสำคัญของกระบวนการที่กำลังรันอยู่

แสดงว่าใครกำลังทำงานอยู่ในระบบและกับโปรแกรมใดบ้าง

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

ไม่เลย running_abstract_command &

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

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

การรัน ps โดยไม่มีพารามิเตอร์จะสร้างรายการโปรแกรมที่ทำงานบนเทอร์มินัล โดยปกติแล้วรายการนี้จะมีขนาดเล็กมาก:

PID TTY TIME CMD

885 ttyl 00:00:00 เข้าสู่ระบบ

893 ttyl 00:00:00 ทุบตี

955 ททิล 00:00:00ป

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

คอลัมน์ถัดไป tty แสดงว่าเทอร์มินัลใดที่กระบวนการกำลังทำงานอยู่ การรันคำสั่ง ps โดยไม่มีพารามิเตอร์จะแสดงกระบวนการที่ทำงานบนเทอร์มินัลปัจจุบัน

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

คอลัมน์ CMD(COMMAND) แสดงชื่อโปรแกรม แสดงเฉพาะชื่อเท่านั้น ตัวเลือกบรรทัดคำสั่งจะไม่แสดง

หากต้องการรับรายการกระบวนการเพิ่มเติมที่ทำงานบนระบบ ให้ใช้คำสั่งต่อไปนี้:

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

คอลัมน์ใหม่ปรากฏขึ้น - STAT คอลัมน์นี้แสดงสถานะของกระบวนการ รายการเต็มระบุว่าคุณสามารถอ่านได้ในคำอธิบายของโปรแกรม ps มาอธิบายสถานะสำคัญ:

– ตัวอักษร R หมายถึงกระบวนการที่กำลังดำเนินการอยู่ ณ เวลาที่กำหนด

– ตัวอักษร S หมายถึงกระบวนการนอนหลับ - กระบวนการกำลังรอเหตุการณ์บางอย่างที่จำเป็นในการเปิดใช้งาน

– ตัวอักษร Z ใช้เพื่อแสดงถึงกระบวนการ “ซอมบี้” (ซอมบี้) - เหล่านี้เป็นกระบวนการที่กระบวนการหลักหยุดอยู่ โดยปล่อยให้กระบวนการย่อยเป็นผู้ปฏิบัติงาน

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

หากคุณต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับกระบวนการที่กำลังทำงานอยู่ ให้ลองเรียกใช้คำสั่ง:

คอลัมน์ต่อไปนี้ก็ปรากฏขึ้นเช่นกัน:

    USER - แสดงว่าผู้ใช้รายใดถูกเปิดใช้งาน กระบวนการนี้;

    %CPU, %MEM - แสดงเวลาของโปรเซสเซอร์และจำนวน RAM ที่ใช้ตามลำดับซึ่งกระบวนการนี้ใช้เวลา

    TIME - เวลาเปิดตัวโปรแกรม

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

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

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

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

โปรแกรม kill ได้รับการออกแบบมาเพื่อส่งสัญญาณที่เหมาะสมไปยังกระบวนการที่ระบุ ตามกฎแล้ว สิ่งนี้จะเกิดขึ้นเมื่อกระบวนการบางอย่างเริ่มทำงานไม่เหมาะสม การใช้งานทั่วไปของโปรแกรมคือการหยุดกระบวนการไม่ให้ทำงาน

ในการหยุดกระบวนการ คุณจำเป็นต้องทราบ PID ของกระบวนการหรือชื่อกระบวนการ ตัวอย่างเช่น หากต้องการฆ่ากระบวนการ 123 เพียงรันคำสั่งต่อไปนี้:

ตามปกติ หากต้องการยุติกระบวนการ ผู้ใช้จะต้องเป็นเจ้าของกระบวนการ ผู้ใช้รูทสามารถยุติกระบวนการใดๆ บนระบบได้

บางครั้งโปรแกรม kill มาตรฐานก็ใช้งานไม่ได้ ซึ่งมักเป็นเพราะกระบวนการค้างหรือกำลังดำเนินการที่ไม่สามารถขัดจังหวะได้ทันที หากต้องการขัดจังหวะกระบวนการนี้ คุณสามารถใช้คำสั่งต่อไปนี้:

โดยทั่วไป โปรแกรม kill ได้รับการออกแบบมาเพื่อส่งสัญญาณควบคุมไปยังกระบวนการ หนึ่งในนั้นคือสัญญาณ sigterm (ยุติ) สัญญาณนี้จะถูกส่งไปยังกระบวนการเมื่อรันโปรแกรมคิลตามค่าเริ่มต้น กระบวนการที่รับสัญญาณนี้จะต้องยุติการทำงานอย่างถูกต้อง (ปิดไฟล์ที่ใช้งานอยู่ รีเซ็ตบัฟเฟอร์ I/O ฯลฯ) สวิตช์ -9 บอกให้โปรแกรม kill ส่งสัญญาณประเภทอื่นไปยังกระบวนการ - sigkill สิ่งนี้นำไปสู่ความจริงที่ว่ากระบวนการไม่สิ้นสุดอย่างถูกต้อง แต่หยุดกิจกรรมทันที นอกจากสัญญาณเหล่านี้แล้ว คุณยังมีสัญญาณต่างๆ มากมายให้เลือกใช้งาน คุณสามารถรับรายการสัญญาณทั้งหมดได้โดยใช้คำสั่งเรียกขอความช่วยเหลือ

โปรแกรมฆ่าอีกรูปแบบหนึ่ง ใช้เพื่อยุติกระบวนการที่มีชื่อเดียวกัน ตัวอย่างเช่น มีโปรแกรม mc หลายโปรแกรมที่ทำงานอยู่บนระบบ หากต้องการยุติโปรแกรมเหล่านี้พร้อมกัน เพียงรันคำสั่งต่อไปนี้:

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

เปลี่ยนลำดับความสำคัญของการดำเนินการตามกระบวนการ

ในระบบปฏิบัติการ Linux แต่ละกระบวนการมีลำดับความสำคัญในการดำเนินการของตนเอง สะดวกมาก เนื่องจากระบบปฏิบัติการเป็นแบบมัลติทาสกิ้ง จึงมีการจัดสรรเวลาจำนวนหนึ่งสำหรับการดำเนินการของแต่ละกระบวนการ สำหรับงานบางอย่างคุณจำเป็นต้องจัดสรรให้มากขึ้น ส่วนงานอื่นๆ คุณก็จัดสรรให้น้อยลงได้ นี่คือลำดับความสำคัญของกระบวนการ ลำดับความสำคัญของกระบวนการถูกควบคุมโดยโปรแกรม nice และ renice

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

ดี - ตัวเลข สั่งการ

ระดับความสำคัญของกระบวนการถูกกำหนดโดยพารามิเตอร์ ตัวเลข, ค่าที่สูงกว่าหมายถึงลำดับความสำคัญที่ต่ำกว่าของกระบวนการ ค่าเริ่มต้นคือ 10 และ ตัวเลข หมายถึงจำนวนที่ควรลดลำดับความสำคัญ

ตัวอย่างเช่น กระบวนการระดับบนสุดมีลำดับความสำคัญเป็น -5 เพื่อที่จะลดลำดับความสำคัญในการดำเนินการของกระบวนการลงสิบเราต้องรันคำสั่งต่อไปนี้:

เป็นผลให้กระบวนการระดับบนสุดมีลำดับความสำคัญอยู่ที่ 5

เฉพาะผู้ใช้รูทเท่านั้นที่สามารถเพิ่มลำดับความสำคัญของกระบวนการที่ใช้ได้ เชิงลบค่าพารามิเตอร์ ตัวเลข.

โปรแกรม renice ต่างจากโปรแกรม nice ตรงที่ให้คุณเปลี่ยนลำดับความสำคัญของกระบวนการที่กำลังทำงานอยู่ได้ รูปแบบการเปิดโปรแกรมเป็นดังนี้:

เรไนซ์ - ตัวเลข พีไอดี

โดยทั่วไปแล้ว โปรแกรม renice จะทำงานเหมือนกับ nice ทุกประการ ระดับความสำคัญของกระบวนการถูกกำหนดโดยพารามิเตอร์ ตัวเลข, ค่าที่สูงกว่าหมายถึงลำดับความสำคัญที่ต่ำกว่าของกระบวนการ ค่าเริ่มต้นคือ 10 และ ตัวเลข หมายถึงจำนวนที่ควรลดลำดับความสำคัญของกระบวนการ

เฉพาะผู้ใช้รูทเท่านั้นที่สามารถเพิ่มลำดับความสำคัญของกระบวนการที่ใช้ได้ เชิงลบค่าของพารามิเตอร์ตัวเลข

ดำเนินการกระบวนการตามเวลาที่กำหนด

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

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

ตัวอย่างด้านล่างจะรันคำสั่งเวลา 01:01 น. ในการดำเนินการนี้ ให้ป้อนทุกสิ่งด้านล่างจากเทอร์มินัล โดยสิ้นสุดแต่ละบรรทัดด้วยการกดแป้นพิมพ์ และหลังจากป้อนคำสั่งทั้งหมดแล้ว - +เพื่อทำให้เสร็จ

สะท้อน “เวลาคือ 1:01”

นอกจากเวลาแล้ว คำสั่ง at ยังสามารถระบุวันที่เริ่มต้นของโปรแกรมเพื่อดำเนินการได้อีกด้วย

ผู้ใช้รูทสามารถใช้คำสั่งได้เกือบทุกคำสั่งโดยไม่มีข้อจำกัด สำหรับผู้ใช้ทั่วไป การอนุญาตในการใช้คำสั่ง at จะถูกกำหนดโดยไฟล์ /etc/at.allow และ /etc/at.deny ไฟล์ /etc/at.allow มีรายชื่อผู้ที่ได้รับอนุญาตให้ใช้คำสั่ง at และไฟล์ /etc/at.deny มีรายชื่อผู้ที่ไม่ได้รับอนุญาตให้ใช้คำสั่งดังกล่าว

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

รูปแบบคำสั่งแบตช์เป็นเพียงรายการคำสั่งที่จะดำเนินการตามคำสั่งในบรรทัด รายการลงท้ายด้วยคีย์ผสม +- คุณยังสามารถใส่รายการคำสั่งลงในไฟล์และเปลี่ยนเส้นทางไปยังอินพุตมาตรฐานของคำสั่งแบตช์ได้

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

โปรแกรม cron ทำงานหนึ่งครั้ง หนึ่งครั้งเมื่อระบบบู๊ต เมื่อ cron เริ่มทำงาน มันจะตรวจสอบคิวงาน at และงานผู้ใช้ในไฟล์ crontab หากไม่พบงานที่จะดำเนินการ cron จะทำการตรวจสอบครั้งถัดไปในอีกสักครู่

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

ทั้งๆ ที่ในตลาดนั้น ผลิตภัณฑ์ซอฟต์แวร์มีโปรแกรมควบคุม RTS หลายโปรแกรม มักได้รับการออกแบบโดยแยกจากกันเป็นส่วนหนึ่งของระบบเนื่องจากมีข้อกำหนดพิเศษสำหรับ RTS เฉพาะ

ส่วนประกอบของโปรแกรมควบคุม (รูปที่ 2.1) ขึ้นอยู่กับขนาดและความซับซ้อนของระบบควบคุมที่ออกแบบ โดยทั่วไปแล้ว โปรแกรมควบคุม ยกเว้นโปรแกรมที่ง่ายที่สุดจะประกอบด้วย ส่วนประกอบต่อไปนี้.

1. นาฬิกาเรียลไทม์ส่วนประกอบของโปรแกรมควบคุมที่ให้ข้อมูลเป็นระยะสำหรับการวางแผนกระบวนการ

2. ตัวจัดการขัดจังหวะส่วนประกอบโปรแกรมควบคุมที่จัดการคำขอบริการเป็นระยะๆ

ซี. โปรแกรมกำหนดการ ส่วนประกอบของโปรแกรมควบคุมที่ดูผ่านรายการกระบวนการที่กำหนดให้รันและเลือกหนึ่งในนั้น

4. ผู้ดูแลระบบทรัพยากรส่วนประกอบโปรแกรมควบคุมที่ได้รับกระบวนการที่กำหนดไว้สำหรับการดำเนินการ จะจัดสรรหน่วยความจำและทรัพยากรตัวประมวลผลที่จำเป็น

5. Dispช่างแกะสลัก (แกนกลาง)ส่วนประกอบของโปรแกรมควบคุมที่เรียกใช้กระบวนการเพื่อดำเนินการ

ข้าว. 2.1. ส่วนประกอบของโปรแกรมควบคุมแบบเรียลไทม์

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

1. ระดับขัดจังหวะ กระบวนการของระบบระดับสูงสุดลำดับความสำคัญที่กำหนดให้กับกระบวนการเหล่านั้นซึ่งจำเป็นต้องได้รับการตอบสนองอย่างรวดเร็ว ตัวอย่างของกระบวนการดังกล่าวคือกระบวนการนาฬิกาแบบเรียลไทม์

2. ระดับนาฬิการะดับความสำคัญของกระบวนการระบบที่กำหนดให้กับกระบวนการตามกำหนดเวลา

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

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

การจัดการกระบวนการ– นี่คือการเลือกกระบวนการสำหรับการดำเนินการ การจัดสรรหน่วยความจำและทรัพยากรตัวประมวลผลสำหรับกระบวนการ และการเปิดตัวกระบวนการ

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

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

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

ข้าว. 2.2. การทำงานของโปรแกรมควบคุมเมื่อกระบวนการเริ่มต้น

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

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

ในเวลาใดก็ตาม อาจมีกระบวนการหลายอย่างที่กำหนดให้กับการดำเนินการโดยมีระดับความสำคัญที่แตกต่างกัน ตัวกำหนดตารางเวลาจะกำหนดลำดับที่กระบวนการจะดำเนินการ การวางแผนที่มีประสิทธิผลจะมีบทบาทสำคัญหากต้องปฏิบัติตามข้อกำหนดของ EAS มีสองกลยุทธ์หลักสำหรับการวางแผนกระบวนการ

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

2. กำหนดการล่วงหน้า– กลยุทธ์การกำหนดเวลากระบวนการที่สามารถระงับการดำเนินการของกระบวนการได้หากบริการได้รับการร้องขอจากกระบวนการที่มีลำดับความสำคัญสูงกว่า กระบวนการที่มีระดับความสำคัญสูงกว่าจะมีความสำคัญเหนือกว่ากระบวนการที่มีระดับความสำคัญต่ำกว่า และดังนั้นจึงได้รับการจัดสรร CPU

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

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

นักสำรวจระบบ

System Explorer คือ เครื่องดนตรีที่ทันสมัยซึ่งรวมเอาเครื่องมือ Process Hacker และ Process Explorer เข้าด้วยกัน นอกจากนี้คุณยังสามารถใช้เพื่อตรวจสอบความปลอดภัยของโปรแกรมที่ทำงานอยู่ได้อีกด้วย

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

ข้อดีของโปรแกรมนี้คืออินเทอร์เฟซภาษารัสเซียซึ่งเข้ากันได้กับทุกเวอร์ชัน ระบบปฏิบัติการ, ความพร้อมใช้งานของการติดตั้งและเวอร์ชันพกพา

ประมวลผล Lasso

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

โปรแกรมนี้ฟรีพร้อมรองรับภาษารัสเซีย อย่างไรก็ตาม ยังมีเวอร์ชันที่ต้องชำระเงินพร้อมฟีเจอร์ขั้นสูงอีกด้วย

ตัวจัดการงาน AnVir

ยูทิลิตี้ระบบฟรีที่ออกแบบมาเพื่อ ควบคุมเต็มรูปแบบเหนือกระบวนการทั้งหมดที่ทำงานบนคอมพิวเตอร์ โปรแกรมให้ผู้ใช้งาน ข้อมูลครบถ้วนเกี่ยวกับกระบวนการก็มีเป็นของตัวเอง บรรทัดคำสั่ง, DLL ที่โหลด, การรับส่งข้อมูลขาเข้าและขาออก, ไอคอนถาด, การเชื่อมต่ออินเทอร์เน็ต, หน้าต่าง, เธรดและ เปิดไฟล์- AnVir Task Manager ช่วยให้คุณสามารถดำเนินการชุดการดำเนินการพื้นฐานสำหรับกระบวนการทั้งหมด - ปิด กู้คืน และเปลี่ยนลำดับความสำคัญ

กระบวนการต่างๆ ให้ "ชีวิต" แก่คอมพิวเตอร์ เช่นเดียวกับที่กระบวนการเหล่านั้นสามารถนำไปสู่ ​​"ความตาย" ได้

ดังนั้นจึงแนะนำให้ตรวจสอบเป็นครั้งคราว มีการสร้างโปรแกรมพิเศษสำหรับสิ่งนี้

หนึ่งในนั้นคือ PC Hunter ได้รับการออกแบบโดยมีวัตถุประสงค์เดียวกันกับตัวจัดการงาน แต่มีมากกว่านั้นอีกมาก จำนวนมากตัวเลือก

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

คุณไม่จำเป็นต้องติดตั้ง - สามารถพกพาได้ คุณสามารถดาวน์โหลดได้จากลิงค์ท้ายโพสต์ ในไฟล์เก็บถาวรคุณจะพบสองเวอร์ชันสำหรับ 32 และ 64 บิต

คุณจะประหลาดใจเมื่อใช้งานและเห็นว่าสามารถตรวจสอบระบบได้ดีเพียงใด

ข้อเสียเปรียบเพียงอย่างเดียวคือไม่มีภาษารัสเซีย แต่มีตัวเลือกมากมายจากมุมมองของการวิเคราะห์ระบบ

คุณสมบัติของโปรแกรมสำหรับกระบวนการคอมพิวเตอร์ - PC Hunter

ในหน้าต่างหลัก คุณจะเห็นเมนูที่หลากหลายซึ่งรวมถึงกระบวนการดู โมดูล เครือข่าย รายการ ไฟล์ ข้อมูลการบูต การจัดการ และอื่นๆ อีกมากมาย

การดูจะดำเนินการในเมนู "กระบวนการ" คุณสามารถลบหรือปิดได้ หากต้องการลบ ให้เลือกและคลิกขวา จากนั้นคลิกที่บรรทัด “ลบไฟล์หลังจากสิ้นสุด”

หากไม่ทราบกระบวนการ คุณสามารถตรวจสอบได้โดยคลิกที่บรรทัด “วิเคราะห์ออนไลน์” หากต้องการปิดกระบวนการ ให้คลิกที่คำว่า "ฆ่า"

อย่างที่คุณเห็นแม้ว่า ภาษาอังกฤษ,การจัดการเกิดขึ้นได้โดยไม่มีภาวะแทรกซ้อน

PC Hunter จะแสดงให้คุณเห็นทุกส่วนของระบบโดยละเอียด และให้คุณเลือกการดำเนินการที่แตกต่างกันสำหรับแต่ละไฟล์หรือกระบวนการที่คุณสนใจ


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

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

โดยสรุป PC Hunter นั้นดีมาก อุดมไปด้วยข้อมูลที่นำเสนอการวิเคราะห์ขั้นสูงของระบบของคุณ โปรแกรมทำงานบนกระแสทั้งหมด เวอร์ชันของ Windowsรวมถึง Windows 10 ด้วย ขอให้โชคดี

ผู้พัฒนา:
http://www.epoolsoft.com/

ระบบปฏิบัติการ:
XP, วินโดว 7, 8, 10

อินเทอร์เฟซ:
ภาษาอังกฤษ