개요
libc가 뭐고 glibc가 무엇인지 알아 봅니다.
결론
libc는 "표준 C 라이브러리"를 말하는 대 명사이고
glibc는 GNU에서 만든 libc 입니다.
그래서 https://man7.org/linux/man-pages/man7/libc.7.html 에서 보면 libc의 종류를 3가지의 분류 합니다.
libc의 종류
glibc
- pathname : /lib/libc.so.6
- 상세 설명 : 1992 이후로 linux에서 가장 많이 사용되는 libc
linux libc
- pathname : libc.so.5
- 상세 설명 : 1990년에 glibc의 대시 잠깐 나왔다 사라진 libc
other C libraries
- uClibc : 경량화 libc
- dietlibc : 경량화 libc
- musl libc : 경량화 libc (container 에서 사용됨)
glibc란?
https://www.gnu.org/software/libc/libc.html
GNU C library 프로젝트는 GNU 시스템과 GNU/Linux 시스템, 그리고 Linux를 커널로 사용하는 다른 많은 시스템을 위한 핵심 library를 제공합니다.
이 library는 ISO C11, POSIX.1-2008, BSD, OS별 API 등을 포함한 중요한 API를 제공합니다.
이러한 API에는 open, read, write, malloc, printf, getaddrinfo, dlopen, pthread_create, crypt, login, exit 등과 같은 기본 기능이 포함됩니다
glibc의 역활
GNU C library는 C 또는 C++ 언어로 작성된 프로그램에서 직접 사용하는 많은 저수준 구성 요소를 제공합니다. 많은 프로그래밍 언어는 C#, Java, Perl, Python 및 Ruby를 포함하여 간접적으로 GNU C 라이브러리를 사용합니다(해당 언어에 대한 인터프리터, VM 또는 컴파일된 코드는 glibc를 직접 사용함).
glibc 기능
너무 많아 아래 링크를 통해서 분석이 필요함.
https://www.gnu.org/software/libc/manual/html_mono/libc.html
참고자료
man page 한글 버전
https://wariua.github.io/man-pages-ko/
연관글
[linux] libc 와 glibc 와 libstdc++ 와 gcc의 관계 정리
'프로그래밍 > 리눅스 프로그래밍' 카테고리의 다른 글
[compile] compile 에러 별 대처 방안 (0) | 2022.01.22 |
---|---|
[compile] compile 에러 별 대처 방안 (0) | 2022.01.22 |
[compile] 공부 해야 할 것 (0) | 2022.01.12 |
[systemd] systemd를 시용한 자가 업데이트 로직 (0) | 2022.01.06 |
프로그램 중복 실행 확인 코드 (0) | 2021.10.11 |