කිරියෙන් පැනියෙන් ඉතිරෙන සුභම සුභ අලුත් අවුරුද්දක් වේවා....

2012-09-06

පරිගනකයක් හයිබර්නේට් (Hibernate) කිරීමේ හොඳ හා නරක

මුලින්ම බලමු මොකද්ද මේ හයිබර්නේට(Hibernate) කරන්වා කියන්නේ කියලා. අපි හිතමු අපි අපේ පරිගනකයෙන් මොකක් හරි වැදගත් වැඩක් කර කර ඉන්නවා කියලා. ඒත් හදිස්සියෙම අපිට සිද්ද වෙනවා මොනවහරි දෙයකට ඒ වැඩේ තාවකාලිකව නතර කරලා වෙන දෙයක යෙදෙන්න. එතකොට ඉතින් අපි අපේ පරිගනකය ඒ තිබුන විදියටම ක්‍රියාත්මක කරල තියන එක කරදරයක්. ගොඩක් වෙලා ඒ විදියටම තිබුනොත් විදුලියත් නිරපරාදේ නාස්තිවෙනවා. ඉතින් අපි පරිගනකයෙන් අයින් වෙන්නෙ ඉතා සුලු වේලාවකටනම් අපිට පුලුවන් ස්ලීප්(sleep) කියන විදියට පරිගනකය තාවකාලිකව නතර කරන්න. නමුත් එහිදී විදුලිය වැයවීම අවම වීමක් මිසක් නතර වීමක් සිදුවෙන්නේ නෑ. ඒක නිස වැඩි වේලාවක් එසේ තිබීම අපරාදයක්. ඉතින් මේ පරිගනකයේ අපි කරමින් හිටපු වැඩ ටිකත් ඒ විදියටම පවතින පරිදි කරන්න පුලුවන් හොදම දේ තමයි මේ හයිබර්නේට්(Hibernate) කරන්වා කියන්නේ. ඒත් මේ ක්‍රියාවලියත් නිතර නිතර සිදු කිරීම එච්චරම සුදුසු වෙන්නෙත් නෑ. අපි බලමු ඒකට හේතුව මොකද්ද කියලා.

මුලින්ම දැනගමු අපි පරිගනකයක් හයිබර්නේට්(Hibernate) කිරීමෙන් ඇත්තටම මොකද්ද වෙන්නේ කියලා. අපි පරිගනකයක යම්කිසි වැඩක් කරමින් ඉන්නකොට අපි කරන සියලුම වැඩ ටික තාවකාලිකව මතක තබාගෙන ඉන්නේ පරිගනකයේ තාවකලික මතකය. ඒ කියන්නේ රැම් එක. හැබැයි මේ රැම් එකට මතක තබාගත හැකි වෙන්නේ විදුලියට සම්බන්ද කරලා තියෙනකම් විතරයි. ඉතින් අපි පරිගනකය ක්‍රියාවිරහිත කරොත් ඒ කියන්නෙ ශට්ඩවුන්(shutdown) කරොත් මේ තාවකාලික මතකයේ තියෙන හැමදේම මැකිලායනවා. ඉතින් හයිබර්නේට්(Hibernate) කියන ක්‍රියාවලියේදී වෙන්නේ මේ රැම්(RAM) එකේ තියෙන සියලුම දත්ත අපේ පරිගනකයේ ස්ථිර මතකය වෙත පිටපත් කරන්වා. ඒ කියන්නෙ හාඩ් ඩිස්ක් එකට පිටපත් කරනවා. ඊට පස්සේ පරිගනකය සම්පූර්නයෙන් ක්‍රියා විරහිත කරන්වා. විදුලිය නැති උනත් ස්ථිර මතකයේ තියෙන දත්ත වලට හානි සිදු නොවෙන නිසා මේ පිටපත් කල දෙවල් ඒවිදියටම පවතිනවා අපි නැවත පරිගනකය ක්‍රියාත්මක කරනකම්. අපි නැවත පරිගනකය ක්‍රියාත්මක කරද්දි අර ස්ථිර මතකයේ තියෙන දත්ත සියල්ලම නැවතත් අපෙ තාවකාලික මතකයට එනම් රැම් එකට පිටපත් කරන්වා. ඉතින් අපිට මුලින් හයිබර්නේට්(Hibernate) කරන අවස්ථාවේ තිබුන විදියටම නැවත අපි කරගෙන ගිය වැඩ ටික දිගටම කරගන්න පුලුවන්. ඉතින් මේ විදියට හයිබර්නේට්(Hibernate) කරන එක ඉතාම ප්‍රයොජනවත් බොහෝ අවස්ථා වලට. ඒත් මේ ක්‍රමයි යම් යම් අවාසිත් නැතුවාම නොවේ. ඉතින් මේ පිලිබඳ හරියටම දැන ගැනීමෙන් අපෙ පරිගනකයට හානියකුත් නැතිව උපරිම කාර්යක්ෂම තාවයක් ලබා ගැනීමට හැකි වෙනවා. දැන් අපි බලමු මොනවද මේ අවාසි කියලා
මුලින්ම අපිට අත්විදින්න වෙන ලොකුම අවාසිය තමයි සාමන්‍යයෙන් පරිගනකය ස්ලීප්(sleep) කිරීම හෝ ශට්ඩවුන්(shutdown) කිරීමට වඩා හයිබර්නේට්(Hibernate) කිරීමට වැඩි කාලයක් ගත වෙනාවා. ඒ කාලට අපේ පරිගනකයේ රැම් එකෙහි ප්‍රමනයට අනුලෝමවත් හාඩ් ඩිස්ක් එකේ වේගයට ප්‍රතිලෝමවත් සමානුපාතික වෙනවා.

ඊලඟ ප්‍රශ්නය තමයි අපි හයිබර්නේට්(Hibernate) කිරීමට අවශ්‍යය වෙනව නම් කලින් පරිගනකට ඒ සඳහා සූදානම් කරලා තියන්න අවශ්‍යය වෙනවා. අපි පරිගනකයක් ගන්න විටම මේ සූදානම් කිරීම කරලා තියෙන්නත් පුලුවන්. සමහර විට අපි අදාල මෘදුකාංග ස්ථාපනය කිරීමේදිත් සූදානම් වෙනවා. කොහොම හරි ඔයාගේ පරිගනකයේ ශට්ඩවුන්(shutdown) කරන්න තීයෙන තැන ඒ කියන්නේ ස්ටාර්ට් මෙනුවෙහි තියෙන තැන හියිබර්නේට් කියලා යතුරක් නැතිනම් ක්‍රියාත්මක කරල නැහැ. මේක ක්‍රියාත්මක වෙන්නේ පරිගනකයේ වීඩියෝ කාර්ඩ් එක මගින් නිසා වීඩියෝ කාර්ඩ් එකේ ඩ්‍රයිවර්ස්(video drivers) අප්ඩේට් කරන එක තමා සුදුසු වෙන්නේ. මේ සූදානම් කිරීමක් කියලා කියන්නේ අපිට අවශ්‍යය අවස්ථාවක පරිගනකයෙහි ඇති තාවකාලික දත්ත පිටපත් කිරීමට හාඩ් ඩිස්ක් එකෙහි අවශ්‍ය තරම් ඉඩ වෙන් කර තැබීමක්. මේ ඉඩ ප්‍රමාණය ඔයාගෙ පරිගනකයේ රැම් එකෙහි ධාරිතාවට සමාන වෙනවා. ඉතින් අපේ රැම් එකෙහි ධාරිතාව වැඩි වෙන්න වැඩි වෙන්න අපිට මේ සඳහා වෙන් කරලා තියන්න අවශ්‍යය වෙන ඉඩ ප්‍රමාණය වැඩි වෙනවා. ඒකත් මේ ක්‍රමයේ තියෙන ප්‍රධාන අවාසියක්.

අවසාන වශයෙන් තියෙන අවාසිය තමයි අපේ හඩ් ඩිස්ක් එකෙහි ආයු කාලයට මේ හයිබර්නේට්(Hibernate) කිරීම අවාසි දායක ලෙස බලපෑම. ඕනෑම හාඩ් ඩිස්ක් එකක දත්ත ගබඩා කිරීමේ ආයු කාලයක් පවතිනවා. නැවත නැවත දත්ත මැකීමත් ගබඩා කිරීමත් නිස මේ කාලය ටිකෙන් ටික අඩු වෙනවා. ඉතින් අපි හයිබර්නේට්(Hibernate) කිරීම නිතර නිතර සිදු කරහොත් අපේ හාඩ් ඩිස්ක් එකෙහි මේ ආයු කාලය අඩු වීමක් සිදු වෙනවා. ඒ නිස නිතර නිතර හයිබර්නේට්(Hibernate) කිරීමත් අවාසි සහගත වෙනාවා.

ඉතින් මේ දේවල් සලකලා බලලා අවශ්‍යය පරිදි නිසිලෙස උපරිම කාර්යක්ෂම තාවයකින් පරිගනකය භාවිතා කිරීමට හුරුපුරුදු වෙන්න.

No comments:

Post a Comment

Let me know your ideas or doubts...