กระบวนการคืออะไรและเราจะจัดการได้อย่างไรใน Ubuntu

กระบวนการครอบคลุม

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

ตอนนี้ การรู้ว่าสิ่งที่เราใช้งานอยู่นั้นทำงานอย่างไร นอกจากนี้ เรารู้ว่าหากคุณใช้ GNU/Linux ส่วนหนึ่งเป็นเพราะความไม่เห็นด้วย ความอยากรู้อยากเห็น และความปรารถนาที่จะเรียนรู้ ดังนั้นเข้า Ubunlog เราต้องการเขียนบทความทางเทคนิคเพิ่มเติมและแสดงให้คุณเห็น มีกระบวนการอย่างไรและทำงานอย่างไร ใน Ubuntu เราจะสอนให้คุณแสดงรายการกระบวนการที่กำลังทำงานอยู่เพื่อค้นหากระบวนการที่เฉพาะเจาะจงและฆ่าพวกมัน เราเริ่ม.

อย่างที่เราทราบกันดีว่า Ubuntu (GNU / Linux) เป็นระบบปฏิบัติการแบบมัลติทาสก์ ซึ่งหมายความว่าสามารถดำเนินการหลายกระบวนการ (งาน) พร้อมกันโดยไม่มีปัญหาระหว่างกัน

แต่…กระบวนการคืออะไร?

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

กระบวนการดังที่คุณบางคนทราบอยู่แล้วสามารถดำเนินการได้สองวิธี ใน เบื้องหน้า (เบื้องหน้า) หรือใน พื้นหลัง (ในพื้นหลัง)

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

เราสามารถดูได้จากตัวอย่าง:

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

gedit f_test

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

gedit f_test &

สัญลักษณ์ "&" แสดงว่าเราต้องการให้กระบวนการนี้ดำเนินการในรูปแบบ พื้นหลัง. ด้วยวิธีนี้เมื่อเริ่มกระบวนการแล้วเราสามารถใช้ Terminal ต่อได้เนื่องจากจะไม่ถูกระงับและกระบวนการทั้งสองจะยังคงทำงานได้ตามปกติ

ฉันจะรู้ได้อย่างไรว่ากระบวนการใดกำลังทำงานบน Ubuntu

หากต้องการดูรายการกระบวนการที่กำลังทำงานอยู่เพียงแค่เปิด Terminal แล้วเรียกใช้:

ป.ล.

และเราจะเห็นผลลัพธ์ดังต่อไปนี้:

สกรีนช็อตจาก 2016-05-22 16:19:21 น

ข้อมูลเดียวที่เราสนใจจากรายการคือไฟล์ PID. PID (Process Identifier) ​​เป็นจำนวนเต็มที่ชื่อบ่งชี้มีหน้าที่ในการระบุกระบวนการเดียว

นอกจากนี้ Ubuntu (และ GNU / Linux distros ทั้งหมด) มีไฟล์ที่กำหนดค่าสูงสุดของ PID สิ่งนี้กำหนด จำนวนสูงสุดของกระบวนการที่จะรัน. ไฟล์นี้เรียกว่า pid_max และอยู่ในไดเร็กทอรี / proc / sys / kernel / หากคุณต้องการดูเนื้อหาอย่างรวดเร็วเพียงแค่เรียกใช้:

cat / proc / sys / kernel / pid_max

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

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

ps-aux | grep gimp

สกรีนช็อตจาก 2016-05-22 16:25:53 น

อย่างที่คุณเห็นในกรณีของฉันมี 3 กระบวนการที่เกี่ยวข้องกับ Gimp

และ ... ฉันจะฆ่ากระบวนการได้อย่างไร?

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

ฆ่า 5649

ตอนนี้ฉันจะฆ่าในครั้งเดียวได้อย่างไร กระบวนการทั้งหมดที่เกี่ยวข้องกับโปรแกรมเหรอ? ง่ายมากด้วย หากในกรณีของฉันฉันต้องการฆ่ากระบวนการ Gimp ทั้งหมดฉันสามารถใช้คำสั่ง ฆ่า. ดังต่อไปนี้:

พิคิล กิมป์

สิ่งนี้จะฆ่า ทั้งหมด กระบวนการ Gimp นั่นคือประมวลผลด้วย PIDs 5649, 5719 และ 5782 ง่ายใช่มั้ย? หากโปรแกรมหยุดทำงานและคุณไม่รู้ว่าจะจบอย่างไรตอนนี้คุณมีวิธีแก้ไขที่เป็นไปได้😉

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

จนกว่าจะถึงเวลาต่อไป😉


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา

  1.   อัลเฟรโด อิชมาเอล กอนทาโร เวก้า dijo

    Que bien

  2.   ลุยซี dijo

    ฉันกำลังมองหาคำแนะนำใน pdf ที่อธิบายให้ฉันทราบผ่านไดอะแกรมวิธีจัดการกระบวนการใน Linux Ubuntu ด้วยกราฟิกสิ่งที่เห็นได้ดีกว่า