Задать вопрос
  • Какой самый простой компилятор C/C++?

    GavriKos
    @GavriKos
    Любой компилятор под это подойдет.
    Ответ написан
    4 комментария
  • Как правильно интерпретировать IOPS?

    Jump
    @Jump
    Системный администратор со стажем.
    Да, это операции чтения-записи в секунду, но какой смысл в этом значении?
    В возможностях оборудования.

    Ведь писать на диск можно разными блоками, соответственно и производительность будет разная.
    Разумеется.

    Дело в том, что у диска много разных параметров, в том числе и производительность.

    И не всегда производительность является самым важным параметром.
    Вот например вы хотите пить, и вы можете -
    Попросить соседа принести воды с речки. Он сбегает и принесет литр воды через десять минут. Производительность у соседа очень низкая - 6литров в час.
    Так же вы можете позвонить в транспортную компанию, там производительность получше - 70литров в час.
    В общем они вам привезут 5000литров через три дня.

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

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

    С тем же успехом можно спросить - какой толк нам знать производительность диска.
    Ведь при разных размерах блока количество IOPS будет разным.
    И какой тогда смысл в этой производительности?

    Мне с жесткого диска надо прочитать тысячу имен. И хотелось бы сделать это за секунду.
    Одно имя к примеру 50байт
    Соответственно мне нужно прочитать 50килобайт за секунду.
    Может диск прочитать 50килобайт за секунду? Конечно может, он может сто миллионов байт прочитать за секунду.
    Справится ли диск с моей задачей? Разумеется нет.
    Ну не может он тысячу IO сделать за секунду.

    Зная IO диска и еще некоторые параметры я могу подсчитать насколько быстро моя программа получит нужную информацию.
    И соответственно могу спрогнозировать сколько пользователю придется ждать результата - секунду или пару лет.
    Ответ написан
    Комментировать
  • Почему C/C++ проекты очень долго компилируются?

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

    Архаичная система заголовочных файлов же приводит к тому, что при изменении небольшой части проекта, фактически меняется куча файлов, которые все надо заново парсить и оптимизировать.
    Ответ написан
    4 комментария
  • Как оценить стоимость домена?

    SagePtr
    @SagePtr
    Еда - это святое
    Целиком зависит от того, как именно вы этот домен собираетесь в дальнейшем использовать. Просто купить его недостаточно, доходы приносить сам по себе домен не будет.
    Ответ написан
    Комментировать
  • Как связать динамическую библиотеку с кодом cpp?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    Пока похоже ошибка не с библиотекой. Вы неправильно используете объявленные в хедере функции. Судя по сообщениям об ошибке, конструктор класса Selenium помимо строки получает еще и bool.
    Ответ написан
  • Лишняя инструкция в дизассемблированном коде ассемблера?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Просто компиляция без оптимизации.
    Ответ написан
    1 комментарий
  • Что такое Потоки на уровне ОС? В 1-ядерном процессоре же всего 1 поток?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Потоки переключаются с квантом около 28 миллисекунд или около того.

    Да, если навертеть много потоков, кэш будет вымываться. А вы думали, в сказку попали? Хорошие HPC программы не запускают тредов больше чем ядер.

    Почему с помощью распарализации потоков можно получить выигрыш в скорости вычислений?

    Потому что надо аккуратно программировать, не допускать переключения контекстов (не дергать ядро почем зря, а то с некоторых станется) и не запускать тредов больше, чем в системе есть ядер.

    Тогда почему вообще вся ОС не асинхронная в одном потоке как Node JS?

    Поздравляю вас с изобретением Windows 3.1. Вы наверное не застали, но эта ОС наглухо зависала вместе с приложением, если оно зависало.
    Ответ написан
    9 комментариев
  • Как можно получить данные о быстродействии кеш CPU?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Это все работало и предсказывалось где-то до 386 процессора. У более современных машин с суперскалярной архитектурой и программно управляемым транслятором команд, это выливается в большое количество вариантов, буквально зависит от версии микрокода (который загружается в CPU динамически)
    Ответ написан
  • Зачем нужны криптошлюзы?

    anthtml
    @anthtml
    Системный администратор программист радиолюбитель
    Потому что есть требования кучи стандартов информационной безопасности которым должны соответствовать каналы связи и у шлюзов безопасности такие сертификаты имеются. А в государстве все должно быть своим, чтобы враги не влезли, а друзья оставались в тепле, отсюда и гослинукс и прочие поделки.
    Тожесамое с требованиями по сертификации пограничного и общественного оборудования - wifi от mikrotik гораздо дешевле и современнее чем cisco - но в школе не поставишь - нет сертификата, e1/sip-шлюз от yealink тоже неплохо работает, но провайдер требует сертифицированную cisco
    Ответ написан
    2 комментария
  • Не работает json_decode?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега PHP
    1. Это не валидный JSON.
      5fc605978618a757356440.png

    2. json_decode вторым аргументом принимает флаг формата и по-умолчанию возвращает объект, а вы работаете с ним, как с массивом.
    Ответ написан
    5 комментариев
  • Насколько быстрой должна быть шина, чтобы не стать узким местом системы?

    alfss
    @alfss
    https://career.habr.com/alfss
    Она должна отсутвовать или lattency должно равнятся 0
    Ответ написан
    1 комментарий
  • Купить лицензиию win 10 pro?

    NeiroNx
    @NeiroNx
    Программист
    Вообще то нужен не ключ, а документы бухгалтерские - счет-фактура и накладная. Без них у вас не получится доказать легальность лицензии. Ключи никто не будет проверять - сверят число и тип лицензий приобретенных с числом и типом установленных на компьютеры.
    Ответ написан
    Комментировать
  • Существует ли документ, рекомендующий замену оборудования после 3/5 лет использования?

    pindschik
    @pindschik
    ФЫВА ОЛДЖ
    Не в ту сторону копаете. И не от той стены.
    Руководство, оно прежде всего считает прибыль. То, что техника старая - само по себе не важно. На заводах, вон, могут использовать оборудование, которое еще помнит времена Менделеева, и ничего - задачи свои выполняет? Выполняет!
    Собирайте настоящие объективные доказательства, как например:
    1) Отсутствие запчастей после прекращения поддержки производителей.
    2) Возрастание риска отказов и простоев.
    3) Экономия электроэнергии и серверного пространства, для тех же мощностей.
    4) Возможность роста и расширения, доп. клиенты.
    Ну и т.п. ближе к Вашим реалиям.
    Доказывать разумеется надо с цифрами "в руках".
    Ответ написан
    1 комментарий
  • Как "соединить" NASM и C#?

    Griboks
    @Griboks Куратор тега C#
    Вы пишите C# рантайм и другие низкие вещи на ассемблере, а затем всё остальное пишете на шарпе.
    Ответ написан
    Комментировать
  • Многопоточность в Си в ассемблерном исполнении - возможно?

    15432
    @15432
    Системный программист ^_^
    В Си многопоточность.обычно реализована в библиотеке pthreads.h
    Многопоточность реализуется операционной системой. pthreads - просто библиотека, чтобы операционной системе сказать, мол, вот тебе отдельный поток для запуска

    причём Си можно отлаживать как код на ассемблере
    Ну да, Си всегда сначала компилируется в ассемблер, любым дизассемблером готовую программу можно разобрать на кусочки.

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

    Как тогда реализована многопоточность в Си
    В Си - просто интерфейс управления многопоточностью. Сама многопоточность - в операционной системе.

    раз есть эквивалентный код на ассемблере например, в gnu debugger
    Как в Си, так и в ассемблере вы просто увидите "вызвать pthread_create", и всё
    Ответ написан
    6 комментариев
  • Для чего нужен адрес шлюза?

    @Karpion
    Чтобы послать пакет наружу - его надо пробросить роутеру.
    Если сеть построена на свичах - то надо запихнуть IP-пакет в Ethernet-кадр, где в качестве destignstion будет указан MAC-адрес шлюза_по_умолчанию (или иного шлюза, бывают разные конфигурации).
    Если сеть построена на хабах или на коаксиале - то тоже нужно. Но мне лень объяснять, ибо неактуально. Кому интересно - достаточно знать, что промискуитет на сетевой карте включают только только по особой надобности.

    Откуда наш компьютер может узнать MAC-адрес шлюза? Это можно узнать через протокол ARP; но для ARP-запроса надо знать IP-адрес запрашиваемого компьютера. Собственно, вот и ответ:
    Мы прописываем адрес шлюза для того, чтобы наш компьютер мог ARP-запросом узнать MAC-адрес шлюза.

    Кстати, есть альтернативный вариант настройки: компьютер знает свой IP-адрес, маска 0.0.0.0, а для всех внешних компьютеров прописывается ARP-соответствие. Такое решение годится для компьютера, который сам никогда не обращается наружу, а только получает обращения извне. И вообще, это извращение какое-то; хотя может работать.
    Ответ написан
    Комментировать
  • Как получить и обновлять сертификат let's encrypt для FTPS без домена?

    @Wexter
    Никак, сертификаты выдаются на домены, а не IP адреса
    Ответ написан
    7 комментариев
  • Как произходит механизм работы виртуальных методов я языках программирования и чем отличается от обычных методов?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Если простыми словами - то обычные методы лежат в памяти по заранее известному месту, и компилятор генерирует инструкцию "вызвать код по адресу XXX".
    Вызываемый код всегда один и тот же.

    с виртуальными - это зависит от класса, поэтому компилятор генерирует такие инструкции:
    "посмотреть что там за класс у obj, сходить в таблицу методов этого класса, найти там адрес для функции ToString, и вызвать код по этому адресу"

    для одного класса адрес будет XXX, и вызовется один код, для другого класса будет YYY и вызовется другой код.
    Ответ написан
    2 комментария
  • Какая из Windows самая быстрая?

    pavelsha
    @pavelsha
    Кот Жрëдингера. Только добрый.
    Windows 2000
    лагов не будет даже на древнем железе...
    А из актуального... Вернись на 7-ку...

    Системный диск - SSD? Может тут посмотреть?
    4Gb мало для W10. Добавляй еще. Или назад на 7-ку
    Ответ написан
    Комментировать