Рубрика «vm»

Консоль SSH на WebAssembly внутри браузера: как это сделано - 1

Веб-консоль SSH запускается по нажатию кнопки на сайте

Почти у каждого VPS- и облачного провайдера есть веб-клиент SSH, который запускается через браузер. Такое приложение помогает вам подключиться по SSH к своим виртуальным машинкам на удалённом сервере, не выходя из браузера.

В наше трудное время безопасность не бывает лишней, а область использования SSH и RDP сильно расширяется. Есть смысл шифровать каналы связи при подключении к любым устройствам, в том числе в своей домашней сети. Например, из любой точки мира вы можете подключиться к домашнему компьютеру в РФ и работать внутри страны — заходить на местные сайты типа госуслуг, сбера, оплачивать пошлины, оформлять документы и т. д.

К счастью, существуют удобные инструменты для выполнения всех этих задач.
Читать полностью »

Тестирование проброса GPU на AMD Ryzen 7 5700G APU - 1

Проброс видеокарты с помощью VFIO может быть знаком немногим, но по факту является очень удобным способом решить ряд насущных задач и упростить рабочий процесс в целом. В этом проекте мы настроим нужную конфигурацию из под Fedora 34 и поочередно пробросим две разные видеокарты в VM, попутно оценив полученную производительность. Читать полностью »

Привет!

Сегодня публикуем статью о том, как написать хост KVM. Мы увидели ее в блоге Serge Zaitsev, перевели и дополнили собственными примерами на Python для тех, кто не работает с языком С++.

KVM (Kernel-based Virtual Machine) — это технология виртуализации, которая поставляется с ядром Linux. Другими словами, KVM позволяет запускать несколько виртуальных машин (VM) на одном виртуальном хосте Linux. Виртуальные машины в этом случае называются гостевыми (guests). Если вы когда-нибудь использовали QEMU или VirtualBox на Linux, вы знаете, на что способен KVM.

Но как это работает под капотом?
Читать полностью »

Иногда в голову приходит какая-то мысль избавиться от которой очень сложно. Такое произошло и со мной.

Я решил создать виртуальную машину (VM), учитывая то, что на тот момент у меня не было идей, мне показалось, что это прекрасная мысль. Если вы заинтересовались, то вперёд под кат! Читать полностью »

В этой статье я расскажу про одну малоизвестную технологию, которая нашла ключевое применение в нашей онлайн-игре для программистов. Чтобы долго не тянуть резину, сразу спойлер: кажется, что такого шаманства в нативном коде Node.js, к которому мы пришли после нескольких лет разработки, до нас еще никто не делал. Движок изолированных виртуальных машин (опенсорсный), который работает под капотом проекта, был написан специально для его нужд, и на данный момент используется в продакшене нами и еще одним стартапом. А возможности изоляции, которые он дает, не имеют аналогов и заслуживают, чтобы о них рассказали.

Но давайте обо всем по порядку.

Предыстория

Вы любите программирование? Не тот рутинный энтерпрайз-кодинг, которым многие из нас вынуждены заниматься 40 часов в неделю, борясь с прокрастинацией, вливая в себя литры кофе и профессионально выгорая; а программирование — ни с чем не сравнимый волшебный процесс трансформирования мыслей в работающую программу, получение наслаждения от того, что только что написанный тобой код воплощается на экране и начинает жить той жизнью, которой велит ему создатель. В такие моменты слово "Создатель" хочется написать с большой буквы — настолько чувство, возникающее в процессе, иногда бывает близко к благоговению.

Под капотом Screeps — виртуализация в MMO-песочнице для программистов - 1

Жаль лишь, что совсем немного реальных проектов, связанных с каждодневным заработком, могут предложить своим разработчикам такие чувства. Чаще всего для того, чтобы не терять страсть к программированию, энтузиастам приходится затевать интрижку на стороне: программистское хобби, пет-проект, модный open-source, просто скрипт на питоне по автоматизации своего умного дома… или поведения персонажа в какой-нибудь популярной онлайн-игре.

Читать полностью »

Dart vs Node.js: сравниваем производительность на реализациях HTTP сервера - 1

Всем доброго времени суток!

В этом году с выходом Flutter — фреймворка для кроссплатформенной разработки приложений наметился подъем хайпа по языку Dart. Как и любой перфекционист прокрастинирующий от скуки лентяй я задумался о сравнении производительности серверной реализации виртуальной машины Dart с ее потенциальным антагонистом в лице Node.js. Скажу сразу, что во мне теплилась надежда что Dart победит, а я обрету святой грааль дарующий мне превосходство над потенциальными конкурентами на ближайшие пару тройку пятилеток, но реальность оказалось немного иной...

Читать полностью »

В этом руководстве я расскажу, как написать собственную виртуальную машину (VM), способную запускать программы на ассемблере, такие как 2048 (моего друга) или Roguelike (моя). Если вы умеете программировать, но хотите лучше понять, что происходит внутри компьютера и как работают языки программирования, то этот проект для вас. Написание собственной виртуальной машины может показаться немного страшным, но я обещаю, что тема удивительно простая и поучительная.

Окончательный код составляет около 250 строк на C. Достаточно знать лишь основы C или C++, такие как двоичная арифметика. Для сборки и запуска подходит любая Unix-система (включая macOS). Несколько API Unix используются для настройки ввода и отображения консоли, но они не являются существенными для основного кода. (Реализация поддержки Windows приветствуется).

Примечание: эта VM — грамотная программа. То есть вы прямо сейчас уже читаете её исходный код! Каждый фрагмент кода будет показан и подробно объяснён, так что можете быть уверены: ничего не упущено. Окончательный код создан сплетением блоков кода. Репозиторий проекта тут.

Читать полностью »

Здравствуй! Уже несколько недель я занят разработкой своего языка программирования на Rust. Мне бы хотелось расказать о том с чем может столкнуться новичок в этом деле и о чем ему следует знать.

Читать полностью »

Как быстро создать рабочее окружение для web-разработчиков или настраиваем окружение разработки для работы или изучения HTML, CSS, PHP в Windows.

(статья опубликована на Linkedin)

web - developer PHPStorm and Vagrant

Это мой перевод статьи от автора книг по Ассемблеру и Реверсингу программ. Сейчас он в основном публикуется в США. Думаю пригодиться начинающим и не только.

Начинающие программисты всегда задаются вопросом, с чего начать изучение создание web-сайтов? Поиск в интернете дает много разнообразной информации, но к сожалению только еще больше запутывает начинающих разработчиков. Имея более чем 5 летний опыт преподавания, я много раз видел, как ученики, делая перерывы в компьютерных играх и решившись стать web-разработчиками, пытались настроить окружения разработки. Они начинали перебирать программы для верстки. Они хватались за Sublime Text, Notepad++, Visual Studio Code, NetBeans или PHPStorm. Пытались ставить себе на локальный компьютер WAMP (расшифровывается как Windows, Apache, MySQL и PHP) платформы, такие как Denver, Xampp, Open Server и многие другие. Но так как в голове начинающего разработчика пока нет систематических знаний, нет опыта настройки, довольно редко у кого из них получалось настроить удобное окружение разработки, а у кого получалось, тот понимал, что играть стало сложнее, так как множество дополнительно установленных программ, мешают наслаждаться плавностью в игре.

Данная статья родилась из-за объясняя за многие годы каждому ученику, как все сделать и правильно и удобно.

Еще раз хочу сказать, что мы будем настраивать рабочее окружение в системе Windows для изучения создания сайтов на HTML, CSS и их связки с PHP. Будем называть такой компьютер рабочим, чтобы начинающие web-разработчики привыкали к мысли, что их компьютер — это их источник дохода.

Читать полностью »

Работа с Veeam Availability Console: настройка управляемого резервного копирования Managed Backup Services - 1

Недавно мы запустили новый сервис управления политиками резервного копирования клиентов — Veeam Managed Backup. В его основе используется портал Veeam Availability Console. О функциональных возможностях портала Veeam уже рассказывал. Кратко напомню основные:

  1. Для клиента – мониторинг заданий и инфраструктуры РК, получение информации по биллингу;
  2. Для провайдера – управление резервным копированием клиентов: конфигурация, мониторинг и обслуживание.

В своей статье я хочу рассказать о том, как работать в портале и настраивать Managed Backup для виртуальных сред. Но сначала кратко о том, чем хорош сервис Veeam Managed Backup. Он позволяет передать на аутсорсинг весь процесс резервного копирования, даже если ресурсы находятся на площадке клиента. В сервисе используется модель лицензирования за ВМ с включенной услугой Veeam Cloud Connect.

Что это означает для клиента? Во-первых – возможность получить дополнительную копию бэкапа своей ВМ в облаке сервис-провайдера без переплаты за лицензии Veeam Cloud Connect. Оплачивается только место на СХД под резервные копии (Cloud Connect Backup) или репликацию (Cloud Connect Replication).  Во-вторых – оплата по факту использования лицензий, то есть гибкость в затратах по сравнению с лицензией типа Perpetual License.

Но вернемся к порталу Veeam Cloud Connect: первый шаг к настройке управляемого резервного копирования — создание учетной записи клиента.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js