NetBSD 9.0 ์šด์˜ ์ฒด์ œ ์ถœ์‹œ

์‚ฌ์šฉ ๊ฐ€๋Šฅ ์ฃผ์š” ์šด์˜ ์ฒด์ œ ๋ฆด๋ฆฌ์Šค ๋„ทBSD 9.0, ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์˜ ๋‹ค์Œ ๋ถ€๋ถ„์ด ๊ตฌํ˜„๋ฉ๋‹ˆ๋‹ค. ๋กœ๋”ฉ์šฉ ์ค€๋น„๋œ ์„ค์น˜ ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋Š” 470MB์ž…๋‹ˆ๋‹ค. NetBSD 9.0 ๋ฆด๋ฆฌ์Šค๋Š” ๋‹ค์Œ ๋นŒ๋“œ์—์„œ ๊ณต์‹์ ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 57๊ฐœ ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜ 15๊ฐœ์˜ ๋‹ค์–‘ํ•œ CPU ์ œํ’ˆ๊ตฐ.

NetBSD ๊ฐœ๋ฐœ ์ „๋žต์˜ ํ•ต์‹ฌ์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ธฐ๋ณธ ์ง€์› ํฌํŠธ๋Š” 8๊ฐœ(amd64, i386, evbarm, evbmips, evbppc, hpcarm, sparc64 ๋ฐ xen)์ž…๋‹ˆ๋‹ค. alpha, hppa, m49, m68010k, sh68, sparc ๋ฐ vax์™€ ๊ฐ™์€ CPU์™€ ๊ด€๋ จ๋œ 3๊ฐœ์˜ ํฌํŠธ๋Š” ๋‘ ๋ฒˆ์งธ ๋ฒ”์ฃผ๋กœ ๋ถ„๋ฅ˜๋ฉ๋‹ˆ๋‹ค. ์—ฌ์ „ํžˆ ์ง€์›๋˜์ง€๋งŒ ๊ด€๋ จ์„ฑ์„ ์žƒ๊ฑฐ๋‚˜ ๊ฐœ๋ฐœ์— ๊ด€์‹ฌ์ด ์žˆ๋Š” ๊ฐœ๋ฐœ์ž ์ˆ˜๊ฐ€ ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์„ธ ๋ฒˆ์งธ ๋ฒ”์ฃผ์—๋Š” ํ•˜๋‚˜์˜ ํฌํŠธ(acorn26)๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉฐ, ์—ฌ๊ธฐ์—๋Š” ๊ฐœ๋ฐœ์— ๊ด€์‹ฌ์ด ์žˆ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ๋Š” ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ํฌํŠธ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์—ด์‡  ๊ฐœ๋Ÿ‰ NetBSD 9.0:

  • ์ƒˆ๋กœ์šด ํ•˜์ดํผ๋ฐ”์ด์ € ์ถ”๊ฐ€๋จ NVMM, AMD CPU์šฉ ํ•˜๋“œ์›จ์–ด ๊ฐ€์ƒํ™” ๋ฉ”์ปค๋‹ˆ์ฆ˜ SVM ๋ฐ Intel CPU์šฉ VMX๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. NVMM์˜ ํŠน๋ณ„ํ•œ ๊ธฐ๋Šฅ์€ ์ปค๋„ ์ˆ˜์ค€์—์„œ ํ•˜๋“œ์›จ์–ด ๊ฐ€์ƒํ™” ๋ฉ”์ปค๋‹ˆ์ฆ˜์— ํ•„์š”ํ•œ ์ตœ์†Œํ•œ์˜ ๋ฐ”์ธ๋”ฉ ์„ธํŠธ๋งŒ ์ˆ˜ํ–‰๋˜๊ณ  ๋ชจ๋“  ํ•˜๋“œ์›จ์–ด ์—๋ฎฌ๋ ˆ์ด์…˜ ์ฝ”๋“œ๊ฐ€ ์ปค๋„์—์„œ ์‚ฌ์šฉ์ž ๊ณต๊ฐ„์œผ๋กœ ์ด๋™๋œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฐ€์ƒ ๋จธ์‹ ์„ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด libnvmm ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ธฐ๋ฐ˜ ๋„๊ตฌ์™€ NVMM์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฒŒ์ŠคํŠธ ์‹œ์Šคํ…œ์„ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ qemu-nvmm ํŒจํ‚ค์ง€๊ฐ€ ์ค€๋น„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. libnvmm API๋Š” ๊ฐ€์ƒ ๋จธ์‹  ์ƒ์„ฑ ๋ฐ ์‹คํ–‰, ๊ฒŒ์ŠคํŠธ ์‹œ์Šคํ…œ์— ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น, VCPU ํ• ๋‹น๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ libnvmm์—๋Š” ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๊ธฐ๋Šฅ์ด ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฉฐ, NVMM ์ง€์›์„ QEMU์™€ ๊ฐ™์€ ๊ธฐ์กด ์—๋ฎฌ๋ ˆ์ดํ„ฐ์— ํ†ตํ•ฉํ•  ์ˆ˜ ์žˆ๋Š” API๋งŒ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ARM ํ˜ธํ™˜ ์„œ๋ฒ„ ์‹œ์Šคํ…œ์„ ํฌํ•จํ•˜์—ฌ 64๋น„ํŠธ AArch64 ์•„ํ‚คํ…์ฒ˜(ARMv8-A)์— ๋Œ€ํ•œ ์ง€์›์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์„œ๋ฒ„ ์ค€๋น„ (SBBR+SBSA) ๋ฐ big.LITTLE ์‹œ์Šคํ…œ(๊ฐ•๋ ฅํ•˜์ง€๋งŒ ์—๋„ˆ์ง€๋ฅผ ์†Œ๋น„ํ•˜๋Š” ์ฝ”์–ด์™€ ์ƒ์‚ฐ์„ฑ์€ ๋‚ฎ์ง€๋งŒ ์—๋„ˆ์ง€ ํšจ์œจ์ ์ธ ์ฝ”์–ด๋ฅผ ํ•˜๋‚˜์˜ ์นฉ์— ๊ฒฐํ•ฉํ•œ ๊ฒƒ)์ž…๋‹ˆ๋‹ค. COMPAT_NETBSD32๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ 64๋น„ํŠธ ํ™˜๊ฒฝ์—์„œ 32๋น„ํŠธ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ตœ๋Œ€ 256๊ฐœ์˜ CPU๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. QEMU ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋ฐ SoC์—์„œ์˜ ์‹คํ–‰์ด ์ง€์›๋ฉ๋‹ˆ๋‹ค.
    • ์˜ฌ์œ„๋„ˆ A64, H5, H6
    • ์•”๋กœ์ง S905, S805X, S905D, S905W, S905X
    • ๋ธŒ๋กœ๋“œ BCM2837
    • ์—”๋น„๋””์•„ ํ…Œ๊ทธ๋ผ X1(T210)
    • ๋ก์นฉ RK3328, RK3399
    • Amazon Graviton, Graviton2, AMD Opteron A1100, Ampere eMAG 8180, Cavium ThunderX, Marvell ARMADA 8040๊ณผ ๊ฐ™์€ SBSA/SBBR ์„œ๋ฒ„ ๋ณด๋“œ.
  • ARMv7-A ์•„ํ‚คํ…์ฒ˜ ๊ธฐ๋ฐ˜ ์žฅ์น˜์— ๋Œ€ํ•œ ์ง€์›์ด ํ™•์žฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. big.LITTLE ์‹œ์Šคํ…œ ๋ฐ UEFI๋ฅผ ํ†ตํ•œ ๋ถ€ํŒ…์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ตœ๋Œ€ 8๊ฐœ์˜ CPU๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. SoC ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
    • ์˜ฌ์œ„๋„ˆ A10, A13, A20, A31, A80, A83T, GR8, H3, R8
    • Amlogic S805
    • Arm ๋‹ค๋ชฉ์  ์ต์Šคํ”„๋ ˆ์Šค V2P-CA15
    • ๋ธŒ๋กœ๋“œ์ปด BCM2836, BCM2837
    • Intel Cyclone V SoC FPGA
    • ์—”๋น„๋””์•„ ํ…Œ๊ทธ๋ผ K1(T124)
    • ์‚ผ์„ฑ Exynos 5422
    • TI AM335x, OMAP3
    • ์ž์ผ๋ง์Šค ์ง•ํฌ 7000
  • ะžะฑะฝะพะฒะปะตะฝั‹ ะณั€ะฐั„ะธั‡ะตัะบะธะต ะดั€ะฐะนะฒะตั€ั‹ ะดะปั GPU Intel (ะดะพะฑะฐะฒะปะตะฝะฐ ะฟะพะดะดะตั€ะถะบะฐ Intel Kabylake), NVIDIA ะธ AMD ะดะปั ัะธัั‚ะตะผ x86. ะŸะพะดัะธัั‚ะตะผะฐ DRM/KMS ัะธะฝั…ั€ะพะฝะธะทะธั€ะพะฒะฐะฝะฐ ั ัะดั€ะพะผ Linux 4.4. ะ”ะพะฑะฐะฒะปะตะฝั‹ ะฝะพะฒั‹ะต ะดั€ะฐะนะฒะตั€ั‹ ะดะปั GPU, ะฟั€ะธะผะตะฝัะตะผั‹ะต ะฝะฐ ัะธัั‚ะตะผะฐั… ARM, ะฒะบะปัŽั‡ะฐั DRM/KMS-ะดั€ะฐะนะฒะตั€ั‹ ะดะปั Allwinner DE2, Rockchip VOP ะธ TI AM335x LCDC, ะดั€ะฐะนะฒะตั€ framebuffer ะดะปั ARM PrimeCell PL111 ะธ TI OMAP3 DSS;
  • NetBSD๋ฅผ ๊ฒŒ์ŠคํŠธ OS๋กœ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ์ง€์›์ด ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. fw_cfg ์žฅ์น˜(QEMU ํŽŒ์›จ์–ด ๊ตฌ์„ฑ), Virtio MMIO ๋ฐ ARM์šฉ PCI์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. x86์šฉ HyperV ์ง€์› ์ œ๊ณต
  • ์„ฑ๋Šฅ ๋ชจ๋‹ˆํ„ฐ๋ง์„ ์œ„ํ•ด ์นด์šดํ„ฐ๊ฐ€ ๊ตฌํ˜„๋˜์–ด ์žˆ์–ด ์ปค๋„ ๋ฐ ์‚ฌ์šฉ์ž ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์„ฑ๋Šฅ์„ ์ฆ‰์‹œ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ œ์–ด๋Š” tprof ๋ช…๋ น์„ ํ†ตํ•ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. Armv7, Armv8 ๋ฐ x86(AMD ๋ฐ Intel) ํ”Œ๋žซํผ์ด ์ง€์›๋ฉ๋‹ˆ๋‹ค.
  • x86_64 ์•„ํ‚คํ…์ฒ˜์˜ ๊ฒฝ์šฐ ์ถ”๊ฐ€ ์ปค๋„ ์ฃผ์†Œ ๊ณต๊ฐ„์„ ๋ฌด์ž‘์œ„ํ™”ํ•˜๋Š” ๋ฉ”์ปค๋‹ˆ์ฆ˜(KASLR, Kernel Address Space Layout Randomization). ๋ถ€ํŒ…ํ•  ๋•Œ๋งˆ๋‹ค ๋ฉ”๋ชจ๋ฆฌ์— ์ปค๋„ ์ฝ”๋“œ์˜ ๋ฌด์ž‘์œ„ ๋ ˆ์ด์•„์›ƒ์„ ์ƒ์„ฑํ•˜์—ฌ ์ปค๋„์˜ ์ทจ์•ฝ์ ์„ ์•…์šฉํ•˜๋Š” ํŠน์ • ์œ ํ˜•์˜ ๊ณต๊ฒฉ์— ๋Œ€ํ•œ ์ €ํ•ญ๋ ฅ์„ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • x86_64 ์•„ํ‚คํ…์ฒ˜์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํด๋ฆฌํฌ, ์ปค๋„ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜๋ฅผ ๊ฐ์ง€ํ•˜๋Š” ๊ธฐ์ˆ ๋กœ, ์ปค๋„์—์„œ 25๊ฐœ ์ด์ƒ์˜ ์˜ค๋ฅ˜๋ฅผ ์ฐพ์•„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
  • x86_64 ๋ฐ Aarch64 ์•„ํ‚คํ…์ฒ˜์˜ ๊ฒฝ์šฐ KASan(Kernel address sanitizer) ๋””๋ฒ„๊น… ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ๊ตฌํ˜„๋˜์–ด ์ด๋ฏธ ํ•ด์ œ๋œ ๋ฉ”๋ชจ๋ฆฌ ๋ธ”๋ก์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๋ฐ ๋ฒ„ํผ ์˜ค๋ฒ„ํ”Œ๋กœ์™€ ๊ฐ™์€ ๋ฉ”๋ชจ๋ฆฌ ์˜ค๋ฅ˜๋ฅผ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ปค๋„์—์„œ ์ •์˜๋˜์ง€ ์•Š์€ ๋™์ž‘์„ ๊ฐ์ง€ํ•˜๋Š” KUBSAN(Kernel Undefine Behavior Sanitizer) ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • x86_64 ์•„ํ‚คํ…์ฒ˜์˜ ๊ฒฝ์šฐ ์ปค๋„ ์ฝ”๋“œ ์ ์šฉ ๋ฒ”์œ„๋ฅผ ๋ถ„์„ํ•˜๊ธฐ ์œ„ํ•ด KCOV(Kernel Coverage) ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ์ž ๊ณต๊ฐ„์—์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•  ๋•Œ ์˜ค๋ฅ˜ ๋ฐ ์ด์ƒ ํ˜„์ƒ์„ ๊ฐ์ง€ํ•˜๊ธฐ ์œ„ํ•ด Userland Sanitizer๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ํŠน์ • ์œ ํ˜•์˜ ๋ฉ”๋ชจ๋ฆฌ ์˜ค๋ฅ˜๋กœ๋ถ€ํ„ฐ ํž™์„ ๋ณดํ˜ธํ•˜๊ธฐ ์œ„ํ•ด KHH(์ปค๋„ ํž™ ๊ฐ•ํ™”) ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์‹ค์‹œ ๋„คํŠธ์›Œํฌ ์Šคํƒ ๋ณด์•ˆ ๊ฐ์‚ฌ;
  • ํ–ฅ์ƒ๋œ ptrace ๋””๋ฒ„๊น… ๋„๊ตฌ
  • ์ปค๋„์€ NETISDN(๋“œ๋ผ์ด๋ฒ„ daic, iavc, ifpci, ifritz, iwic, isic), NETNATM, NDIS, SVR3, SVR4, n8, vm86 ๋ฐ ipkdb์™€ ๊ฐ™์€ ์˜ค๋ž˜๋˜๊ณ  ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š๋Š” ํ•˜์œ„ ์‹œ์Šคํ…œ์„ ์ œ๊ฑฐํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ํŒจํ‚ท ํ•„ํ„ฐ์˜ ๊ธฐ๋Šฅ์ด ํ™•์žฅ๋˜๊ณ  ์„ฑ๋Šฅ์ด ์ตœ์ ํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค. MFN, ์ด์ œ ๊ธฐ๋ณธ์ ์œผ๋กœ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • ZFS ํŒŒ์ผ ์‹œ์Šคํ…œ ๊ตฌํ˜„์€ ์ผ์ƒ์ ์ธ ์‚ฌ์šฉ์— ์ ํ•ฉํ•˜๋„๋ก ์—…๋ฐ์ดํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ZFS์—์„œ ๋ถ€ํŒ…ํ•˜๊ณ  ๋ฃจํŠธ ํŒŒํ‹ฐ์…˜์—์„œ ZFS๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ์€ ์•„์ง ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • Broadcom ๋ฌด์„  ์žฅ์น˜(Full-MAC)์šฉ bwfm, Amazon Elastic Network Adapter์šฉ ena ๋ฐ Mellanox ConnectX-4 Lx EN, ConnectX-4 EN, ConnectX-5 EN, ConnectX-6 EN ์ด๋”๋„ท ์–ด๋Œ‘ํ„ฐ์šฉ mcx๋ฅผ ํฌํ•จํ•œ ์ƒˆ๋กœ์šด ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ;
  • SATA ํ•˜์œ„ ์‹œ์Šคํ…œ์ด ์žฌ์„ค๊ณ„๋˜์–ด NCQ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜๊ณ  ๋“œ๋ผ์ด๋ธŒ์—์„œ ์ƒ์„ฑ๋œ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ œ์•ˆ๋จ USB ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ฐ–์ถ˜ ์ด๋”๋„ท ์–ด๋Œ‘ํ„ฐ์šฉ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์ƒˆ๋กœ์šด usbnet ํ”„๋ ˆ์ž„์›Œํฌ;
  • GCC 7.4, GDB 8.3, LLVM 7.0.0, OpenSSL 1.1.1d, OpenSSH 8.0 ๋ฐ SQLite 3.26.0์„ ํฌํ•จํ•œ ํƒ€์‚ฌ ๊ตฌ์„ฑ ์š”์†Œ์˜ ์—…๋ฐ์ดํŠธ๋œ ๋ฒ„์ „์ž…๋‹ˆ๋‹ค.

    ์ถœ์ฒ˜ : opennet.ru

DDoS ๋ณดํ˜ธ, VPS VDS ์„œ๋ฒ„๊ฐ€ ์žˆ๋Š” ์‚ฌ์ดํŠธ๋ฅผ ์œ„ํ•œ ์•ˆ์ •์ ์ธ ํ˜ธ์ŠคํŒ… ๊ตฌ์ž… ๐Ÿ”ฅ DDoS ๊ณต๊ฒฉ ๋ฐฉ์ง€ ๊ธฐ๋Šฅ์ด ํƒ‘์žฌ๋œ ์•ˆ์ •์ ์ธ ์›น์‚ฌ์ดํŠธ ํ˜ธ์ŠคํŒ…, VPS ๋ฐ VDS ์„œ๋ฒ„๋ฅผ ๊ตฌ๋งคํ•˜์„ธ์š” | ProHoster