반응형
캐릭터 특수 파일과 블럭 특수 파일
리눅스와 유닉스 계열 시스템에서 디바이스를 파일 시스템 내에 표현할 때, 주로 두 가지 유형의 특수 파일이 사용됩니다. 캐릭터 특수 파일과 블럭 특수 파일입니다. 이 두 파일은 디바이스와의 상호작용 방식에 따라 구분됩니다.
캐릭터 특수 파일(Character Special Files)
캐릭터 특수 파일은 '문자 디바이스 파일'이라고도 하며, 데이터를 문자 단위, 즉 바이트 단위로 전송합니다. 이 유형의 파일은 일반적으로 비순차적, 무작위 접근이 아닌 순차적으로 데이터를 처리합니다. 캐릭터 디바이스 파일의 예로는 터미널, 프린터, 시리얼 포트 등이 있습니다.
캐릭터 디바이스의 특징
- 바이트 스트림을 통한 데이터 전송
- 버퍼링되지 않은 입력과 출력
- 대표적인 예로 키보드나 마우스가 있습니다.
- 장치의 데이터를 하나씩 순차적으로 처리
블럭 특수 파일(Block Special Files)
블럭 특수 파일은 '블록 디바이스 파일'이라고도 하며, 데이터를 블록 단위로 전송합니다. 이 유형의 파일은 크기가 고정된 블록을 사용하여 데이터를 저장하고, 비순차적 접근이 가능하여, 하드 드라이브, CD-ROM 드라이브 등의 장치에 사용됩니다.
블록 디바이스의 특징
- 블록 단위로 데이터 전송
- 버퍼링된 입력과 출력
- 랜덤 액세스가 가능
- 대표적인 예로 하드 드라이브가 있습니다.
- 데이터를 저장하고 빠르게 접근할 수 있는 구조를 가짐
비교
- 데이터 전송 단위: 캐릭터 디바이스는 바이트 단위로 데이터를 전송하는 반면, 블록 디바이스는 블록(일반적으로 수 KB) 단위로 전송합니다.
- 데이터 접근 방식: 캐릭터 디바이스는 주로 순차적 접근을 하며, 블록 디바이스는 랜덤 접근이 가능합니다.
- 버퍼링: 캐릭터 디바이스는 일반적으로 비버퍼링이고, 블록 디바이스는 버퍼링되어 있어서 데이터를 일시적으로 저장할 수 있습니다.
- 사용 사례: 캐릭터 디바이스는 데이터를 한 번에 하나씩 처리할 때 사용되고, 블록 디바이스는 대용량의 데이터 저장소로 사용됩니다.
두 파일 타입은 리눅스의 모든 것은 파일이라는 철학을 반영합니다. 장치, 디렉토리, 일반 파일 등 시스템의 모든 자원을 파일로 추상화하여 일관된 인터페이스를 제공합니다. 이로 인해 사용자와 프로그램은 특별한 구분 없이 모든 자원에 접근할 수 있습니다.
반응형
'Linuxpia > 데스크톱 리눅스' 카테고리의 다른 글
[전자책] 리눅스에서 전자책 유효성 검사 (46) | 2023.11.22 |
---|---|
파일 시스템에서 연결된 USB 드라이브를 찾는 일반적인 방법 (101) | 2023.11.11 |
Python 모듈 설치 방법 정리 (84) | 2023.10.25 |
Jupyter Notebook 사용법 (96) | 2023.10.24 |
리눅스에서 Anaconda 사용하기 (80) | 2023.10.23 |