کتابخانه‌ی استاندارد · سیستم و ابزار

سکو os/platform

شناختن سیستمی که برنامه روی آن اجرا می‌شود: سیستم عامل، معماری پردازنده، تعداد هسته و حافظه.

واردسازی سیستم عامل.سکو
در این صفحه
  1. روال‌ها

بسته‌ی سکو در زمان اجرا می‌گوید برنامه روی چه سیستمی است. برای تصمیم‌هایی که باید هنگام ترجمه گرفته شوند، ثابت‌هایی مثل SALAM_OS_WINDOWS و ترجمه‌ی شرطی مناسب‌ترند؛ این بسته برای گزارش، تنظیم خودکار و پیام‌هاست.

نمونه‌ی زیر به‌جای نام سیستم، درستی ویژگی‌ها را چاپ می‌کند تا روی هر سیستمی خروجی یکسان بدهد.

روال‌ها

لینوکس است IsLinux

روال لینوکس است(): منطقی
روی لینوکس درست است.
os-platform-OS.salam
واردسازی سیستم عامل.سکو

روال ریشه:
    شناخته := سکو.لینوکس است() یا سکو.ویندوز است() یا سکو.مک است() یا سکو.فری‌بی‌اس‌دی است() یا سکو.بی‌اس‌دی است() یا سکو.اندروید است() یا سکو.وب‌اسمبلی است()
    سرچاپ شناخته، سکو.نام سیستم عامل().طول() > ۰
    معماری := سکو.ایکس۶۴ است() یا سکو.آرم۶۴ است() یا سکو.ایکس۸۶ است() یا سکو.آرم است()
    سرچاپ معماری، سکو.معماری().طول() > ۰
    سرچاپ سکو.تعداد پردازنده() >= ۱
    سرچاپ سکو.کل حافظه() > ۰، سکو.حافظه موجود() <= سکو.کل حافظه()
پایان
خروجیtrue true true true true true true

ویندوز است IsWindows

روال ویندوز است(): منطقی
روی ویندوز درست است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

مک است IsMac

روال مک است(): منطقی
روی مک درست است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

بی‌اس‌دی است IsBSD

روال بی‌اس‌دی است(): منطقی
روی خانواده‌ی BSD درست است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

فری‌بی‌اس‌دی است IsFreeBSD

روال فری‌بی‌اس‌دی است(): منطقی
روی FreeBSD درست است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

اندروید است IsAndroid

روال اندروید است(): منطقی
روی اندروید درست است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

وب‌اسمبلی است IsWasm

روال وب‌اسمبلی است(): منطقی
وقتی برنامه به وب‌اسمبلی ترجمه شده باشد درست است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

نام سیستم عامل OS

روال نام سیستم عامل(): رشته
نام سیستم عامل: linux، mac، windows، freebsd، android یا wasm.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

ایکس۶۴ است IsX64

روال ایکس۶۴ است(): منطقی
روی پردازنده‌ی ۶۴ بیتی اینتل و AMD درست است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

آرم۶۴ است IsArm64

روال آرم۶۴ است(): منطقی
روی پردازنده‌ی ۶۴ بیتی آرم، مثل Apple Silicon، درست است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

ایکس۸۶ است IsX86

روال ایکس۸۶ است(): منطقی
روی پردازنده‌ی ۳۲ بیتی اینتل درست است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

آرم است IsArm

روال آرم است(): منطقی
روی پردازنده‌ی ۳۲ بیتی آرم درست است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

معماری Arch

روال معماری(): رشته
نام معماری پردازنده، مثل x64 یا arm64.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

تعداد پردازنده CpuCount

روال تعداد پردازنده(): صحیح
تعداد هسته‌های پردازنده؛ برای تعیین تعداد کارهای همزمان.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

کل حافظه TotalMemory

روال کل حافظه(): صحیح۶۴
کل حافظه‌ی سیستم بر حسب بایت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam

حافظه موجود AvailableMemory

روال حافظه موجود(): صحیح۶۴
حافظه‌ی آزاد بر حسب بایت. فقط روی لینوکس و ویندوز پشتیبانی می‌شود؛ روی بقیه منفی یک برمی‌گرداند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: os-platform-OS.salam