본문 바로가기

Kernel64

GCP에서 Nested KVM 활성화 어제부터 자꾸 커널을 날려먹다보니까 buildroot의 필요성을 느낀다. 콘솔에 직접 접근할 수가 없으니까 코드 한 번 잘못 수정하면 되돌릴 수가 없다. 매번 백업 이미지 만들수도 불편하다. 그리고 buildroot를 사용하면 좋은 점은 git bisect run으로 bisection을 자동화할 수 있다 (!) 무튼간에 buildroot를 쓰려면 kvm을 활성화해야하는데 GCP에서는 기본적으로 nested kvm을 지원하지 않는다. 따라서 nested kvm을 활성화해야한다. 중첩된 가상화 사용 설정 | Compute Engine 문서 | Google Cloud 의견 보내기 중첩된 가상화 사용 설정 Linux 이 문서에서는 가상 머신(VM) 인스턴스에서 중첩된 가상화를 사용 설정하는 방법과 중첩된 VM을.. 2021. 9. 18.
[Linux Kernel] GCP에서 커스텀 커널 사용하기 사지방에서 공부를 하다보니 클라우드를 쓸 수밖에 없다. 예전에 한 번 커널을 빌드하고 설치했는데 아무것도 안 바뀌길래 안 되는줄 알았는데, 몇가지 config를 설정해주면 잘 설치가 된다. 커스텀 이미지 빌드 요구사항 | Compute Engine 문서 | Google Cloud 커스텀 이미지 빌드 요구사항 cloud.google.com 1. 혹시 모르니 GCP 상에서 설치 전 백업 만들기 2. make defconfig - 기본 config 만들기 3. make localmodconfig - 기본 config에서 현재 사용중인 모듈 추가 4. make menuconfig로 위 링크에 있는 config 활성화 (의존성 때문에 menuconfig로 하는게 편함) 5. sudo make install 2021. 9. 17.
[Linux Kernel] 리눅스 커널 개발 가이드: For more information 8. For more information — The Linux Kernel documentation Linux Device Drivers, 3rd Edition (Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman). Online at https://lwn.net/Kernel/LDD3/. Linux Kernel Development (Robert Love). Understanding the Linux Kernel (Daniel Bovet and Marco Cesati). www.kernel.org For more information 커널 개발 관련 주제를 다룬 문서는 많다. 그 중 첫번째는 커널 소스에 포함된 Documentation 디렉토리이다... 2021. 9. 16.
[Linux Kernel] 리눅스 커널 개발 가이드: Advanced Topics 7. Advanced topics — The Linux Kernel documentation At this point, hopefully, you have a handle on how the development process works. There is still more to learn, however! This section will cover a number of topics which can be helpful for developers wanting to become a regular part of the Linux kernel dev www.kernel.org 여기까지 읽었으면 어떻게 커널을 개발하는지 감이 왔을 것이다. 하지만 아직 배울게 좀더 남았다! 이 글에서는 개발자들이 리눅스 커널을.. 2021. 9. 16.
[Linux Kernel] 리눅스 커널 개발 가이드: Followthrough 자, 이제 당신이 작업한 내용을 패치로 보내기까지 했다. 커널 개발자들이 (심지어 숙련된 개발자들도) 가장 많이 실수하는 것은 패치를 보냈다고 모든게 끝났다고 생각하는 것이다. 사실은, 패치를 보내는 것은 다음 단계를 밟는 것이고 아직 할일이 더 남았다. 패치를 처음 보내자마자 더 이상 개선할 점이 없고 바로 머지되는 경우는 매우 드물다. 커널 개발 프로세스는 이 사실을 잘 알고, 게시된 패치를 개선한다. 당신은 코드를 작성한 사람으로서 당신의 코드가 커널의 품질에 맞게 개선되도록 책임을 져야한다. 이 단계에서 실패하면 메인라인에 머지되지 않을 것이다. 6.1 Working with reviewers 의미가 있는 패치는 다른 개발자들이 코드를 리뷰하면서 코멘트를 남길 것이다. 리뷰어와 함께 일하는 것은 .. 2021. 9. 15.
[Linux Kernel] 리눅스 커널 개발 가이드: Posting Patches 와 휴가 나가고 나서 격리때문에 블로그 글을 하나도 못썼다. 얼른 이 시리즈 마저 번역(이라기엔 야매지만)하고 다른 주제도 글 써야겠다. 5. Posting patches — The Linux Kernel documentation Sooner or later, the time comes when your work is ready to be presented to the community for review and, eventually, inclusion into the mainline kernel. Unsurprisingly, the kernel development community has evolved a set of conventions and procedures which www.kernel.or.. 2021. 9. 14.