• Можно ли на чистом си(без вставок ассемблера) написать ос?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Вот люди пишут "можно", но никто из них не уточняет при этом, что такое "чистый С".
    Если "чистый С" -- это только то, что предоставляет сам язык, скажем, стандарта C99 или C11, то у вас возникнут проблемы в следующих областях:
    - управление прерываниями: обычно выполняется через специальные регистры или специальными ассемблерными командами.
    - обработчики прерываний: в зависимости от архитектуры вам нужны будут функции со специальными прологами и эпилогами, сохраняющими и восстанавливающими все регистры и, возможно, возвращающиеся особым образом.
    - управление MMU: обычно выполняется через специальные регистры или специальными ассемблерными командами.
    - управление кешем: обычно выполняется через специальные регистры или специальными ассемблерными командами.
    - порождение процессов и переключение контекстов: теоретически можно сделать с помощью setjmp/longjmp, но вам придётся разобраться со структурой jmpbuf для вашей архитектуры, поскольку для новых процессов её нужно будет заполнить вручную.
    Ответ написан
    2 комментария
  • Архиватор отказывается распаковывать файл формата ZIP. Как быть?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    Установите www.7-zip.org и пользуйтесь им для открытия архивов.
    Ответ написан
    Комментировать
  • С чем связанная данная проблема "менеджера пакетов"?

    martin74ua
    @martin74ua Куратор тега Linux
    Linux administrator
    Ну по русски же написано.....
    Ответ написан
    7 комментариев
  • Как через коммутаторы получить соединение между Linux серверами 2 Гбит\с?

    @dredd_krd
    Если нужно по результирующему линку гонять соединения только между 2-мя серверами, то поможет режим balance-rr (bond_xmit_hash_policy его умеет) - он делит трафик не по адресам/макам/итп, а последовательно каждый следующий пакет отправляет то туда, то сюда.

    Фундаментальный вопрос: какой стандарт портов в сетевых картах и коммутаторах? 1000Base-T или 1000Base-TX?
    Дело в том, что стандарт ТX даёт гигабит в каждом направлении по одному линку, когда T подразумевает гигабит в сумме входящего/исходящего направлений. Сетевухи могут быть TX, но коммутаторов, поддерживающих TX, я видел лишь единицы, и стоили они дорого.
    Так вот прикол в том, что стандарт Т - это узкое место, и если коммутаторы не поддерживают TX (а по тестам я предполагаю, что это так), то одновременно 2 гигабита туда и 2 гигабита обратно не будет никогда.

    Так вот, ответы:
    1. Возможно, нет, надо сначала посмотреть на тип портов и убедиться в том, что "затык" может быть именно в этом
    2. Полностью. Как правило, если соединений много, то layer2+3, layer3+4 и т.п. - они работают замечательно и стараются сбалансировать трафик максимально ровно, однако при одном компьютере (и особенно на одном соединении, которое генерирует iperf!) смысла в них крайне мало, поэтому такой тип трафика нормально балансировать будет только round-robin.

    UPD:
    Посмотрел, в этой модели порты "IEEE 802.3ab 1000BASE-T Gigabit Ethernet", т.е. по каждому гигабит будет в сумме направлений. В таком случае о полных 2-х гигабитах рекомендую временно забыть и проверять iperf-ом трафик не одновременно, а сначала в одну, потом в другую сторону, и следить при этом за равномерностью загрузки линков (с точки зрения коммутатора), включив со сторон серверов round-robin. Если трафик по обоим каналам будет идти равномерно, значит проблема только в типе порта. Значит надо искать коммутатор с поддержкой 1000BASE-TX
    Ответ написан
    8 комментариев
  • Как сделать проброс портов в Windows 7?

    m_klyushkov
    @m_klyushkov
    Инженер
    Свойства подключения — настройка общего доступа. Далее разберетесь.
    image
    Ответ написан
    2 комментария
  • LaTeX и электрические схемы (ГОСТ, желательно)

    @Eddy_Em
    Средствами латеха чертить принципиальные схемы не очень-то удобно. А если схема содержит больше 3..5 элементов, то это вообще превращается в ад.
    По-моему, проще нарисовать схему в kicad, оттуда экспортировать в PS и вставить в документ.
    Ответ написан
    2 комментария