본문 바로가기

All154

[Linux Kernel] 리눅스 커널 개발 가이드: How the development process works 2. How the development process works — The Linux Kernel documentation Linux kernel development in the early 1990’s was a pretty loose affair, with relatively small numbers of users and developers involved. With a user base in the millions and with some 2,000 developers involved over the course of one year, the kernel has s www.kernel.org 1990년대 초반의 리눅스 커널 개발은 꽤 느슨했고, 상대적으로 적은 수의 사용자와 개발자만이 참여했다... 2021. 8. 26.
[Linux Kernel] 리눅스 커널 개발 가이드: Introduction A guide to the Kernel Development Process — The Linux Kernel documentation © Copyright The kernel development community. www.kernel.org Introduction 이 문서는 커널 개발 프로세스와 개발자나, 고용주들이 개발에 참여하면서 겪는 좌절에 대해 다룬다. 커널 코드가 “mainline”에 머지되어야 할 이유는 많다. 코드가 mainline에 머지되어야 사용자들이 편하게 사용할 수 있고, 기여한 코드가 커뮤니티로부터 유지보수 받고, 커널 개발의 방향에 영향을 줄 수 있다. 리눅스 커널에 기여된 코드는 반드시 GPL 호환 라이선스여야 한다. 1.1 Executive summary (링크는 번역 후 추.. 2021. 8. 26.
[LWN.net] bdflush() 시스템 호출의 삭제 Bye-bye bdflush() [LWN.net] Did you know...?LWN.net is a subscriber-supported publication; we rely on subscribers to keep the entire operation going. Please help out by buying a subscription and keeping LWN on the net. By Jonathan Corbet July 5, 2021 The addition of system calls to t lwn.net 리눅스 커널에는 종종 시스템 호출이 추가된다. 거의 모든 merge window마다 시스템 호출이 추가된다. 하지만 시스템 호출이 제거되는 경우는 훨씬 적다. 근데 이제 시스템 호출 하나가.. 2021. 8. 23.
[KNK 정리] 7장: Basic Types 요약/정리 integer types integer type은 말 그대로 정수를 데이터로 하는 변수의 타입이다. signed와 unsigned로 나누는데, signed의 경우 첫 번째 비트(MSB, Most Significant Bit)를 부호 비트로 사용한다. MSB가 1이면 음수, MSB가 0이면 양수이다. unsigned의 경우는 항상 0보다 크거나 같은 정수만 표현할 수 있으며, MSB를 부호 비트로 사용하지 않는다. 기본적으로 C에서 integer type은 별도로 명시하지 않는 한 signed이다. 가장 일반적인 integer type은 앞의 글에서도 많이 사용했단 int이다. 그 외에 필요에 따라 long int, short int도 사용할 수 있다. long int, short int는 lo.. 2021. 8. 22.
[KNK 정리] 6장: Loops 요약/정리 반복문(Loop)는 정해진 구문을 반복적으로 실행하는데 사용된다. C에는 반복문으로 for, while, do가 있다. while statement 형식 : while ( expression ) statement while문은 expression이 거짓이 될때까지 statement를 실행한다. 먼저 expression을 evaluate하고, 참이라면 statement를 실행한다. 일반적으로 statement를 실행하다보면 특정 시점에서 expression이 거짓이 되어 while문이 종료된다. 그렇지 않은 경우에는 무한 루프에 빠지거나, break나 goto로 빠져나와야 한다. 일부러 expression에 1처럼 상수를 넣어서 무한루프를 만드는 경우도 있다. do statement 다른데선 d.. 2021. 8. 21.
mutt 이메일 클라이언트 사용법 정리 이 글은 필자가 공부하는대로 부족한 부분을 업데이트 하고 있습니다. mutt에 관하여 좋은 내용을 알고계시다면 알려주세요! mutt란 mutt는 터미널에서 사용하는 이메일 클라이언트다. 리눅스 커널은 이메일을 통해 대부분의 토론과 패치로 소통한다. 그러다보니 참여하려면 이메일을 정말 많이 봐야한다. 보통 이메일을 쓸 땐 웹 기반 이메일 서비스를 사용하지만, 리눅스 커널 메일링 리스트처럼 하루에도 수백개의 메일을 수신해야 하는 환경에는 적합하지 않다. 텍스트 기반인 mutt를 애용하자. 패치를 몇개 보내면서 이메일 클라이언트 때문에 삽질을 좀 했다. 인라인 패치가 아니라 첨부파일로 보낸다던가, 어떤 메일에 대한 답장으로 인라인 패치를 보내고 싶은데 방법을 모른다던가.. 그런걸 여기서 글로 정리해보려고 한다.. 2021. 8. 20.