-
기본적인 시스템 하드웨어Technique/LPIC 2019. 4. 16. 14:41반응형
CPU
컴퓨터의 두뇌라 불린다. 연산처리를 담당하는 부분이다.
메모리상에서 프로그램을 읽어들이고, 처리를 실행한다. CPU에는 여러 종류가 있지만 Linux는 매우 많은 CPU의 종류에 대응하고 있다. GHz라고 표기하는 동작 주파수는 성능의 지표 중 하나로 사용한다.아키텍처
컴퓨터 하드웨어의 기본설계를 의미하지만, CPU의 종류를 나타내는 단어이기도 하다.
Intel 계열의 CPU를 나타내는 x86, IA-32, x86 아키텍처를 64비트로 확장시킨 x86-64, 조립 기기에 많이 사용되는 ARM 등이 있다.메모리
데이터를 기억하는 역할을 가지고 있다. 메모리에 기억되는 내용은 시스템의 전류가 끊어지는 순간 사라진다. Linux 가 동작하기 위해서는 256 ~ 1GB 정도의 메모리가 필요하다.
하드디스크
메모리는 용량도 그렇게 크지 않고 전류가 끊기면 내용물을 소실해버리기 때문에 큰 사이즈의 데이터나 장기간 저장할 데이터는 하드디스크에 보관한다. 시스템에 상주하는 종류와, 외부에서 연결하는 방식도 있다.또한 하드디스크 등의 기억장치를 가리켜 스토리지라고 일컫는다. Linux를 인스톨하기 위해서는 필요하지만, Linux의 동작에 필수는 아니다. 최근에는 HDD( Hard Disk Drive) 대신에 SSD( Solid State Drive )가 많이 사용되고 있다.
입력장치
키보드와 마우스는 컴퓨터에 정보를 입력하기 위한 기본적인 하드웨어이다. 서버에는 장착되지 않을 수도 있다.
확장 카드
메인보드의 확장 슬롯에 장착하는 형태로 여려가지 기능을 제공하는 하드웨어 부품이다. 네트워크 카드 (NIC) 사운드카드, 모뎀카드, 비디오카드, SCSI 카드, RAID 카드 등이 있다. 확장 카드를 연결하거나 해제시키기 위해선 시스템을 일시적으로 종료시켜야 할 필요가 있다. 이런 형태를 콜드 플러그 라고 일컫는다.
USB 기기
여러 가지 주변기기를 접속시키기 위한 규격을 USB라고 한다. 키보드, 마우스, 하드디스크, 플래시메모리, DVD 드라이버 같은 다양한 주변기기가 대응하고 있다. USB 기기는 시스템의 전원을 켠 채로 접속 시켰다, 해제시키는 것이 가능하다. 이것을핫 플러그라고 한다.
BIOS/UEFI
BIOS( Basic Input Output System : 입출력 기본 시스템 )는 키보드나 하드 디스크 같은 디바이스를 제어한다. 가장 기본적인 제어 프로그램이다. BIOS는 컴퓨터의 메인보드나 확장 카드에 들어있는 플래시 ROM에 들어가 있다. OS나 애플리케이션은 BIOS의 인터페이스를 이용하여 간단히 하드웨어에 접근하는 것이 가능하다. 메인보드 상의 BIOS는 시스템 BIOS 확장 카드상의 BIOS는 확장 BIOS라 일컫는다,
- 플래쉬롬 : ROM은 읽기 전용 메모리이지만 플래쉬롬은 작성하는 것도 가능한 ROM이다.
- 디바이스 : 컴퓨터를 구성하는 하드웨어 부품이다. 프린터나 디스플레이 등의 주변기기뿐만 아니라 CPU나 하드디스크와 같은 부품 등도 디바이스라 한다.
- 메인보드 : CPU나 메모리 각종 인터페이스 같은 컴퓨터를 구성하는 기본적인 부품을 결착하는 곳
BIOS의 역할
- OS를 기동하기 위한 프로그램을 디스크로부터 읽어 들여 실행한다.
- 디바이스의 동작을 설정한다.
- 기본적인 입출력을 제어한다.
- 주의 : 컴퓨터에 들어가 있는 BIOS가 오래된 버전이면 대용량의 하드 디스크가 정상적인 인식이 안될 경우가 있다. 제조사가 최신판의 BIOS를 공개하고 있는 경우 적절한 수순으로 업데이트를 실행하면 그런 경우를 회피할 수 있다.
또한 현재는 BIOS의 뒤를 이은 펌웨어 규격으로 UEFI( Unified Extensible Firmware Interface ) 가 보급되고 있다. UEFI에서는 일부의 OS에 설정된 이용 가능한 용량 제한이 풀려 있거나( BIOS 상에선 2TB ) GUI 인터페이스 설정 화면을 제공하는 등 다양한 부가기능을 제공한다.
BIOS/UEFI 설정화면에서 설정 가능한 항목은 차이가 있지만 기본적으로 아래와 같은 기능을 제공한다
- 날짜와 시간
- 디스크 드라이버나 각종 디바이스 파라미터
- 키보드의 사용/미사용
- 전원관리
- 기동 디스크 드라이버 순서
- 디바이스의 IRQ( Interrupt Request )의 할당
- 각종 디바이스의 사용/미사용
디바이스 정보 확인
Linux는 하드웨어에 접근을 추상화하는 디바이스 파일을 가지고 있다. 모든 하드웨어는 디바이스 파일로서 나타나며 디바이스 파일에 접근을 통해 하드웨어에 접근 가능하도록 되어 있다. 디바이스 파일은 /dev 디렉터리 이하에 있다. 이 디바이스 파일은 udev라고 불리는 방법으로 자동적으로 작성된다.
Linux 커널이 인식하고 있는 디바이스에 관한 정보는 /proc 디렉터리 이하에 있는 파일로 확인 가능하다파일명
설명
/proc/cpuinfo CPU 정보 /proc/interrupts IRQ 정벼 /proc/ioports I/O 주소 정보 /proc/meminfo 메모리 정보 /proc/bus/usb/* USB디바이스 정보 /proc/bus/pci/* PCI 디바이스 정보 /proc 디렉터리 이하의 파일은 파일로서는 실체가 없는 가상 파일이다. 일부의 파일은 텍스트 파일로서 cat 커맨드 등을 이용하여 관람이 가능하다.
디바이스의 정보를 확인하기 위한 각종 커맨드가 준비되어 있다. PCI 디바이스의 정보를 표시하기 위해선 lspci 커맨드를 사용한다.
-v 옵션을 사용하면 상세정보를 -vv를 사용하면 추가 상세정보가 표시 가능하다.USB디바이스
USB( Universal Serial Bus ) 는 주변기기를 접속하기 위해 넓게 보급되어 있는 규격이다.
아래와 같은 규격이 존재한다- 최대 127대까지 USB 디바이스가 접속 가능하다
- 여러 종류의 USB 디바이스를 동일한 커넥터로 접속 가능하다
- 전기를 넣은 채로 접속/해제하는 기능을 제공한다
- 플러그앤 플레이 ㅈ공
- USB포트로 부터 USB디바이스에 전류를 제공하는 것이 가능
하드웨어를 이용하기 위해선 디바이스 드라이버가 필요하다. USB의 경우 USB 디바이스 고유의 디바이스 드라이버 이외에 Linux 시스템에 최초로 탑재된 범용 드라이버 ( 클래스 드라이버 ) 도 있다.
디바이스 클래스의 사양에 부합하는 USB 제품은 클래스 드라이버로 대응 가능하기 때문에 별도의 드라이버를 따로 인스톨할 필요가 없다.디바이스 클래스 대응하는 USB 디바이스 HID ( Human Interface Devices ) 키보드, 마우스 등 USB 스토리지 디바이스 USB 메모리, 디지털 오디오플레이어, 하드디스크 드라이버 등 오디오 마이크, 스피커, 사운드 카드 등 프린터 프린터 무선 컨트롤러 Wi-Fi 어댑터, bluetooth 어댑터 USB 디바이스의 정보를 표시하기 위해선 lsusb 커맨드를 사용할 수 있다
-v 옵션을 사용하면 상세정보를 -t 옵션을 사용하면 USB 디바이스의 계층 구조를 트리 형태로 볼 수 있다.udev
/dev 디렉터리 이하의 디바이스 파일은 udev( Userspace DEVice management )라는 방식으로 자동적으로 작성된다. 종래의 Linux에서는 사용한다/하지 않는다. 그뿐만 아니라 다수의 디바이스 파일을 새롭게 /dev 디렉터리 이하에 작성했어야만 했다. 또한 커널이 디바이스를 인식했다고 하더라도 디바이스 파일이 존재하지 않으면 애플리케이션은 디바이스를 사용할 수 없었다.
udev의 방법에서는 디바이스가 접속 확인이 되면 커널이 그것을 감지하여 /sys 디렉터리 이해에 디바이스 정보를 작성한다. udev 데몬 (udevd)는 그 디바이스 정보를 참조하여 /dev 디렉터리 이해에 디바이스 파일을 작성한다. 그 경우 /etc/udev/rules.d 디렉터리 이하에 설정 파일이 사용된다.
설정 파일을 편집하는 것으로 예를 들어 USB 메모리를 /dev/usbmemory로 설정한다 등과 같은 특정 하드웨어를 임의의 이름으로 지정하는 것이 가능하다
디바이스 정보는 D-Bus라고 불리며 애플리케이션 사이에서 정보를 주고받는 기능에 따라 애플리케이션에 전하는 것으로 애플리케이션에서 그 디바이스의 이용이 가능해진다.디바이스 드라이버 로드
디바이스를 이용하기 위해서 필요한 제어 프로그램을 디바이스 드라이버라고 부른다. Linux에서는 디바이스 드라이버는 커널의 일부라고 제공되고 있다. 필요한 디바이스드라이버를 커널에 읽어들이는 것을 로드한다고 한다. 로드 되는 커널 모듈을 확인하기 위해서는 lsmod 커맨드를 이용한다
통상시 필요한 디바이스 드라이버는 자동적으로 로드되지만, 수동으로 로드하는 경우 modprobe 커맨드를 실행한다.반응형'Technique > LPIC' 카테고리의 다른 글
부트로더 설치 (0) 2019.04.18 하드디스크의 레이아웃 설계 (0) 2019.04.18 SysVinit (0) 2019.04.16 리눅스의 기동과 종료 (0) 2019.04.16 LPIC와 LinuC는? (0) 2019.04.15