• Какая сложность под капотом у сравнения строка?

    SagePtr
    @SagePtr
    Еда - это святое
    O(n) в худшем случае (если отличающийся символ находится в конце)
    Ответ написан
    Комментировать
  • Какая сложность алгоритма из блоков switch?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    O(1). У вас линейный код, циклов в нём нет.
    Ответ написан
    Комментировать
  • Как мне быть, если HP Support Assistant больше не работает в России?

    @ewgenc
    Снести его нафиг и забыть, меньше мусора в системе будет.
    Ответ написан
    Комментировать
  • Как правильно установить C на Windows 10?

    includedlibrary
    @includedlibrary
    Можно использовать wsl. Или установить MSYS2, и через его пакетный менеджер установить gcc/clang. Использовать компилятор, который идёт с Visual Studio, не рекомендую, т. к. он не поддерживает стандарт c11
    Ответ написан
    4 комментария
  • Как правильно сортировать файл?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    Все правильно. Работа с файлом - на несколько порядков медленнее работы с памятью. Особенно медленен случайный доступ на hdd. Поэтому читать и писать по одному числу по разным адресам, как в сортировке, совсем медленно.

    На практике, когда стоит задача сортировать файл, файл большой и в память целиком не помещается. Поэтому его читают кусками и как-то хитрят. Но чтение всегда делают большими кусками.
    Ответ написан
    2 комментария
  • Стоит ли переводить сотрудников на виртуальные рабочие места?

    @Drno
    Эмм... Proxmox это про виртуалки... зачем их пихать по разным виртуалкам?

    Не проще 1 RDP сервер сделать... с рабочими местами
    Насчет 2хГб... зависит от количества вкладок в браузере и локальная БД у 1с или где то на сервере

    у нас вот гл буху 8гб ток тока хватает...
    Ответ написан
  • Что делать если пришлось бросить учёбу ради работы? Стоит ли идти куда-то учиться?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Нужно ли идти учиться и как совмещать это с моей работой 2/2

    Идти на заочку. На время сессии брать отпуск. Теоретически, админу вышка не нужна, но практически ни одна более-менее крупная компания не рассмотрит кандидата без вышки (да-да, тут сейчас набигут модно-стильно-молодежные, вышки не одолевшие и хором будут камлать "вышка не нужна").
    Поэтому вышку получаем на заочке.
    Кстати админы-системщики и админы-сетевики - это две большие разницы. В веб-макаки не советую - мучо трабахо, покито песо. Лучше в админы. Девушка-админ - это круто :)
    Ответ написан
    2 комментария
  • Какую сетевую библиотеку выбрать?

    Nipheris
    @Nipheris Куратор тега C++
    WinSock2 - это не библиотека, а прикладное API на Винде. Т.е. вы выбираете не между двумя библиотеками, а между апихой самой ОС, и ей же, обёрнутой в кроссплатформенный boost.asio.

    Если задача учебная, и нужно прям поработать с сокетами на низком уровне - возьмите WinSock2, это почти что ванильный Berkley Sockets. Если не нужно работать с сокетами на низком уровне - я бы взял asio. Но тогда вам придётся познакомиться с абстракциями этой библиотеки. В целом, ничего неподъёмного там нет.
    Ответ написан
    Комментировать
  • Как это упростить?

    hint000
    @hint000
    у админа три руки
    public void Update()
        {
          if(GlobalData.Skip >= 0 && GlobalData.Skip <=11)
            {
                SpriteRender.sprite = sprites[GlobalData.Skip];
            }
        }
    Ответ написан
    1 комментарий
  • Как ограничить доступ к функции DNS over HTTPS?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    Включить запрет ее включения с помощью GPO, используя соответствующие Administrative Templates.
    Ответ написан
    4 комментария
  • Как ограничить копирование данных из сетевых папок, локального ПК, на флешки и внешние ресурсы?

    @TheBigBear
    СтарОдмины мы
    Много лет пользовали Стахановца
    В нем можно запретить запись на внешние носители, отслеживает все копирования-удаления - даже к себе их копирует перед удалением. Можно запретить прикрепление файлов в вэб почте. Отлична развита система отслеживания подозрительных действий, слова "ловушки".
    Правда (не знаю как в новых версиях) в нашей плохо работал "клавиатурный почерк" и распознавание речи
    Два раза ловили инсайдеров конкурентов, раз сотрудницу, сливающую данные в налоговую.
    Раз помог найти украденный ноутбук
    Сколько раз наказывали за безделье на работе - не счесть (соцсети, ютуб)
    4 года назад в компании сменился владелец.
    Приказал убрать стахановца, поменял мелкое руководство, изменил отношения в коллективе.
    Запретил штрафы - если сотрудник сделал текущую на сегодня работу - пусть делает что хочет.
    Мы вспомнили что такое "премия" за хорошую работу.
    Раз собрал сотрудников и сообщил кто конкретно в коллективе на нас "стучит" и предложил вне конфликты разбирать публично
    Вот не поверите, но на работу ходим с удовольствием
    Ответ написан
    1 комментарий
  • Правильно ли я разделил сеть на подсети?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Маска подсети занимает 16 бит, но в третьем октете есть бит, который не попадает под неё. Что мне делать с этим битом?

    Задание - конечно, бредовое. 201.111.32.0/16 - это адрес хоста, а не сети, потому что адрес имеет единичные биты в области нулевых битов маски:
    Host 11001001 01101111 00100000 00000000
    Mask 11111111 11111111 00000000 00000000

    Но к тому, что преподаватели сами безграмотны, мы уже привычные... посему попробуем интерпретировать задание так: выделение производить в подсети, в которой находится узел 201.111.32.0/16 (это подсеть 201.111.0.0/16), выделяемые подсети должны располагаться не ранее указанного адреса узла, и допускать количество хостов не менее заданного.

    Начать надо с определения минимальной маски конечной подсети.
    Хостов Маска
     170     /24
     590     /22
    1500     /21
     800     /22
     254     /24

    Далее, чтобы заполнять диапазон оптимальным образом, надо выделять подсети так, чтобы они занимали наиболее широкую возможную подсеть полностью либо по максимуму. Т.е. берём заданную границу host 201.111.32.0 mask /16 и начинаем "откусывать" требуемые подсети. С целью минимизации расхода адресного пространства мы на каждом шагу распределяем самую "широкую" из подсетей, которая укладывается в текущее место.

    Сначала определяем максимальную маску для данного узла. Это будет маска /19:
    Host 11001001 01101111 00100000 00000000
    Mask 11111111 11111111 11100000 00000000

    Значит, с данного адреса мы можем сразу распределить подсеть 3. Она будет иметь адрес 201.111.32.0/21 и занимать диапазон адресов 201.111.32.0 - 201.111.39.255, последний адрес является бродкастом.

    Теперь мы распределяем оставшиеся подсети с первого свободного после уже выделенной подсети адреса 201.111.40.0. Максимальная маска для этого узла - /21. Соответственно распределяем здесь самую крупную из оставшихся подсетей. Это подсеть 2. Она будет иметь адрес 201.111.40.0/22, займёт диапазон адресов 201.111.40.0-201.111.43.255.

    Далее мы распределяем оставшиеся подсети с первого свободного после уже выделенной подсети адреса 201.111.44.0. Максимальная маска для этого узла - /22. Соответственно распределяем здесь самую крупную из оставшихся подсетей. Это подсеть 4. Она будет иметь адрес 201.111.44.0/22, займёт диапазон адресов 201.111.44.0-201.111.47.255.

    Далее мы распределяем оставшиеся подсети с первого свободного после уже выделенной подсети адреса 201.111.48.0. Максимальная маска для этого узла - /20. Соответственно распределяем здесь самую крупную из оставшихся подсетей. Это подсеть 1. Она будет иметь адрес 201.111.48.0/24, займёт диапазон адресов 201.111.48.0-201.111.48.255.

    Далее мы распределяем оставшиеся подсети с первого свободного после уже выделенной подсети адреса 201.111.49.0. Максимальная маска для этого узла - /24. Соответственно распределяем здесь самую крупную из оставшихся подсетей. Это единственная оставшаяся подсеть 5. Она будет иметь адрес 201.111.49.0/24, займёт диапазон адресов 201.111.49.0-201.111.49.255.
    Ответ написан
    2 комментария
  • Что лучше использовать proxy+VPN или двойной VPN в данном случае?

    @Drno
    Подключаете свой ВПН с переадресацией ВСЕГО трафика туда, включая DNS запросы, после подключаете рабочий

    людям которые уехали из страны я делал вот так, пока жалоб не было
    Ответ написан
    Комментировать
  • Как игровые движки понимают инородные языки?

    Vindicar
    @Vindicar
    RTFM!
    1. Встраивают интерпретатор нужного языка, при необходимости урезают стандартную библиотеку (чтобы не давать коду плагинов лишних возможностей) и подсовывают туда средства общения с хост-программой.
    2. Если нет нужды изолировать плагин от остальной программы, то полагаю что да, накладные расходы на поддержку плагинов уменьшатся в случае, когда плагин написан на том же языке, что и программа. В противном случае организация "песочницы" может занять столько же усилий, сколько встраивание интерпретатора.
    3. Лучше, если язык плагина является или интерпретируемым (как Lua или JS), или компилируется в байткод (как Python/Java/C#). Также желательно, чтобы язык плагина имел средства интроспекции.
    Ответ написан
    Комментировать
  • Можно смотреть фильм на ноутбуке без ОС?

    SagePtr
    @SagePtr
    Еда - это святое
    Да, LiveUSB любого линукса или WinPE
    Ответ написан
    Комментировать
  • IP для VLAN - почему два?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Вот какая связь между VLAN и адресом внутреннего интерфейса коммутатора? Никакой, от слова вообще. Данный адрес - именно адрес внутреннего интерфейса коммутатора. Запись просто утверждает, что внутренний интерфейс коммутатора доступен по указанному адресу в указанном VLAN. Т.е. если, находясь в данном VLAN, узел обратится по данному адресу - то он будет обращаться к коммутатору. Ну захотелось человеку, который настраивал сетку, присвоить коммутаторам адреса из разных подсетей, но в одном VLAN - имеет право. Неясно, правда, какой с того профит, но проблем с этого уж точно никаких. У меня в сети, например, для коммутаторов выделены аж три разные подсети в трёх разных management VLAN, различающихся по назначению, и некоторые из коммутаторов имеют адреса в двух, а магистральные даже во всех трёх, VLAN.

    Я понимаю, если бы что-то бы интерферировало - скажем, один и тот же адрес, или один адрес был бродкастом подсети второго адреса. Тогда бы был предмет для беспокойства.

    Если с такой настройки корячит - ну перенастрой.
    Ответ написан
    2 комментария
  • Почему программа загружается в разных областях памяти?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Почему программа каждый раз занимает различные области памяти?

    Потому что современные ОС делают это намеренно, чтобы затруднить эксплуатацию уязвимостей в ПО. Это называется ASLR: address space layout randomization. Обычно есть способ отключить ASLR глобально либо для отлаживаемых программ, чтобы добиться воспроизводимости результатов.
    Так, например, в linux это делается глобально с помощью файла /proc/sys/kernel/randomize_va_space либо командой setarch -R для одного конкретного процесса. Отладчик gdb по умолчанию отключает ASLR для отлаживаемых программ.
    Ответ написан
    3 комментария
  • Допускается ли в коде смешивать парадигмы программирования?

    mayton2019
    @mayton2019
    Bigdata Engineer
    - ООП
    - Функциональное
    - Процедурное
    - Структурное

    Это во первых - устаревшие понятия. Все из 20-го века. Сегодня они почти не актуальны.

    Во вторых это вам сейчас совершенно не нужно. Изучайте алгоритмы и структуры данных. Под структурами я подразумеваю хеш-таблицы, деревья поиска, списки, графы и т.п.

    В современном программировании практикуется конвенция которая принята в команде. Вот придете на проект и вам покажут как пишушт все. И будете так писать. Никто не будет упарываться по поводу трушности ООП или еще чего-то. А в техническом задании от бизнеса вообще ничего не будет на тему стиля кодирования. Там будут описаны просто требования по бизнес-кейсам.
    Ответ написан
    8 комментариев
  • Что находится по этому адресу в памяти?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Почему дефолтные значения выглядят так (первые два скришота)

    Потому что это адреса. 8 байт адреса, на втором скрине первый -- 0x12df11a80, второй -- 0x12df11a60
    Ответ написан
    2 комментария