Cách tặng thời gian CPU một cách an toàn bằng Windows Sandbox
Trong thế giới này, sức mạnh tính toán dẫn đến những điều kỳ diệu. Sức mạnh máy tính có thể đóng một vai trò quan trọng trong việc giải quyết các vấn đề xoay quanh chúng ta. Đây là một trong những lý do, toàn bộ ngành công nghệ (bao gồm cả Microsoft ) được đầu tư vào điện toán Lượng tử(Quantum) sẽ giúp tạo ra một máy tính hiệu quả hơn để giải quyết những vấn đề này. Folding Home là một dự án máy tính phân tán thực hiện các mô phỏng động lực học phân tử về động lực học của protein.
Microsoft đã đăng một hướng dẫn chi tiết mà qua đó bất kỳ ai cũng có thể đóng góp tài nguyên máy tính của họ cho dự án. Chúng tôi sẽ nói về cách tặng thời gian CPU một cách an toàn với Windows Sandbox trong hướng dẫn này.
Tặng thời gian CPU một cách an toàn bằng Windows Sandbox
Trước khi bắt đầu, bạn cần đảm bảo rằng Windows Sandbox đã được bật trên máy tính của mình(Windows Sandbox is enabled on your computer) .
Bây giờ, hãy mở Notepad và sao chép và dán đoạn mã sau vào đó:
#Requires -RunAsAdministrator #For a custom username, add -username <your username> to the command execution param([string]$username=‘wsandbox_anon‘) $ProgressPreference = ‘SilentlyContinue‘ #Progress bar makes things way slower # Ensure that virtualization is enabled in BIOS. Write-Output ‘Verifying that virtualization is enabled in BIOS…‘ if ((Get-WmiObject Win32_ComputerSystem).HypervisorPresent -eq $false) { Write-Output ‘ERROR: Please Enable Virtualization capabilities in your BIOS settings…‘ exit } # Determine if Windows Sandbox is enabled. Write-Output ‘Checking to see if Windows Sandbox is installed…‘ If ((Get-WindowsOptionalFeature –FeatureName ‘Containers-DisposableClientVM‘ –Online).State -ne ‘Enabled‘) { Write-Output ‘Windows Sandbox is not installed, attempting to install it (may require reboot)…‘ if ((Enable-WindowsOptionalFeature –FeatureName ‘Containers-DisposableClientVM‘ –All –Online –NoRestart).RestartNeeded) { Write-Output ‘Please reboot to finish installing Windows Sandbox, then re-run this script…‘ exit } } else { Write-Output ‘Windows Sandbox already installed.‘ } # Download the latest version of FAH. Write-Output ‘Checking for latest version of foldingathome…‘ $installer_url = ‘https://download.foldingathome.org/releases/public/release/fah-installer/windows-10-32bit/‘ # Use regex to get the latest version from the FAH website. $version = ((Invoke-WebRequest –Uri $installer_url –UseBasicParsing).Links | Where-Object {$_.href -match ‘^v\d+([.]\d+)?‘} | ForEach-Object {[float]($_.href -replace ‘[^.\d]‘, ‘‘)} | Measure-Object –Max).Maximum $installer = “$($installer_url)v$($version)/latest.exe“ $installer_size =(Invoke-WebRequest $installer –Method Head –UseBasicParsing).Headers.‘Content-Length‘ Write-Output “Using FAH v$version.“ # Check if the installer is present, download otherwise. $working_dir = “$env:USERPROFILE\fah_conf“ $install_fname = ‘folding_installer.exe‘ If (!(test-path “$working_dir\$install_fname“) -or (Get-ChildItem “$working_dir\$install_fname“).Length -ne $installer_size ) { Remove-Item “$working_dir\$install_fname“ –Force –ErrorAction SilentlyContinue Write-Output “Downloading latest folding executable: $working_dir\$install_fname“ Write-Output “Saving to $working_dir\$install_fname…“ New-Item –ItemType Directory –Force –Path $working_dir | Out-Null Invoke-WebRequest –Uri $installer –OutFile “$working_dir\$install_fname“ } # Create the FAH configuration file with the Windows Sandbox FAH team #251561. Write-Output ‘Creating init command…‘ $conf_file = ‘fah_sandbox_conf.xml‘ Write-Output “Saved [email protected] configuration file to $working_dir\$conf_file“ New-Item –Force –Path “$working_dir\$conf_file“ –ItemType File Set-Content –Path “$working_dir\$conf_file“ –Value @” <config> <user v=’$username‘/> <team v=’251561’/> <core-priority v=’low’/> <power v=’full’ /> <priority v=’realtime’/> <smp v=’true’/> <gpu v=’true’/> <open-web-control v=’true’/> </config> “@ <# Create the script that runs at logon. This script: 1. Starts the installer 2. Creates a volatile working directory 3. Copies the config into the working directory 4. Sets the firewall policies to let FAH run 5. Starts the FAH client #> Write-Output ‘Creating init command…‘ $logon_cmd = “$working_dir\init.cmd“ $wdg_install_dir = ‘C:\users\wdagutilityaccount\desktop\fah_conf‘ $wdg_working_dir = ‘C:\users\wdagutilityaccount\desktop\fah_working_dir‘ Write-Output “Saved logon script to $logon_cmd, this will be run upon starting Sandbox.“ New-Item –Force –Path $logon_cmd –ItemType File Set-Content –Path $logon_cmd –Value @” start $wdg_install_dir\$install_fname /S goto WAITLOOP :WAITLOOP if exist “C:\Program Files (x86)\FAHClient\FAHClient.exe” goto INSTALLCOMPLETE ping -n 6 127.0.0.1 > nul goto WAITLOOP :INSTALLCOMPLETE mkdir $wdg_working_dir cd $wdg_working_dir echo \”Copying config file to $wdg_working_dir\” copy $wdg_install_dir\$conf_file $wdg_working_dir netsh advfirewall firewall Add rule name=”FAHClient” program=”C:\Program Files (x86)\FAHClient\FAHClient.exe” action=allow dir=out netsh advfirewall firewall Add rule name=”FAHClient” program=”C:\Program Files (x86)\FAHClient\FAHClient.exe” action=allow dir=in start C:\”Program Files (x86)”\FAHClient\FAHClient.exe –config $wdg_working_dir\$conf_file “@ # Create the Sandbox configuration file with the new working dir & LogonCommand. $sandbox_conf = “$working_dir\fah_sandbox.wsb“ Write-Output “Creating sandbox configuration file to $sandbox_conf“ New-Item –Force –Path $sandbox_conf –ItemType File Set-Content –Path $sandbox_conf –Value @” <Configuration> <VGpu>Enable</VGpu> <MappedFolders> <MappedFolder> <HostFolder>$working_dir</HostFolder> <ReadOnly>true</ReadOnly> </MappedFolder> </MappedFolders> <LogonCommand> <Command>$wdg_install_dir\init.cmd</Command> </LogonCommand> </Configuration> “@ # For convenience, start the Sandbox. Write-Output ‘Starting sandbox…‘ Start-Process ‘C:\WINDOWS\system32\WindowsSandbox.exe‘ –ArgumentList $sandbox_conf
Ngoài ra, bạn có thể tải xuống từ kho lưu trữ GitHub của Microsoft(Microsoft’s GitHub repository) .
Sau khi hoàn tất, chỉ cần chạy nó với Windows PowerShell và nó sẽ bắt đầu một môi trường Windows Sandbox sẽ đóng góp tài nguyên máy tính của bạn cho dự án máy tính phân tán.
All the best!
Related posts
Kích hoạt hoặc vô hiệu hóa chính sách Printer Sharing group bằng Windows Sandbox
Cách bật Windows Sandbox trong HĐH khách VirtualBox
Kích hoạt hoặc vô hiệu hóa Video Input trong Windows Sandbox
Application Guard or Windows Sandbox error 0x80070003, 0xc0370400
Bật hoặc tắt Clipboard Chia sẻ với Windows Sandbox
Sandbox là gì? Sandboxing software miễn phí cho PC Windows 10
Windows Sandbox Không thể khởi động, Error 0x80070569
Cách sử dụng Windows 10 Sandbox
Fix LSAISO process CPU usage cao trong Windows 10
InfinityBench là một CPU & GPU Benchmark software nhanh chóng cho PC
Bật hoặc tắt Audio Input trong Windows Sandbox trong Windows 10
Virtualization support bị vô hiệu hóa trong firmware trong Windows 10
Explorer.exe High Memory or CPU usage trong Windows 10
Fix PowerShell gây ra High CPU usage trong Windows 11/10
Throttlestop: Monitor & Vô hiệu hóa CPU Điều chỉnh trên máy tính xách tay Windows
Wuauserv là gì? Cách khắc phục WUAUSERV CAO CPU usage trong Windows 11/10
Process Tamer: Quản lý High hoặc 100% CPU utilization trong Windows PC
4 điều bạn có thể làm với Windows Sandbox
Làm thế nào để kiểm tra PS1, EXE, MSI installer trong Windows Sandbox một cách nhanh chóng
Cách khắc phục sự cố CPU usage cao GSvr.exe bằng Windows 10