Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ β€” ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΈΠΌΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‚ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°.

Π—Π°Ρ‡Π΅ΠΌ:

  • Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π½Π° ΠΎΠ΄Π½ΠΎΠΉ ОБ, Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠžΠ‘β€¦
  • … ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° ARM).
  • НуТна ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ ОБ.
  • Π₯ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΡ‚Ρ€ΠΎΠ³Π°Ρ‚ΡŒ вирус, Π½Π΅ давая Π΅ΠΌΡƒ доступ ΠΊ своим Π»ΠΈΡ‡Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»Π°ΠΌ.

Π’Π΅Ρ€ΠΌΠΈΠ½Ρ‹

Host: (β€œΡ…ΠΎΠ·ΡΠΈΠ½β€) β€” Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина.

Guest: (β€œΠ³ΠΎΡΡ‚ΡŒβ€) β€” Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚, ΡΠΈΠΌΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉΡΡ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машиной.

Input capture: (β€œΠ·Π°Ρ…Π²Π°Ρ‚ ввода”) β€” нСостороТный Ρ‰Π΅Π»Ρ‡ΠΎΠΊ ΠΌΡ‹ΡˆΡŒΡŽ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠΊΠ½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈΠ½ΠΎΠ³Π΄Π° Π΅Ρ‘ β€œΠ·Π°Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚β€; ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π° Ρ‚ΠΎΠΆΠ΅ Π·Π°Ρ…Π²Π°Ρ‡Π΅Π½Π° Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ сочСтания клавиш Π² host-систСмС ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

Snapshot: (β€œΡΠ»Π΅ΠΏΠΎΠΊβ€) β€” сохранённоС состояниС Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

РСкомСндуСтся ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ:

Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

  • Android Emulator,
  • iOS Simulator,
  • DosBox.

Docker

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с поставкой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ:

  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ зависят ΠΎΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. Иногда ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… вСрсий.
  • Иногда ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΎΠΏΠΈΡ€Π°ΡŽΡ‚ΡΡ Π½Π° особСнности ΠžΠ‘β€¦
  • … ΠΈΠ»ΠΈ размСщСния Ρ„Π°ΠΉΠ»ΠΎΠ².

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ установщик для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½Π° Ρ‚ΠΎΡ‡Π½ΠΎ Π·Π°Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° ΠΈΠ»ΠΈ хотя Π±Ρ‹ сообщила, Ρ‡Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ?

  • Π‘Ρ‚Ρ€ΠΎΠ³ΠΈΠ΅ разработчСскиС ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ: отслСТиваниС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… зависимостСй ΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
  • РСгулярная ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° работоспособности Π² Ρ€Π°Π·Π½Ρ‹Ρ… конфигурациях.
  • АвтоматичСский Π°Π½Π°Π»ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ нСявных зависимостСй.

ΠŸΡ€ΠΈΡ‡Π΅ΠΌ Ρ‚ΡƒΡ‚ Docker?

  • Docker-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠ»Π³ΠΎ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹.
    ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π°: nix-shell.

  • Docker-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ.
    ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π°: nix-shell.

  • НС Π½Π°Π΄ΠΎ ΠΌΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ поисках/сборкС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ.
    ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π°: ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€.

  • МоТно Π½Π΅ ΠΏΠ΅Ρ€Π΅Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ сСрвСр, Ссли смСнились трСбования: ΠΎΠ±Π½ΠΎΠ²ΠΈΠ» Docker-ΠΎΠ±Ρ€Π°Π· β€” всё Π·Π°Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ ΠΊΠ°ΠΊ Π½Π°Π΄ΠΎ.
    ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ для этого: Puppet, Ansible, Chef ΠΈΠ»ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, встроСнныС Π² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ оркСстрации Ρ‚ΠΈΠΏΠ° Kubernetes.

Π‘ΠΌ. ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ ΡΡ‚Π°Ρ‚ΡŒΡŽ ΠΏΡ€ΠΎ docker.

Π―Π·Ρ‹ΠΊΠΈ ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ β€œΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒβ€ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ пишСм ΠΊΠΎΠ΄.

Как слСдствиС, Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ ΠΊΠΎΠ³Π½ΠΈΡ‚ΠΈΠ²Π½ΡƒΡŽ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ приходится ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄.

Π’Π°ΠΊΠΈΠ΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ часто:

  • ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈ освобоТдСниСм памяти,
  • ΠΌΠΎΠ³ΡƒΡ‚ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄,
  • ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Π΄ запуском Π½Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π½Π΅ Π½Π°Π²Ρ€Π΅Π΄ΠΈΠ» хосту,
  • Π΄Π°ΡŽΡ‚ приятныС Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ для многопоточности, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ Π²Π½Π΅ зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ Π½Π° ΠΊΠ°ΠΊΠΎΠΌ хостС эту Π’Πœ запускаСм.

Π₯отя это ΠΈ Π½Π΅ всСгда Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ€Ρ‹Π΅ языки ΠΈ Ρ‚Π°ΠΊ ΠΎΠΊ ΡΠΏΡ€Π°Π²Π»ΡΡŽΡΡ‚Ρ: Swift, C, Rust, Go ΠΈ ΠΏΡ€., Haskell.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π’Πœ для языков

  • Java Virtual Machine, JVM β€” ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, самый распространённый Π² ΠΆΠΈΠ·Π½ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€,
  • CPython β€” Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ Python, Π½ΠΎ ΠΈ полноцСнная Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина,
  • .NET Framewok β€” Π°Π½Π°Π»ΠΎΠ³ JVM для C# ΠΎΡ‚ Microsoft,
  • low level virtual machine, llvm β€” сильно ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ написаниС компиляторов: Ссли написали компилятор вашСго языка Π² llvm, Ρ‚ΠΎ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ…ΠΎΡ‚ΡŒ для ΠΌΠΈΠΊΡ€ΠΎΠ²ΠΎΠ»Π½ΠΎΠ²ΠΊΠΈ;
  • v8 engine ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π΄Π²ΠΈΠΆΠΊΠΈ для JavaScript β€” ΠΆΠΈΠ²ΡƒΡ‚ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅, ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‚ js Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°;
  • Bogdan’s Erlang Abstract Machine, BEAM β€” Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина для erlang, вмСстС с ERTS Π΄Π°ΡŽΡ‚ Ρ…ΠΈΡ‚Ρ€Ρ‹Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ Π½Π° созданиС Π΄Π΅ΡˆΡ‘Π²Ρ‹Ρ… процСссов с ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΉ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ;


ВсС страницы сСкции 🐳 Виртуализация ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹

  • Имя

      Π”Π°Ρ‚Π° измСнСния

      • Jan 16, 2024

        • Jan 16, 2024

          • Jan 16, 2024

            • Jan 16, 2024