Ubuntu(일반적으로 Linux)에서 마우스 클릭으로 파일을 호출하는 과정은 무엇입니까?

Ubuntu(일반적으로 Linux)에서 마우스 클릭으로 파일을 호출하는 과정은 무엇입니까?

우선 초보적인 질문에 대해 사과드립니다. 예를 들어, "파일" 아이콘을 클릭한 다음 파일을 클릭한 후에도 내 시스템(Ubuntu 21.10)에서 무슨 일이 일어나고 있는지 여전히 알 수 없습니다. 마우스를 클릭하여 gedit 등과 관련된 파일을 호출하거나 디렉토리나 프로그램을 호출하는 과정은 실제로 무엇으로 구성됩니까? 비슷한 곳에 적혀있나요 /proc/bus/input/devices Ev = ...? 키보드는 어떻게 되나요?

답변1

무엇을 질문하시는지 모르겠지만 대략적으로는 다음과 같습니다.

  • 커널 드라이버는 마우스 및 키보드의 하드웨어 이벤트에 반응합니다.
  • 각 커널 계층은 마우스 클릭을 변환하여 마우스 이벤트로 커널 입력 계층에 넣습니다. /dev/input/eventX를 사용하여 이를 읽을 수 있습니다 evtest.
  • X 드라이버(X는 윈도우 시스템)는 이를 X 이벤트로 변환합니다. xev예를 들어 다음 을 사용하여 볼 수 있습니다 .
  • X 서버는 이벤트를 수신해야 하는 창을 결정합니다.
  • "아이콘 클릭"의 경우 수신자는 창 관리자(WM)입니다.
  • "파일 클릭"의 경우 수신자는 파일을 표시하는 응용 프로그램입니다(Ubuntu에 있는 파일에 관계없이 많은 옵션이 있습니다).
  • 애플리케이션은 이벤트 처리 방법을 결정합니다(컨트롤러가 있는 창 팝업, 시스템 호출을 사용하여 프로그램 실행 등).
  • /proc/bus/input/devices이 과정에서 역할을 하지 않습니다.

Linux에 대해 배우고 싶다면 먼저 명령줄을 배우는 것이 좋습니다. 사용자 인터페이스는 선택 사항입니다.

관련 정보