Rust භාෂාවේ මතක කළමනාකරණය ගැන ගැඹුරු අවබෝධයක් ලබාගැනීමට, නවතම Advanced Rust 1.8 – Memory Pt.6 ලිපිය Windows මෙහෙයුම් පද්ධතියේ API භාවිතයෙන් මතක අඩවිය සොයන ආකාරය පැහැදිලි කරයි.
මෙම උදාහරණයේදී, Windows හි KERNEL32.DLL හි ඇති GetCurrentProcess, K32GetProcessMemoryInfo සහ VirtualQueryEx වැනි System Calls භාවිතා කරමින් ක්රියාවලියේ මතක තත්ත්වය ගවේෂණය කරයි. Rust හි windows-sys crate එකේ 0.59.0 සංස්කරණය හා එහි සක්රිය කර ඇති "Win32_Foundation", "Win32_System_Memory", "Win32_System_ProcessStatus", "Win32_System_Threading" යන විශේෂතා අවශ්ය වේ.
කේතයේ මුලදී std::ffi::c_void සහ std::mem ආයාත කර, Windows API වලට ගැළපෙන PVOID (void* pointer) සහ SIZE_T (size_t) වර්ග නිර්වචනය කරයි. පසුදා MEMORY_BASIC_INFORMATION සහ PROCESS_MEMORY_COUNTERS වැනි සංරචක භාවිතයෙන් මතක බ්ලොක් එකක් පිළිබඳ විස්තර, පේජ් ෆෝල්ට් ගණන, වැඩ කරන මතක ප්රමාණය, පේජ් පූල් කෝටා ආදිය ලබාගත හැක.
කොඩ් එකේ ProcessInfo නමැති struct එකක් නිර්මාණය කර, Windows API එකෙන් ලබාගත් දත්ත Debug ආකාරයෙන් මුද්රණය කරයි. මෙය සංවර්ධකයින්ට මතක භාවිතය රියල්-ටයිම් නිරීක්ෂණය කර, පර්ෆෝමන්ස් bottleneck හඳුනා ගැනීමට උපකාරී වේ.
ශ්රී ලංකාවට ඇති වැදගත්කම
- සිසුන් – Rust මතක කළමනාකරණය පිළිබඳ ප්රායෝගික උදාහරණයක් නිසා, පද්ධති මට්ටමේ වැඩ කරන්නේ කෙසේදැයි තේරුම් ගැනීමට හැකියාව ලැබේ.
- සංවර්ධකයින් – Windows API සමඟ Rust එකට සම්බන්ධ කරගැනීමේ ක්රමය ඉගෙන ගැනීම, cross‑platform සොෆ්ට්වෙයා සංවර්ධනයේ නව දෘශ්යකෝණයක් විවෘත කරයි.
- ව්යාපාරිකයින් – මතක පරිභෝජනය නිරීක්ෂණය කර, සේවාදායකයන්ගේ සම්පත් පරිපාලනය කුඩා වෙලාවකම සකස් කර ගත හැකි බැවින්, ක්ලවුඩ් හෝ on‑premise පරිසර වල ක්රියාකාරිත්වය වැඩි දියුණු වේ.
සාරාංශය ලෙස, Rust සහ Windows API එකතු කිරීම මතක කළමනාකරණයේ නව පියවරක් ගෙන එයි. මෙය ඔබේ පද්ධති වැඩි දියුණු කිරීමට, කාර්ය සාධන අධිකරණයට සහ ආරක්ෂිත මතක ප්රවේශයට මූලික මාර්ගයක් වේ.