Social interaction software emulation module on

Достижения

Все достижения (9)

Наибольший вклад в теги

Все теги (143)

Лучшие ответы пользователя

Все ответы (281)
  • Как в GRUB указать, что грузить ядро нужно с вебсервера?

    vesper-bot
    @vesper-bot
    Любитель файрволлов
    А как GRUB достанет данные с веб-сервера, когда у него нет ещё сетевой карты, настроек DNS и обработчика HTTPS handshake? TFTP-сервер ещё вариант, в этом случае вам потребуется отдавать образ, который будет тянуть ядро и образ файловой системы с него, читать про реализацию PXE (она, кстати, нативная на сетевой карте, так что это немного не GRUB). А вообще GRUB как таковой не умеет работать с не-локальными источниками данных. То есть никак.
    Ответ написан
  • Откуда у Google столько памяти?

    vesper-bot
    @vesper-bot
    Любитель файрволлов
    Вкратце - построили. У них с сотню датацентров по всему миру, включая кэширующие прокси ютуб-роликов. Внутри почти обычные железки с тоннами жестких дисков и SSD. Их просто много.
    Ответ написан
  • Как правильно создавать архитектуру?

    vesper-bot
    @vesper-bot
    Любитель файрволлов
    Вообще, нужно взять бумажку и задать на высшем уровне абстракции все возможные в текущем представлении сущности. Если разговор о "змейке" - задаете вопрос, что у вас в игре есть как сущности. Скажем, есть змея, есть стены, есть жрачка, их пишете как сущности. Затеяли добавить "муху" - пишете тоже. Затем пишете, кто что умеет делать: змея умеет ползать, стукаться в стены или жрачку, расти и возможно что-нибудь ещё, стены просто стоят, жрачка умеет появляться, съедаться. И так далее, пока всю игру в примитивах не опишете. Дальше - каждая сущность это класс, каждое отношение это метод, каждый параметр, выясненный в процессе, это свойство класса. Но чем дальше в лес, тем больше грабли. На уровнях выше начинаются модули со своей инкапсуляцией, события, гонки всякие, а-ля "кто съел яблоко, вы или противник", асинхронное взаимодействие, подписки на что-либо, и так далее, интерфейсы становятся сложнее, какие-то объекты передаются как параметры и всё такое, но общий принцип остается - сначала большими кусками всё делится на куски поменьше, определяются интерфейсы (кто что может спросить или повлиять на кого), пытается реализовываться, потом, вполне возможно, находятся противоречия, которые приходится устранять рефакторингом, и по спирали.

    Что поизучать - сначала просто базовое ООП, чтобы понять, из чего вообще строить программу, что такое объект, класс, интерфейс, наследование, полиморфизм (та же жрачка может быть нескольких видов, например, но "съедается" она одинаковым образом), инкапсуляция (а-ля "не лезь в мои свойства своими лапами"). Все эти SOLID и прочие аббревиатуры, а также паттерны и антипаттерны, появятся в процессе, когда от архитектуры перейдете к дизайну самих сущностей и написанию кода методов. По-моему так.
    Ответ написан
  • Как получить доступ к локальному серверу из внутренней сети по внешнему ip-адресу через Cisco?

    vesper-bot
    @vesper-bot
    Любитель файрволлов
    Лучше настройте split DNS (или inspect dns, если устройство умеет, чтобы выполнялась перезапись имени на локальный адрес по пробросу). Тогда одно имя будет ресолвиться во внешний адрес снаружи и сразу во внутренний внутри.
    Ответ написан
  • Как узнать что запрашивает права суперпользователя?

    vesper-bot
    @vesper-bot
    Любитель файрволлов
    tail /var/log/audit/audit.log - в том файле собираются все запросы подъема прав (и ещё куча всего, советую помониторить), получить PID этого шелла, потом ps -ef найти по цепочке кто запустил. Это правда из-под рута, и выполнять проверку нужно с висящим окном запроса рутовых привилегий.
    Ответ написан

Лучшие вопросы пользователя

Все вопросы (30)