"අමුතු වින්ඩෝස් ක්රියාවලියක් නොමැති ඇයි?"
කර්නල් හැන්ඩ්ල්ස් වෙන් කරන එකම කේතය ක්රියාවලිය සහ නූල් හැඳුනුම්පත් වෙන් කිරීම සඳහා ද යොදා ගනී. කර්නල් හැන්ඩ්ල්ස් හතරේ ගුණකයක් වන බැවින් ක්රියාවලි සහ නූල් හැඳුනුම්පත් ද වේ.
ක්රියාවලි සහ නූල් හැඳුනුම්පත් හතරකින් ගුණ කරන්නේ ඇයි?
වින්ඩෝස් එන්ටී මත පදනම් වූ මෙහෙයුම් පද්ධති වල, ක්රියාවලිය සහ නූල් හැඳුනුම්පත් සෑම විටම හතරකින් ගුණ කළ යුතුය. මෙය අහම්බයක්ද?
ඔව්, එය අහම්බයක් පමණක් වන අතර එය ක්රමලේඛන කොන්ත්රාත්තුවේ කොටසක් නොවන බැවින් ඔබ එය මත විශ්වාසය නොතැබිය යුතුය. උදාහරණයක් ලෙස, වින්ඩෝස් 95 ක්රියාවලිය සහ නූල් හැඳුනුම්පත් සෑම විටම හතරක ගුණකයක් නොවීය. (සංසන්දනය කිරීමේදී, කර්නල් හසුරුව සැමවිටම හතරෙන් ගුණනය වීමට හේතුව පිරිවිතරයේ කොටසක් වන අතර එය අපේක්ෂා කළ හැකි අනාගතයක් සඳහා සහතික වනු ඇත.)
ක්රියාවලි සහ නූල් හැඳුනුම්පත් යනු කේත නැවත භාවිතා කිරීමේ අතුරු as ලයක් ලෙස හතරක ගුණකයකි. කර්නල් හැන්ඩ්ල්ස් වෙන් කරන එකම කේතය ක්රියාවලිය සහ නූල් හැඳුනුම්පත් වෙන් කිරීම සඳහා ද යොදා ගනී. කර්නල් හැන්ඩ්ල්ස් හතරේ ගුණකයක් වන බැවින් ක්රියාවලි සහ නූල් හැඳුනුම්පත් ද වේ. මෙය ක්රියාත්මක කිරීමේ විස්තරයකි, එබැවින් එය මත රඳා පවතින කේතයක් ලියන්න එපා. මම ඔබට කියන්නේ ඔබේ කුතුහලය තෘප්තිමත් කරන ලෙසයි.
මූලාශ්රය ක්රියාවලි සහ නූල් හැඳුනුම්පත් හතරකින් ගුණ කරන්නේ ඇයි?
කර්නල් හැන්ඩ්ල්ස් සෑම විටම හතරකින් ගුණ කරන්නේ ඇයි?
කර්නල් හැන්ඩ්ල්ස් වල පහළ බිටු දෙක සැමවිටම ශුන්ය බව එතරම් ප්රසිද්ධ නැත. වෙනත් වචන වලින් කිවහොත්, ඒවායේ සංඛ්යාත්මක අගය සැමවිටම 4 න් ගුණ කිරීමකි. මෙය අදාළ වන්නේ කර්නල් හැන්ඩ්ල්ස් වලට පමණක් බව සලකන්න; එය ව්යාජ හසුරුවලට හෝ වෙනත් ආකාරයේ හැසිරවීමකට අදාළ නොවේ (USER හැන්ඩ්ල්ස්, ජීඩීඅයි හැන්ඩ්ල්ස්, බහුමාධ්ය හැන්ඩ්ල්ස් ...) කර්නල් හැන්ඩ්ල්ස් යනු ඔබට CloseHandle ශ්රිතයට යැවිය හැකි දේවල් වේ.
පහළ බිටු දෙකෙහි ඇති හැකියාව ntdef.h ශීර්ෂ ගොනුවේ තැන්පත් කර ඇත:
//
// Low order two bits of a handle are ignored by the system and available
// for use by application code as tag bits. The remaining bits are opaque
// and used to store a serial number and table index.
//
#define OBJ_HANDLE_TAGBITS 0x00000003L
අවම වශයෙන් කර්නල් හැන්ඩ්ල්ස් හි බිට් සෑම විටම ශුන්ය වන බව GetQueuedCompletionStatus ශ්රිතය මඟින් ගම්ය වේ, එයින් ඇඟවෙන්නේ සම්පුර්ණ වරාය දැනුම්දීම මැඩපැවැත්වීම සඳහා ඔබට සිදුවීම් හසුරුවෙහි පහළ කොටස සැකසිය හැකි බවයි. මෙය ක්රියාත්මක වීමට නම්, පහළ බිට් සාමාන්යයෙන් ශුන්ය විය යුතුය.
බොහෝ යෙදුම් ලේඛකයින් සඳහා මෙම තොරතුරු ප්රයෝජනවත් නොවන අතර, එය දිගටම හැන්ඩ්ල්ස් පාරාන්ධ අගයන් ලෙස සැලකිය යුතුය. ටැග් බිටු ගැන උනන්දුවක් දක්වන පුද්ගලයින් වන්නේ පහත් මට්ටමේ පන්ති පුස්තකාල ක්රියාත්මක කරන හෝ විශාල රාමුවක් තුළ කර්නල් වස්තු ඔතා ඇති අයයි.
මූලාශ්රය කර්නල් හැන්ඩ්ල්ස් සෑම විටම හතරකින් ගුණ කරන්නේ ඇයි?
වැඩිදුර කීයවීම