ืžืขืœื“ื•ื ื’ ืคื•ืŸ ื“ื™ ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคึผืจืึทืš Rust 1.75 ืื•ืŸ unikernel Hermit 0.6.7

ื“ื™ ืžืขืœื“ื•ื ื’ ืคื•ืŸ ื“ืขืจ ื’ืขื ืขืจืึทืœ-ืฆื•ื•ืขืง ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคึผืจืึทืš Rust 1.75, ื’ืขื’ืจื™ื ื“ืขื˜ ื“ื•ืจืš ื“ื™ ืžืึธื–ื™ืœืœืึท ืคึผืจื•ื™ืขืงื˜, ืึธื‘ืขืจ ืื™ืฆื˜ ื“ืขื•ื•ืขืœืึธืคึผืขื“ ืื•ื ื˜ืขืจ ื“ื™ ืึธื•ืกืคึผื™ืกื™ื– ืคื•ืŸ ื“ื™ ืคืจื™ื™ึท ื ืึทืŸ-ื ื•ืฅ ืึธืจื’ืึทื ื™ื–ืึทืฆื™ืข Rust Foundation, ืื™ื– ืืจื•ื™ืก. ื“ื™ ืฉืคึผืจืึทืš ืื™ื– ืคืึธื•ืงื™ืกื˜ ืื•ื™ืฃ ื–ื™ืงืึธืจืŸ ื–ื™ื›ืขืจืงื™ื™ึทื˜ ืื•ืŸ ื’ื™ื˜ ื“ื™ ืžื™ื˜ืœ ืฆื• ื“ืขืจื’ืจื™ื™ื›ืŸ ื”ื•ื™ืš ืคึผืึทืจืึทืœืขืœื™ื–ืึทื ืื™ืŸ ืึทืจื‘ืขื˜ ื“ื•ืจื›ืคื™ืจื•ื ื’, ืื•ืŸ ื•ื™ืกืžื™ื™ื“ืŸ ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ ืึท ืžื™ืกื˜ ืงืึทืœืขืงื˜ืขืจ ืื•ืŸ ืจื•ื ื˜ื™ืžืข (ืจื•ื ื˜ื™ืžืข ืื™ื– ืจื™ื“ื•ืกื˜ ืฆื• ื™ืงืขืจื“ื™ืง ื™ื ื™ื˜ื™ืึทืœื™ื–ื™ื™ืฉืึทืŸ ืื•ืŸ ื•ื™ืฉืึทืœื˜ ืคื•ืŸ ื“ื™ ื ืึธืจืžืึทืœ ื‘ื™ื‘ืœื™ืึธื˜ืขืง).

ืจืึทืกื˜ ืก ื–ื›ึผืจื•ืŸ ืคืึทืจื•ื•ืึทืœื˜ื•ื ื’ ื˜ืขืงื ื™ืงืก ื‘ืึทืคืจื™ื™ึทืขืŸ ื“ื™ ื“ืขื•ื•ืขืœืึธืคึผืขืจ ืคื•ืŸ ื˜ื™ื™ึทื˜ืœ ืžืึทื ื™ืคึผื™ืึทืœื™ื™ืฉืึทืŸ ืขืจืจืึธืจืก ืื•ืŸ ื‘ืึทืฉื™ืฆืŸ ืงืขื’ืŸ ืคึผืจืึธื‘ืœืขืžืก ื•ื•ืึธืก ืฉื˜ื™ื™ืขืŸ ืคึฟื•ืŸ ื ื™ื“ืขืจื™ืง-ืžื“ืจื’ื” ื–ื›ึผืจื•ืŸ ืžืึทื ื™ืคึผื™ืึทืœื™ื™ืฉืึทืŸ, ืึทื–ืึท ื•ื•ื™ ื ืึธืš-ืคืจื™ื™ ืึทืงืกืขืก, ื ืึทืœ ื˜ื™ื™ึทื˜ืœ ื“ื™ืคืขืจืึทื ืกื™ื–, ื‘ืึทืคืขืจ ืึธื•ื•ื•ืขืจืจืึทื ื–, ืื•ืŸ ื“ื™ ื•ื•ื™. ืฆื• ืคืึทืจืฉืคึผืจื™ื™ื˜ืŸ ืœื™ื™ื‘ืจืขืจื™ื–, ืขื ืฉื•ืจ ืคึฟืึทืจื–ืึทืžืœื•ื ื’ ืื•ืŸ ืคื™ืจืŸ ื“ื™ืคึผืขื ื“ืึทื ืกื™ื–, ื“ื™ ืคึผืจื•ื™ืขืงื˜ ืื™ื– ื“ืขื•ื•ืขืœืึธืคึผื™ื ื’ ื“ื™ ืงืึทืจื’ืึธ ืคึผืขืงืœ ืคืึทืจื•ื•ืึทืœื˜ืขืจ. ื“ื™ crates.io ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™ ืื™ื– ื’ืขืฉื˜ื™ืฆื˜ ืคึฟืึทืจ ื”ืึธืกื˜ื™ื ื’ ืœื™ื™ื‘ืจืขืจื™ื–.

ื–ื™ืงืึธืจืŸ ื–ื™ื›ืขืจืงื™ื™ึทื˜ ืื™ื– ืขื ืคืึธืจืกื˜ ืื™ืŸ ืจื•ืกื˜ ืื™ืŸ ื“ื™ ืงืึทืžืคึผื™ื™ืœื™ื ื’ ืฆื™ื™ื˜ ื“ื•ืจืš ืจืขืคึฟืขืจืขื ืฅ ืงืึธื ื˜ืจืึธืœื™ืจื•ื ื’, ืึธื‘ื“ื–ืฉืขืงื˜ ืึธื•ื ืขืจืฉื™ืคึผ ื˜ืจืึทืงื™ื ื’, ืึทื‘ื“ื–ืฉืขืงื˜ ืœืขื‘ืŸ (ืกืงืึธืคึผื™ื ื’) ื‘ืึทื˜ืจืึทื›ื˜ื•ื ื’, ืื•ืŸ ื–ื›ึผืจื•ืŸ ืึทืงืกืขืก ืืคืฉืืฆื•ื ื’ ื‘ื™ื™ ืจื•ื ื˜ื™ืžืข. ื–ืฉืึทื•ื•ืขืจ ืื•ื™ืš ืคึผืจืึธื•ื•ื™ื“ืขืก ืฉื•ืฅ ืงืขื’ืŸ ื™ื ื˜ืึทื“ื–ืฉืขืจ ืึธื•ื•ื•ืขืจืคืœืึธื•ื–, ืจื™ืงื•ื•ื™ื™ืขืจื– ืึทื– ื“ื™ ื•ื•ืขืจื™ืึทื‘ืึทืœ ื•ื•ืึทืœื•ืขืก ื–ืขื ืขืŸ ื™ื ื™ื˜ื™ืึทืœื™ื™ื–ื“ ืื™ื™ื“ืขืจ ื ื•ืฆืŸ, ื”ืื˜ ื‘ืขืกืขืจ ื˜ืขื•ืช ื”ืึทื ื“ืœื™ื ื’ ืื™ืŸ ื“ืขืจ ื ืึธืจืžืึทืœ ื‘ื™ื‘ืœื™ืึธื˜ืขืง, ื ื™ืฆื˜ ื“ืขื ื‘ืึทื’ืจื™ืฃ ืคื•ืŸ ื™ืžืคึผื™ื•ืึทื˜ืึทื‘ืึทืœ ื‘ืึทื•ื•ื™ื™ึทื–ืŸ ืื•ืŸ ื•ื•ืขืจื™ืึทื‘ืึทืœื– ื“ื•ืจืš ืคืขืœื™ืงื™ื™ึทื˜, ืื•ืŸ ืึธืคืคืขืจืก ืฉื˜ืึทืจืง ืกื˜ืึทื˜ื™ืง ื˜ื™ื™ืคึผื™ื ื’ ืฆื• ืžื™ื ืึทืžื™ื™ื– ืœืึทื“ื–ืฉื™ืงืึทืœ ืขืจืจืึธืจืก.

ื”ื•ื™ืคึผื˜ ื—ื™ื“ื•ืฉื™ื:

  • ืฆื•ื’ืขื’ืขื‘ืŸ ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ื ื•ืฆืŸ "async fn" ืื•ืŸ ื“ื™ "-> ื™ืžืคึผืœ ื˜ืจื™ื™ื˜" ื ืึธื•ื˜ื™ื™ืฉืึทืŸ ืื™ืŸ ืคึผืจื™ื•ื•ืึทื˜ ื˜ืจื™ื™ืฅ. ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ื ื™ืฆืŸ "-> ื™ืžืคึผืœ ื˜ืจื™ื™ื˜" ืื™ืจ ืงืขื ืขืŸ ืฉืจื™ื™ึทื‘ืŸ ืึท ื˜ืจื™ื™ื˜ ืื•ืคึฟืŸ ื•ื•ืึธืก ืงืขืจื˜ ืึทืŸ ื™ื˜ืขืจืึทื˜ืึธืจ: trait Container {fn items(&self) -> impl Iterator; } impl ืงืึทื ื˜ื™ื™ื ืขืจ ืคึฟืึทืจ MyContainer {fn items(&self) -> impl Iterator {self.items.iter().cloned()}}

    ืื™ืจ ืงืขื ื˜ ืื•ื™ืš ืฉืึทืคึฟืŸ ื˜ืจื™ื™ืฅ ื ื™ืฆืŸ "async fn": trait HttpService {async fn fetch(&self, url: URL) -> HtmlBody; // ื•ื•ืขื˜ ื–ื™ื™ืŸ ื™ืงืกืคึผืึทื ื“ื™ื“ ืฆื•: // fn fetch(&ื–ื™ืš, URL: URL) -> ื™ืžืคึผืœ ืฆื•ืงื•ื ืคึฟื˜; }

  • ืฆื•ื’ืขืœื™ื™ื’ื˜ ืึทืคึผื™ ืคึฟืึทืจ ืงืึทืœืงื™ืึทืœื™ื™ื˜ื™ื ื’ ื‘ื™ื™ื˜ ืึธืคืกืขืฅ ืงืึธืจืขื•ื• ืฆื• ืคึผื•ื™ื ื˜ืขืจื–. ื•ื•ืขืŸ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื ืึทืงืขื˜ ืคึผื•ื™ื ื˜ืขืจื– ("* ืงืึธื ืกื˜ ื˜" ืื•ืŸ "* ืžื•ื˜ ื˜"), ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืงืขืŸ ื–ื™ื™ืŸ ืคืืจืœืื ื’ื˜ ืฆื• ืœื™ื™ื’ืŸ ืึท ืคืึธื˜ืึธ ืฆื• ื“ื™ ื˜ื™ื™ึทื˜ืœ. ื‘ื™ื– ืึทื”ืขืจ, ืคึฟืึทืจ ื“ืขื ืขืก ืื™ื– ื’ืขื•ื•ืขืŸ ืžืขื’ืœืขืš ืฆื• ื ื•ืฆืŸ ืึท ืงืึทื ืกื˜ืจืึทืงืฉืึทืŸ ื•ื•ื™ ":: ืœื™ื™ื’ืŸ (1)", ืึทื“ื™ื ื’ ื“ื™ ื ื•ืžืขืจ ืคื•ืŸ ื‘ื™ื˜ืขืก ืงืึธืจืึทืกืคึผืึทื ื“ื™ื ื’ ืฆื• ื“ื™ ื’ืจื™ื™ืก ืคื•ืŸ "ื’ืจื™ื™ืก_ืคื•ืŸ::()". ื“ื™ ื ื™ื™ึทืข ืึทืคึผื™ ืกื™ืžืคึผืœืึทืคื™ื™ื– ื“ืขื ืึธืคึผืขืจืึทืฆื™ืข ืื•ืŸ ืžืื›ื˜ ืขืก ืžืขื’ืœืขืš ืฆื• ืžืึทื ื™ืคึผื•ืœื™ืจืŸ ื‘ื™ื™ื˜ืข ืึธืคืกืขืฅ ืึธืŸ ืขืจืฉื˜ืขืจ ืงืึทืกื˜ื™ื ื’ ื“ื™ ื˜ื™ื™ืคึผืก ืฆื• "* const u8" ืึธื“ืขืจ "* mut u8".
    • ื˜ื™ื™ึทื˜ืœ:: ื‘ื™ื™ื˜ืข_ืึทื“ื“
    • ื˜ื™ื™ึทื˜ืœ::ื‘ื™ื™ื˜_ืึธืคืกืขื˜
    • ื˜ื™ื™ึทื˜ืœ:: ื‘ื™ื™ื˜ืข_ืึธืคืกืขื˜_ืคึฟืึธื
    • ื˜ื™ื™ึทื˜ืœ :: ื‘ื™ื™ื˜ืข_ืกื•ื‘
    • pointer::wrapping_byte_add
    • ื˜ื™ื™ึทื˜ืœ :: ื•ื•ืจืึทืคึผื™ื ื’_ื‘ื™ื˜ืข_ืึธืคืกืขื˜
    • ื˜ื™ื™ึทื˜ืœ :: wrapping_byte_sub
  • ืคืึธืจื–ืขืฆืŸ ืึทืจื‘ืขื˜ ืฆื• ืคืึทืจื’ืจืขืกืขืจืŸ ื“ื™ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืคื•ืŸ ื“ื™ ืจืึทืกืง ืงืึทืžืคึผื™ื™ืœืขืจ. ืฆื•ื’ืขื’ืขื‘ืŸ ื“ื™ BOLT ืึธืคึผื˜ื™ืžื™ื–ืขืจ, ื•ื•ืึธืก ืœื•ื™ืคื˜ ืื™ืŸ ื“ื™ ืคึผืึธืกื˜ืŸ-ืœื™ื ืง ื‘ื™ื ืข ืื•ืŸ ื ื™ืฆื˜ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ืคึฟื•ืŸ ืึท ืคืึทืจ-ืฆื•ื’ืขื’ืจื™ื™ื˜ ื“ื•ืจื›ืคื™ืจื•ื ื’ ืคึผืจืึธืคื™ืœ. ื ื™ืฆืŸ BOLT ืึทืœืึทื•ื– ืื™ืจ ืฆื• ืคืึทืจื’ื™ื›ืขืจืŸ ื“ื™ ื“ื•ืจื›ืคื™ืจื•ื ื’ ืคื•ืŸ ืงืึทืžืคึผื™ื™ืœืขืจ ืžื™ื˜ ื•ื•ืขื’ืŸ 2% ื“ื•ืจืš ื˜ืฉืึทื ื’ื™ื ื’ ื“ื™ ืื•ื™ืกืœื™ื™ื’ ืคื•ืŸ ื“ื™ librustc_driver.so ื‘ื™ื‘ืœื™ืึธื˜ืขืง ืงืึธื“ ืคึฟืึทืจ ืžืขืจ ืขืคืขืงื˜ื™ื•ื• ื ื•ืฆืŸ ืคื•ืŸ ื“ื™ ืคึผืจืึทืกืขืกืขืจ ืงืึทืฉ.

    ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ ื‘ื ื™ืŸ ื“ื™ Rustc ืงืึทืžืคึผื™ื™ืœืขืจ ืžื™ื˜ ื“ื™ "-Ccodegen-units = 1" ืึธืคึผืฆื™ืข ืฆื• ืคึฟืึทืจื‘ืขืกืขืจืŸ ื“ื™ ืงื•ื•ืึทืœื™ื˜ืขื˜ ืคื•ืŸ ืึทืคึผื˜ืึทืžืึทื–ื™ื™ืฉืึทืŸ ืื™ืŸ LLVM. ื“ื™ ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ื˜ืขืกืฅ ื•ื•ื™ื™ึทื–ืŸ ืึท ืคืึทืจื’ืจืขืกืขืจืŸ ืื™ืŸ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืื™ืŸ ื“ืขื ืคืึทืœ ืคื•ืŸ ื“ื™ "-Ccodegen-units = 1" ื‘ื•ื™ืขืŸ ืžื™ื˜ ื‘ืขืขืจืขืš 1.5%. ื“ื™ ืฆื•ื’ืขืœื™ื™ื’ื˜ ืึธืคึผื˜ื™ืžื™ื–ืึทื˜ื™ืึธื ืก ื–ืขื ืขืŸ ืขื ื™ื™ื‘ืึทืœื“ ื“ื•ืจืš ืคืขืœื™ืงื™ื™ึทื˜ ื‘ืœื•ื™ื– ืคึฟืึทืจ ื“ื™ x86_64-unknown-linux-gnu ืคึผืœืึทื˜ืคืึธืจืžืข.

    ื“ื™ ืคืจื™ืขืจ ื“ืขืจืžืื ื˜ ืึธืคึผื˜ื™ืžื™ื–ืึทื˜ื™ืึธื ืก ื–ืขื ืขืŸ ื˜ืขืกื˜ืขื“ ื“ื•ืจืš Google ืฆื• ืจืขื“ื•ืฆื™ืจืŸ ื“ื™ ื‘ื•ื™ืขืŸ ืฆื™ื™ื˜ ืคื•ืŸ ืึทื ื“ืจื•ื™ื“ ืคึผืœืึทื˜ืคืึธืจืžืข ืงืึทืžืคึผืึธื•ื ืึทื ืฅ ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ ืจื•ืกื˜. ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ "-C codegen-units = 1" ื•ื•ืขืŸ ื‘ื ื™ืŸ ืึทื ื“ืจื•ื™ื“ ืขืจืœื•ื™ื‘ื˜ ืื•ื ื“ื– ืฆื• ืจืขื“ื•ืฆื™ืจืŸ ื“ื™ ื’ืจื™ื™ืก ืคื•ืŸ ื“ืขื ื˜ืึธืึธืœืงื™ื˜ ืžื™ื˜ 5.5% ืื•ืŸ ืคืึทืจื’ืจืขืกืขืจืŸ ื–ื™ื™ึทืŸ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืžื™ื˜ 1.8%, ื‘ืฉืขืช ื“ื™ ื‘ื•ื™ืขืŸ ืฆื™ื™ื˜ ืคื•ืŸ ื“ื™ ื˜ืึธืึธืœืงื™ื˜ ื–ื™ืš ื›ึผืžืขื˜ ื“ืึทื‘ืึทืœื“.

    ื’ืขื‘ืŸ ืœื™ื ืง-ืฆื™ื™ื˜ ืžื™ืกื˜ ื–ืึทืžืœื•ื ื’ ("--gc-sections") ื’ืขื‘ืจืื›ื˜ ื“ื™ ืคืึธืจืฉื˜ืขืœื•ื ื’ ื’ืขื•ื•ื™ื ืขืŸ ืึทืจื•ื™ืฃ ืฆื• 1.9%, ืขื ื™ื™ื‘ืึทืœื™ื ื’ ืœื™ื ืง-ืฆื™ื™ื˜ ืึทืคึผื˜ืึทืžืึทื–ื™ื™ืฉืึทืŸ (LTO) ืึทืจื•ื™ืฃ ืฆื• 7.7%, ืื•ืŸ ืคึผืจืึธืคื™ืœ-ื‘ืื–ื™ืจื˜ ืึทืคึผื˜ืึทืžืึทื–ื™ื™ืฉืึทื ื– (ืคึผื’ืึธ) ืึทืจื•ื™ืฃ ืฆื• 19.8%. ืื™ืŸ ื“ื™ ืœืขืฆื˜, ืึธืคึผื˜ื™ืžื™ื–ืึทื˜ื™ืึธื ืก ื–ืขื ืขืŸ ื’ืขื•ื•ืขื ื“ื˜ ืžื™ื˜ ื“ื™ BOLT ื ื•ืฆืŸ, ื•ื•ืึธืก ื’ืขืžืื›ื˜ ืขืก ืžืขื’ืœืขืš ืฆื• ืคืึทืจื’ืจืขืกืขืจืŸ ื“ื™ ื‘ื•ื™ืขืŸ ื’ื™ื›ืงื™ื™ึทื˜ ืฆื• 24.7%, ืึธื‘ืขืจ ื“ื™ ื’ืจื™ื™ืก ืคื•ืŸ ื“ื™ ื˜ืึธืึธืœืงื™ื˜ ื’ืขื•ื•ืืงืกืŸ ืžื™ื˜ 10.9%.

    ืžืขืœื“ื•ื ื’ ืคื•ืŸ ื“ื™ ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคึผืจืึทืš Rust 1.75 ืื•ืŸ unikernel Hermit 0.6.7

  • ื ื ื™ื™ึทืข ื˜ื™ื™ืœ ืคื•ืŸ ื“ื™ API ืื™ื– ืืจื™ื‘ืขืจื’ืขืคืืจืŸ ืฆื• ื“ืขืจ ืงืึทื˜ืขื’ืึธืจื™ืข ืคื•ืŸ โ€‹โ€‹ืกื˜ืึทื‘ื™ืœ, ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ ื“ื™ ืžืขื˜ื”ืึธื“ืก ืื•ืŸ ื™ืžืคึผืœืึทืžืึทื ืฅ ืคื•ืŸ ื˜ืจื™ื™ืฅ ื–ืขื ืขืŸ ืกื˜ื™ื™ื‘ืึทืœื™ื™ื–ื“:
    • ืึทื˜ืึธืžื™ืฉืข *:: from_ptr
    • ืคื™ืœืขื˜ื™ืžืก
    • FileTimesExt
    • ื˜ืขืงืข::set_modified
    • ื˜ืขืงืข::set_times
    • IPAddr::to_canonical
    • Ipv6Addr::to_canonical
    • ืึธืคึผืฆื™ืข::as_slice
    • ืึธืคึผืฆื™ืข::as_mut_slice
    • ื˜ื™ื™ึทื˜ืœ:: ื‘ื™ื™ื˜ืข_ืึทื“ื“
    • ื˜ื™ื™ึทื˜ืœ::ื‘ื™ื™ื˜_ืึธืคืกืขื˜
    • ื˜ื™ื™ึทื˜ืœ:: ื‘ื™ื™ื˜ืข_ืึธืคืกืขื˜_ืคึฟืึธื
    • ื˜ื™ื™ึทื˜ืœ :: ื‘ื™ื™ื˜ืข_ืกื•ื‘
    • pointer::wrapping_byte_add
    • ื˜ื™ื™ึทื˜ืœ :: ื•ื•ืจืึทืคึผื™ื ื’_ื‘ื™ื˜ืข_ืึธืคืกืขื˜
    • ื˜ื™ื™ึทื˜ืœ :: wrapping_byte_sub
  • ื“ื™ "ืงืึธื ืกื˜" ืึทื˜ืจื™ื‘ื™ื•ื˜, ื•ื•ืึธืก ื“ื™ื˜ืขืจืžืึทื ื– ื“ื™ ืžืขื’ืœืขื›ืงื™ื™ื˜ ืคื•ืŸ ื ื™ืฆืŸ ืขืก ืื™ืŸ ืงื™ื™ืŸ ืงืึธื ื˜ืขืงืกื˜ ืึทื ืฉื˜ืึธื˜ ืคื•ืŸ ืงืึทื ืกื˜ืึทื ืฅ, ืื™ื– ื’ืขื ื™ืฆื˜ ืื™ืŸ ื“ื™ ืคืึทื ื’ืงืฉืึทื ื–:
    • Ipv6Addr::to_ipv4_mapped
    • MaybeUninit::assume_init_read
    • MaybeUninit :: ื ื•ืœ
    • mem :: ื“ื™ืกืงืจื™ืžื™ื ืึทื ื˜
    • mem :: ื ื•ืœ
  • ื“ื™ ื“ืจื™ื˜ ืžื“ืจื’ื” ืคื•ืŸ ืฉื˜ื™ืฆืŸ ืื™ื– ื™ืžืคึผืœืึทืžืขื ืึทื“ ืคึฟืึทืจ ื“ื™ csky-unknown-linux-gnuabiv2hf, i586-unknown-netbsd ืื•ืŸ mipsel-unknown-netbsd ืคึผืœืึทื˜ืคืึธืจืžืก. ื“ื™ ื“ืจื™ื˜ ืžื“ืจื’ื” ื™ื ื•ื•ืึทืœื•ื•ื– ื™ืงืขืจื“ื™ืง ืฉื˜ื™ืฆืŸ, ืึธื‘ืขืจ ืึธืŸ ืึธื˜ืึทืžื™ื™ื˜ื™ื“ ื˜ืขืกื˜ื™ื ื’, ืืจื•ื™ืกื’ืขื‘ืŸ ื‘ืึทืึทืžื˜ืขืจ ื‘ื•ื™ืขืŸ ืึธื“ืขืจ ืงืึธื ื˜ืจืึธืœื™ืจืŸ ืฆื™ ื“ื™ ืงืึธื“ ืงืขื ืขืŸ ื–ื™ื™ืŸ ื’ืขื‘ื•ื™ื˜.

ืื™ืŸ ื“ืขืจืฆื•, ืžื™ืจ ืงืขื ืขืŸ ื‘ืึทืžืขืจืงืŸ ืึท ื ื™ื™ึทืข ื•ื•ืขืจืกื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืขืจ ื”ืขืจืžื™ื˜ ืคึผืจื•ื™ืขืงื˜, ื•ื•ืึธืก ื“ืขื•ื•ืขืœืึธืคึผืก ืึท ืกืคึผืขืฉืึทืœื™ื™ื–ื“ ืงืขืจืŸ (ื•ื ื™ืงืขืจื ืขืœ), ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ ื“ื™ ืจื•ืกื˜ ืฉืคึผืจืึทืš, ืคึผืจืึทื•ื•ื™ื™ื“ื™ื ื’ ืžื›ืฉื™ืจื™ื ืคึฟืึทืจ ื‘ื•ื™ืขืŸ ื–ื™ืš-ืงืึทื ื˜ื™ื™ื ื“ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื– ื•ื•ืึธืก ืงืขื ืขืŸ ืœื•ื™ืคืŸ ืื•ื™ืฃ ืฉืคึผื™ืฅ ืคื•ืŸ ืึท ื›ื™ื™ืคึผืขืจื•ื•ื™ื™ื–ืขืจ ืึธื“ืขืจ ื ืึทืงืขื˜ ื™ื™ึทื–ื ื•ื•ืึทืจื’ ืึธืŸ ื ืึธืš ืœื™ื™ึทืขืจืก ืื•ืŸ ืึธืŸ ืึทืŸ ืึธืคึผืขืจื™ื™ื˜ื™ื ื’ ืกื™ืกื˜ืขื. ื•ื•ืขืŸ ื’ืขื‘ื•ื™ื˜, ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืื™ื– ืกื˜ืึทื˜ื™ืงืœื™ ืœื™ื ื’ืงื˜ ืฆื• ืึท ื‘ื™ื‘ืœื™ืึธื˜ืขืง, ื•ื•ืึธืก ื™ื ื“ื™ืคึผืขื ื“ืึทื ื˜ืœื™ ื™ืžืคึผืœืึทืžืึทื ืฅ ืึทืœืข ื“ื™ ื ื™ื™ื˜ื™ืง ืคืึทื ื’ืงืฉืึทื ืึทืœื™ื˜ื™, ืึธืŸ ื–ื™ื™ืŸ ื˜ื™ื™ื“ ืฆื• ื“ื™ ืึทืก ืงืขืจืŸ ืื•ืŸ ืกื™ืกื˜ืขื ืœื™ื™ื‘ืจืขืจื™ื–. ื“ื™ ืคึผืจื•ื™ืขืงื˜ ืงืึธื“ ืื™ื– ืคื•ื ืื ื“ืขืจื’ืขื˜ื™ื™ืœื˜ ืื•ื ื˜ืขืจ Apache 2.0 ืื•ืŸ MIT ืœื™ื™ืกืึทื ืกื™ื–. ืึทืกืขืžื‘ืœื™ ืื™ื– ื’ืขืฉื˜ื™ืฆื˜ ืคึฟืึทืจ ืกื˜ืึทื ื“-ืึทืœื™ื™ืŸ ื“ื•ืจื›ืคื™ืจื•ื ื’ ืคื•ืŸ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื– ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ Rust, Go, Fortran, C ืื•ืŸ C ++. ื“ื™ ืคึผืจื•ื™ืขืงื˜ ืื™ื– ืื•ื™ืš ื“ืขื•ื•ืขืœืึธืคึผื™ื ื’ ื–ื™ื™ืŸ ืื™ื™ื’ืขื ืข ื‘ืึธืึธื˜ืœืึธืึทื“ืขืจ ื•ื•ืึธืก ืึทืœืึทื•ื– ืื™ืจ ืฆื• ืงืึทื˜ืขืจ Hermit ื ื™ืฆืŸ QEMU ืื•ืŸ KVM.

ืžืงื•ืจ: opennet.ru

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’