કેરલા: રસ્ટમાં લખાયેલું નવું કર્નલ અને Linux ABI સાથે સુસંગત છે

કેરલા પ્રોજેક્ટ વિશે તાજેતરમાં માહિતી બહાર પાડવામાં આવી હતી, જે રસ્ટ ભાષામાં લખાયેલી ઓપરેટિંગ સિસ્ટમ કર્નલ તરીકે વિકસાવવામાં આવી રહી છે. કોડ અપાચે 2.0 અને MIT લાયસન્સ હેઠળ વિતરિત કરવામાં આવે છે. આ પ્રોજેક્ટ જાપાનીઝ ડેવલપર સેઇયા નુતા દ્વારા વિકસાવવામાં આવી રહ્યો છે, જે C ભાષામાં લખાયેલ માઇક્રોકર્નલ ઓપરેટિંગ સિસ્ટમ Resea બનાવવા માટે જાણીતી છે.

નવી કર્નલ શરૂઆતમાં લક્ષ્ય રાખે છે ABI સ્તરે Linux કર્નલ સાથે સુસંગતતાની ખાતરી કરો, જે કેરલા-આધારિત વાતાવરણમાં Linux માટે બનેલ અસંશોધિત દ્વિસંગીઓને પરવાનગી આપશે.

કેરલ વિશે

કેરલા એક મોનોલિથિક ઓપરેટિંગ સિસ્ટમ કર્નલ છે રસ્ટમાં શરૂઆતથી બનાવેલ. વિકાસના વર્તમાન તબક્કે, કેરલા માત્ર x86_64 આર્કિટેક્ચરવાળી સિસ્ટમો પર જ ચલાવી શકાય છે અને રાઇટ, સ્ટેટ, mmap, પાઇપ અને પોલ જેવા મૂળભૂત સિસ્ટમ કોલ્સનો અમલ કરે છે, સિગ્નલો, અનામી પાઈપો અને સંદર્ભ સ્વીચોને સપોર્ટ કરે છે. ફોર્ક, wait4 અને execve જેવા કૉલ પ્રક્રિયાઓને નિયંત્રિત કરવા માટે પ્રદાન કરે છે. tty અને સ્યુડો-ટર્મિનલ્સ (pty) માટે સપોર્ટ છે. initramfs ફાઇલ સિસ્ટમોમાં (રુટ FS માઉન્ટ કરવા માટે વપરાય છે), tmpfs અને devfs હજુ પણ આધારભૂત છે.

TCP અને UDP સોકેટ્સ માટે સપોર્ટ સાથે નેટવર્ક સ્ટેક પણ આપવામાં આવે છે, smoltcp લાઇબ્રેરી પર આધારિત. વિકાસકર્તાએ બુટ એન્વાયર્નમેન્ટ તૈયાર કર્યું છે જે QEMU અથવા Firecracker VM માં ડ્રાઇવર virtio-net સાથે કામ કરે છે, જેની સાથે તમે પહેલાથી જ SSH દ્વારા કનેક્ટ કરી શકો છો.. Musl નો ઉપયોગ સિસ્ટમ લાઇબ્રેરી તરીકે થાય છે અને BusyBox નો ઉપયોગ વપરાશકર્તા ઉપયોગિતા તરીકે થાય છે. Docker પર આધારિત, બિલ્ડ સિસ્ટમ તૈયાર કરવામાં આવી છે કે જે તમને Kerla કર્નલ સાથે તમારું પોતાનું initramfs બુટ બનાવવા માટે પરવાનગી આપે છે.

અત્યાર સુધી, તેના નવા કર્નલ વિશે થોડી વિગતો આપવામાં આવી છે, પરંતુ કેરલાની વિશેષતાઓ પર સૌથી વધુ ધ્યાન ખેંચે છે તે હકીકત એ છે કે તે રસ્ટમાં લખાયેલું છે. તો શું તેને રસ્ટમાં લખવાથી અન્ય ભાષાઓ અથવા હાલના કોડ પર કોઈ ફાયદા છે? ઘણા લોકોએ આ પ્રશ્નનો હા જવાબ આપ્યો, જે ભાષા પ્રદાન કરે છે તે મેમરી સુરક્ષા લાભો પર ભાર મૂકે છે.

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

ફાયદાઓમાં, અમે કોડની ગુણવત્તાનું મૂલ્યાંકન કરવા માટે સંકલિત સાધનોને પ્રકાશિત કરીએ છીએ અને એકમ પરીક્ષણો બનાવે છે જે ફક્ત વાસ્તવિક હાર્ડવેર પર જ નહીં, પણ QEMU પર પણ ચલાવી શકાય છે. મૂળભૂત રીતે, મોઝિલાને રસ્ટને ડીબગ કરવાનું સરળ લાગે છે, કારણ કે કમ્પાઇલર ભૂલોને નકારશે. જો કે, કોવ્સ રસ્ટ સાથેની કેટલીક ખામીઓ તરફ ધ્યાન દોરે છે.

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

તેના નિર્માતાના જણાવ્યા મુજબ, તે આ કારણોસર છે કે Linux વિકાસકર્તાઓ, ખાસ કરીને લિનસ ટોરવાલ્ડ્સ પોતે, તેઓએ રસ્ટમાં સમગ્ર કર્નલને ફરીથી લખવાના વિચારને નકારી કાઢ્યો.

“સુરક્ષિત લિંક્સ બનાવવા માટે થોડું કામ કરો, પછી રસ્ટમાં વધારાનો કોડ લખો અને તમે હજી પણ તે પુખ્ત કોડનો આનંદ માણી શકો છો. (લિનક્સ તે જ કરે છે, રસ્ટમાં કર્નલ મોડ્યુલ લખવાની ક્ષમતા ઉમેરવાના પ્રયાસો છે), ”તેમણે ઉમેર્યું. Linux વિકાસકર્તાઓ લગભગ ત્રણ વર્ષથી રસ્ટ ભાષાનો ઉપયોગ કરીને અમુક નવા કર્નલ મોડ્યુલો લખવાની શક્યતાઓ શોધી રહ્યા છે. આનાથી "Rust for Linux" પ્રોજેક્ટનો જન્મ થયો.

અંતે, જો તમને તેના વિશે વધુ જાણવામાં રુચિ છે, તો તમે વિગતોની સલાહ લઈ શકો છો નીચેની કડીમાં


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

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

*

*

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