Servo ๋ธŒ๋ผ์šฐ์ € ์—”์ง„์˜ ํ™œ๋ฐœํ•œ ๊ฐœ๋ฐœ์ด ์žฌ๊ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

Rust ์–ธ์–ด๋กœ ์ž‘์„ฑ๋œ Servo ๋ธŒ๋ผ์šฐ์ € ์—”์ง„ ๊ฐœ๋ฐœ์ž๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ๋ถ€ํ™œ์‹œํ‚ค๋Š” ๋ฐ ๋„์›€์ด ๋  ์ž๊ธˆ์„ ๋ฐ›์•˜๋‹ค๊ณ  ๋ฐœํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค. ์–ธ๊ธ‰๋œ ์ฒซ ๋ฒˆ์งธ ์ž‘์—…์€ ์—”์ง„์˜ ์ ๊ทน์ ์ธ ๊ฐœ๋ฐœ๋กœ ๋Œ์•„๊ฐ€ ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์žฌ๊ตฌ์ถ•ํ•˜๊ณ  ์ƒˆ๋กœ์šด ์ฐธ๊ฐ€์ž๋ฅผ ์œ ์น˜ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. 2023๋…„์—๋Š” ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์‹œ์Šคํ…œ์„ ๊ฐœ์„ ํ•˜๊ณ  CSS2์— ๋Œ€ํ•œ ์‹ค๋ฌด ์ง€์›์„ ๋‹ฌ์„ฑํ•  ๊ณ„ํš์ž…๋‹ˆ๋‹ค.

Mozilla๊ฐ€ Servo ๊ฐœ๋ฐœ ํŒ€์„ ํ•ด๊ณ ํ•˜๊ณ  ํ”„๋กœ์ ํŠธ๋ฅผ Linux Foundation์œผ๋กœ ์ด์ „ํ•œ ํ›„ 2020๋…„๋ถ€ํ„ฐ ํ”„๋กœ์ ํŠธ ์ •์ฒด๊ฐ€ ๊ณ„์†๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Linux Foundation์€ ๊ฐœ๋ฐœ์„ ์œ„ํ•ด ๊ด€์‹ฌ ์žˆ๋Š” ๊ฐœ๋ฐœ์ž์™€ ํšŒ์‚ฌ์˜ ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ๊ตฌ์„ฑํ•  ๊ณ„ํš์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๋…๋ฆฝ ํ”„๋กœ์ ํŠธ๋กœ ์ „ํ™˜๋˜๊ธฐ ์ „์—๋Š” Mozilla ์ง์›๋“ค์ด ์‚ผ์„ฑ๊ณผ ํ˜‘๋ ฅํ•˜์—ฌ ์—”์ง„์„ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค.

์—”์ง„์€ Rust ์–ธ์–ด๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ ์›น ํŽ˜์ด์ง€์˜ ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋“œ ๋ Œ๋”๋ง ์ง€์›์€ ๋ฌผ๋ก  DOM(Document Object Model)๊ณผ์˜ ์ž‘์—… ๋ณ‘๋ ฌํ™”๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ž‘์—…์„ ํšจ๊ณผ์ ์œผ๋กœ ๋ณ‘๋ ฌํ™”ํ•˜๋Š” ๊ฒƒ ์™ธ์—๋„ Rust์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋ณด์•ˆ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ์ˆ ์€ ์ฝ”๋“œ ๊ธฐ๋ฐ˜์˜ ๋ณด์•ˆ ์ˆ˜์ค€์„ ๋†’์ด๋Š” ๊ฒƒ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ์ดˆ๊ธฐ์— Firefox ๋ธŒ๋ผ์šฐ์ € ์—”์ง„์€ ๋‹จ์ผ ์Šค๋ ˆ๋“œ ์ฝ˜ํ…์ธ  ์ฒ˜๋ฆฌ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ตœ์‹  ๋ฉ€ํ‹ฐ ์ฝ”์–ด ์‹œ์Šคํ…œ์˜ ์ž ์žฌ๋ ฅ์„ ์™„์ „ํžˆ ํ™œ์šฉํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. Servo๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด DOM ๋ฐ ๋ Œ๋”๋ง ์ฝ”๋“œ๋ฅผ ๋ณ‘๋ ฌ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋” ์ž‘์€ ํ•˜์œ„ ์ž‘์—…์œผ๋กœ ๋‚˜๋ˆ„๊ณ  ๋ฉ€ํ‹ฐ ์ฝ”์–ด CPU ๋ฆฌ์†Œ์Šค๋ฅผ ๋” ์ž˜ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Firefox๋Š” ์ด๋ฏธ ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ CSS ์—”์ง„ ๋ฐ WebRender ๋ Œ๋”๋ง ์‹œ์Šคํ…œ๊ณผ ๊ฐ™์€ Servo์˜ ์ผ๋ถ€ ๋ถ€๋ถ„์„ ํ†ตํ•ฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€