Earráidí cuimhne is cúis le 70% de na fadhbanna slándála i gCróimiam

Forbróirí an tionscadail Cróimiam anailís Sainaithníodh 912 leochaileachtaí ardriosca agus criticiúla in eisiúintí cobhsaí Chrome ó 2015, agus tháinig sé ar an gconclúid gur neamhshlándáil chuimhne ba chúis le 70% díobh (earráidí agus iad ag obair le leideanna i gcód C/C++). Is é is cúis le leath de na fadhbanna seo (36.1%) ná rochtain ar an maolán tar éis an chuimhne a bhaineann leis a shaoradh (saor ó úsáid tar éis é).

Earráidí cuimhne is cúis le 70% de na fadhbanna slándála i gCróimiam

Nuair a bhí Cróimiam á dhearadh bhí sé ar dtús arna leagan síosgo bhféadfadh earráidí a bheith sa chód, mar sin cuireadh béim mhór ar leithlisiú bosca gainimh chun iarmhairtí leochaileachta a theorannú. Faoi láthair, tá teorainn a gcumais bainte amach ag na féidearthachtaí a bhaineann leis an teicneolaíocht seo a úsáid agus níl ilroinnt bhreise i bpróisis praiticiúil ó thaobh úsáid acmhainní de.

Chun slándáil an bhunachair chóid a choinneáil, forfheidhmíonn Google "riail a dó“, ar dá réir nach gcomhlíonann aon chód breise níos mó ná dhá cheann de thrí choinníoll: oibriú le sonraí ionchuir neamhbhailíochtaithe, teanga ríomhchlárúcháin neamhdhaingean a úsáid (C/C++) agus feidhmiú le pribhléidí ardaithe. Tugann an riail seo le tuiscint nach mór an cód chun sonraí seachtracha a phróiseáil a laghdú go pribhléidí íosta (aonraithe) nó a scríobh i dteanga ríomhchláraithe shlán.

Chun slándáil an bhoinn chóid a fheabhsú tuilleadh, tá tionscadal seolta chun earráidí cuimhne a chosc ó bheith le feiceáil sa bhonn cód. Tá trí phríomhchur chuige ann: leabharlanna C ++ a chruthú le feidhmeanna chun cuimhne a oibriú go sábháilte agus raon feidhme an bhailitheora truflais a leathnú, ag baint úsáide as meicníochtaí cosanta crua-earraí MTE (Memory Cligging Extension) agus comhpháirteanna a scríobh i dteangacha a áirithíonn oibriú sábháilte le cuimhne (Java, Kotlin, JavaScript, Rust, Swift).

Táthar ag súil go ndíreofar an obair ar dhá réimse:

  • Athrú suntasach ar an bpróiseas forbartha C++, nach n-eisiann tionchar diúltach ar fheidhmíocht (seiceálacha teorann breise agus bailiú truflais). In ionad leideanna amh, tá sé beartaithe an cineál a úsáid MíorúiltPtr, a ligeann duit earráidí insaothraithe úsáide-iar-saor in aisce a laghdú go tuairteanna nach bagairt slándála iad, gan tionchar diúltach suntasach ar fheidhmíocht, tomhaltas cuimhne agus cobhsaíocht.
  • Bainfear úsáid as teangacha atá deartha chun seiceálacha sábháilteachta cuimhne a dhéanamh ag am tiomsaithe (cuirfear deireadh leis an tionchar diúltach ar fheidhmíocht is gné dhílis de sheiceálacha den sórt sin le linn forghníomhú an chóid, ach beidh costais bhreise mar thoradh air maidir le hidirghníomhú cód a eagrú i dteanga nua le cód i C++).

Is é an bealach is simplí, ach nach bhfuil chomh héifeachtach céanna, leabharlanna cuimhne-sábháilte a úsáid. Tá cód athscríobh i Rust rátáil mar an bealach is éifeachtaí, ach freisin an-daor.

Earráidí cuimhne is cúis le 70% de na fadhbanna slándála i gCróimiam

Foinse: oscailtenet.ru

Add a comment