Буфер обмена системы Linux представлен в файловой системе где-то как устройство? - PullRequest
4 голосов
/ 15 июня 2009

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

Ответы [ 3 ]

7 голосов
/ 15 июня 2009

AFAIK №.

Но вы можете использовать xclip , если хотите получить доступ из буфера обмена X11 из командной строки

2 голосов
/ 15 июня 2009

Нет ..

Операционная система не предназначена для семантики GUI / уровня приложений она обеспечивает только грубую абстракцию для представления согласованной, красивой системы для приложений пользовательского пространства. Если вы хотите сделать что-то подобное, я бы посоветовал вам написать системный демон , который приложения могут использовать в качестве хранилища копий и доступа через системный IPC, такой как DBus.

Стандарты в стандартах freedesktop.org могут определять стандарты взаимодействия графического интерфейса и рекомендовать, чтобы они общались через что-то вроде DBus.

Вместо системы пространства ядра вам может потребоваться управлять семантикой копирования и вставки над службами ОС, такими как IPC, и сохранять политику на уровне пользователя, но с помощью механики операционной системы.

Хотя представление драйвера устройства в некотором роде имеет смысл, ИМХО оно относится к пользовательскому пространству как некая мини-база данных с исходными / целевыми данными и метаданными, относящимися к кодированию и т. Д. ... ни одна из которых не является строго ядро ​​касается.

Пожалуйста, не пишите драйвер устройства для копирования / вставки:)

редактировать смягчить жирным шрифтом ..

1 голос
/ 15 июня 2009

Не существует «буфера обмена» на уровне ядра - это концепция, относящаяся к более высоким уровням, таким как, например, X11. Конечно, ничто не мешает вам написать драйвер устройства, файловую систему пространства пользователя или что-то еще, чтобы сделать это видимым в этих терминах!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...