klibc
보이기
개발자 | H. Peter Anvin |
---|---|
안정화 버전 | 2.0.9
/ 2021년 4월 30일 |
저장소 | |
프로그래밍 언어 | C[1] |
운영 체제 | 리눅스 |
종류 | 런타임 라이브러리 |
라이선스 | GNU GPL 또는 BSD 라이선스 |
웹사이트 | ftp |
klibc는 C 표준 라이브러리의 미니멀리스틱한 부분 집합이다. 이것은 주로 리눅스 시작 프로세스 동안에 사용되기 위해 개발되었으며 초기 사용자 공간의 한 부분이다. 즉, 커널 스타트업 시에 사용되는 구성 요소이지만 커널 모드에서 실행되지는 않는다.[2] 이러한 구성 요소들은 일반적인 사용자 공간 프로그램들에 의해 사용되는 표준 라이브러리(주로 glibc)에 접근할 수 없다.
문서에 의하면 klibc 라이브러리는 작은 크기와 정확성에 최적화되었다.[2] 이 디자인 때문에 klibc는 또한 일반적으로 임베디드 소프트웨어에 적합하다. klibc는 완전 GPL 라이센스 하에 있기 때문에 상용 임베디드 소프트웨어에 사용하기에는 제한이 따른다.[3]
리눅스 스타트업 과정에서 klibc는 initramfs(임시 램 파일 시스템) 내에서 로드된다. 이것은 디폴트로 데비안에서 mkinitramfs
스크립트[4]에 의해 생성되는 초기 램 파일 시스템에 포함된다. 게다가 초기 사용자 공간에서 사용할 수 있는 작은 유닉스 유틸리티들의 집합도 갖는다: cpio, dash, fstype, mkdir, mknod, mount, nfsmount, run-init 등.[5] 대체 전략은 프로그램을 인자나 심볼릭 링크를 통해 결정하는 비지박스 같이 모든 것을 한 실행 파일 안에 포함하는 것이다.
같이 보기
[편집]- 다른 C 표준 라이브러리들
각주
[편집]- ↑ “보관된 사본”. 2014년 4월 13일에 원본 문서에서 보존된 문서. 2016년 2월 22일에 확인함.
- ↑ 가 나 http://free-electrons.com/kerneldoc/latest/early-userspace/README
- ↑ Hagen, William W. (2006). 《The Definitive Guide to GCC, Second Edition》. Berkeley, CA: APress. 286–289쪽. ISBN 1-59059-585-8.
- ↑ Debian Wheezy Klibc.
- ↑ “libs/klibc/klibc.git / tree”.[깨진 링크(과거 내용 찾기)]
외부 링크
[편집]- Source archive
- Browsable development tree[깨진 링크(과거 내용 찾기)]
- Mailing list
- initramfs and where user space truly begins - LWN, Jonathan Corbet, July 11, 2006.