یک processیک برنامه در حال اجرا میباشد . سیستم unix برای کنترل نمودن process های در حال اجرا برنامه های مختلفی را فراهم ساخته است . بی شک برنامه ps مهمترین برنامه از این نوع میباشد که وضعیت process های کنونی شما را نشان میدهد .
هنگامیکه process ها در صحنه اجرا میشوند ، میتوان بوسیله سیگنال هائیکه از صفحه کلید ارسال میگردد آنها را متوقف نمود . اما برای مدیریت process هائیکه در زمینه اجرا میگردند با استفاده از فرمان kill آنها را متوقف میسازیم .
دیگر فرامینی که در این فصل مورد بررسی قرار میگیرد امکان تغییر دادن محیط process ها را فراهم میسازند . فرمان nice اولویت اجرای process را کاهش میدهد تا process های دیگر بیشتر مورد توجه قرار گیرند . فرمان nohup این امکان را در اختیار شما قرار میدهد که پس از خروج از سیستم process شما همچنان در حال اجرا باقی بماند . فرمان at این امکان را در اختیار شما قرار میدهد که برنامه ای را در زمانیکه شما تعیین می نمائید به اجرا در بیاید .
2-7- گزارش وضعیت process ها
فرمان ps
یک برنامه در حال اجراء رایک process مینامند وهر process بوسیله یک شماره واحد شناخته میشودبه این شماره PID ویاشماره مشخصه process میگویند. process های باشماره مشخصه process1. 0 های ویژه سیستم میباشند. process شماره صفرkernel سیستم unix میباشدو process شماره init process .1 نام دارد. این process وظیقه برپاسازی ساختار process ها را بر عهده دارد . در سیستم unix تمام process ها توسط process دیگر ایجاد میشوند که به آن process پدر میگویند. پدرویابه تعبیری دیگر پدر بزرگ تمام process ها process شماره 1 میباشد.
شماره مشخصه بقیه process ها در محدوده 2 تا 30.000 قراردارد .برنامه ps نه تنها pid هابلکه اطلاعات دیگر ی درمورد process های در حال اجراءرا نمایش میدهد.برای مثال جهت مشاهده وضعیت process های اجراءشده در زمینه ویامشخص نمودن pid برای خاتمه دادن به process که درزمینه در حال اجراء میباشد از فرمان ps استفاده میکند همچنین از فرمان ps برای مشاهده process هائی که توسط دیگر استفاده کنندگان به اجراءدر آمده استفاده میکنیم.
اگرهیچ opthion رادر سطرفرمان ps اختصاص ندهیدتنها اطلاعات مربوط به process های ترمینال کنترلی خودرامشاهده خواهیدکرد.
$ ps
pid tty time command
25 2b 0:09 sh
156 2b 0:01 ps
$
چهارفیلدخروجی عبارتنداز شماره مشخصه process ونام ترمینال کنترلی. زمان مصرف شده برای اجرای فرمان ونام فرمان.
معمولا process ها ازطریق یک ترمینال کنترلی به اجراء در می آیند .اگر یک process که درزمینه اجراءمیگردد به ترمینال کنترلی اختصاصی نیافته باشد به آن daemon process ویا daemons میگویند. برای مشاهده وضعیت یک process خاص بصورت زیر عمل نمائید
$ ps_ p25
pid tty time command
25 01 0:09 sh
$
برای اجراءکردن یک process درزمینه در انتهای سطرفرمان علامت(E) راقراردهید در اینصورت اجرای process شروع میگردد بدون آنکه ترمینال شما منتظر خاتمه یافتن اجرای process گردد .
$ ls _ lr / >/ dev/ null e
157
$
هنگامیکه اجرای یک process در زمینه شروع میشود shell یک شماره بعنوان شماره مشخصه process نشان میدهد . در مثال فوق عدد 157 شماره مشخصه process است که در زمینه اجراء نموده ایم . خروجی فرمان ls که به صورت بازگشتی از ریشه به اجراء در میاید بصورت استاندارد بر روی صفحه ترمینال ما ظاهر میگردد که ما با تغییر مسیر دادن آن به فایل null از اینکار جلوگیری نموده ایم .