๊ตฌ๊ธ์ ๋ค์คํธ ํ๋ธ์ ๋ค์คํธ ํ๋ธ ๋งฅ์ค ์ฌ์ง ์ก์์ฉ ํ์จ์ด ์ ๋ฐ์ดํธ ์ด๊ธฐ ๋ฒ์ ์ ๊ฐ๋ฐํ๋ ๋ฐ ์ฌ์ฉ๋๋ ํธ์์ 14 ์ด์์ฒด์ ๋ฅผ ์ถ์ํ์ต๋๋ค. ๊ตฌ๊ธ์ 2016๋ ๋ถํฐ ํธ์์ OS๋ฅผ ๊ฐ๋ฐํด ์์ผ๋ฉฐ, ํ๋ซํผ์ ํ์ฅ์ฑ๊ณผ ๋ณด์์์ ๋ฌธ์ ์ ์ ํด๊ฒฐํด ์์ต๋๋ค. Android.
Fuchsia 14์ ์ฃผ์ ๋ณ๊ฒฝ ์ฌํญ:
- ์คํ๋์ค ๋ ์ด์ด์ ๊ธฐ๋ฅ์ด ํ์ฅ๋์ด ์์ ๋์ง ์์ ๋ก์ผ์ ๋ฐ์ฌํ ์ ์๊ฒ ๋์์ต๋๋ค. Linux-์ปค๋ ์์คํ ์ธํฐํ์ด์ค ๋ฒ์ญ์ ํตํ ํ๋ก๊ทธ๋จ Linux ๊ด๋ จ Fuchsia ํ์ ์์คํ ํธ์ถ์์ ์๋ก์ด ๋ฒ์ ์ ์๊ฒฉ ํ์ผ ์์คํ ๋ง์ดํธ ์ง์, fxfs์ ๋ํ ์ฌ๋ณผ๋ฆญ ๋งํฌ์ฉ xattrs ์ถ๊ฐ, mmap() ์์คํ ํธ์ถ์ ์ถ์ ์ง์ ์ถ๊ฐ, /proc/pid/stat ์ ๋ณด ํ์ฅ, fuchsia_sync::Mutex ์ง์ ํ์ฑํ, O_TMPFILE, pidfd_getfd, sys_reboot(), timer_create, timer_delete, times(), ptrace() ์ง์ ๊ตฌํ, ext4 ๊ตฌํ์์ ์์คํ ํ์ผ ์บ์ ํ์ฉ ๋ฑ์ ๊ธฐ๋ฅ์ ์ถ๊ฐํฉ๋๋ค.
- Bluetooth ์คํ์ด ๊ฐ์ ๋์์ต๋๋ค. HSP(HandSet Profile) Bluetooth ํ๋กํ์์ ์ค๋์ค์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์๊ณ , A2DP ํ๋กํ์ ํตํด ์ค๋์ค๋ฅผ ๋ธ๋ก๋์บ์คํ ํ ๋ ์ง์ฐ์ด ์ค์์ต๋๋ค.
- ์ค๋งํธ ํ์์ ๊ธฐ๊ธฐ๋ฅผ ์ฐ๊ฒฐํ๊ธฐ ์ํ ํ์ค์ ๊ตฌํํ Matter๋ ์ ๋ฐ์ดํธ ๊ทธ๋ฃน์ ๋ํ ์ง์๊ณผ ์กฐ๋ช ์ ์ ์ดํ ๋์ ๊ณผ๋ ์ํ๋ฅผ ์ฒ๋ฆฌํ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ต๋๋ค.
- ๋ชจ๋ ํ๋ซํผ์ ๋คํธ์ํฌ ์คํ์์ FastUDP ์์ผ ์ง์์ด ํ์ฑํ๋ฉ๋๋ค.
- RISC-V ์ํคํ ์ฒ ๊ธฐ๋ฐ์ ๋ฉํฐ ์ฝ์ด ์์คํ (SMP)์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- ์์ ์ค์ผ์ค๋ฌ์์ ์ํธ์์ฉ์ ์ํ API๊ฐ ์ถ๊ฐ๋์์ต๋๋ค.
- DeviceTree์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- USB ์ค๋์ค ์ฅ์น ๋๋ผ์ด๋ฒ๊ฐ DFv2 ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ๋๋ก ์ ํ๋์์ต๋๋ค.
Fuchsia๋ LK ํ๋ก์ ํธ์ ๊ฐ๋ฐ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ Zircon ๋ง์ดํฌ๋ก์ปค๋์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ฉฐ ์ค๋งํธํฐ ๋ฐ ๊ฐ์ธ์ฉ ์ปดํจํฐ๋ฅผ ํฌํจํ ๋ค์ํ ์ข ๋ฅ์ ์ฅ์น์ ์ฌ์ฉํ ์ ์๋๋ก ํ์ฅ๋์์ต๋๋ค. Zircon์ ํ๋ก์ธ์ค ๋ฐ ๊ณต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ, ์ฌ์ฉ์ ์์ค, ๊ฐ์ฒด ์ฒ๋ฆฌ ์์คํ ๋ฐ ๊ธฐ๋ฅ ๊ธฐ๋ฐ ๋ณด์ ๋ชจ๋ธ์ ์ง์ํ์ฌ LK๋ฅผ ํ์ฅํฉ๋๋ค. ๋๋ผ์ด๋ฒ๋ ์ฌ์ฉ์ ๊ณต๊ฐ์์ ์คํ๋๊ณ devhost ํ๋ก์ธ์ค์ ์ํด ๋ก๋๋๊ณ ์ฅ์น ๊ด๋ฆฌ์(devmg, ์ฅ์น ๊ด๋ฆฌ์)์ ์ํด ๊ด๋ฆฌ๋๋ ๋์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ๊ตฌํ๋ฉ๋๋ค.
Fuchsia์๋ Flutter ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ์ฌ Dart๋ก ์์ฑ๋ ์์ฒด ๊ทธ๋ํฝ ์ธํฐํ์ด์ค๊ฐ ์์ต๋๋ค. ์ด ํ๋ก์ ํธ๋ ๋ํ Peridot ์ฌ์ฉ์ ์ธํฐํ์ด์ค ํ๋ ์์ํฌ, Fargo ํจํค์ง ๊ด๋ฆฌ์, libc ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ, Escher ๋ ๋๋ง ์์คํ , Magma Vulkan ๋๋ผ์ด๋ฒ, Scenic ๋ณตํฉ ๊ด๋ฆฌ์, MinFS, MemFS, ThinFS(Go ์ธ์ด์ FAT) ๋ฐ Blobfs ํ์ผ์ ๊ฐ๋ฐํฉ๋๋ค. ์์คํ ๋ฐ ๊ด๋ฆฌ์ FVM ํํฐ์ . ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ ์ํด C/C++ ๋ฐ Dart ์ธ์ด์ ๋ํ ์ง์์ด ์ ๊ณต๋๋ฉฐ Rust๋ ์์คํ ๊ตฌ์ฑ ์์, Go ๋คํธ์ํฌ ์คํ ๋ฐ Python ์ธ์ด ์ด์ ๋ธ๋ฆฌ ์์คํ ์์๋ ํ์ฉ๋ฉ๋๋ค.
๋ถํ
ํ๋ก์ธ์ค์์๋ ์ด๊ธฐ ์ํํธ์จ์ด ํ๊ฒฝ์ ์์ฑํ๋ appmgr, ๋ถํ
ํ๊ฒฝ์ ์์ฑํ๋ sysmgr, ์ฌ์ฉ์ ํ๊ฒฝ์ ๊ตฌ์ฑํ๊ณ ๋ก๊ทธ์ธ์ ๊ตฌ์ฑํ๋ basemgr ๋ฑ์ ์์คํ
๊ด๋ฆฌ์๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๋ณด์์ ๋ณด์ฅํ๊ธฐ ์ํด ์๋ก์ด ํ๋ก์ธ์ค๊ฐ ์ปค๋ ๊ฐ์ฒด์ ์ก์ธ์คํ ์ ์๊ณ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํ ์ ์์ผ๋ฉฐ ์ฝ๋๋ฅผ ์คํํ ์ ์์ผ๋ฉฐ ๋ค์์คํ์ด์ค ์์คํ
์ ์ฌ์ฉํ์ฌ ๋ฆฌ์์ค์ ์ก์ธ์คํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅํ ๊ถํ์ ๊ฒฐ์ ํ๋ ๊ณ ๊ธ ์๋๋ฐ์ค ๊ฒฉ๋ฆฌ ์์คํ
์ด ์ ์๋ฉ๋๋ค. ํ๋ซํผ์ ์์ฒด ์๋๋ฐ์ค์์ ์คํ๋๊ณ IPC๋ฅผ ํตํด ๋ค๋ฅธ ๊ตฌ์ฑ ์์์ ์ํธ ์์ฉํ ์ ์๋ ํ๋ก๊ทธ๋จ์ธ ๊ตฌ์ฑ ์์๋ฅผ ์์ฑํ๊ธฐ ์ํ ํ๋ ์์ํฌ๋ฅผ ์ ๊ณตํฉ๋๋ค.
์ถ์ฒ : opennet.ru
