posix --- رایجترین فراخوانیهای سیستمی POSIX¶
این ماژول دسترسی به قابلیتهای سیستمعاملی را فراهم میکند که توسط استاندارد C و استاندارد POSIX (یک رابط Unix با پوششی بسیار نازک) استاندارد شدهاند.
این ماژول را بهصورت مستقیم ایمپورت نکنید. در عوض، ماژول os را ایمپورت کنید، که نسخهای قابلحمل از این رابط ارائه میدهد. در یونیکس، ماژول os ابرمجموعهای از رابط posix را ارائه میدهد. در سیستمعاملهای غیر یونیکسی، ماژول posix در دسترس نیست، اما زیرمجموعهای همیشه از طریق رابط os در دسترس است. پس از ایمپورت شدن os، استفاده از آن به جای posix هیچ جریمهای از نظر کارایی ندارد. علاوه بر این، os برخی قابلیتهای اضافی را ارائه میدهد، مانند فراخوانی خودکار putenv() هرگاه یک ورودی در os.environ تغییر کند.
خطاها بهصورت استثنا گزارش میشوند؛ برای خطاهای نوعی، استثناهای معمول داده میشوند، در حالی که خطاهای گزارششده از سوی فراخوانیهای سیستم، OSError را پرتاب میکنند.
پشتیبانی از پروندههای بزرگ¶
چندین سیستمعامل (از جمله AIX و Solaris) پشتیبانی از پروندههایی که بزرگتر از ۲ GiB هستند را از طریق یک مدل برنامهنویسی C که در آن int و long مقادیر ۳۲بیتی هستند، فراهم میکنند. این کار معمولاً با تعریف نوعهای مرتبط با اندازه و آفست بهعنوان مقادیر ۶۴بیتی انجام میشود. به چنین پروندههایی گاهی پروندههای بزرگ (large files) گفته میشود.
پشتیبانی از پروندههای بزرگ زمانی در پایتون فعال میشود که اندازهی یک off_t بزرگتر از یک long باشد و long long حداقل به اندازهی یک off_t بزرگ باشد. ممکن است لازم باشد پایتون را با پرچمهای خاصی از کامپایلر پیکربندی و کامپایل کنید تا این حالت فعال شود. برای مثال، در Solaris 2.6 و 2.7 باید کاری مانند زیر انجام دهید:
CFLAGS="`getconf LFS_CFLAGS`" OPT="-g -O2 $CFLAGS" \
./configure
در سیستمهای لینوکسی با قابلیت پشتیبانی از پروندههای بزرگ، ممکن است این کار کند:
CFLAGS='-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64' OPT="-g -O2 $CFLAGS" \
./configure
محتویات قابلتوجه ماژول¶
علاوه بر بسیاری از توابعی که در مستندات ماژول os توضیح داده شدهاند، posix آیتم دادهی زیر را تعریف میکند:
-
posix.environ¶
دیکشنریای که نشاندهندهی محیط رشتهای در زمان آغاز مفسر است. کلیدها و مقادیر در یونیکس از نوع bytes و در ویندوز از نوع str هستند. برای مثال، environ[b'HOME'] (در ویندوز environ['HOME']) نام مسیر پوشهی خانگی شماست که معادل getenv("HOME") در C است.
تغییر این دیکشنری بر محیطی که بهصورت رشته توسط execv()، popen() یا system() منتقل میشود، تأثیری نمیگذارد؛ اگر نیاز به تغییر محیط دارید، environ را به execve() بدهید یا انتسابهای متغیر و دستورهای export را به رشتهی فرمان برای system() یا popen() اضافه کنید.
تغییر یافته در نسخهی 3.2: در یونیکس، کلیدها و مقادیر بایت هستند.
نکته
ماژول os یک پیادهسازی جایگزین از environ ارائه میدهد که در صورت تغییر، محیط را بهروزرسانی میکند. همچنین توجه داشته باشید که بهروزرسانی os.environ این دیکشنری را منسوخ خواهد کرد. توصیه میشود بهجای دسترسی مستقیم به ماژول posix، از نسخهی این مورد در ماژول os استفاده کنید.
©
حق نشر 2001 Python Software Foundation.
این صفحه تحت مجوز بنیاد نرمافزار پایتون نسخه ۲ منتشر شده است.
مثالها، دستورالعملها، و سایر کدهای موجود در مستندات همچنین تحت مجوز بدون بند BSD منتشر شدهاند.
برای اطلاعات بیشتر به
تاریخچه و مجوز مراجعه کنید.
بنیاد نرمافزار پایتون یک شرکت غیرانتفاعی است.
لطفاً کمک مالی کنید.
آخرین بهروزرسانی در نوامبر 12, 2026 (06:19 UTC).
آیا
اشکالی یافتید؟
ساخته شده با
Sphinx 9.1.0.