නික් ඩෙසාග්නියර් (
විවෘත මූලාශ්ර සමුළුවේ සහ Embedded Linux සම්මන්ත්රණයේ මෑතකාලීන සාකච්ඡාවකදී Linus Torvalds බව අපි සිහිපත් කරමු.
- "බැරලයේ මාළු" සමාගමේ සංවර්ධකයින්
සකස් කර ඇත ආරක්ෂාව වැඩි කිරීම සඳහා අතුරුමුහුණත් සහ කර්නල් ව්යුහය මත වියුක්ත ස්ථර කට්ටලයක් භාවිතා කරමින් රස්ට් භාෂාවෙන් Linux කර්නලය සඳහා පූරණය කළ හැකි මොඩියුල ලිවීම සඳහා මෙවලම් කට්ටලයක්. උපයෝගීතාව භාවිතයෙන් පවතින කර්නල් ශීර්ෂ ගොනු මත පදනම්ව ස්ථර ස්වයංක්රීයව ජනනය වේbindgen . ස්ථර තැනීම සඳහා ක්ලැන්ග් භාවිතා කරයි. අන්තර් ස්ථර වලට අමතරව, එකලස් කරන ලද මොඩියුලයන් staticlib පැකේජය භාවිතා කරයි. - හොංකොං චීන විශ්ව විද්යාලයේ පර්යේෂකයන්
දියුණු කරනවා රස්ට් හි කාවැද්දූ පද්ධති සහ ඉන්ටර්නෙට් ඔෆ් තින්ග්ස් උපාංග සඳහා ධාවක සංවර්ධනය කිරීමේ ව්යාපෘතියකි, එය කර්නල් ශීර්ෂ ගොනු මත පදනම්ව ස්ථර ජනනය කිරීමට බයින්ඩ්ජන් භාවිතා කරයි. කර්නලයේ වෙනස්කම් සිදු නොකර රියදුරු ආරක්ෂාව වැඩි දියුණු කිරීමට රාමුව ඔබට ඉඩ සලසයි - කර්නලයේ ධාවක සඳහා අමතර හුදකලා මට්ටම් නිර්මාණය කිරීම වෙනුවට, වඩාත් ආරක්ෂිත රස්ට් භාෂාව භාවිතා කරමින් සම්පාදනය කිරීමේ අදියරේදී ගැටළු අවහිර කිරීමට යෝජනා කෙරේ. නිසි විගණනයක් සිදු නොකර කඩිමුඩියේ හිමිකාර රියදුරන් සංවර්ධනය කරන උපකරණ නිෂ්පාදකයින් විසින් එවැනි ප්රවේශයක් ඉල්ලුමේ තිබිය හැකි යැයි උපකල්පනය කෙරේ. - රාමු සංවර්ධකයින්
C2Rust C කේතය රස්ට් වෙත විකාශනය කිරීම සඳහා,වියදම් කරනවා අවම අතින් සංස්කරණයන් සමඟ කර්නල් මොඩියුල පරිවර්තනය කිරීමේ අත්හදා බැලීම්. සටහන් කර ඇති එක් ගැටළුවක් නම් C2Rust හි තවමත් සහය නොදක්වන GCC දිගු භාවිතා කරන කේත කර්නලයේ බොහෝ කොටස් වල භාවිතයයි. මෙම ගැටළුව විසඳීම සඳහා, C2Rust GCC ගුණාංග සඳහා පේළිගත, සීතල, අන්වර්ථ, භාවිතා කළ සහ කොටස සඳහා සහය එක් කිරීමට සැලසුම් කරයි, මෙන්ම පේළිගත එකලස් කිරීමේ හැකියාවන් පුළුල් කිරීමට සහ පෙළගස්වා ඇති සහ ඇසුරුම් කර ඇති ව්යුහයන් සමඟ ගැටලු විසඳීමට (උදාහරණයක් ලෙස, xregs_state) . අතින් වැඩ කිරීම අවශ්ය වන සැලකිය යුතු ගැටළු අතර සුළු නොවන C macros Rust macros බවට පරිවර්තනය කිරීමේ නොහැකියාව සහ වර්ග නැවත අර්ථ දැක්වීමේ අවශ්යතාවය ඇතුළත් වේ, මන්ද C2Rust C වර්ග libc පැකේජයේ අර්ථ දැක්වීම් වලට පරිවර්තනය කරයි, නමුත් මෙම පැකේජය කර්නල් මොඩියුලවල භාවිතා කළ නොහැක.
මූලාශ්රය: opennet.ru