প্রচুর মেমরি কী ব্যবহার করে তা জানতে পাওয়ারশেল ব্যবহার করুন (bit৪ বিট উইন্ডোতে)


9

আমি কীভাবে খুঁজে পাব (পাওয়ারের মধ্যে) কোন প্রক্রিয়া / যা সবচেয়ে বেশি স্মৃতি ব্যবহার করে?

সম্পাদনা: টাস্ক ম্যানেজার ইত্যাদিতে সমস্ত শারীরিক মেমরি কী ব্যবহার করছে তা সমস্ত শারীরিক র‌্যাম কেন ব্যবহৃত হয়েছে তা ব্যাখ্যা করতে ব্যর্থ হয়ে কীভাবে পাওয়ারশেল ব্যবহার করবেন তা নির্ধারণ করার চেষ্টা করছি। অর্থাৎ আমার ক্যাশে ইত্যাদির দ্বারা ব্যবহৃত স্মৃতি শনাক্ত করতে হবে


আপনি কেমন ক্যাশে ভাবছেন?
স্কুইলম্যান

ডিস্ক ক্যাশে ... উইন্ডোজ সাধারণত দরকারী কিছু জন্য উপলব্ধ সমস্ত শারীরিক মেমরি ব্যবহার করার চেষ্টা করবেন না?
অ্যান্ড্রু জে। ব্রেহম

উত্তর:


8

বর্তমানে চলমান প্রক্রিয়াগুলি সম্পর্কে তথ্য পাওয়ার এবং ওয়ার্কিং সেট আকার অনুসারে বাছাই করার একটি উপায় এখানে

Get-Process | Sort-Object -Descending WS

কোনও আউটপুটটি ভেরিয়েবলের জন্য বরাদ্দ করুন এবং এটি আপনাকে ফলাফলগুলির একটি অ্যারে দেবে, তারপরে আপনি কেবল অ্যারের প্রথম সদস্যটি লিখতে পারেন (যা এই ক্ষেত্রে সিস্টেম.ডায়াগনস্টিক্স ro প্রসেস অবজেক্ট হবে)।

$ProcessList = Get-Process | Sort-Object -Descending WS
Write-Host $ProcessList[0].Handle "::" $Process.ProcessName "::" $Process.WorkingSet

ডাব্লুএমআই এর উইন 32_প্রসেস সরবরাহকারী ব্যবহার করে বর্তমানে চলমান প্রক্রিয়াগুলির তালিকা থেকে কয়েকটি আইটেম আইটেম ডাম্প করার জন্য এখানে আরও একটি দ্রুত এবং নোংরা স্ক্রিপ্ট রয়েছে:

$ProcessList = Get-WmiObject Win32_Process -ComputerName mycomputername
foreach ($Process in $ProcessList) {
    write-host $Process.Handle "::" $Process.Name "::" $Process.WorkingSetSize
}

এটি পিআইডি (হ্যান্ডেল), প্রক্রিয়াটির নাম এবং বর্তমান কার্যকারী সেট আকারের তালিকা তৈরি করবে। আপনি ডাব্লুএমআই প্রক্রিয়া শ্রেণীর বিভিন্ন বৈশিষ্ট্য ব্যবহার করে এটি পরিবর্তন করতে পারেন ।


আমার খারাপ। আমি যথেষ্ট পরিষ্কার ছিল না। প্রশ্ন সম্পাদিত ...
অ্যান্ড্রু জে ব্রেহম

1

আপনার সর্বাধিক স্মৃতি ব্যবহারের প্রক্রিয়াটির নাম সন্ধান করার জন্য একটি লাইনার

Get-Process | Sort-Object -Descending WS | select -first 1 | select -ExpandProperty ProcessName

0
$scripthost = Read-Host "Enter the Hostname of the Computer you would like to check Memory Statistics for"
""
""
"===========CPU - Top 10 Utilization List==========="
gwmi -computername $scripthost Win32_PerfFormattedData_PerfProc_Process| sort PercentProcessorTime -desc | select Name,PercentProcessorTime | Select -First 10 | ft -auto
"===========Memory - Top 10 Utilization List==========="
gwmi -computername $scripthost Win32_Process | Sort WorkingSetSize -Descending | Select Name,CommandLine,@{n="Private Memory(mb)";Expression = {[math]::round(($_.WorkingSetSize / 1mb), 2)}} | Select -First 10 | Out-String   
#gwmi -computername $scripthost Win32_Process | Sort WorkingSetSize -Descending | Select Name,CommandLine,@{n="Private Memory(mb)";e={$_.WorkingSetSize/1mb}} | Select -First 10 | Out-String
#$fields = "Name",@{label = "Memory (MB)"; Expression = {[math]::round(($_.ws / 1mb), 2)}; Align = "Right"}; 

"===========Server Memory Information==========="
$fieldPercentage = @{Name = "Memory Percentage in Use (%)"; Expression = { “{0:N2}” -f ((($_.TotalVisibleMemorySize - $_.FreePhysicalMemory)*100)/ $_.TotalVisibleMemorySize)}};     
$fieldfreeram = @{label = "Available Physical Memory (MB)"; Expression = {[math]::round(($_.FreePhysicalMemory / 1kb), 2)}}; 
$fieldtotalram = @{label = "Total Physical Memory (MB)"; Expression = {[math]::round(($_.TotalVisibleMemorySize / 1kb), 2)}}; 
$fieldfreeVram = @{label = "Available Virtual Memory (MB)"; Expression = {[math]::round(($_.FreeVirtualMemory / 1kb), 2)}}; 
$fieldtotalVram = @{label = "Total Virtual Memory (MB)"; Expression = {[math]::round(($_.TotalVirtualMemorySize /1kb), 2)}}; 
$memtotal = Get-WmiObject -Class win32_OperatingSystem -ComputerName $scripthost; 
$memtotal | Format-List $fieldPercentage,$fieldfreeram,$fieldtotalram,$fieldfreeVram,$fieldtotalVram;
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.