ΠΠ°Π»ΠΈΡΠ½Π° Π΅ Π²Π΅ΡΡΠΈΡ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° libtorrent 2.1, ΠΊΠΎΡΡΠΎ ΠΏΡΠ΅Π΄Π»Π°Π³Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° BitTorrent, Π½Π°ΡΠΎΡΠ΅Π½Π° ΠΊΡΠΌ Π½ΠΈΡΠΊΠΎ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ ΠΈ Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ Π½Π° CPU. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π² ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ Π·Π° ΡΠΎΡΠ΅Π½ΡΠΈ ΠΊΠ°ΡΠΎ Deluge, qBittorrent, Folx, Lince, Miro, Flush ΠΈ Free Download Manager, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π² Π½ΡΠΊΠΎΠΈ ΠΎΠ±Π»Π°ΡΠ½ΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°. ΠΠΎΠ΄ΡΡ Π½Π° libtorrent Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° C++ ΠΈ ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·Π° BSD.
Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π΅ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° WebTorrent, ΠΊΠΎΠΉΡΠΎ ΡΠ°Π·ΡΠΈΡΡΠ²Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ Π½Π° BitTorrent, Π·Π° Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ Π΄Π΅ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΌΡΠ΅ΠΆΠΈ Π·Π° ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅, ΡΠ°Π±ΠΎΡΠ΅ΡΠΈ ΡΡΠ΅Π· ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅Π± Π±ΡΠ°ΡΠ·ΡΡΠΈ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π°Ρ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅. ΠΠ° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅Π»ΠΈΡΠ΅ Π½Π° ΡΠ΅Π±ΡΠ°ΠΉΡΠΎΠ²Π΅ Π² Π΅Π΄ΠΈΠ½Π½Π° ΠΌΡΠ΅ΠΆΠ° Π·Π° Π΄ΠΎΡΡΠ°Π²ΠΊΠ° Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΠΈ Π½Π° ΡΠ°ΠΉΡΠ° ΡΠΏΠ΅ΡΠΈΠ°Π»Π΅Π½ JavaScript ΠΊΠΎΠ΄, ΠΊΠΎΠΉΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΡΠ° WebRTC Π·Π° Π΄ΠΈΡΠ΅ΠΊΡΠ΅Π½ ΠΎΠ±ΠΌΠ΅Π½ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π±ΡΠ°ΡΠ·ΡΡΠΈ.
ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΡΠ° Π½Π° WebTorrent Π² libtorrent ΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ ΠΊΠ°ΠΊΡΠΎ ΠΏΡΠ΅Π· ΡΡΠ°ΡΠΈΠΎΠ½Π°ΡΠ½ΠΈ ΡΠΎΡΠ΅Π½Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ, ΡΠ°ΠΊΠ° ΠΈ ΠΏΡΠ΅Π· Π±ΡΠ°ΡΠ·ΡΡΠΈ Π½Π° ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅Π»ΠΈΡΠ΅ Π½Π° ΡΠ°ΠΉΡ, ΠΎΠ±ΡΠ°Π·ΡΠ²Π°ΠΉΠΊΠΈ Ρ ΠΈΠ±ΡΠΈΠ΄Π½ΠΈ ΠΌΡΠ΅ΠΆΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Ρ BitTorrent ΠΈ WebTorrent. Π’ΠΎΡΠ΅Π½Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅, ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈ Π½Π° libtorrent, ΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΡΠ²ΡΡΠ·Π²Π°Ρ Ρ ΡΠ°Π±ΠΎΡΠ΅ΡΠΈΡΠ΅ Π² Π±ΡΠ°ΡΠ·ΡΡΠ° ΠΏΠΈΡΠ° Π½Π° WebTorrent, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ°ΡΡΠ²Π°ΡΠΈ Π² ΠΎΠ±ΠΌΠ΅Π½Π° Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΡΡΠ΅Π· instant.io. ΠΡ ΡΠ²ΠΎΡ ΡΡΡΠ°Π½Π°, Π±ΡΠ°ΡΠ·ΡΡΠ½ΠΈΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ Π½Π° WebTorrent ΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΠΏΠΎΠ»ΡΡΠ°Ρ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΊΠΎΠ»Π΅ΠΊΡΠΈΡΡΠ° ΠΎΡ ΡΠΎΡΠ΅Π½ΡΠΈ, ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π°Π½ΠΈ ΠΎΡ BitTorrent ΠΏΠΈΡΠ°, ΡΡΠ΅Π· ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π½Π° ΡΡΠ°ΡΠΈΠΎΠ½Π°ΡΠ½ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ.
Π Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° WebTorrent, Π²Π΅ΡΡΠΈΡ 2.1 Π½Π° libtorrent ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ° Π½ΠΎΠ² Π±Π΅ΠΊΠ΅Π½Π΄ Π·Π° Π²Ρ
ΠΎΠ΄/ΠΈΠ·Ρ
ΠΎΠ΄ pread_disk_io, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ pwritev ΠΈ preadv, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ Π°ΡΠΎΠΌΠ°ΡΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ ΠΈ ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π² Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π±ΡΡΠ΅ΡΠ°. ΠΠΎΠ²ΠΈΡΡ Π±Π΅ΠΊΠ΅Π½Π΄ Π΅ ΠΏΠΎ-Π΅ΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ Π΄ΠΈΡΠΊΠΎΠ²ΠΈ Π½ΠΎΡΠΈΡΠ΅Π»ΠΈ, ΠΎΠ±Π»Π°ΡΠ½ΠΈ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΌΠΎΠ½ΡΠΈΡΠ°Π½ΠΈ ΡΡΠ΅Π· FUSE. ΠΠ° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ pread_disk_io Π΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅. ΠΠ° NVMe Π½ΠΎΡΠΈΡΠ΅Π»ΠΈ, ΠΏΠΎ-Π΅ΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ Π΅ ΠΈ ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ°Π²Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΡΡΠ°ΡΠΈΡΡ Π±Π΅ΠΊΠ΅Π½Π΄, ΠΊΠΎΠΉΡΠΎ ΠΏΡΠΈΠ»Π°Π³Π° ΠΎΡΡΠ°Π·ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π² ΠΏΠ°ΠΌΠ΅ΡΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° mmap.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
