/proc/locks - قفلها
و
اجارههای
جاری
پرونده
- /proc/locks
- این پرونده
قفلهای
جاری
پرونده (flock(2) و
fcntl(2)) و
اجارهها
(fcntl(2)) را
نمایش
میدهد.
- نمونهای
از محتوای
نمایشدادهشده
در این
پرونده به
صورت زیر
است:
-
1: POSIX ADVISORY READ 5433 08:01:7864448 128 128
2: FLOCK ADVISORY WRITE 2001 08:01:7864554 0 EOF
3: FLOCK ADVISORY WRITE 1568 00:2f:32388 0 EOF
4: POSIX ADVISORY WRITE 699 00:16:28457 0 EOF
5: POSIX ADVISORY WRITE 764 00:16:21448 0 0
6: POSIX ADVISORY READ 3548 08:01:7867240 1 1
7: POSIX ADVISORY READ 3548 08:01:7865567 1826 2335
8: OFDLCK ADVISORY WRITE -1 08:01:8713209 128 191
- فیلدهای
نمایشدادهشده
در هر سطر
به شرح زیر
هستند:
- [1]
- موقعیت
ترتیبی قفل
در فهرست.
- [2]
- نوع قفل.
مقادیری که
ممکن است در
اینجا ظاهر
شوند
عبارتند
از:
- FLOCK
- این یک قفل
پرونده BSD
است که با
استفاده از
flock(2) ایجاد
شده است.
- OFDLCK
- این یک قفل
شرح پرونده
باز (OFD) است که
با استفاده
از fcntl(2) ایجاد
شده است.
- POSIX
- این یک قفل
دامنه بایت
POSIX است که با
استفاده از
fcntl(2) ایجاد
شده است.
- [3]
- از جمله
رشتههایی
که
میتوانند
در اینجا
ظاهر شوند،
موارد زیر
هستند:
- ADVISORY
- این یک قفل
توصیهای
(advisory) است.
- MANDATORY
- این یک قفل
اجباری (mandatory)
است.
- [4]
- نوع قفل.
مقادیری که
میتوانند
در اینجا
ظاهر شوند
عبارتند
از:
- READ
- این یک قفل
خواندن POSIX یا
OFD، یا یک قفل
اشتراکی BSD
است.
- WRITE
- این یک قفل
نوشتن POSIX یا
OFD، یا یک قفل
انحصاری BSD
است.
- [5]
- شناسه
فرایند (PID)
فرایندی که
مالک قفل
است.
- از آنجا که
قفلهای OFD
در مالکیت
یک فرایند
واحد
نیستند
(زیرا چندین
فرایند
ممکن است
توصیفکنندههای
پروندهای
داشته
باشند که به
همان شرح
پرونده باز
اشاره
دارند)،
مقدار -1 در
این فیلد
برای
قفلهای OFD
نمایش داده
میشود.
(پیش از
لینوکس 4.14،
به دلیل
وجود یک
باگ، شناسه
فرایندی که
در ابتدا
قفل را به
دست آورده
بود به جای
مقدار -1
نمایش داده
میشد.)
- [6]
- سه زیرفیلد
جداشده با
دو نقطه که
شناسه
دستگاه
اصلی (major) و
فرعی (minor)
دستگاهِ
حاوی
سیستمپروندهای
که پرونده
قفلشده در
آن قرار
دارد، و به
دنبال آن
شماره inode
پرونده
قفلشده را
مشخص
میکنند.
- [7]
- آفست بایتی
نخستین
بایت قفل.
برای
قفلهای BSD،
این مقدار
همیشه 0 است.
- [8]
- آفست بایتی
آخرین بایت
قفل. EOF در
این فیلد
بدین
معناست که
قفل تا
انتهای
پرونده
امتداد
دارد. برای
قفلهای BSD،
مقدار
نمایشدادهشده
همواره EOF
است.
- از لینوکس 4.9
به بعد،
فهرست
قفلهای
نمایشدادهشده
در /proc/locks
فیلتر
میشود تا
تنها
قفلهای
مربوط به
فرایندهای
موجود در
فضای نام PID
(نگاه کنید
به pid_namespaces(7)) را
نشان دهد که
سیستمپرونده
/proc برای آن
سوار (mount) شده
است. (در
فضای نام PID
اولیه، هیچ
فیلترکردنی
روی
رکوردهای
نمایشدادهشده
در این
پرونده
وجود
ندارد.)
- دستور lslocks(8)
کمی
اطلاعات
بیشتر
درباره هر
قفل ارائه
میدهد.