āĻāĻŽāĻŦ⧇āĻĄā§‡āĻĄ DBMS libmdbx 0.13.7 āĻāϰ āϰāĻŋāϞāĻŋāϜ

libmdbx 0.13.7 (MDBX) āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āĻĒā§āϰāĻ•āĻžāĻļāĻŋāϤ āĻšāϝāĻŧ⧇āϛ⧇, āϝāĻž āĻāĻ•āϟāĻŋ āωāĻšā§āϚ-āĻ•āĻžāĻ°ā§āϝāĻ•ā§āώāĻŽāϤāĻžāϏāĻŽā§āĻĒāĻ¨ā§āύ, āĻ•āĻŽā§āĻĒā§āϝāĻžāĻ•ā§āϟ, āĻāĻŽāĻŦ⧇āĻĄā§‡āĻĄ āϕ⧀-āĻŽāĻžāύ āĻĄāĻžāϟāĻžāĻŦ⧇āϏ āĻŦāĻžāĻ¸ā§āϤāĻŦāĻžāϝāĻŧāύ āĻ•āϰāϛ⧇āĨ¤ libmdbx āϕ⧋āĻĄāϟāĻŋ Apache 2.0 āϞāĻžāχāϏ⧇āĻ¨ā§āϏ⧇āϰ āĻ…āϧ⧀āύ⧇ āĻŦāĻŋāϤāϰāĻŖ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āϏāĻŽāĻ¸ā§āϤ āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻ…āĻĒāĻžāϰ⧇āϟāĻŋāĻ‚ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻāĻŦāĻ‚ āφāĻ°ā§āĻ•āĻŋāĻŸā§‡āĻ•āϚāĻžāϰ āϏāĻŽāĻ°ā§āĻĨāĻŋāϤ, āϏ⧇āχāϏāĻžāĻĨ⧇ āϰāĻžāĻļāĻŋāϝāĻŧāĻžāύ āĻāϞāĻŦā§āϰāĻžāϏ ⧍ā§Ļā§Ļā§ĻāĨ¤ libmdbx-āĻāϰ āϜāĻ¨ā§āϝ, C++-āĻāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āωāĻ¨ā§āύāϤ API, āϏ⧇āχāϏāĻžāĻĨ⧇ Rust, Haskell, Python, NodeJS, Ruby, Go, Nim, Deno, Scala āĻ­āĻžāώāĻžāϗ⧁āϞāĻŋāϤ⧇ āĻ‰ā§ŽāϏāĻžāĻšā§€-āϏāĻŽāĻ°ā§āĻĨāĻŋāϤ āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āĻ…āĻĢāĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ libmdbx āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻāĻŽāύ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋāϰ āĻŽāĻ§ā§āϝ⧇ āϰāϝāĻŧ⧇āϛ⧇ Isar, Erigon, āĻāĻŦāĻ‚ Reth, āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ StarkWare āĻāĻŦāĻ‚ Positive Technologies-āĻāϰ āωāĻ¨ā§āύāϝāĻŧāύāĨ¤

āϐāϤāĻŋāĻšāĻžāϏāĻŋāĻ•āĻ­āĻžāĻŦ⧇, libmdbx āĻšāϞ LMDB DBMS-āĻāϰ āĻāĻ•āϟāĻŋ āĻ—āĻ­ā§€āϰ āĻĒ⧁āύāĻ°ā§āĻ—āĻ āύ āĻāĻŦāĻ‚ āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝāϤāĻž, āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝ āϏ⧇āϟ āĻāĻŦāĻ‚ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻžāϰ āĻĻāĻŋāĻ• āĻĨ⧇āϕ⧇ āĻāϰ āĻĒā§‚āĻ°ā§āĻŦāĻĒ⧁āϰ⧁āώāϕ⧇ āĻ›āĻžāĻĄāĻŧāĻŋāϝāĻŧ⧇ āϗ⧇āϛ⧇āĨ¤ LMDB-āĻāϰ āϤ⧁āϞāύāĻžāϝāĻŧ, libmdbx āϕ⧋āĻĄā§‡āϰ āĻŽāĻžāύ, API āĻ¸ā§āĻĨāĻŋāϤāĻŋāĻļā§€āϞāϤāĻž, āĻĒāϰ⧀āĻ•ā§āώāĻž āĻāĻŦāĻ‚ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧ āĻšā§‡āϕ⧇āϰ āωāĻĒāϰ āĻ…āύ⧇āĻ• āĻœā§‹āϰ āĻĻ⧇āϝāĻŧāĨ¤ āĻ•āĻŋāϛ⧁ āĻĒ⧁āύāϰ⧁āĻĻā§āϧāĻžāϰ āĻ•ā§āώāĻŽāϤāĻž āϏāĻš āĻĄāĻžāϟāĻžāĻŦ⧇āϏ āĻ•āĻžāĻ āĻžāĻŽā§‹āϰ āĻ…āĻ–āĻŖā§āĻĄāϤāĻž āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āχāωāϟāĻŋāϞāĻŋāϟāĻŋ āϏāϰāĻŦāϰāĻžāĻš āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āĻĒā§āϰāϝ⧁āĻ•ā§āϤāĻŋāĻ—āϤāĻ­āĻžāĻŦ⧇, libmdbx CPU āϕ⧋āϰ āϜ⧁āĻĄāĻŧ⧇ āϞāĻŋāύāĻŋāϝāĻŧāĻžāϰ āĻ¸ā§āϕ⧇āϞāĻŋāĻ‚ āϏāĻš ACID, āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ⧇āϰ āĻļāĻ•ā§āϤāĻŋāĻļāĻžāϞ⧀ āϏāĻŋāϰāĻŋāϝāĻŧāĻžāϞāĻžāχāĻœā§‡āĻļāύ āĻāĻŦāĻ‚ āύāύ-āĻŦā§āϞāĻ•āĻŋāĻ‚ āϰāĻŋāĻĄ āĻ…āĻĢāĻžāϰ āĻ•āϰ⧇āĨ¤ āĻ…āĻŸā§‹-āĻ•āĻŽā§āĻĒā§āϝāĻžāĻ•āĻļāύ, āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧ āĻĄāĻžāϟāĻžāĻŦ⧇āϏ āφāĻ•āĻžāϰ āĻŦā§āϝāĻŦāĻ¸ā§āĻĨāĻžāĻĒāύāĻž āĻāĻŦāĻ‚ āĻĒāϰāĻŋāϏāϰ āĻ•ā§āϝ⧋āϝāĻŧāĻžāϰ⧀ āĻ…āύ⧁āĻŽāĻžāύ āϏāĻŽāĻ°ā§āĻĨāĻŋāϤāĨ¤

āĻ…āĻŦā§āϝāĻŦāĻ¸ā§āĻĨāĻžāĻĒāύāĻž:

  • SysV semaphores āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ mdbx_env_resurrect_after_fork() āĻ•āĻžāĻ°ā§āϝāĻ•āĻžāϰāĻŋāϤāĻžāϝāĻŧ āĻāĻ•āϟāĻŋ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻŦāĻžāĻ— āϏāĻ‚āĻļā§‹āϧāύ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āϚāϞāĻŽāĻžāύ āϞ⧇āĻ–āĻžāϰ āϞ⧇āύāĻĻ⧇āύ⧇āϰ āĻĒāϟāĻ­ā§‚āĻŽāĻŋāϤ⧇ fork() āĻāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻāĻ•āϟāĻŋ āϚāĻžāχāĻ˛ā§āĻĄ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻž āϤ⧈āϰāĻŋ āĻ•āϰāĻžāϰ āĻĒāϰ⧇āχ āĻ¤ā§āϰ⧁āϟāĻŋāϟāĻŋ āĻĻ⧇āĻ–āĻž āĻĻ⧇āϝāĻŧ, āϝāĻžāϰ āĻĢāϞ⧇ semaphores āĻāϰ āϭ⧁āϞ āĻ…āĻĒāĻžāϰ⧇āĻļāύ āĻāĻŦāĻ‚ āϤāĻžāϰāĻĒāϰ⧇ āĻĄāĻžāϟāĻžāĻŦ⧇āϏ āĻĻ⧁āĻ°ā§āύ⧀āϤāĻŋ āϏāĻš āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āĻ¤ā§āϰ⧁āϟāĻŋ āĻĻ⧇āĻ–āĻž āĻĻ⧇āϝāĻŧāĨ¤ mdbx_env_resurrect_after_fork() āĻāϰ āφāĻŦāĻŋāĻ°ā§āĻ­āĻžāĻŦ⧇āϰ āĻĒāϰ āĻĨ⧇āϕ⧇ āϏāĻŽāĻ¸ā§āϝāĻžāϟāĻŋ āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύ āĻ›āĻŋāϞ āĻāĻŦāĻ‚ MDBX_LOCKING=5 āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āϤ⧈āϰāĻŋ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ macOS, āϏ⧇āχāϏāĻžāĻĨ⧇ POSIX āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽāϗ⧁āϞāĻŋāϕ⧇ āĻĒā§āϰāĻ­āĻžāĻŦāĻŋāϤ āĻ•āϰ⧇āĻ›āĻŋāϞāĨ¤
  • āύāύ-āϞāĻŋāύāĻžāĻ•ā§āϏ POSIX āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ (āĻŦ⧇āĻļāĻŋāϰāĻ­āĻžāĻ— macOS) DB Copy API-āϤ⧇ āϘāĻŸā§‡ āϝāĻžāĻ“āϝāĻŧāĻž āĻāĻ•āϟāĻŋ āϏāĻŽāĻ¸ā§āϝāĻž āϏāĻŽāĻžāϧāĻžāύ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇, āĻāĻŦāĻ‚ āĻ•āĻŋāϛ⧁ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āϝāĻ–āύ āϟāĻžāĻ°ā§āϗ⧇āϟ āĻĢāĻžāχāϞāϟāĻŋ āĻāĻ•āϟāĻŋ āύāύ-āϞ⧋āĻ•āĻžāϞ āĻĢāĻžāχāϞ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ āĻ…āĻŦāĻ¸ā§āĻĨāĻŋāϤ āĻ›āĻŋāϞāĨ¤ āĻāχ āϏāĻŽāĻ¸ā§āϝāĻžāϰ āĻĢāϞ⧇ EWOULDBLOCK/EAGAIN āĻ¤ā§āϰ⧁āϟāĻŋ āĻĢāĻŋāϰ⧇ āĻāϏ⧇āϛ⧇, āϝāĻž OS āĻ•āĻžāĻ°ā§āύ⧇āϞ⧇āϰ fcntl(F_SETLK) āĻāĻŦāĻ‚ flock() āϞāĻ•āϗ⧁āϞāĻŋāϤ⧇ āĻāĻ•āϟāĻŋ āĻ¤ā§āϰ⧁āϟāĻŋ/āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦ⧇āϰ āĻ•āĻžāϰāϪ⧇ āĻšāϝāĻŧ⧇āĻ›āĻŋāϞāĨ¤ POSIX āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ Copy API-āϤ⧇ āĻĢāĻžāχāϞ āϞāĻ• āĻ…āϧāĻŋāĻ—ā§āϰāĻšāĻŖ āĻ¤ā§āϰ⧁āϟāĻŋ āĻĒāϰāĻŋāϚāĻžāϞāύāĻžāϰ āĻĒ⧁āύāĻ°ā§āύāĻŋāĻ°ā§āĻŽāĻžāĻŖ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤
  • āĻāĻ•āϟāĻŋ āĻĄāĻžāϟāĻžāĻŦ⧇āϏ āĻ–ā§‹āϞāĻžāϰ āĻĒāϰ āĻāĻ•āχ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻžāϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āĻžāϧāĻŋāĻ• āϞ⧇āύāĻĻ⧇āύ āĻļ⧁āϰ⧁ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ MDBX_BAD_DBI āĻāϰ āĻ…āĻĒā§āϰāĻ¤ā§āϝāĻžāĻļāĻŋāϤ āϰāĻŋāϟāĻžāĻ°ā§āύ⧇āϰ āĻ•āĻžāϰāĻŖ āĻšāĻ“ā§ŸāĻž āĻāĻ•āϟāĻŋ āĻŦāĻžāĻ— āϏāĻ‚āĻļā§‹āϧāύ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤
  • āχāϤāĻŋāĻŽāĻ§ā§āϝ⧇āχ āĻ–ā§‹āϞāĻž āĻŸā§‡āĻŦāĻŋāϞāϗ⧁āϞāĻŋ āĻĒ⧁āύāϰāĻžāϝāĻŧ āĻ–ā§‹āϞāĻžāϰ āϏāĻŽāϝāĻŧ MDBX_DBS_FULL āĻ…āĻĒā§āϰāĻ¤ā§āϝāĻžāĻļāĻŋāϤāĻ­āĻžāĻŦ⧇ āĻĢāĻŋāϰ⧇ āφāϏāĻžāϰ āĻ•āĻžāϰāĻŖ āĻāĻŦāĻ‚ āĻ–ā§‹āϞāĻž DBI āĻšā§āϝāĻžāĻ¨ā§āĻĄā§‡āϞ āϏ⧀āĻŽāĻž āχāϤāĻŋāĻŽāĻ§ā§āϝ⧇āχ āĻĒ⧌āρāϛ⧇ āϝāĻžāĻ“āϝāĻŧāĻž āĻāĻ•āϟāĻŋ āĻŦāĻžāĻ— āϏāĻ‚āĻļā§‹āϧāύ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤
  • _FILE_OFFSET_BITS āĻ¸ā§āĻĒāĻˇā§āϟāĻ­āĻžāĻŦ⧇ āϏāĻ‚āĻœā§āĻžāĻžāϝāĻŧāĻŋāϤ āĻ•āϰāĻž āĻšāϞ⧇ āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽā§‡āϰ āϜāĻ¨ā§āϝ āĻŦāĻŋāĻ˛ā§āĻĄ āĻ¤ā§āϰ⧁āϟāĻŋ āĻ āĻŋāĻ• āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤
  • MDBX_ENOMEM āĻāϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤ⧇ ENOMEM āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āĻāĻ•āϟāĻŋ āĻŦāĻžāĻ— āϏāĻ‚āĻļā§‹āϧāύ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āϝāĻž āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āĻāĻŦāĻ‚/āĻ…āĻĨāĻŦāĻž SDK āϏāĻ‚āĻ¸ā§āĻ•āϰāϪ⧇āϰ āωāĻĒāϰ āύāĻŋāĻ°ā§āĻ­āϰ āĻ•āϰ⧇ āύāύ-POSIX/Windows āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽāϗ⧁āϞāĻŋāϤ⧇ āĻŦāĻŋāĻ˛ā§āĻĄāϟāĻŋ āϭ⧇āϙ⧇ āĻĢ⧇āϞāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤
  • Windows āĻāĻŦāĻ‚ POSIX āωāĻ­āϝāĻŧ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇āχ, āĻŦāĻŋāĻļ⧇āώ āĻ•āϰ⧇ txn_end(), txn_lock(), āĻāĻŦāĻ‚ txn_unlock() āϕ⧋āĻĄā§‡, āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻĒāϰāĻŋāĻ¸ā§āĻĨāĻŋāϤāĻŋāϤ⧇ āĻĄāĻŋāĻŦāĻžāĻ— āĻŦāĻŋāĻ˛ā§āĻĄ āĻ•ā§āĻ°ā§āϝāĻžāĻļ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻĻāĻžāϝāĻŧā§€ āĻŦ⧇āĻļ āĻ•āϝāĻŧ⧇āĻ•āϟāĻŋ āϭ⧁āϞ āĻĻāĻžāĻŦāĻŋ āϏāĻ‚āĻļā§‹āϧāύ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇ āĻŦāĻž āĻ…āĻĒāϏāĻžāϰāĻŖ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤
  • āϛ⧋āϟāĻ–āĻžāĻŸā§‹ MSVC āϏāϤāĻ°ā§āĻ•āϤāĻž āϏāĻ‚āĻļā§‹āϧāύ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ C5286 āĻāĻŦāĻ‚ C5287 āϏāϤāĻ°ā§āĻ•āϤāĻž āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤
  • POSIX āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽā§‡ OFD āϞāĻ• āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻ…āĻ¸ā§āĻŦā§€āĻ•ā§ƒāϤāĻŋ āϜāĻžāύāĻžāύ⧋āϰ āϝ⧁āĻ•ā§āϤāĻŋ āωāĻ¨ā§āύāϤ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āĻāĻ–āύ, EINVAL āĻ›āĻžāĻĄāĻŧāĻžāĻ“, āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āĻ¤ā§āϰ⧁āϟāĻŋ āϕ⧋āĻĄāϗ⧁āϞāĻŋ āĻŦāĻŋāĻŦ⧇āϚāύāĻžāϝāĻŧ āύ⧇āĻ“āϝāĻŧāĻž āĻšāϝāĻŧ (ENOSYS, ENOIMPL, ENOTSUP, ENOSUPP, EOPNOTSUPP), āϝāĻž āĻ•āĻŋāϛ⧁ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āĻ•āĻŽā§āĻĒāĻžāχāϞ āĻ•āϰāĻž āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋāϕ⧇ āĻ•āĻžāϜ āĻ•āϰāĻžāϰ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻ⧇āĻŦ⧇ āϝāĻ–āύ āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻ•āĻžāĻ°ā§āύ⧇āϞ/āĻ•āĻ¨ā§āĻŸā§‡āχāύāĻžāϰ/āĻāĻŽā§āϞ⧇āϟāϰ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āϞāϗ⧁āϞāĻŋāϕ⧇ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇ āύāĻžāĨ¤
  • āĻĒāϰ⧀āĻ•ā§āώāĻžāϰ āĻ•āĻžāĻ āĻžāĻŽā§‹ āĻāĻ–āύ --numa āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϟāĻŋ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤ Âģ āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āϟāĻŋāĻ• āĻĒāϰ⧀āĻ•ā§āώāĻžāϟāĻŋāϕ⧇ āĻāĻ•āϟāĻŋ NUMA āύ⧋āĻĄā§‡āϰ āϏāĻžāĻĨ⧇ āφāĻŦāĻĻā§āϧ āĻ•āϰāϤ⧇āĨ¤ NUMA āύ⧋āĻĄ āϜ⧁āĻĄāĻŧ⧇ āĻ¸ā§āĻĒāĻˇā§āϟ āĻŦāĻŋāϤāϰāĻŖ āĻŦā§āϝāĻžāϟāĻžāϰāĻŋ/tmux āĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡ āϝ⧋āĻ— āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇, āϝāĻž NUMA āĻŽā§‡āĻļāĻŋāύ⧇ āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻĻāĻ•ā§āώāϤāĻž āωāĻ˛ā§āϞ⧇āĻ–āϝ⧋āĻ—ā§āϝāĻ­āĻžāĻŦ⧇ āĻŦ⧃āĻĻā§āϧāĻŋ āĻ•āϰ⧇āϛ⧇āĨ¤
  • āĻ¸ā§āĻŸā§‹āĻ•āĻžāĻ¸ā§āϟāĻŋāĻ• āĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ āĻāĻ•āϟāĻŋ āĻāϞ⧋āĻŽā§‡āϞ⧋ āĻ•ā§āϰāĻŽ āĻĒā§āϰāϝāĻŧā§‹āĻ— āĻ•āϰ⧇ āϝ⧇āĻ–āĻžāύ⧇ āĻĒ⧃āĻĨāĻ• āĻĒāϰ⧀āĻ•ā§āώāĻž āϚāĻžāϞāĻžāύ⧋ āĻšāϝāĻŧāĨ¤

āωāĻ¤ā§āϏ: opennet.ru

āĻāĻ•āϟāĻŋ āĻŽāĻ¨ā§āϤāĻŦā§āϝ āϜ⧁āĻĄāĻŧ⧁āύ