વિકાસકર્તા રસ્ટમાં GNU Coreutils નું ફરીથી અમલીકરણ પ્રદાન કરે છે 

gnu-coreutils-rust

આ પ્રોજેક્ટ માટે રસ્ટનો ઉપયોગ આ પ્રક્રિયાને ઝડપી બનાવવામાં મદદ કરશે કારણ કે ઘણી બધી સંભવિત ભૂલો સંપૂર્ણપણે દૂર થઈ ગઈ છે.

સિલ્વેસ્ટ્રે લેડ્રુએ રસ્ટમાં જીએનયુ કોર્યુટીલ્સના પુનઃ અમલીકરણ પર કામ કરવાનું શરૂ કર્યું COVID-19 રોગચાળા દરમિયાન અને તેને ગયા અઠવાડિયે FOSDEM ની 2023 આવૃત્તિ દરમિયાન રજૂ કર્યું હતું. uutils નામના પ્રયાસને હવે ઘણા Linux વિતરણો દ્વારા પેક કરવામાં આવે છે અને તેનો ઉપયોગ પ્રખ્યાત સોશિયલ નેટવર્ક દ્વારા Yocto પ્રોજેક્ટ દ્વારા પણ કરવામાં આવે છે.

રસ્ટ અને C++ ભાષાઓની સરખામણીમાં એક સામાન્ય થ્રેડ છે: મેમરી સલામતીના સંદર્ભમાં C++ પર રસ્ટની શ્રેષ્ઠતાને હાઇલાઇટ કરવી. રાઇઝિંગવેવ એડિટર સમજાવે છે કે શા માટે તેણે C++ પ્રોજેક્ટ છોડ્યા પછી તેના મૂળ ક્લાઉડ ડીબીએમએસને રસ્ટમાં શરૂઆતથી ફરીથી લખ્યો.

“રસ્ટ માલિકીના નિયમો રજૂ કરીને કમ્પાઇલ સમયે મેમરી અને થ્રેડ સલામતીની ખાતરી કરે છે. તે RAII થી આગળ જાય છે, સામાન્ય રીતે C++ માં ઉપયોગમાં લેવાતી મેમરી મેનેજમેન્ટ મિકેનિઝમ. તેના બે ફાયદા છે. પ્રથમ સ્પષ્ટ છે: એકવાર રસ્ટ કમ્પાઇલર અમારા પ્રોગ્રામને માન્ય કરે છે, અમારી પાસે રનટાઇમ પર કોઈ સેગમેન્ટ ભૂલો અથવા રેસની સ્થિતિઓ હશે નહીં, જેના માટે દસ કલાક ડીબગીંગની જરૂર પડશે, ખાસ કરીને ઉચ્ચ સમવર્તી કોડબેઝમાં અને મોટાભાગે અસિંક્રોનસમાં. બીજું વધુ સૂક્ષ્મ છે: રસ્ટનું કમ્પાઇલર નિષ્ફળતાના પ્રકારોને મર્યાદિત કરે છે, જે ચુસ્તપણે નેસ્ટેડ કોડ સ્નિપેટ્સ ઘટાડે છે જે આવા ખામીયુક્ત વર્તનનું કારણ બની શકે છે. નિર્ધારિત અમલીકરણનો ઉપયોગ કરીને ભૂલ પ્રતિકૃતિ નોંધપાત્ર રીતે સુધારેલ છે. »

GNU Coreutils એક પેકેજ છે જીએનયુ પ્રોજેક્ટમાંથી જેમાં યુનિક્સ જેવી ઓપરેટિંગ સિસ્ટમ માટે જરૂરી ઘણા મૂળભૂત સાધનો છે: cp (ફાઇલ અથવા ડિરેક્ટરીની નકલ કરો), mkdir (ડિરેક્ટરી બનાવો), વગેરે. વિકાસકર્તા રસ્ટ ભાષામાં ફરીથી અમલીકરણ પ્રદાન કરે છે.

એક ધ્યેય: પેકેજને અન્ય ઓપરેટિંગ સિસ્ટમો પર વાપરી શકાય તેવું બનાવવા માટે: Windows, macOS, Android, FreeBSD, વગેરે. આ પગલું C અને C++ માં નવા પ્રોજેક્ટ્સ શરૂ કરવાનું ચાલુ રાખવા અથવા ફક્ત રસ્ટ લેંગ્વેજને પસંદ કરવાના પ્રશ્ન પરની ચર્ચાને પુનર્જીવિત કરવા માટે આવે છે.

“જ્યારે મેમરી મેનેજમેન્ટની વાત આવે છે ત્યારે રસ્ટ લેંગ્વેજ ડિફૉલ્ટ રૂપે સુરક્ષા બાંયધરી આપે છે. આ C અને C++ નો કેસ નથી, જેનો મોઝિલામાં ઉપયોગ મેમરી સુરક્ષા સમસ્યાઓનું કારણ છે”, સિલ્વેસ્ટ્રે લેડ્રુ પર ભાર મૂકે છે.

જો કે, Bjarne Stroustrup એ વાત સાથે અસંમત છે કે રસ્ટ અને C++ વચ્ચેની સરખામણીઓ સિક્યોરિંગ સૉફ્ટવેરની કલ્પનાને મેમરીને સુરક્ષિત કરવા સુધી મર્યાદિત કરે છે:

"'સુરક્ષા' ની કલ્પનાની કોઈ એક વ્યાખ્યા નથી અને અમે પ્રોગ્રામિંગ શૈલીઓ, સપોર્ટ લાઇબ્રેરીઓના સંયોજન દ્વારા અને સ્થિર વિશ્લેષણનો લાભ લઈને વિવિધ પ્રકારની સુરક્ષા પ્રાપ્ત કરી શકીએ છીએ. Bjarne Stroustrup આમ સૂચવે છે કે સોફ્ટવેર સુરક્ષાના સંદર્ભમાં C++ માંથી શું મેળવી શકાય છે, તે અન્ય બાબતોની સાથે, વિકાસકર્તા પર અને ખાસ કરીને, ભાષા જે સાધનો પ્રદાન કરે છે તેના જ્ઞાન પર, કમ્પાઈલરમાં તેની નિપુણતા વગેરે પર આધાર રાખે છે.

C++ શક્યતાઓ તરીકે તેમને શું ઓફર કરે છે તેનાથી વાકેફ Google એન્જિનિયરોએ આ ભાષામાં લોન વેરિફાયર બનાવવાની શરૂઆત કરી છે. તે રસ્ટ કમ્પાઇલરનું લક્ષણ છે જે મેમરી પોઇન્ટર ફાળવણી વ્યવસ્થાપન દ્વારા મેમરી સલામતીની ખાતરી કરે છે.

ગૂગલ ટીમ, જેનું પ્રકાશન પાછલા વર્ષના ત્રીજા ક્વાર્ટરમાં દેખાયું, ના નિષ્કર્ષ પર આવ્યા હતા કે C++ જેવી સિસ્ટમ આવી કવાયત માટે પોતાને ધિરાણ આપતી નથી. અને થી કે C++ માં મેમરી સલામતી પ્રાપ્ત કરી શકાય છે પ્રોગ્રામ એક્ઝેક્યુશન દરમિયાન નિયંત્રણો સાથે. બીજા શબ્દો માં, તે ધીમા C++ કોડ સાથે છે કે રસ્ટની સમકક્ષ સુરક્ષાનું સ્તર હાંસલ કરવું શક્ય છે.

રાઈઝિંગવેવ એડિટરનું પ્રકાશન ત્યારે થાય છે જ્યારે રસ્ટ અન્ય ભાષાઓમાંથી અલગ પડે છે જે વર્ષોથી C અને C++ ના વિકલ્પ તરીકે રજૂ કરવામાં આવે છે. વાસ્તવમાં, Linux કર્નલ મોઝિલાની સિસ્ટમ પ્રોગ્રામિંગ ભાષા માટે વધુ ને વધુ ખુલ્લી બની રહી છે.


તમારી ટિપ્પણી મૂકો

તમારું ઇમેઇલ સરનામું પ્રકાશિત કરવામાં આવશે નહીં. આવશ્યક ક્ષેત્રો સાથે ચિહ્નિત થયેલ છે *

*

*

  1. ડેટા માટે જવાબદાર: AB ઈન્ટરનેટ નેટવર્ક્સ 2008 SL
  2. ડેટાનો હેતુ: નિયંત્રણ સ્પામ, ટિપ્પણી સંચાલન.
  3. કાયદો: તમારી સંમતિ
  4. ડેટાની વાતચીત: કાયદાકીય જવાબદારી સિવાય ડેટા તૃતીય પક્ષને આપવામાં આવશે નહીં.
  5. ડેટા સ્ટોરેજ: cસેન્ટસ નેટવર્ક્સ (ઇયુ) દ્વારા હોસ્ટ કરેલો ડેટાબેઝ
  6. અધિકાર: કોઈપણ સમયે તમે તમારી માહિતીને મર્યાદિત, પુન recoverપ્રાપ્ત અને કા deleteી શકો છો.