2010-08-17 7 views

답변

9

LFS. 그런 다음 찾을 수있는 모든 디버거와 프로파일 러를 설치하십시오.

+0

나는 그 모두를 사용할 수 있습니다 그리고 그들은 멋진, 그러나 그것은 또한이 등 – user361697

+0

, 테스트, 패치 시간이 많이 걸립니다 Buildroot에서 모든 것을 자동화합니다 : https://stackoverflow.com/a/44625382/895245 –

7

나는 Gentoo을 사용하여 커널을 둘러 보았습니다.

+0

또 다른 Gentoo에 투표하십시오. –

8

나는 Linus himself uses Fedora라고 들었습니다. 나는 Gentoo을 권하고 싶습니다. 여러분이 직접 커널을 커스터마이징 할 수있게 해줄 것입니다. 그것은 그것을위한 완벽한 설정입니다. 그리고 많은 시간을 재미있게 만들기 위해 많은 시간을 쏟아 씁니다.

당연히 Ubuntu이 선호하는 배포판이지만, 하이재킹을 시작하고 예상되는 커널 기능을 제거하는 경우 문제가 발생할 수 있습니다. Gentoo는 불평하지 않을 것이며, 처음부터 그들에게 기대하지 않습니다.

+0

Ubuntu 커널은 UUID 처리 및 기타 마법 같은 것들에 대해 상당한 수의 패치를 제공합니다. 항상 내 gentoo 상자에서 바닐라 커널을 문제없이 실행합니다. – stsquad

+0

Fedora는 내가 제일 좋아하는, 안정된 것입니다. –

2

배포판은 대부분의 경우 패치를 제공하는 경향이있는 "주방 싱크"커널이 아닌 자신의 커널에서 작업 할 것이기 때문에 아마도별로 차이가 없습니다.

당신이 커널 개발 작업을하고 있다면, 배포판이 빨리 부팅되는 것을 원한다고 생각합니다. 강아지와 같은 것이 이상적일지도 모르며 우분투와 같은 실제 코딩 작업을 수행 할 수도 있습니다.

3

배포판은 별 문제가되지 않습니다. 그것은 당신이 커널로하고 싶은 일이며 그 기능을 개발/테스트합니다.

다음은 수행 할 몇 가지 사항입니다.

a. 커널 디버깅 및 로깅 옵션을 설정합니다. 그것들은 디버깅에 확실히 도움이 될 것입니다. useful linux kernel debug options to turn on

b. 메모리 누수를 검사하는 Valgrind와 같은 Getdebuggers 도구. 문서 예 : https://www.kernel.org/doc/Documentation/kmemleak.txt

c. 편집 용으로 훌륭한 편집기를 찾았습니다. 나는 vim vs emacs 전쟁을 시작하고 싶지 않다. 정말 개인적인 취향이다. 리눅스 커널 코딩 스타일 가이드 라인을 따라야한다. https://www.kernel.org/doc/Documentation/CodingStyle

d. 귀중한 정보를 제공하기 때문에 로그 시스템 및 proc 시스템에 익숙해집니다.

e.

0

Buildroot

Buildroot는 커널에게 10MiB보다 작은 rootfs 이미지와 작은 배포판을 생성하는 일련의 스크립트를 이해하는 디렉토리/usr/src/linux 디렉토리에/문서 아주 좋은 출발점에서 설명서를 참조하십시오.

소스에서 모든 것을 다운로드하여 컴파일하므로 패키지를 패치하는 것이 쉽습니다.

생성 된 이미지가 너무 작아 전체 사용자 영역 설정을 이해할 수있게되어 커널에 더 쉽게 집중할 수 있습니다.

LFS보다 우위 : 모든 것이 완전히 자동화되어 있습니다. 이 때문에 Buildroot는 대규모 조직에서 전문적으로 사용됩니다.

나는 가능한 한 많은 것을 자동화하는이 설정 만들었습니다 https://github.com/cirosantilli/linux-kernel-module-cheat