2013-01-25 5 views
0

이 문제에 대한 정보를 어디에서 찾을 수 있을지 모르기 때문에 여기에서 묻습니다. 당신이 나에게 책이나 그것에 관한 기사를 추천 할 수 있다면, 나는 기뻐할 것이다.사이의 상관 관계

나는 리눅스 커널과 GLIBC 버전 사이의 상관 관계에 대한 정보를 찾을 수 있습니다

? 나는 커널 자체가 libc의 함수 구현을 포함하고 있음을 알고 있지만, 어떻게 전달되는지는 모른다.

예를 들어

: 는 최근에 나는 오래된 PowerPC 프로세서에 대한 커널을 구축했다. libc의 동적 라이브러리 파일은 2.3.6 버전에서 바로 사용할 수 있습니다./lib/path에는 librt.so-2.3.6과 같은 이름의 파일이 있습니다.

이 라이브러리를 최신 버전으로 업데이트하는 가장 간단한 방법은 무엇입니까? 커널의 빌드 시스템을 구성하여 최신 GLIBC 버전 또는 대체 버전 (예 : EGLIBC)으로 uImage 파일을 생성 할 수 있습니까? 약간의 상관 관계가

답변

0

는 같은 커널의 glibc 버전 및 viceversa에의 광범위한 작동합니다. 라이브러리는 커널이 처리하는 것을 찾아서 사용합니다. glibc에서 변경된 사항 (새로운 커널 기능 지원을 포함하여 상호 작용하는 내용)에 대한 자세한 내용은 업스트림 변경 사항을 참조하십시오. 리눅스 커널, 아마도 최고의 소스의 새로운 기능에 대한주기적인 "무엇에 ... 새로운"LWN

+0

의 커널 부분은 기사 것은 그것이 단순히 오래된 대체 할 경우 사용자 공간의 코드가 실행됩니다, 가능하다 새로운 것들과 라이브러리 파일? – nkdm

+0

다시 말해, glibc는 오래된 버전에 링크 된 프로그램도 마지막 버전과 함께 작동하도록 작성되었습니다. 그러나 이것은 C 프로그램의 경우에만 해당되며 C++은 자체 라이브러리를 사용하고 일부 컴파일러가 변경되지 않으면 오래된 실행 파일이 작동하지 않게됩니다. 대부분의 경우 코드의 오류로 인해 더 이상 컴파일되지 않습니다. – vonbrand