MonoDevelop Google GData сборка не найдена

Как можно обновить Linux, пока он все еще используется?

В основном потому, что Linux (и с ним, большинство дистрибутивов) просто спроектирован именно так.

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

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

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

Как Linux может обновить себя, пока он все еще используется?

Some пакетов в дистрибутиве Linux будут содержать инструкции по установке, инструктирующие диспетчер пакетов останавливать определенные системные службы при обновлении пакета и повторно запускать эти службы после завершения обновления. Это предотвращает ситуации, когда, например, файлы конфигурации для конкретной службы обновляются, а работающая версия службы может не справиться с более новой версией файлов конфигурации.

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

1
задан 15 October 2011 в 22:28

1 ответ

Хорошо, я нашел проблему, libgdata1.7-cil предназначен для работы приложений без сборки, полезной для разработки.

Чтобы создать приложение, использующее API Google для C #, вам необходимо загрузить libgdata-cil-dev, который вы можете найти с помощью синаптики.

1
ответ дан 25 May 2018 в 18:12

Другие вопросы по тегам:

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