본문 바로가기

d-bus4

번외. 주요 D-Bus 프로토콜 스펙들 위 이미지는 리눅스 그놈 데스크탑에서 파이어폭스 브라우저로 유투브를 재생하는 모습이다. 그런데 한 가지 신기한게 있다. 상단 드롭다운 메뉴에 현재 재생하는 영상을 정지하거나 다음/이전 영상 재생을 할 수 있는 컨트롤 패널이 생겼다. 그놈 데스크탑과 파이어폭스는 완전히 다른 두 앱이지만, 서로간의 커넥션이 이뤄진 것이다. 파이어폭스만 그럴까? vlc, totem, lollypop 등 리눅스에서 사용 가능한 대부분의 미디어 플레이어로 영상을 재생하면, 그놈 데스크탑에는 파이어폭스와 동일한 컨프롤 패널이 생성된다. 그놈 데스크탑이 그 많은 미디어 플레이어들과 협업을 해서, 커넥션을 형성한 것일까? 그렇다면 누군가 새로운 미디어 플레이어를 개발한다면, 그놈 데스크탑은 커넥션을 형성하기 위해 새로운 작업을 해야 .. 2021. 4. 13.
2. D-Bus 사용방법 www.kernelpanic.kr/category/%EC%98%A4%ED%94%88%EC%86%8C%EC%8A%A4%20%EC%9D%BD%EA%B8%B0/%EB%AA%A8%EB%8D%98%20IPC%20%EC%8B%9C%EC%8A%A4%ED%85%9C%20-%20D-Bus '오픈소스 읽기/모던 IPC 시스템 - D-Bus' 카테고리의 글 목록 www.kernelpanic.kr 2.1 D-Bus 라이브러리들 어플리케이션 입장에서는 D-Bus는 사용 규약만 지킨다면, 언어 / 라이브러리와 무관하게 동일한 동작을 수행한다. 따라서 D-Bus는 다양한 언어로 구현이 되어 있으며, 동일한 언어에서도 다양한 라이브러리들이 있다. 대표적으로 D-Bus를 사용하기 위한 라이브러리들은 다음과 같다. 라이브러리 지원 언어.. 2021. 4. 11.
1. D-Bus 기초 www.kernelpanic.kr/category/%EC%98%A4%ED%94%88%EC%86%8C%EC%8A%A4%20%EC%9D%BD%EA%B8%B0/%EB%AA%A8%EB%8D%98%20IPC%20%EC%8B%9C%EC%8A%A4%ED%85%9C%20-%20D-Bus '오픈소스 읽기/모던 IPC 시스템 - D-Bus' 카테고리의 글 목록 www.kernelpanic.kr 1.1 D-Bus란? 컴퓨터 세상에는 다양한 개발자들이 개발한 수 많은 앱들이 있다. 안드로이드를 예로 들어보자. 우리는 유투브로 마음에 드는 영상을 "공유" 버튼을 클릭해서 카카오톡으로 친구에게 공유한다. 친구가 공유받은 영상을 보던 중에 스카이프 영상통화가 오면, 영상통화를 하는 중에 유투브는 자동으로 정지된다. 유투브와 카카오.. 2021. 3. 27.
0. 전통적인 리눅스/Unix IPC 방법들 D-Bus는 리눅스 상에서 프로세스간 통신(IPC)를 지원하는 메시지 버스 서비스이다. D-Bus를 통해서 리눅스 어플리케이션은 다른 어플리케이션들에 Broadcast를 날릴 수 있고, 또한 상대방의 PID를 알지 못하더라도 1:1 통신을 할 수 있다. 또한 D-Bus 통신은 통일성 있게 규격화된 xml 형태로 이뤄진다. 이러한 특징들을 통해서 D-Bus는 전통적인 리눅스 IPC의 한계를 극복하고, 어플리케이션 수준에서 가장 많이 사용되는 IPC 통신 방법이 되었다. D-Bus에 대해 본격적으로 살펴보기 앞서, 이번 포스트에서는 리눅스에서 전통적으로 사용되던 IPC들의 특징 및 장단점을 간단히 살펴보고, 전통적인 IPC 방법들이 공통적으로 가지고 있는 문제점에 대해서 살펴보도록 하겠다. 0.1 Unix/.. 2021. 3. 22.