ะะฐ ะฟัะพั ะพะดััะตะน ะฒ ััะธ ะดะฝะธ ะบะพะฝัะตัะตะฝัะธะธ Linux Plumbers 2022 ะธะฝะถะตะฝะตั ะธะท ะบะพะผะฟะฐะฝะธะธ Western Digital ะฒััััะฟะธะป ั ะดะพะบะปะฐะดะพะผ ะพ ัะฐะทัะฐะฑะพัะบะต ัะบัะฟะตัะธะผะตะฝัะฐะปัะฝะพะณะพ ะดัะฐะนะฒะตัะฐ ะดะปั SSD-ะฝะฐะบะพะฟะธัะตะปะตะน ั ะธะฝัะตััะตะนัะพะผ NVM-Express (NVMe), ะฝะฐะฟะธัะฐะฝะฝะพะณะพ ะฝะฐ ัะทัะบะต Rust ะธ ัะฐะฑะพัะฐััะตะณะพ ะฝะฐ ััะพะฒะฝะต ัะดัะฐ Linux. ะะตัะผะพััั ะฝะฐ ัะพ, ััะพ ะฟัะพะตะบั ะฟะพะบะฐ ะฝะฐั ะพะดะธััั ะฝะฐ ัะฐะฝะฝะตะผ ััะฐะฟะต ัะฐะทะฒะธัะธั, ะฟัะพะฒะตะดัะฝะฝะพะต ัะตััะธัะพะฒะฐะฝะธะต ะฟะพะบะฐะทะฐะปะพ, ััะพ ะฟัะพะธะทะฒะพะดะธัะตะปัะฝะพััั NVMe-ะดัะฐะนะฒะตัะฐ ะฝะฐ ัะทัะบะต Rust ัะพะพัะฒะตัััะฒัะตั ะธะผะตััะตะผััั ะฒ ัะดัะต NVMe-ะดัะฐะนะฒะตัั, ะฝะฐะฟะธัะฐะฝะฝะพะผั ะฝะฐ ัะทัะบะต ะกะธ.
ะ ะดะพะบะปะฐะดะต ะณะพะฒะพัะธััั, ััะพ ัะตะบััะธะน NVMe-ะดัะฐะนะฒะตั ะฝะฐ ัะทัะบะต ะกะธ ะฟะพะปะฝะพัััั ััััะฐะธะฒะฐะตั ัะฐะทัะฐะฑะพััะธะบะพะฒ, ะฝะพ ะฟะพะดัะธััะตะผะฐ NVMe ัะฒะปัะตััั ั ะพัะพัะตะน ะฟะปะพัะฐะดะบะพะน ะดะปั ะธะทััะตะฝะธั ัะตะปะตัะพะพะฑัะฐะทะฝะพััะธ ัะฐะทัะฐะฑะพัะบะธ ะดัะฐะนะฒะตัะพะฒ ะฝะฐ ัะทัะบะต Rust, ัะฐะบ ะบะฐะบ ะพะฝะฐ ะดะพััะฐัะพัะฝะพ ะฟัะพััะฐั, ัะธัะพะบะพ ะธัะฟะพะปัะทัะตััั, ะฟัะตะดััะฒะปัะตั ะฒััะพะบะธะต ััะตะฑะพะฒะฐะฝะธั ะบ ะฟัะพะธะทะฒะพะดะธัะตะปัะฝะพััะธ, ะธะผะตะตั ะฟัะพะฒะตัะตะฝะฝัั ััะฐะปะพะฝะฝัั ัะตะฐะปะธะทะฐัะธั ะดะปั ััะฐะฒะฝะตะฝะธั ะธ ะฟะพะดะดะตัะถะธะฒะฐะตั ัะฐะทะปะธัะฝัะต ะธะฝัะตััะตะนัั (dev, pci, dma, blk-mq, gendisk, sysfs).
ะัะผะตัะฐะตััั, ััะพ PCI NVMe ะดัะฐะนะฒะตั ะฝะฐ Rust ัะถะต ะฟัะตะดะพััะฐะฒะปัะตั ะฝะตะพะฑั ะพะดะธะผัั ะดะปั ัะฐะฑะพัั ััะฝะบัะธะพะฝะฐะปัะฝะพััั, ะฝะพ ะฟะพะบะฐ ะฝะต ะณะพัะพะฒ ะดะปั ัะธัะพะบะพะณะพ ะธัะฟะพะปัะทะพะฒะฐะฝะธั, ัะฐะบ ะบะฐะบ ััะตะฑัะตั ะพัะดะตะปัะฝัั ะดะพัะฐะฑะพัะพะบ. ะกัะตะดะธ ะฟะปะฐะฝะพะฒ ะฝะฐ ะฑัะดััะตะต ะฝะฐะทัะฒะฐะตััั ะธะทะฑะฐะฒะปะตะฝะธะต ะบะพะดะฐ ะพั ะธะผะตััะธั ัั unsafe-ะฑะปะพะบะพะฒ, ะฟะพะดะดะตัะถะบะฐ ะพะฟะตัะฐัะธะน ัะดะฐะปะตะฝะธั ััััะพะนััะฒะฐ ะธ ะฒัะณััะทะบะธ ะดัะฐะนะฒะตัะฐ, ะฟะพะดะดะตัะถะบะฐ ะธะฝัะตััะตะนัะฐ sysfs, ัะตะฐะปะธะทะฐัะธั ะพัะปะพะถะตะฝะฝะพะน ะธะฝะธัะธะฐะปะธะทะฐัะธะธ, ัะพะทะดะฐะฝะธะต ะดัะฐะนะฒะตัะฐ ะดะปั blk-mq ะธ ัะบัะฟะตัะธะผะตะฝัั ั ะธัะฟะพะปัะทะพะฒะฐะฝะธะตะผ ะฐัะธะฝั ัะพะฝะฝะพะน ะผะพะดะตะปะธ ะฟัะพะณัะฐะผะผะธัะพะฒะฐะฝะธั ะดะปั queue_rq.
ะะพะฟะพะปะฝะธัะตะปัะฝะพ ะผะพะถะฝะพ ะพัะผะตัะธัั ะฟัะพะฒะพะดะธะผัะต ะบะพะผะฟะฐะฝะธะตะน NCC Group ัะบัะฟะตัะธะผะตะฝัั ะฟะพ ัะฐะทัะฐะฑะพัะบะต ะดัะฐะนะฒะตัะพะฒ ะฝะฐ ัะทัะบะต Rust ะดะปั ัะดัะฐ FreeBSD. ะ ะบะฐัะตััะฒะต ะฟัะธะผะตัะฐ ะฟะพะดัะพะฑะฝะพ ัะฐะทะฑะธัะฐะตััั ะฟัะพััะพะน echo-ะดัะฐะนะฒะตั, ะฒะพะทะฒัะฐัะฐััะธะน ะดะฐะฝะฝัะต, ะทะฐะฟะธัะฐะฝะฝัะต ะฒ ัะฐะนะป /dev/rustmodule. ะะฐ ัะปะตะดัััะตะผ ััะฐะฟะต ัะบัะฟะตัะธะผะตะฝัะพะฒ NCC Group ัะฐััะผะฐััะธะฒะฐะตั ะฒะพะทะผะพะถะฝะพััั ะฟะตัะตัะฐะฑะพัะบะธ ะฝะฐ ัะทัะบะต Rust ะฑะฐะทะพะฒัั ะบะพะผะฟะพะฝะตะฝัะพะฒ ัะดัะฐ ะดะปั ะฟะพะฒััะตะฝะธั ะฑะตะทะพะฟะฐัะฝะพััะธ ัะตัะตะฒัั ะธ ัะฐะนะปะพะฒัั ะพะฟะตัะฐัะธะน.
ะัะธ ััะพะผ, ะฝะตัะผะพััั ะฝะฐ ัะพ, ััะพ ะฟะพะบะฐะทะฐะฝะฐ ะฒะพะทะผะพะถะฝะพััั ัะพะทะดะฐะฝะธั ะฟัะพัััั ะผะพะดัะปะตะน ะฝะฐ ัะทัะบะต Rust, ะฑะพะปะตะต ะฟะปะพัะฝะฐั ะธะฝัะตะณัะฐัะธั Rust ะฒ ัะดัะพ FreeBSD ะฟะพััะตะฑัะตั ะฟัะพะฒะตะดะตะฝะธั ะดะพะฟะพะปะฝะธัะตะปัะฝะพะน ัะฐะฑะพัั. ะะฐะฟัะธะผะตั, ัะฟะพะผะธะฝะฐะตััั ะฝะตะพะฑั ะพะดะธะผะพััั ัะพะทะดะฐะฝะธั ะฝะฐะฑะพัะฐ ัะปะพัะฒ ะฐะฑัััะฐะบัะธะธ ะฝะฐะด ะฟะพะดัะธััะตะผะฐะผะธ ะธ ััััะบัััะฐะผะธ ัะดัะฐ, ะฟะพั ะพะถะธั ะฝะฐ ะฝะฐะดัััะพะนะบะธ, ะฟะพะดะณะพัะพะฒะปะตะฝะฝัะต ะฟัะพะตะบัะพะผ Rust for Linux. ะ ะดะฐะปัะฝะตะนัะตะผ ะฟะปะฐะฝะธััะตััั ะฟัะพะฒะตััะธ ะฟะพั ะพะถะธะต ัะบัะฟะตัะธะผะตะฝัั ั ัะดัะพะผ Illumos ะธ ะฒัะดะตะปะธัั ะพะฑัะธะต ะฐะฑัััะฐะบัะธะธ ะฝะฐ Rust, ะบะพัะพััะต ะผะพะณะปะธ ะฑั ะธัะฟะพะปัะทะพะฒะฐัััั ะฒ ะฝะฐะฟะธัะฐะฝะฝัั ะฝะฐ Rust ะดัะฐะนะฒะตัะฐั ะดะปั Linux, BSD ะธ Illumos.
ะะพ ะดะฐะฝะฝัะผ ะบะพะผะฟะฐะฝะธะน Microsoft ะธ Google ะพะบะพะปะพ 70% ััะทะฒะธะผะพััะตะน ะฒ ะธั ะฟัะพะณัะฐะผะผะฝัั ะฟัะพะดัะบัะฐั ะฒัะทะฒะฐะฝั ะฝะตะฑะตะทะพะฟะฐัะฝะพะน ัะฐะฑะพัะพะน ั ะฟะฐะผัััั. ะัะตะดะฟะพะปะฐะณะฐะตััั, ััะพ ะธัะฟะพะปัะทะพะฒะฐะฝะธะต ัะทัะบะฐ Rust ะฟะพะทะฒะพะปะธั ัะฝะธะทะธัั ัะธัะบ ะฟะพัะฒะปะตะฝะธั ััะทะฒะธะผะพััะตะน, ะฒัะทะฒะฐะฝะฝัั ะฝะตะฑะตะทะพะฟะฐัะฝะพะน ัะฐะฑะพัะพะน ั ะฟะฐะผัััั, ะธ ะธัะบะปััะธัั ะฟะพัะฒะปะตะฝะธะต ัะฐะบะธั ะพัะธะฑะพะบ, ะบะฐะบ ะพะฑัะฐัะตะฝะธะต ะบ ะพะฑะปะฐััะธ ะฟะฐะผััะธ ะฟะพัะปะต ะตั ะพัะฒะพะฑะพะถะดะตะฝะธั ะธ ะฒัั ะพะด ะทะฐ ะณัะฐะฝะธัั ะฑััะตัะฐ.
Rust เบเบฑเบเบเบฑเบเปเบเปเบเบงเบฒเบกเบเบญเบเปเบเบเบญเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเปเบเปเบงเบฅเบฒเบฅเบงเบเบฅเบงเบกเปเบเบเบเปเบฒเบเบเบฒเบเบเบงเบเบชเบญเบเบเบฒเบเบญเปเบฒเบเบญเบดเบ, เบเบฒเบเปเบเบฑเบเปเบเบปเปเบฒเบเบญเบเบงเบฑเบเบเบธเปเบฅเบฐเบเบฒเบเบเบดเบเบเบฒเบกเบเบฐเบซเบผเบญเบเบเบตเบงเบดเบเบเบญเบเบงเบฑเบเบเบธ (เบเบญเบเปเบเบ), เปเบฅเบฐเปเบเบเบเบฒเบเบเบฐเปเบกเบตเบเบเบงเบฒเบกเบเบทเบเบเปเบญเบเบเบญเบเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเปเบเปเบงเบฅเบฒเปเบฅเปเบ. Rust เบเบฑเบเบชเบฐเบซเบเบญเบเบเบฒเบเบเปเบญเบเบเบฑเบเบเบฒเบ overflows integer, เบฎเบฝเบเบฎเปเบญเบเปเบซเปเบเปเบฒเบเบปเบงเปเบเปเบเปเบเบทเบเปเบฅเบตเปเบกเบเบปเปเบเบเปเบญเบเบเบตเปเบเบฐเบเปเบฒเปเบเป, เบกเบตเบเบฒเบเบเบฑเบเบเบฒเบเบเบงเบฒเบกเบเบดเบเบเบฒเบเบเบตเปเบเบตเบเบงเปเบฒเปเบเบซเปเบญเบเบชเบฐเบซเบกเบธเบเบกเบฒเบเบเบฐเบเบฒเบ, เปเบเปเปเบเบงเบเบงเบฒเบกเบเบดเบเบเบญเบเบเบฒเบเบญเปเบฒเบเบญเบตเบเบเบตเปเบเปเปเบเปเบฝเบเปเบเบเปเบฅเบฐเบเบปเบงเปเบเปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ, เปเบฅเบฐเบชเบฐเบซเบเบญเบเบเบฒเบเบเบดเบกเบเบปเบเบเบตเปเบเบตเปเปเบเบฑเปเบกเปเบเบเปเบเบทเปเบญเบซเบผเบธเบเบเปเบญเบเบเบงเบฒเบกเบเบดเบเบเบฒเบเบขเปเบฒเบเบกเบตเปเบซเบเบเบปเบ.
เปเบซเบผเปเบเบเปเปเบกเบนเบ: opennet.ru