Задать вопрос
  • Как организовать удаленный гейминг?

    @rPman
    Очевидно вам нужен windows (с linux ситуация сложнее).

    В общем случае не получится! в НЕКОТОРЫХ конфигурациях или для некоторых игр/программ, может получиться, но часто очень высокой ценой.
    Причины:
    * Ни одна система виртуализации не предоставляет адекватный механизм виртуализации GPU ускорителя, это искусственно созданная ситуация из-за монополии производителя видеоускорителей, ограничения закладываются в драйверах. Разрешено это делать только на серверных операционных системах и только со специализированным серверным железам, где цены до бума ИИ были 10х от десктопных, сравнимой производительности, а сейчас еще и не доступны к покупке по причинам искусственно заниженных объемах производства.
    Штатно системы виртуализации симулируют простой видеоадаптер, без поддержки 3d ускорения... во времена windows 7 у virtualbox была кастрированная поддержка, и даже что то работало, но упор там был сделан на приложения а не игры, с большинством игры было все плохо. Сейчас этот механизм окончательно сломан и не работает.
    Некоторые системы виртуализации, типа qemu/kvm и основанных на нем, позволяют пробросить весь pcie контроллер внутрь (в биосе должна быть включена поддержка IOMMU, и я видел биосы где виртуализация была зарублена искусственно) и с некоторыми адаптерами это даже работает в windows (я запускал win8 и есть примеры что это работает на win10, первое что нагуглил, точно помню были какие то хаки драйверов, отключающие проверки)
    За это придется платить от 10% производительности до 30% процессора (самого важного - single thread) особенно это заметно в многопользовательских играх, где latency критична. На моем старом железе помню тогда fps падал с 30-40 до 15-20. Т.е. повторю, по синтетическим тестам все будет не так страшно, но когда дело дойдет до реальной эксплуатации, то 'в худшем' станет очень заметным.

    * Есть способ, который я рекомендую, которым я пользовался с 10 лет назад несколько лет да и сейчас, - это multiseat без виртуализации. К одной физической машине подключаются мониторы, клавиатуры и мышки по количеству рабочих мест. Для рабочих ревизий windows есть софт - ibik aster, который позволяет сделать до 10 рабочих мест (не требуя по одной физической видеокарте на рабочее место) а для linux - штатный функционал xserver не wayland (loginctl для его настройки, к сожалению на каждое рабочее место требуется физическая видеокарта, это обходится нетривиальными методами, через xserver-в-окне xephyr) и это шикарно работает, без лагов удаленного рабочего стола, без затрат на виртуализацию и прочего.
    Но! проблемы создает софт, чаще из лицензионных соображений, который не желает работать одновременно в нескольких экземплярах. Например steam на windows детектирует свою запущенную копию и не запускается повторно, это обходится простыми шевелениями с process explorer и полагаю можно найти или написать софт (он реально простой, думаю его и chatgpt напишет, только запрос составить по инструкции использования process explorer). Но те же самые проверки могут проводить игры, вот буквально я столкнулся с проблемой и так ее не решил - throne and liberty даже в linux (где сессии wine у каждого пользователя своя песочница) подвисает именно при одновременном запуске, потому что каким то образом один инстанс затрагивает соседнюю видеокарту, как не настраивай). Очевидно что разные игры должны работать без проблем, в прошлом я так много игр запускал, в т.ч. многопользовательские.
    Что такое один рабочий компьютер на нескольких человек тоже нужно понимать, общая флешка, мешающее время обслуживание (перезагрузки, установки программ и т.п.) все это мелочи но о них тоже нужно не забывать. Права на каталоги можно в принципе настроить так что пользователи не будут друг другу мешать даже если захотят.

    * если речь о linux хосте и linux госте, есть spice проброс видеоадаптера по сети в т.ч. внутрь виртуалки, я лично не пользовался, говорят работает, но особого смысла в этом нет, почти никаких бонусов такой подход не принесет, поэтому наверное и мало кто изучает.

    upd. удаленный гейминг - это еще одна прослойка, понижающая latency и качество изображения. Лучший из известных мне это steam link, терминалом могут работать даже слабые планшетники.
    Ответ написан
    2 комментария
  • Вендинг: как создать ПО для собственного аппарата?

    @SunTechnik
    Ответ написан
    Комментировать
  • Как отформатировать вывод cmd?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Вариантов много. Например, весь вывод разбить на строки и выводить в цикле только те, которые содержат нужную подстроку. Или воспользоваться библиотекой re, там есть несколько вариантов.
    Но если вам это сложно - обращайтесь на фриланс.
    Ответ написан
    Комментировать
  • Почему отрабатывает bind?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    1. Метод .bind в jQuery не рекомендован (deprecated) ещё с версии 3.0. Вместо него надо использовать .on
    2. jQuery использует method chaining. Фактически, ваш код эквивалентен
    $(document).on("touchmove", carditem_s3, function(e) { ... });
    $(document).bind('touchend', function() { ... });
    То есть, привязка обработчика touchend выполняется ко всему документу, без каких либо ограничений.
    Ответ написан
    3 комментария
  • Как рассчитать характеристики сервера для предприятия?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    В соответствии с системными требованиями к используемому ПО и техническим заданием заказчика.
    Ответ написан
    Комментировать
  • Как включить моментальную перезагрузку при BSOD на WINDOWS10?

    oia
    @oia
    reg add «HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl» /v AutoReboot /t REG_DWORD /d 1 /f
    Ответ написан
    1 комментарий
  • Hiex.exe — Системная ошибка. Что делать?

    @NortheR73
    системный инженер
    В интернете ничего толкового не нашла
    два первых результата в гугле - раз и два
    Ответ написан
    3 комментария
  • Как 16-ричный октет стринг из UTF-8 преобразовать в windows-1251?

    @Zzzz9
    Это байты cp1251
    javascript
    const bytes = [0xC4, 0xE5, 0xE6, 0xF3, 0xF0, 0xED, 0xFB, 0xE9];
    const decoder = new TextDecoder('windows-1251');
    const string = decoder.decode(new Uint8Array(bytes));
    
    console.log(string);

    Выводит Дежурный
    python
    h = 'C4 E5 E6 F3 F0 ED FB E9'
    byte_string = bytes.fromhex(h)
    decoded_string = byte_string.decode('windows-1251')
    print(decoded_string)
    for i in h.split():
        print(f'{i} {int(i,16)}')


    Дежурный
    C4 196
    E5 229
    E6 230
    F3 243
    F0 240
    ED 237
    FB 251
    E9 233
    Ответ написан
    1 комментарий
  • Можно ли использовать 45вват вместо 65вват бп ноутбука?

    @Yaiem
    Сложно сказать наверняка, очень зависит от самого ноутбука и зарядки. Порой даже когда напряжение совпадает - ноут отказывается принимать другой бп
    Ответ написан
    Комментировать
  • Можно ли использовать 45вват вместо 65вват бп ноутбука?

    @alexalexes
    Проверить хватит, если коннектор подойдет.
    А вот при нагрузке ноут при подключенной зарядке будет разряжаться, чем заряжаться, и бп будет греться как печка.
    Ответ написан
    Комментировать
  • Какое максимальное число подключенных пользователей выдержит мой OpenVPN сервер?

    @Zerg89
    1 x 3.3 ГГц CPU • 1 ГБ RAM • 15 ГБ NVMe
    сеть: 200мегабит в секунду

    Зависит от количества паралелей настроеных вашими настоиками может и весь канал утилизировать, если вы не пытаетесь его фильтровать или очередность (приоритеты) делать. Ну и упор в openvpn зависит от типа шифрования минимально настроенных вами
    С теми же настройками по идее +4 потока если у вас проц не в притык работает ( ответ на повышение трафика/канала)
    Ps А с таким описанием может будет проще гадать на кофейной гуще
    Ответ написан
    Комментировать
  • Чем теперь пользоваться, когда Хабр Фриланс закрылся?

    Maksim_64
    @Maksim_64
    Data Analyst
    Делай хорошее, привлекательное резюме, и размещай его на сайтах поиска работы, пока и они еще не умерли.
    Ответ написан
    8 комментариев
  • Почему сервер не может подключиться к Postgres внутри контейнера?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Между контейнерами коннектиться не по 127.0.0.1, а по имени контейнера.
    Ответ написан
    Комментировать
  • Как найти кто или что делает запрос?

    @Zerg89
    Вы не поверите но служба которая исполняет файл по расписанию не пытается его читать каждый раз с диска а только при перезагрузке службы и любое изменение в скрипте вычитывается при перезагрузке службы иначе есть кеш исполняемого скрипта в оперативке или виртуальной памяти
    Ответ написан
    2 комментария
  • Почему за ночь очень сильно разряжается батарея?

    GavriKos
    @GavriKos
    Так не за ночь же. На момент 22:00 уже было 25% заряда. Вполне норм что за ночь при активности шагомера он будет че то там мерять и с 25 сядет до нуля. Вполне нормально. Хотите чтобы не садился - выключайте шагомер.
    Но - еще раз - за 12 часов с 25% до 0 - для не нового телефона - нормальный показатель.
    Ответ написан
  • Нужно ли ехать в Москву из региона если устраиваешься удаленно программистом?

    @Drno
    Это надо спрашивать у HR в конкретной компании. в целом никто не мешает отправить документы почтой
    Ответ написан
    3 комментария
  • Нужно ли ехать в Москву из региона если устраиваешься удаленно программистом?

    Maksim_64
    @Maksim_64
    Data Analyst
    Я так работаю, живу в регионе, а работаю удаленно, мой текущий трудовой договор подписан электронной подписью. Если интересен процесс то вот несколько пунктов.

    1. Получение ЭЦП в удостоверяющем центре, стоит не дорого.

    2. Дают флешку нужно еще поставить софт на компьютер, софт ставишь либо сам, либо их специалист через какой-нибудь анидеск.

    3. У тебя появляется аккаунт в системе электронного документооборота например в СБИС.

    4. Заходишь в свой аккаунт, либо загружаешь туда электронную версию ТК либо тебе туда ее и присылают, внимательно читаешь, если что жмешь утвердить и отсылаешь обратно, работодателю.

    Все, ты официально трудоустроен, и ТК подписанный ЭЦП ни чем не отличается, от ТК подписанного в офисе.
    Ответ написан
    9 комментариев
  • Нужно ли ехать в Москву из региона если устраиваешься удаленно программистом?

    Если в компании нормально кадровый процесс построен и нет требования «познакомиться лично», то не нужно. Документы либо электронно подписываются, либо пересылаются почтой.
    Ответ написан
    2 комментария
  • [Python + pywin32] Как эмулировать движения курсора, клики кнопками мыши и нажатия клавиш клавиатуры в игре WoT?

    TrueBers
    @TrueBers
    Гуглю за еду
    вожусь уже 4-ю неделю, и на данный момент прямых ответов не нашел.
    Что можно было делать 4 недели, если ответ гуглится за 4 секунды? За 4 недели можно было игру дизассемблировать и посмотреть, как там всё устроено.

    Способов обработки ввода как минимум несколько. На одном Window Message Loop Legacy Input, который ты насилуешь, свет клином не сошёлся. Он никогда не считался подходящим для игр и точного ввода, почему им пользуется огромное количество игр — загадка. Либо банальная человеческая лень.

    Есть DirectInput, есть XInput, есть window message loop input events, есть RawInput, и GameInput. Первые два давно уже устаревшими помечены, не развиваются с 2000-х и не рекомендуются к использованию в современных играх. Устаревшие ивенты из window message loop, которые ты пытаешься посылать в окно, никогда не рекомендовались для реалтаймовых игр, где важна скорость реакции и точность наведения курсора. Остаётся RawInput. Ну а GameInput — слишком новая, высокоуровневая и специфическая штука, чтобы её часто использовали. Более того, все эти *Input базируются на низком уровне как раз на RawInput.

    Обрати внимание на ивенты, которые приходят перед нужными тебе. WM_INPUT, вот он как раз относится к RawInput. Его то и обрабатывает приложение. Сначала приходит WM_INPUT, а потом за ним старое сообщение просто для совместимости с древними хендлерами. Приходят старые сообщения потому, что разработчики не отключили их генерацию флагом RIDEV_NOLEGACY, либо есть какая-то логика отката к старому обработчику.
    И самое главное, WM_INPUT генерируется HID-железкой внутри самого системного хендлера событий. То есть самому послать это сообщение от лица пользователя невозможно.

    Эмулировать RawInput можно только аппаратно/драйвером/гипервизором, либо внедрившись в код игры. Придётся реверсить игру и разбираться в логике обработки сообщений. Возможно, можно как-то заабьюзить логику, которая проверяет, будет ли обрабатывать сырой ввод, и вдруг есть какое-то условие или флаг из конфига, при котором произойдёт fallback, который сбросит обработку WM_INPUT на старые ивенты.

    PS. С ответа про обработку ввода через графические API поржал :D. Нормальная шутка, смешная.
    Ответ написан
    3 комментария