ඇන්ඩ්‍රොයිඩ් වේදිකා සංවර්ධනය සඳහා ප්‍රධාන භාෂා අතර මලකඩ ඇතුළත් වේ

ඇන්ඩ්‍රොයිඩ් වේදිකාව සංවර්ධනය කිරීම සඳහා අවසර දී ඇති භාෂා අතර රස්ට් ක්‍රමලේඛන භාෂාව ඇතුළත් කරන බව ගූගල් නිවේදනය කර ඇත. Rust භාෂා සම්පාදකය 2019 දී Android මූලාශ්‍ර ගසෙහි ඇතුළත් කර ඇත, නමුත් මෙම භාෂාව සඳහා සහය පර්යේෂණාත්මකව පැවතුනි. ඇන්ඩ්‍රොයිඩ් සඳහා සැලසුම් කර ඇති පළමු රස්ට් සංරචක සමහරක් බයින්ඩර් අන්තර් ක්‍රියාවලි සන්නිවේදන යාන්ත්‍රණයේ නව ක්‍රියාත්මක කිරීම් සහ බ්ලූටූත් ස්ටැක් ඇතුළත් වේ.

ඇන්ඩ්‍රොයිඩ් හි මතකය සමඟ වැඩ කිරීමේදී ආරක්ෂාව ශක්තිමත් කිරීම, ආරක්ෂිත ක්‍රමලේඛන ශිල්පීය ක්‍රම ප්‍රවර්ධනය කිරීම සහ ගැටළු හඳුනා ගැනීමේ කාර්යක්ෂමතාව වැඩි කිරීමේ ව්‍යාපෘතියක කොටසක් ලෙස රස්ට් හඳුන්වාදීම සිදු කරන ලදී. ඇන්ඩ්‍රොයිඩ් හි හඳුනාගෙන ඇති සියලුම භයානක අවදානම් වලින් 70% ක් පමණ මතකය සමඟ වැඩ කිරීමේදී දෝෂ නිසා ඇති වන බව සටහන් වේ. මතක ආරක්‍ෂාව සහ ස්වයංක්‍රීය මතක කළමනාකරණය කෙරෙහි අවධානය යොමු කරන රස්ට් භාවිතා කිරීම, පසු-නිදහස් ප්‍රවේශය සහ බෆරය ඉක්මවා යාම වැනි මතක දෝෂ නිසා ඇති වන අවදානම් අවදානම අඩු කරයි.

සමුද්දේශ පරීක්ෂාව, වස්තු හිමිකාරිත්වය සහ වස්තු ජීවිත කාලය නිරීක්ෂණය කිරීම (පථය) හරහා සහ ධාවන වේලාවේදී මතක ප්‍රවේශවල නිවැරදි බව ඇගයීම මගින් රස්ට් විසින් සම්පාදනය කරන වේලාවේදී මතක ආරක්ෂාව බලාත්මක කරයි. මලකඩ පූර්ණ සංඛ්‍යා පිටාර ගැලීම් වලට එරෙහිව ආරක්ෂාව සපයයි, භාවිතයට පෙර විචල්‍ය අගයන් ආරම්භ කිරීම අවශ්‍ය වේ, සම්මත පුස්තකාලයේ වඩා හොඳ දෝෂ හැසිරවීමක් ඇත, පෙරනිමියෙන් වෙනස් කළ නොහැකි යොමු සහ විචල්‍යයන් යන සංකල්පය භාවිතා කරයි, සහ තාර්කික දෝෂ අවම කිරීම සඳහා ශක්තිමත් ස්ථිතික ටයිප් කිරීම ඉදිරිපත් කරයි.

ඇන්ඩ්‍රොයිඩ් හි, මතක ආරක්ෂාව දැනටමත් සහාය දක්වන කොට්ලින් සහ ජාවා භාෂාවලින් සපයා ඇත, නමුත් අධික පොදු කාර්ය නිසා පද්ධති සංරචක සංවර්ධනය කිරීමට ඒවා සුදුසු නොවේ. රස්ට් මඟින් C සහ C++ භාෂාවලට සමීප කාර්ය සාධනයක් ලබා ගැනීමට හැකි වන අතර එමඟින් දෘඩාංග සමඟ අන්තර්ක්‍රියා කිරීම සඳහා වේදිකාවේ පහළ මට්ටමේ කොටස් සහ සංරචක සංවර්ධනය කිරීම සඳහා එය භාවිතා කිරීමට ඉඩ සලසයි.

C සහ C++ කේතයේ ආරක්ෂාව සහතික කිරීම සඳහා, ඇන්ඩ්‍රොයිඩ් සෑන්ඩ්බොක්ස් හුදකලා කිරීම, ස්ථිතික විශ්ලේෂණය සහ නොපැහැදිලි පරීක්ෂණ භාවිතා කරයි. සෑන්ඩ්බොක්ස් හුදකලා කිරීමේ හැකියාවන් සීමිත වන අතර ඒවායේ හැකියාවන්ගේ සීමාවට ළඟා වී ඇත (සම්පත් පරිභෝජනයේ දෘෂ්ටි කෝණයෙන් ක්රියාවලි වලට තවදුරටත් ඛණ්ඩනය කිරීම ප්රායෝගික නොවේ). සෑන්ඩ්බොක්ස් භාවිතා කිරීමේ සීමාවන් අතරට විශාල පොදු කාර්ය පිරිවැය සහ නව ක්‍රියාවලීන් බිහි කිරීමේ අවශ්‍යතාවය නිසා ඇති වන මතක පරිභෝජනය වැඩි වීම මෙන්ම IPC භාවිතය හා සම්බන්ධ අමතර ප්‍රමාදයන් ඇතුළත් වේ.

ඒ අතරම, සෑන්ඩ්බොක්ස් කේතයේ ඇති දුර්වලතා ඉවත් නොකරයි, නමුත් අවදානම අඩු කර ප්‍රහාරය සංකීර්ණ කරයි, මන්ද සූරාකෑමට එකක් නොව අවදානම් කිහිපයක් හඳුනා ගැනීම අවශ්‍ය වේ. කේත පරීක්ෂාව මත පදනම් වූ ක්‍රම සීමිත වන්නේ දෝෂ හඳුනා ගැනීම සඳහා, ගැටලුව ප්‍රකාශ කිරීම සඳහා කොන්දේසි නිර්මානය කිරීම අවශ්‍ය වන බැවිනි. හැකි සෑම විකල්පයක්ම ආවරණය කළ නොහැක, එබැවින් බොහෝ දෝෂයන් නොදැනේ.

ඇන්ඩ්‍රොයිඩ් හි පද්ධති ක්‍රියාවලි සඳහා, Google "දෙකේ රීතිය" අනුගමනය කරයි, ඒ අනුව එකතු කරන ලද ඕනෑම කේතයක් කොන්දේසි තුනෙන් දෙකකට වඩා සපුරාලිය යුතුය: වලංගු නොවන ආදාන දත්ත සමඟ වැඩ කිරීම, අනාරක්ෂිත ක්‍රමලේඛන භාෂාවක් භාවිතා කිරීම (C/C++), සහ දැඩි වැලිපිල්ල හුදකලා කිරීමකින් තොරව ධාවනය කිරීම (උසස් වරප්රසාද සහිත). මෙම රීතියෙන් ඇඟවෙන්නේ බාහිර දත්ත සැකසීම සඳහා කේතය අවම වරප්‍රසාද (හුදකලා) දක්වා අඩු කළ යුතු බව හෝ ආරක්ෂිත ක්‍රමලේඛන භාෂාවකින් ලිවිය යුතු බවයි.

Google දැනට පවතින C/C++ කේතය Rust හි නැවත ලිවීමට අරමුණු නොකරන නමුත් නව කේතයක් සංවර්ධනය කිරීමට මෙම භාෂාව භාවිතා කිරීමට සැලසුම් කරයි. නව කේතය සඳහා රස්ට් භාවිතා කිරීම අර්ථවත් කරයි, මන්ද සංඛ්‍යානමය වශයෙන්, බොහෝ දෝෂ නව හෝ මෑතකදී වෙනස් කළ කේතයේ දිස් වේ. විශේෂයෙන්ම, ඇන්ඩ්‍රොයිඩ් හි හඳුනාගත් මතක දෝෂ වලින් 50% ක් පමණ වසරකට අඩු කාලයකට පෙර ලියා ඇති කේතයෙන් අනාවරණය වේ.

ඇන්ඩ්‍රොයිඩ් වේදිකා සංවර්ධනය සඳහා ප්‍රධාන භාෂා අතර මලකඩ ඇතුළත් වේ


මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න