70% เบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเปƒเบ™ Chromium เปเบกเปˆเบ™เป€เบเบตเบ”เบกเบฒเบˆเบฒเบเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ‚เบญเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ

เบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ„เบ‡เบเบฒเบ™ Chromium เบงเบดเป€เบ„เบฒเบฐ 912 เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบชเปˆเบฝเบ‡เบชเบนเบ‡เปเบฅเบฐเบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰เปƒเบ™เบเบฒเบ™เบ›เปˆเบญเบ Chrome เบ—เบตเปˆเบซเบกเบฑเป‰เบ™เบ„เบปเบ‡เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบ›เบต 2015, เปเบฅเบฐเบชเบฐเบซเบผเบธเบšเบงเปˆเบฒ 70% เบ‚เบญเบ‡เบกเบฑเบ™เป€เบเบตเบ”เบกเบฒเบˆเบฒเบเบ„เบงเบฒเบกเบšเปเปˆเบซเบกเบฑเป‰เบ™เบ„เบปเบ‡เบ‚เบญเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ (เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ•เบปเบงเบŠเบตเป‰เปƒเบ™เบฅเบฐเบซเบฑเบ” C / C ++). เป€เบ„เบดเปˆเบ‡เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰ (36.1%) เปเบกเปˆเบ™เป€เบเบตเบ”เบกเบฒเบˆเบฒเบเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ buffer เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ›เบปเบ”เบ›เปˆเบญเบเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบกเบฑเบ™ (เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบžเบฒเบเบซเบผเบฑเบ‡เบ—เบตเปˆเบšเปเปˆเป€เบชเบเบ„เปˆเบฒ).

70% เบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเปƒเบ™ Chromium เปเบกเปˆเบ™เป€เบเบตเบ”เบกเบฒเบˆเบฒเบเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ‚เบญเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ

เป€เบกเบทเปˆเบญเบญเบญเบเปเบšเบš Chromium เบกเบฑเบ™เปเบกเปˆเบ™เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™ เบงเบฒเบ‡เป„เบงเป‰เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบงเปˆเบฒเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบญเบฒเบ”เบˆเบฐเบ›เบฒเบเบปเบ”เบขเบนเปˆเปƒเบ™เบฅเบฐเบซเบฑเบ”, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบเบฒเบ™เป€เบ™เบฑเป‰เบ™เบซเบ™เบฑเบเปƒเบชเปˆเบญเบฑเบ™เปƒเบซเบเปˆเบซเบผเบงเบ‡เป„เบ”เป‰เบ–เบทเบเบงเบฒเบ‡เป„เบงเป‰เปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เปเบเบ sandbox เป€เบžเบทเปˆเบญเบˆเปเบฒเบเบฑเบ”เบœเบปเบ™เบชเบฐเบ—เป‰เบญเบ™เบ‚เบญเบ‡เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆ. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบตเบ™เบตเป‰เป„เบ”เป‰เบšเบฑเบ™เบฅเบธเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เบ‚เบญเบ‡เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเปเบฅเบฐเบเบฒเบ™เปเบšเปˆเบ‡เบชเปˆเบงเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปเบกเปˆเบ™ impractical เบˆเบฒเบเบˆเบธเบ”เบ‚เบญเบ‡เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™.

เป€เบžเบทเปˆเบญเบฎเบฑเบเบชเบฒเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡ codebase, Google เบเบฑเบ‡เบšเบฑเบ‡เบ„เบฑเบšเปƒเบŠเป‰ "เบเบปเบ”โ€‹เบฅเบฐโ€‹เบšเบฝเบšโ€‹เบ‚เบญเบ‡โ€‹เบชเบญเบ‡โ€‹", เบญเบตเบ‡เบ•เบฒเบกเบเบฒเบ™เป€เบžเบตเปˆเบกเบฅเบฐเบซเบฑเบ”เปƒเบ”เป†เบ•เป‰เบญเบ‡เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบšเปเปˆเป€เบเบตเบ™เบชเบญเบ‡เปƒเบ™เบชเบฒเบกเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚: เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบ–เบทเบเบ•เป‰เบญเบ‡, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบกเบ—เบตเปˆเบšเปเปˆเบ›เบญเบ”เป„เบž (C / C ++) เปเบฅเบฐเปเบฅเปˆเบ™เบ”เป‰เบงเบเบชเบดเบ”เบ—เบดเบžเบดเป€เบชเบ”. เบเบปเบ”เบฅเบฐเบšเบฝเบšเบ™เบตเป‰เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบฅเบฐเบซเบฑเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ‚เปเป‰เบกเบนเบ™เบžเบฒเบเบ™เบญเบเบˆเบฐเบ•เป‰เบญเบ‡เบ–เบทเบเบซเบผเบธเบ”เบฅเบปเบ‡เป€เบ›เบฑเบ™เบชเบดเบ”เบ—เบดเบžเบดเป€เบชเบ”เบซเบ™เป‰เบญเบ (เป‚เบ”เบ”เบ”เปˆเบฝเบง) เบซเบผเบทเบ‚เบฝเบ™เป€เบ›เบฑเบ™เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบกเบ—เบตเปˆเบ›เบญเบ”เป„เบž.

เป€เบžเบทเปˆเบญเป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เบฅเบฐเบซเบฑเบ”, เป‚เบ„เบ‡เบเบฒเบ™เป„เบ”เป‰เบ–เบทเบเป€เบ›เบตเบ”เบ•เบปเบงเป€เบžเบทเปˆเบญเบ›เป‰เบญเบ‡เบเบฑเบ™เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ‚เบญเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบˆเบฒเบเบเบฒเบ™เบ›เบฒเบเบปเบ”เบขเบนเปˆเปƒเบ™เบ–เบฒเบ™เบฅเบฐเบซเบฑเบ”. เบกเบตเบชเบฒเบกเบงเบดเบ—เบตเบเบฒเบ™เบ•เบปเป‰เบ™เบ•เป: เบเบฒเบ™เบชเป‰เบฒเบ‡เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” C ++ เบ—เบตเปˆเบกเบตเบซเบ™เป‰เบฒเบ—เบตเปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบตเปˆเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบ‡เบ•เบปเบงเป€เบเบฑเบšเบ‚เบตเป‰เป€เบซเบเบทเป‰เบญ, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบเบปเบ™เป„เบเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡เบฎเบฒเบ”เปเบง. MTE (Memory Tagging Extension) เปเบฅเบฐเบญเบปเบ‡เบ›เบฐเบเบญเบšเบเบฒเบ™เบ‚เบฝเบ™เปƒเบ™เบžเบฒเบชเบฒเบ—เบตเปˆเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบตเปˆเบ›เบญเบ”เป„เบžเบเบฑเบšเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ (Java, Kotlin, JavaScript, Rust, Swift).

เบ„เบฒเบ”โ€‹เบงเปˆเบฒโ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบˆเบฐโ€‹เป„เบ”เป‰โ€‹เบชเบธเบกโ€‹เปƒเบชเปˆโ€‹เบชเบญเบ‡โ€‹เบ‚เบปเบ‡โ€‹เป€เบ‚เบ”โ€‹เบ„เบท:

  • เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบ•เปเปˆเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ C++, เป€เบŠเบดเปˆเบ‡เบšเปเปˆเบฅเบงเบกเบœเบปเบ™เบเบฐเบ—เบปเบšเบ—เบฒเบ‡เบฅเบปเบšเบ•เปเปˆเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” (เบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ‚เบญเบšเป€เบ‚เบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปเบฅเบฐเบเบฒเบ™เป€เบเบฑเบšเบ‚เบตเป‰เป€เบซเบเบทเป‰เบญ). เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเป€เบ›เบฑเบ™เบ•เบปเบงเบŠเบตเป‰เบงเบฑเบ”เบ–เบธเบ”เบดเบš, เบกเบฑเบ™เบ–เบทเบเบชเบฐเป€เบซเบ™เบตเปƒเบซเป‰เปƒเบŠเป‰เบ›เบฐเป€เบžเบ” MiraclePtr, เป€เบŠเบดเปˆเบ‡เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบซเบผเบธเบ”เบœเปˆเบญเบ™เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ—เบตเปˆเบšเปเปˆเบกเบตเบ›เบฐเป‚เบซเบเบ”เบ•เปเปˆเบเบฑเบšเบเบฒเบ™เบ‚เบฑเบ”เบ‚เป‰เบญเบ‡เบ—เบตเปˆเบšเปเปˆเป€เบ›เบฑเบ™เป„เบžเบ‚เบปเปˆเบกเบ‚เบนเปˆเบ•เปเปˆเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบž, เป‚เบ”เบเบšเปเปˆเบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเบ—เบฒเบ‡เบฅเบปเบšเบ—เบตเปˆเป€เบซเบฑเบ™เป„เบ”เป‰เบŠเบฑเบ”เป€เบˆเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”, เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบเบ„เบงเบฒเบกเบˆเปเบฒเปเบฅเบฐเบ„เบงเบฒเบกเบซเบกเบฑเป‰เบ™เบ„เบปเบ‡.
  • เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบžเบฒเบชเบฒเบ—เบตเปˆเบ–เบทเบเบญเบญเบเปเบšเบšเป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเปƒเบ™เป€เบงเบฅเบฒเบฅเบงเบšเบฅเบงเบก (เบˆเบฐเบฅเบปเบšเบฅเป‰เบฒเบ‡เบœเบปเบ™เบเบฐเบ—เบปเบšเบ—เบฒเบ‡เบฅเบปเบšเบ•เปเปˆเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบ›เบฐเบเบปเบ”เบขเบนเปˆเปƒเบ™เบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบซเบฑเบ”, เปเบ•เปˆเบˆเบฐเบ™เปเบฒเป„เบ›เบชเบนเปˆเบ„เปˆเบฒเปƒเบŠเป‰เบˆเปˆเบฒเบเป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปƒเบ™เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เปƒเบ™เบžเบฒเบชเบฒเปƒเบซเบกเปˆเบเบฑเบšเบฅเบฐเบซเบฑเบ”เปƒเบ™. C++).

เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เบซเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบธเบ”โ€‹เบ„เบงเบฒเบกโ€‹เบŠเบปเบ‡โ€‹เบˆเปเบฒโ€‹เบ—เบตเปˆโ€‹เบ›เบญเบ”โ€‹เป„เบžโ€‹เปเบกเปˆเบ™โ€‹เบ‡เปˆเบฒเบโ€‹เบ—เบตเปˆโ€‹เบชเบธเบ”โ€‹, เปเบ•เปˆโ€‹เบเบฑเบ‡โ€‹เบกเบตโ€‹เบ›เบฐโ€‹เบชเบดเบ”โ€‹เบ—เบดโ€‹เบžเบฒเบšโ€‹เบซเบ™เป‰เบญเบโ€‹. Rewriting the code in Rust is rated as the most effective , เปเบ•เปˆโ€‹เบงเบดโ€‹เบ—เบตโ€‹เบเบฒเบ™โ€‹เบฅเบฒโ€‹เบ„เบฒโ€‹เปเบžเบ‡โ€‹เบซเบผเบฒเบโ€‹.

70% เบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเปƒเบ™ Chromium เปเบกเปˆเบ™เป€เบเบตเบ”เบกเบฒเบˆเบฒเบเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ‚เบญเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™