Как насчет выполнения vim
с командой для изменения буфера обмена и его повторного выхода? Таким образом, вы можете сопоставить его с ключом в среде рабочего стола, и вам не нужно ничего запускать вручную.
Все, что вам нужно, это выполнить привязку клавиш в вашей любимой среде рабочего стола:
vim -c 'normal "+ pggVGgJV" + yy' -c 'q!'
Есть проект LXR (перекрестная ссылка Linux) , где вы можете выбрать версию ядра и выполнить поиск по коду.
(Примечание: старый http://lxr.linux.no больше не работает должным образом, по крайней мере, для меня; поиск более новых версий ядра не работает.)
Поиск " floppy »(без кавычек) и пара попыток просмотра результатов grepping для« fd »(с кавычками) привели меня к реализации блочного устройства гибких дисков (здесь, в ядре 4.9):
http: // lxr. free-electrons.com/source/drivers/block/floppy.c#L4219
Теперь, будучи перекрестной ссылкой, вы можете следить за register_blkdev
в других местах его использования.
Более простой способ найти может быть что-то вроде / dev / null
или / dev / zero
. Для этого посмотрите $ {kernel_root} /drivers/char/mem.c
. Для 4.9.6 (и, вероятно, так было уже некоторое время) существует массив struct memdev
с именем devlist
, где каждая запись в массиве соответствует устройству памяти:
...
[3] = { "null", 0666, &null_fops, 0 },
...
[5] = { "zero", 0666, &zero_fops, 0 },
...
null_fops
и zero_fops
содержат структуры файловых операций для соответствующих устройств.