Raspberry Pi_Kor_14.2.2 USB 장치와 device

14.2.2 USB 장치와 device

14.2.2.1 USB 장치와 /dev/

USB 장치는 bus 유형의 장치이다. Raspberry Pi 시스템에서 해당 장치는 “/dev/bus/usb” 폴더에서 관리하고 있다. 해당 폴더에 있는 001 폴더 내부를 보면 다음과 같은 파일들이 있는 것을 알 수 있다. 파일 이름이 001 ~ 016 형태로 되어 있는데, 이들은 USB device의 장치 번호를 의미한다. 앞에서 lsusb 명령으로 조회한 USB 장치와 1 대 1로 대응하고 있음을 알 수 있다.

Raspberry Pi_Kor_14.2.1 “lsusb” 명령 – USB 장치 확인

14.2 USB 장치

14.2.1 “lsusb” 명령 – USB 장치 확인

Raspberry Pi 시스템에 설치된 USB 장치가 어떤 것이 있는지 확인하기 위해서 “lsusb” 명령을 사용할 수 있다.

[명령 형식]

Raspberry Pi_Kor_14.1.4 network device

14.1.4 network device

14.1.4.1 network device 특징

Linux에서 network device는 데이터 패킷을 보내고 받는 하나의 개체로 생각한다. network device는 대개 Ethernet card와 같은 물리적인 장치이다. 하지만, 어떤 network device는 소프트웨어로만 정의되어 있는 것도 있는데, 데이터를 자기 자신에게 보내는데 사용되는 loopback 장치 같은 것이 그것이다.

Raspberry Pi_Kor_14.1.3 block device

14.1.3.1 block device 특징

block device는 device에서 자료를 처리할 때 block 단위로 자료를 입출력하며, 중간에 buffer를 두어 처리성능을 높인다.

/dev 파일은 mknod 명령으로 만들어지며, 일단 만들어진 후에는 실제 device의 존재와는 무관하게 계속 유지된다. 따라서 실제로 존재하지 않는 device인 경우도 /dev 파일이 생성되어 있을 수 있다. Linux는 다른 프로그램에서 이러한 block device에 대해서 하나의 파일인 것처럼 표준 시스템 기능을 이용하여 open, read, write 처리를 할 수 있다.

Raspberry Pi_Kor_14.1.2 character device

14.1.2 character device

14.1.2.1 특징

character device는 Linux의 장치들 중에서 가장 단순한 것으로, device에서 자료를 입출력할 때 character 단위로 처리하며, 중간에 Buffer가 없다.

/dev 파일은 mknod 명령으로 만들어지며, 일단 만들어진 후에는 실제 device의 존재와는 무관하게 계속 유지된다. 따라서 실제로 존재하지 않는 device인 경우도 /dev 파일이 생성되어 있을 수 있다. Linux에서는 다른 프로그램이 이러한 block device에 대해서 하나의 파일인 것처럼 표준 시스템 기능을 이용하여 open, read, write 처리를 할 수 있다.

Raspberry Pi_Kor_14.1.1 device 종류와 /dev directory

14.1 device 개요

14.1.1 device 종류와 /dev directory

Linux에서 사용하는 device에는 키보드와 같은 character device, 디스크와 같은 block device와 Ethernet과 같은 network device가 있다.

character device와 block device는 한번 설치되면 “/dev” directory에 하나의 파일인 것처럼 등록되며, 일반 파일처럼 access하는 것을 지원한다. 반면 network device에 대해서는 시스템 kernel이 초기화하는 과정에서 검색된 장치만 device로 등록되며, “/dev” directory에는 파일로 등록되지 않는다.

Raspberry Pi_Kor_14.0 Chapter 14 Device 이해

Chapter 14 Device 이해

Chapter 주요 내용

여기서는 Linux 시스템에서 사용 가능한 여러 가지 device와 이러한 device에 대한 정보를 가지고 있는 “/dev” 파일에 대해 설명하고 있으며, USB 장치의 특성에 대해서 설명하고 있다.

다음과 같은 항목에 대한 내용을 포함하고 있다.
■ device type 과 /dev directory

■ character device

■ block device

■ network device

■ USB device

Raspberry Pi_Kor_03.9.3 Raspberry Pi 전용 camera

3.9.3 Raspberry Pi 전용 camera

Raspberry Pi 재단에서는 Raspberry Pi 전용 camera를 출시하였다. 최근에 출시된 camera는 Sony IMX219 sensor를 사용하는데, 이것은 8 megapixels (8MP) 까지 촬영할 수 있고, still capture를 지원할 뿐만 아니라 1080p30, 720p60, VGA90 video 녹화를 지원한다. 이 camera는 raw capturing을 지원하고, JPEG, PNG, GIF, BMP, 비 압축 YUV, 비 압축 RGB 형식의 사진을 촬영할 수도 있다. 또한 이 camera는 H.264, baseline, main and high-profile formats으로 video를 녹화할 수 있다. 현재 제공되는 camera에는 일반 가시광선 camera와 적외선 camera가 있다. 이 camera는 ribbon cable로 Raspberry Pi의 본체 board에 있는 CSI port에 연결하여 사용할 수 있다.

Raspberry Pi_Kor_03.9.2 CSI port 지원 카메라

3.9.2 CSI port 지원 카메라

Raspberry Pi에는 camera를 위해서 CSI port를 별도로 제공하고 있다. 따라서 CSI를 지원하는 camera는 모두 연결하여 사용할 수 있다.

Raspberry Pi_Kor_03.10 외부 Interface

3.10 외부 Interface

Raspberry Pi는 외부 기기와의 양방향 interface를 통하여 시스템 외부의 장치와 통신하고, 통제할 수 있다. 외부 기기를 통해서 입력을 받거나 출력을 할 수도 있으며, 외부 장치를 조정할 수도 있다. 이를 위한 핵심적인 장치가 GPIO(General Purpose Input Output) port이다. 여기서는 이 GPIO를 이용하는데 필요한 준비사항을 간단히 언급하고자 한다. 상세한 내용은 [Chapter 25 외부 Interface]를 참고하기 바란다.