리눅스 커널 스터디 참고자료 (x86)

리누즈박 2013.05.06 08:51 조회 수 : 18397 추천:2

원 자료가 사라져서 Google 페이지 스냅샷으로 복구한 글입니다.


제  목: 리눅스 커널 스터디 참고자료

작성자: 김태훈

작성일: 2007.11.04 16:04:11

-----------------------------------------------------------------------------------------------------


< 부팅 프로세스 관련 >

- 만들면서 배우는 OS 커널의 구조와 원리(by 김범준)
: x86 하시는 분들은 많은 도움을 얻을수 있는 서적입니다. 초반에 부트로더 분석하실때는 이책을 들고 다니시면서 참고하시면 좋을듯 하네요.

- Linux Booting 과정 이해(by 백창우)
http://iamroot.org/xe/3933

: 부팅 과정에 대해 정리를 잘해 놓으셨습니다. 저희도 많은 도움을 받았던 자료입니다. 역시, 초반에는 출력해서 들고다니시면 좋을듯 하네요.

- Linux i386 Boot Code HOWTO
http://tldp.org/HOWTO/Linux-i386-Boot-Code-HOWTO/
: 역시 x86 하시는분들께 도움이 되는 자료입니다. 영어라는 압박이 있지만, 전체적으로 한번 ㅎㅜㅌ어보시고, 필요할때 찾아보기에 좋은 자료 입니다.

- 리눅스 커널의 이해 - 부록 A
: 부록 A에 부팅 과정에 대해 개괄적인 내용이 있습니다. 시간나실때 한번 읽어 보시면 좋겠군요.

- 리눅스 커널 구조와 원리 - 챕터.27
: 역시 개괄적인 내용이 잘 정리되어 있습니다.

- start_kernel() 이전 부팅과정 참고자료 모음(by 지현구)
http://iamroot.org/xe/4227

: 지현구님께서 부팅 프로세스 관련 자료를 정리하여 주셨습니다.

- LILO 분석 자료(by 김태훈, 남현우)
http://iamroot.org/xe/4316
: 저희 팀에서 분석한 자료 입니다.

- arch/x86_64/setup.S 전반부(by 이종우)
http://iamroot.org/xe/4307

: 저희 팀에서 분석한 자료 입니다.

- arch/x86_64/setup.S 후반부(by 박경태)
http://iamroot.org/xe/4293
: 저희 팀에서 분석한 자료 입니다.

- arch/x86_64/setup.S 후반부(발표자료, by 김태훈)
http://iamroot.org/xe/4341
: 저희 팀에서 분석한 자료 입니다.

- arch/x86_64/boot/compressed/head.S(by 선준규)
http://iamroot.org/xe/4330
: 저희 팀에서 분석한 자료 입니다.

- 커널 이미지 압축 해제(by 지현구)
http://iamroot.org/xe/4309

: 저희 팀에서 분석한 자료 입니다.

- arch/x86_64/kernel/head.S(by 이백, 김정수)
http://iamroot.org/xe/4312
: 저희 팀에서 분석한 자료 입니다.


< 어셈블리어 관련 >

- as86 man page
: LIlO는 as86 어셈으로 작성되어 있습니다. as86자료는 man page에 가장 잘 나와있는것 같더군요. "man as86"

- Intel 메뉴얼, 2A, 2B
http://www.intel.com/design/processor/manuals/253666.pdf
http://www.intel.com/design/processor/manuals/253667.pdf
: 어셈도 일종의 API라고 생각하시면 쉽게 접근이 가능합니다. 윈도우즈 프로그래밍시에 MSDN을 참고하여 코딩을 하는것처럼, 이 문서들을 참고하시면서 instruction을 분석하시면 됩니다.

- x86 interrupt & instruction table
http://iamroot.org/xe/3930
: 백창우님께서 올려주신 자료입니다. 해당 instruction과 interrupt가 무엇인지 모를때 참고하시면 됩니다. instruction에 대한 내용은 인텔문서가 자세히 나와있지만 간단히 찾아보기엔 이자료가 더 좋은듯 합니다. 여기 없는것은 인텔문서에서 찾아보시면 됩니다.


< 아키텍처 관련 >

- 만들면서 배우는 OS 커널의 구조와 원리(by 김범준)
: x86 아키텍처에 관해 정리를 잘해 놓으셨더군요.

- amd64 메뉴얼, 2권
http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/24593.pdf
: AMD에서 만든 메뉴얼입니다. 아키텍처 메뉴얼은 해당 칩을 만드는 회사에서 나오는 메뉴얼보다 자세한건 없습니다. 저희팀에서 몇몇 분들이 제본을 떠서 들고 다니십니다.

- Intel 메뉴얼, 3A, 3B
http://www.intel.com/design/processor/manuals/253668.pdf
http://www.intel.com/design/processor/manuals/253669.pdf
: 인텔에서 만든 x86 & x86_64 메뉴얼 입니다. 인텔 문서가 분량이 많아서 인지, 좀더 디테일하게 나와있는듯 합니다. AMD와 INTEL 두개 비교하시면서 보시면 좋을듯 하네요.

< 리눅스 커널 관련 >
- 리눅스 커널의 이해 3판
: 말이 필요없습니다. 최고권위의 커널 서적, 버전이 올라가면서 틀려진 내용도 있고, 따분한 감이 없지않지만, 이만한 리눅스 커널 책은 없는듯 합니다. 바쁘신 분들은 중간중간 관련 내용이 나오면 참고하는 형식으로 활용하시면 좋을듯 합니다.

- 리눅스 커널 심층분석(by Robert Love)
: 제가 처음으로 접한 커널 책입니다. 지금은 잘 모르겠지만, 그때 당시에는 가장 쉽게 쓰여진 커널 서적 이었습니다. 분량이 적어서 커널에 대해 전체적으로 한번 보기에 좋은듯 합니다.

- 리눅스 커널 프로그래밍(by 한동훈)
: 실습할 내용이 많은 커널 서적입니다. 아직 보질 못해서;;

- 리눅스 커널 구조와 원리
: 최근에 나온 커널 서적입니다. 그림이 많고, 전체적으로 쉽게 쓰여진것 같더군요. 

- Monac
http://monac.egloos.com/
: '리눅스 커널 프로그래밍'의 저자 한동훈님의 블로그 입니다. 유일하게 한글로된 최신 스케쥴러인 CFS에 대한 내용을 담고 있더군요.


< 그외 > 

- 기존 멤버의 주석
: 예습하실때 상당히 도움이 될듯합니다. 사실 앞에서 다룬 많은 참고자료보다 이보다 좋은 참고자료는 없겠죠? ^^

번호 제목 글쓴이 날짜 조회 수
공지 [공지] 강좌, 팁, 정보등에 대해 올리는 게시판입니다. woos 2016.04.09 246
129 Pro Git 2장, 3장 요약입니다. 아폴로 2013.11.05 52110
128 포토샵 웹버전입니다. [1] 강진성 2010.05.14 40685
127 맥에서 리눅스 커널 빌드하기 [2] K 2013.06.30 24821
126 #pragma에 관련해서.. [2] 원민수 2006.07.19 20782
125 kernel 2.6의 kzalloc함수 (원민수 씀) 백창우 2007.02.23 19337
124 태훈님에 이어. ARM kernel 참고자료 백창우 2007.11.05 19014
» 리눅스 커널 스터디 참고자료 (x86) [4] 리누즈박 2013.05.06 18397
122 누가 나를 호출했는지 찾기 + 포인터를 심볼 이름으로 변환하여 출력하기 [1] 지현구 2007.02.27 17863
121 systemtap 관련 간단한 소개입니다. 남용우 2007.11.06 17057
120 허접 영어 사전입니다. [3] 백창우 2008.04.22 16092
119 define을 사용한 version 처리. 원민수 2008.02.09 15026
118 여기는 팁, 기타 정보를 올리는 곳입니다. 백창우 2006.06.05 14751
117 커널 분석용 vim 플러그인 설치하기 (Rev.4) [21] 리누즈박 2013.06.30 13973
116 막강 디버깅 매크로 DM_PRINT() [4] file 배상경 2010.11.23 12045
115 if문에 사용하는 likely와 unlikely 함수의 용도 [1] 아폴로 2014.03.05 11173
114 조금은 묵직한 시스템, 뇌감시장치 김성현2 2011.11.17 10585
113 리눅스 커널 코딩 스타일입니다. [1] 아폴로 2013.09.13 10147
112 xen 4.1 설치 방법(우분투 11.04) [2] 이상철 2012.11.14 10109
111 Kernel 소스코드 github에 복사하는 법 [6] 리누즈박 2013.06.16 9836
110 돈되는 이야기?! 삼성 손가락 혈압계 [1] 김성현2 2011.10.20 9493
XE Login