
저는 Linux 시스템에서 복사 붙여넣기 기능을 사용해 왔습니다. 처음으로 커널 소스를 다운로드했습니다. 복사 붙여넣기 기능과 관련된 코드는 어디서 찾을 수 있나요?
내 생각 엔 Linux의 커널 부분에 속하지 않는 것 같습니다. 제가 옳다면 어디서 찾을 수 있나요?
답변1
당신 말이 맞습니다. Linux 커널의 일부가 아닙니다. 커널은 그런 작업에 대해 책임을 지지 않습니다. 시스템에 따라 다릅니다. 콘솔에서는 tty 드라이버가 될 수 있습니다. 대부분의 그래픽 환경에서는 Xorg를 기반으로 하고 Xorg 선택 버퍼와 클립보드를 사용한다고 생각합니다. 하지만 Wayland를 사용하고 있을 수도 있습니다. 직접 프레임 버퍼 드라이버나 다른 그래픽 엔진이 있고 코드는 다른 곳에 있을 수 있습니다. Xorg의 경우에도 Xorg는 키 입력 및 기타 이벤트를 작업에 바인딩하는 책임을 지지 않습니다. 이는 많은 일이 될 수 있는 데스크탑 환경이나 창 관리자에 영향을 미칠 것입니다.
귀하의 환경에 대한 더 많은 세부 정보 없이는 귀하를 가리킬 수 있는 단일 장소가 없습니다. 그동안 Linux 시스템의 전체 아키텍처와 어떤 시스템이 어떤 종류의 작업을 담당하는지에 대해 더 자세히 읽어야 할 것 같습니다. 귀하의 질문에 대한 최종 답변은 거의 확실하게 하나 이상의 레이어에 걸쳐 발견될 것이며 이를 이해하려면 이러한 답변이 어떻게 결합되는지 알아야 합니다.
답변2
텍스트 모드 콘솔에서 복사하여 붙여넣으려면 drivers/tty/vt/selection.c
커널 소스 트리( drivers/char/selection.c
이전 커널)에서 파일을 찾으세요. 가상 터미널에서 cut&paste의 사용자 영역 부분은 gpm
"범용 마우스 인터페이스"입니다.
GUI의 복사-붙여넣기는 커널이 아니라 커널에 의해 처리됩니다.엑스.
답변3
복사 붙여넣기는 데스크탑 환경(X11, GNOME 등)의 일부입니다. 콘솔에서 복사 붙여넣기는 gpm
콘솔 모드에 있을 때 마우스 기능을 제공하는 서비스에 의해 수행될 수 있습니다.