/proc/pid/cmdline - خط
فرمان کامل
و
آرگومانهای
فرایند در
حال اجرا
- /proc/pid/cmdline
- این پرونده
فقطخواندنی،
خط فرمان
کامل
فرایند را
در خود نگه
میدارد،
مگر آنکه
فرایند یک
زامبی (zombie)
باشد. در
حالت اخیر،
هیچ چیزی در
این پرونده
وجود
ندارد؛ به
این معنی که
خواندن از
این
پرونده، ۰
نویسه
برمیگرداند.
- برای
فرایندهایی
که هنوز در
حال اجرا
هستند،
آرگومانهای
خط فرمان با
همان
چیدمانی که
در حافظه
فرایند
قرار
دارند، در
این پرونده
ظاهر
میشوند:
اگر فرایند
رفتاری
استاندارد
داشته
باشد، این
محتوا
مجموعهای
از
رشتههاست
که با
بایتهای
نال ('\0') از
یکدیگر جدا
شدهاند، و
یک بایت نال
دیگر نیز پس
از آخرین
رشته قرار
دارد.
- این حالت
معمول است،
اما
فرایندها
این آزادی
را دارند که
ناحیه
حافظه را
بازنویسی
کرده و
فرضیات
موجود
درباره
محتویات یا
قالب
پرونده
/proc/pid/cmdline را نقض
کنند.
- اگر پس از
اجرای execve(2)
فرایند
رشتههای
argv خود را
تغییر دهد،
آن تغییرات
در اینجا
نشان داده
خواهند شد.
این موضوع
با تغییر
دادن آرایه
argv یکسان
نیست.
- علاوه بر
این، یک
فرایند
میتواند
مکان
حافظهای
را که این
پرونده به
آن اشاره
دارد، از
طریق
عملیاتهای
prctl(2) مانند
PR_SET_MM_ARG_START تغییر
دهد.
- این پرونده
را به عنوان
خط فرمانی
در نظر
بگیرید که
فرایند
مایل است
شما
ببینید.