용례 (Glossary)

인자 (Argument) 함수나 루틴에는 처리할 인자가 전달된다.

ARP Address Resolution Protocol, 주소 결정 프로토콜. IP 주소를 물리적 하드웨어 주소로 변환하는 데 사 용한다.

아스키 (ASCII) American Standard Code for Information Interchange, 정보교환을 위한 미 표준 코드. 알파벳 의 모든 글자는 8비트 코드로 표현한다. 아스키는 글자들을 저장하는 데 가장 많이 사용되는 코드이 다.

비트 (Bit) 0이나 1(꺼진 상태와 켜진 상태)을 나타내는 한 비트의 데이터

하반부 핸들러 (Bottom Half Handler) 커널 내부에 있는 큐에 쌓인 작업을 수행하는 핸들러

바이트 (Byte) 8 비트의 데이터가 모여서 바이트를 이룬다.

C 고급 프로그래밍 언어의 일종. 리눅스 커널은 대부분 C로 되어 있다.

CISC Complex Instruction Set Computer, 복합 명령어 세트 컴퓨터. RISC의 반대 개념으로, 많은 수의 복합 어셈블리 명령어들을 지원하는 프로세서이다. X86 구조가 CISC 구조이다.

CPU Central Processing Unit, 중앙 처리 장치. 컴퓨터의 주처리부이다. 마이크로프로세서, 프로세서 참조

자료구조 (Data Structure) 여러 항목으로 이루어진, 메모리상에 있는 자료의 집합.

디바이스 드라이버 (Device Driver) 특정 장치를 제어하는 소프트웨어. 예를 들어, NCR 810 디바이스 드라 이버는 NCR 810 SCSI 장치를 제어한다.

DMA Direct Memory Access, 직접 메모리 접근

ELF Executable and Linkable Format, 실행가능하고 링크할 수 있는 포맷. 이 오브젝트 파일 포맷은 유닉스 시스템 연구소(Unix System Laboritories)에서 개발되었으며, 이제는 리눅스에서 가장 일반적인 포맷으 로 사용되고 있다.

EIDE Extended IDE, 확장 IDE

실행 이미지 (Executable Image) 기계어 명령과 데이터를 가지고 있는 구조화된 파일. 이 파일은 프로세 스의 가상 메모리에 로드되어 실행할 수 있다. 프로그램 참조

함수 (Function) 어떤 동작을 수행하는 소프트웨어의 일부분. 예를 들어 두 값 중 큰 값을 돌려주는 함 수 같은 것이다.

IDE Integrated Disk Electronics, 집적 디스크 전자장치

이미지 (Image) 실행 이미지를 보라.

IP Internet Protocol, 인터넷 프로토콜

IPC Interprocess Communication, 프로세스간 통신

인터페이스 (Interface) 루틴을 부르고 자료구조를 전달하는 표준 방식. 예를 들어 두 코드 계층 사이의 인터페이스는 특정 자료구조를 전달하고 돌려주는 루틴으로 표현할 수 있다. 리눅스의 VFS는 인터페 이스의 좋은 예이다.

IRQ Interrupt Request Queue, 인터럽터 요구 큐

ISA Industry Standard Architecture, 산업 표준 구조. 이제는 좀 오래되긴 했지만, 플로피 디스크 드라이브같 은 시스템 구성요소를 위한 표준 데이터 버스 인터페이스이다.

커널 모듈 (Kernel Module) 파일 시스템이나 디바이스 드라이버같이 동적으로 로드할 수 있는 커널 함수

킬로바이트 (Kilobyte) Kbyte라고도 쓰며 1000 바이트를 뜻한다.

메가바이트 (Megabyte) Mbyte라고도 쓰며 1000000 바이트를 뜻한다.

마이크로프로세서(Microprocessor) 고밀도 직접된 CPU. 대부분의 요즘 CPU들은 마이크로프로세서이다.

모듈 (Module) 어셈블리어 명령어나 C같은 고급언어의 형태로 CPU 명령어들을 내장한 파일.

오브젝트 파일 (Object File) 실행 이미지로 만들어지기 전에, 다른 오브젝트 파일이나 라이브러리와 링크 되지 않은, 기계어 코드와 데이터를 가지고 있는 파일.

페이지 (Page) 실제 메모리는 동일한 크기의 페이지들로 분할된다.

포인터 (Pointer) 메모리상의 다른 위치의 주소를 가지고 있는 메모리상의 한 위치 (변수)

프로세스 (Process) 프로그램을 실행할 수 있는 한 개체이다. 프로세스는 실행중인 프로그램으로 생각할 수 있다.

프로세서 (Processor) CPU와 같으며 마이크로프로세서를 줄인 말이다.

PCI Peripheral Component Interconnect, 주변장치 상호연결. 컴퓨터 시스템의 주변장치들을 연결하는 법을 설명한 표준.

주변장치 (Peripheral) 시스템에 있는 CPU를 위해 일하는 지능형 프로세서. IDE 컨트롤러 칩같은 것이 한 예이다.

프로그램 (Program) "hello world"를 출력하는 것처럼, 어떤 작업을 수행하는 통합된 CPU 명령어들의 집 합. 실행 이미지 참고.

프로토콜 (Protocol) 프로토콜은 상호 협동하는 두 개의 프로세스나, 네트웍 계층 사이에 응용프로그램 데이터를 전송하는데 사용하는 네트웍용 언어이다.

레지스터 (Register) 정보나 명령어를 저장하는 데 사용되는, 칩 내의 한 위치.

레지스터 파일 (Register File) 프로세서 내의 레지스터 집합.

RISC Reduced Instruction Set Computer, 축소 명령어 세트 컴퓨터. CISC의 반대 개념으로, 어셈블리 명령어 의 갯수가 적고, 각각의 명령어는 간단한 연산만 하는 프로세서이다. ARM과 알파 프로세서는 둘다 RISC 구조로 되어 있다.

루틴 (Routine) 함수하고 비슷하지만, 엄밀하게 말하면 루틴은 결과값을 돌려주지 않는다.

SCSI Small Computer Systems Interface, 소형 컴퓨터 시스템 인터페이스

쉘 (Shell) 운영체제와 사용자 사이에서 인터페이스 역할을 해주는 프로그램. 명령쉘(command shell)이라 고도 한다. 리눅스에서 가장 보편적으로 사용하는 것은 bash 쉘이다.

SMP Symmetrical Multiprocessing, 대칭형 멀티프로세싱. 둘 이상의 프로세서가 일을 공정하게 나누는 시 스템.

소켓 (Socket) 네트웍 연결의 한쪽 끝을 나타낸다. 리눅스는 BSD 소켓 인터페이스를 지원한다.

소프트웨어 (Software) CPU 명령어(어셈블러나 C같은 고급언어 모두)와 데이터. 대개 프로그램과 같은 의미를 갖는다.

시스템 V(System V) 1983년에 나온 유닉스의 변종. 무엇보다도 System V IPC 메커니즘을 포함하고 있다.

TCP Transmission Control Protocol, 전송 제어 프로토콜.

작업큐 (Task Queue) 리눅스 커널 내부에서 일을 연기하는데 사용하는 메커니즘.

UDP User Datagram Protocol, 사용자 데이터그램 프로토콜

가상 메모리 (Virtual Memory) 시스템에 있는 물리적인 메모리의 크기를 실제보다 크게 보이게 해주는 하드웨어적, 소프트웨어적 메커니즘.