70% nke nsogbu nchekwa na Chromium bụ njehie ebe nchekwa kpatara

Ndị nrụpụta ọrụ Chromium nyochaa 912 dị oke egwu na adịghị ike dị egwu chọpụtara na ntọhapụ siri ike nke Chrome kemgbe 2015, wee kwubie na 70% n'ime ha bụ ihe kpatara enweghị nchekwa nchekwa (mmejọ mgbe ị na-arụ ọrụ na pointers na koodu C/C ++). Ọkara n'ime nsogbu ndị a (36.1%) na-ebute site na ịnweta ebe nchekwa mgbe ha tọhapụrụ ebe nchekwa metụtara ya (eji-enweghị n'efu).

70% nke nsogbu nchekwa na Chromium bụ njehie ebe nchekwa kpatara

Mgbe ị na-emepụta Chromium ọ bụ na mbụ tọrọ ala, na ọ ga-ekwe omume na njehie na-apụta na koodu ahụ, ya mere a na-emesi ike dị ukwuu na iji ihe dịpụrụ adịpụ nke sandbox na-amachi nsonaazụ nke adịghị ike. Ka ọ dị ugbu a, ohere nke iji teknụzụ a erutela njedebe nke ike ha na nkewa ọzọ n'ime usoro bụ ihe na-abaghị uru site n'echiche nke oriri akụ.

Iji dobe nchekwa nke codebase, Google na-amanye "ọchịchị nke abụọ", dịka nke koodu ọ bụla agbakwunyere ga-enwerịrị ihe karịrị abụọ n'ime ọnọdụ atọ: ịrụ ọrụ na data ntinye na-akwadoghị, na-eji asụsụ mmemme na-enweghị nchebe (C/C++) na-agba ọsọ na nnukwu ihe ùgwù. Iwu a na-egosi na koodu maka nhazi data mpụga ga-ebelatarịrị ka ọ bụrụ obere ohere (kewapụrụ) ma ọ bụ dee ya n'asụsụ mmemme echekwara.

Iji kwalite nchekwa nke koodu ntọala, emebela ọrụ iji gbochie njehie ebe nchekwa ịpụta na ntọala koodu. Enwere ụzọ atọ bụ isi: ịmepụta ọba akwụkwọ C ++ nwere ọrụ maka ịrụ ọrụ nchekwa nchekwa yana ịgbasa oghere nke mkpofu ahịhịa, na-eji usoro nchebe ngwaike. Mte (Memory Tagging Extension) na ihe odide ederede n'asụsụ ndị na-eme ka ọrụ nchekwa dị mma na ebe nchekwa (Java, Kotlin, JavaScript, Rust, Swift).

A na-atụ anya na a ga-arụ ọrụ na akụkụ abụọ:

  • Mgbanwe dị ịrịba ama na usoro mmepe C ++, nke na-adịghị ewepụ mmetụta na-adịghị mma na arụmọrụ (nleba anya mgbakwunye na nchịkọta mkpofu). Kama ntụ ntụ raw, a na-atụ aro iji ụdị ahụ MiraclePtr, nke na-enye gị ohere ibelata ihe eji eme ihe na-enweghị ihe ọ bụla na-abaghị uru na mkpọka nke na-adịghị ebute ihe ize ndụ nchebe, na-enweghị mmetụta ọjọọ na-ahụ anya na arụmọrụ, oriri ebe nchekwa na nkwụsi ike.
  • Iji asụsụ emebere iji nyochaa nchekwa nchekwa ebe nchekwa n'oge a na-achịkọta (ga-ewepụ mmetụta na-adịghị mma na arụmọrụ dị na nlele ndị dị otú ahụ n'oge mmebe koodu, mana ọ ga-ebutekwu ụgwọ maka ịhazi mmekọrịta nke koodu n'asụsụ ọhụrụ nwere koodu n'ime. C++).

Iji ọba akwụkwọ na-echekwa ebe nchekwa bụ nke kachasị mfe, mana ọ dịkwa obere nke ọma. Edere koodu idegharị na Rust ka ọ kacha dị irè mana ọ dịkwa oke ọnụ ụzọ.

70% nke nsogbu nchekwa na Chromium bụ njehie ebe nchekwa kpatara

isi: opennet.ru

Tinye a comment