После обновления до fios и маршрутизатора G3100 беспроводной принтер больше не подключается

Поведение форка ()зависит от того, есть ли в *nix-системе MMU или нет. В системе без -MMU (, такой как ранний PDP -11s ), системный вызов fork ()копировал всю родительскую память для каждого потомка. В nix-системе *на основе MMU -ядро ​​помечает все не-страницы стека как R/O и разделяет их между родителем и дочерним элементом. Затем, когда какой-либо процесс записывает на какую-либо страницу, MMU перехватывает эту попытку, затем ядро ​​выделяет доступную для записи страницу и обновляет таблицы страниц -MMU, чтобы они указывали на доступную для записи страницу. Такое поведение копирования -на -записи обеспечивает -увеличение скорости, поскольку первоначально для каждого дочернего процесса необходимо выделить и клонировать только частный стек.

Если вы выполняете некоторый родительский код между каждым вызовом fork (), то результирующие дочерние процессы будут отличаться страницами, которые были изменены родителем. С другой стороны, если родитель просто выдает несколько вызовов fork (), например. в цикле, то дочерние процессы будут практически идентичными. Если используется локальная переменная цикла, то она будет отличаться в каждом дочернем стеке.

-1
15.08.2020, 09:40
1 ответ

Наконец-то я нагуглил ответ на проблему, которая действительно работает и очень проста...

При запуске linux -brprinter -установщика -... инструмента установки принтера он запрашивает DeviceURI, который я всегда просто указывал (вариант #10 )как

DeviceURI lpd://BRWEC5C68323304/BINARY_P1

, что является типичным значением по умолчанию для cups при добавлении принтера напрямую через cups на локальном хосте :631. И это всегда работало для нескольких разных принтеров Brother с Wi-Fi и нескольких разных маршрутизаторов. Вот только с G3100 я столкнулся с описанной выше проблемой.

Какой-то анонимный постер, который я наконец нашел в гугле, предложил, чтобы когда установщик запрашивает DeviceURI, вместо этого указывать (выбор #11 )IP-адрес:

DeviceURI socket://192.168.1.47

(используя ваш собственный IP-адрес, конечно же ). И это сразу сработало.

Почему он теперь работает с socket://и больше не работает с lpd://, мне неведомо (и не объясняется постером )из Google. Не то, чтобы это действительно имело значение, просто любопытно, :у кого-нибудь есть идеи по этому поводу???

0
18.03.2021, 23:12

Теги

Похожие вопросы