WSL Tepes: خون آشام CPU/Memory

مطمئنا شما تا به حال آن را دیده اید کروم و اندروید استودیو میم هایی در مورد مصرف زیاد رم و CPU.
خب… فکر می کنم یک مدعی جدید برای تاج و تخت داریم.
پادشاه مرده است، درود بر پادشاه جدید.
اعلیحضرت: WSL! 👑
دلیلش این است که یک مشکل شناخته شده دارید “WSL 2 مقدار زیادی رم مصرف می کند و آن را پس نمی دهد” و تا امروز قابل حل نیست.
راه حل
این یک راه حل قطعی نیست، اما ما می توانیم WSL را با برخی از تنظیمات پیشرفته راه اندازی کنیم تا منابع او را محدود کنیم.
تمام شیب های بعدی باید در PowerShell (سمت ویندوز) انجام شود.
ابتدا باید تمام پایانههایی را که از WSL استفاده میکنند ببندیم و سپس آن را خاموش کنیم تا از خراب شدن دادهها در حال اجرا جلوگیری کنیم. wsl --shutdown
فرمان
ایجاد یک .wslconfig
فایل زیر مسیر پروفایل کاربری ویندوز.
cd $env:USERPROFILE
New-Item -Path '.wslconfig' -ItemType File
این فایل را با VSCode (یا هر ویرایشگری که دوست دارید) باز کنید
code .wslconfig
و محدودیتهایی را برای حداکثر منابعی که میتوانید مصرف کنید (با توجه به نیاز خود) تعیین کنید. مثلا:
# Settings apply across all Linux distros running on WSL 2
[wsl2]
# Limits VM memory to use no more than 4 GB, this can be set as whole numbers using GB or MB
memory=4GB
# Sets the VM to use two virtual processors
processors=2
# Sets amount of swap storage space to 8GB, default is 25% of available RAM
swap=8GB
# Sets swapfile path location, default is %USERPROFILE%\AppData\Local\Temp\swap.vhdx
swapfile=D:\\WSL\\wsl-swap.vhdx
# Turn off default connection to bind WSL 2 localhost to Windows localhost
localhostforwarding=true
برای پیکربندی پیشرفته WSL، مستندات را بررسی کنید.
فایل را ذخیره کنید و WSL را در حال اجرا مجدد راه اندازی کنید wsl
فرمان
بدون توجه به استفاده از حافظه لینوکس و تنها 2 پردازنده مجازی، همچنان کل 4 گیگابایت را مصرف می کند، اما حداقل رشد بیش از این را متوقف خواهد کرد.
جایگزین
اگر هنوز با WSL مشکل دارید، می توانید از Git Bash استفاده کنید. این یک توزیع “واقعی” لینوکس مانند WSL نیست، اما جایگزین خوبی برای تقلید از یک است Unixish محیط داخل پنجره ها

ZSH + Oh My ZSH! در ویندوز بدون WSL
کامیلو مارتینز · 11 اکتبر 22 · 4 دقیقه خواندن
#zsh
#git
#پایانه
این همه مردم!
کد نویسی مبارک 🖖