포럼 회원으로 등록하신분만 다운로드가 가능합니다. 최대 업로드 가능한 용량은 1GB 입니다.

예전에 daum eLinux cafe서 썼던글을 kelp에 올렸었습니다.
까먹고 있었는데, 돌아다니다 보니....이 글이 있더군요.

다시 정리하려고 워드 프로세서를 띄웠다가, 일이 한도 끝도 없을 것 같아서
일단 올려놓고, 나중에 다시 정리할까 합니다.

=======================================
참고 자료리스트
글쓴이 : 고도리 (2004년 07월 02일 오전 11:45) 읽은수: 11,681 [ 임베디드강좌/윤덕배  ]  
이것도 한참 옛날에 작성한건데 위치를 까먹어서리...다시 정리를 해서 올립니다.

공부에 필요한 자료를 말씀드리면...

- 메인자료

주로 많이 공부해야하고 봐야할 자료라고 생각되는 것들을 나열해 봅니다.

1. ARM core, Programming, S3C2410
1) S3C2410 cpu manual
ARM 코어를 가진 삼성 메뉴얼을 보면 친절하게도, Programmer's model과 instruction set등이
메뉴얼에 포함되어 있더군요. 일단 asm 프로그래밍쪽은 밑의 두개 자료들과 섞어서 보면
되겠습니다만... 이 문서는 거의 머리에 넣고 살아야겠죠?

위치:
http://www.samsung.com/Products/Semiconductor/SystemLSI/MobileSolutions/MobileASSP/MobileComputing/S3C2410X/um_s3c2410s_rev12_030428.pdf

2) ARM7강좌
제가 알기론 이 강좌는 옛날에 하이텔 '디지털 동호회'에 올라왔던 걸로 알고 있습니다.
깔끔하게 아래한글로 정리가 되어 있네요...ARM코어랑 명령어쪽은 굉장히 설명이 잘되어
있네요.

위치:
http://kelp.or.kr/jsboard/read.php?table=pds&no=8&page=8

이건 꼭 보셔야 asm분석은 좀 하겠지용

3) ARM asm강좌
프로그래밍세계에 있는 정병수 님이 쓰신 arm asm강좌....인데, 한글이니 볼만
하죠...2)번자료랑 겹치기는 하는데 그림도 있으니 알아보기 쉽네요...^^
arm core history도 있고요...

위치는 제가 까먹어서리......구하면 구할 수 있을겁니다.


2. Kernel쪽
1) The Linux Kernel - 돌도끼 번역판
워낙 유명한 책이니 말할것도 없지만...일단 커리큘럼 정하는데는 기본이지 않나
생각이 듭니다. 리눅스 커널쪽 공부할때 참조하기에는 딱인 책이고, 실제로도 PCI할때는
굉장히 도움을 많이 받았습니다.

위치:
http://doc.kldp.org/Translations//html/The_Linux_Kernel-KLDP/tlkindex.html - kldp.org에 있는거고
http://linuxkernel.net - 이 문서 번역할때 주도적인 활동을 하신 '이 호' 님의 홈페이지로 pdf파일과
커널 프로그래밍 문서등이 있습니다.

2) 일본커널 분석 자료 번역판
일본에서 2.4 커널이 나올때 쯤 비슷할때 누가 쓴건데(이름을 못외워서리..) 제가 지금까지
본 커널문서로는 최고입니다....특히 tcp/ip스택 부분에 대해서는 타의 추종을 불허합니다.
(전부분에 걸쳐서 타의 추종을 불허한다고 해야겠더군요...번역하다보니...--;)

단, 일본어 입니다...번역기가 필요하고 일본어 실력이 필요한데...다행히 1장인 프로세스
부분은 어떤분이 번역정리를 잘 한게 있고, 3장 메모리 부분은 제가 번역을 대충 했습니다.
그림이랑 붙여야 되는데...게을러서리...

위치:
http://japan.linux.com/kernel/internal24/index.shtml - 일어 원문이고요.

3) 커널 소스
이걸 빠트릴 수 없죠?...^^, 당연히 S3C2410으로 포팅된 커널 소스가 있습니다.

삼성에서 공식 사이트로 링크 시켜 놓은 MIZI쪽 자료가 있습니다.
그리고 비공식적으로 존재하는 북잘치시는(고수라는 얘기) "이상욱"님이 작성하신 swl patch가 있습니다.
(실명 밝혀도 되겠지요?....ㅎㅎ)

저는 swl patch를 훨 좋아합니다. 코드가 직관적이고 잘돌아갑니당...^^


위치:
http://www.mizi.com/en/developer/s3c2410x


3. 부트로더

1) u-boot 소스
현재 버젼이 0.4.0이라서 이것을 타겟으로 하겠습니다...

S3C2410과 S3C2400의 EV보드인 SMDK2410에 포팅이 되어 있습니다.

u-boot는 armboot와 ppcboot가 다르게 발전하다가 합쳐진것입니다.
물론 두개다 구조는 비슷한걸로 알고 있습니다....개발자가 거의 같으니깐요...^^

이걸 공부하게 되면 ppc, mips, x86쪽의 부트로더도 같이 공부하신다고 생각하시면
됩니다. 물론 내부는 틀리지만 흐름이 비슷해서 한번 익힌다면 비슷하게 사용할 수 있을겁니다.

위치:
http://sourceforge.net/projects/u-boot


2) armboot 포팅기
현대 arm720t 코어 칩에 포팅한 포팅기인데 얻을게 많을겁니다...왜냐

u-boot의 arm쪽 포팅이랑 거의 같으니깐요...최소한 흐름은 알 수 있죠.

위치:
http://www.netmanias.com에 가면 development =>Microprocessor & Embedded OS => whitepaper 쪽의
이한구 님이 쓰신 Armboot 1.1.0 & Linux Kernel 2.4.18 Porting Guide for GMS30C7201



- 참고자료

메인자료를 읽으면서 참고를 해야하는 자료.

1. ARM core, Programming

1) ARM920T architecture
ARM920T Technical Reference Manual
&
ARM Architecture Reference Manual

위치:
www.kelp.or.kr의 왼쪽밑의 S3C2800일반자료실의 8번자료참조

2) S3C2800 메뉴얼 번역된 것 및 2800 커널 포팅 노트
www.kelp.or.kr에서 프로젝트로 진행중인 자료인데 메뉴얼 중 일부가
S3C2410과 겹치는 부분이 있습니다. 코어(ARM920T)가 같으니깐요.

2800 커널 포팅자료는 2410커널을 그 기초로 했습니다. 즉, 2410이나
아니면 다른 arm계열 cpu를 포팅할때 어디를 고쳐야 하는지 참조를 할 수
있는 포인트를 얘기한 부분이라 도움이 되겠지요

위치:
www.kelp.or.kr의 왼쪽밑의 S3C2800일반자료실과 문서자료실

2. Kernel쪽

1) Understanding the Linux Kernel
리눅스 커널쪽의 자료로는 아주 좋다고 얘기를 하던데...저는 영 와닿지가
않아서요...(실력이 없어서 그렇겠죠..이해를 못하니깐요.)

하여간 이 책은 여러 동호회 자료실에 있으니깐 참조하시고요.
(pdf or chm file)

2) Linux Programming Bible(권수호 저) 혹은 www.kelp.or.kr의 권수호님 강좌
내용이 애매한 경우도 있지만....참조용으로는 괜찮습니다...
(아무래도 분석하시면서 정리한거라 탈고가 안되어서 그런듯....)

특히 참조할 부분은 StrongARM커널 부트쪽을 분석해 놓은 자료가 되겠군요.


3) 리눅스 커널에 전반적인 분석자료...
연세대 다니는 분이 쓴 자료인데....kesl자료실등에도 있을겁니다만 링크를 발견했습니다.
브리프적인 성격이 강하지만 한글인데다가 흐름도등이 있어 참조하기로는 그만입니다.

위치:
http://user.chollian.net/~zmnlks/hanos.pdf

4) 남상규 님이 쓰신 "임베디드 시스템 엔지니어를 위한 리눅스 커널 분석"
StrongARM에 대한 커널자료로 일단 ARM계열이니 굉장히 참조할만 하겠지요?
특히 MMU쪽의 TLB설명은 한글로 된것은 별루없는데..여기는 있더군요...

위치:
http://doc.kldp.org/KoreanDoc//html/EmbeddedKernel-KLDP/


3. 부트로더 및 임베디드 리눅스쪽 패키징작업

1) ppcboot자료
부트로더를 u-boot로 정하니깐 자료가 딱히 없지만 ppcboot랑 구성이
비슷하니깐 구성을 참조하기는 좋겠죠? 그냥 참조용이니깐요

자이언텍의 mpc860기반 보드에 포팅하는 전반적인 자료인데...개발환경
설정등 잘되어 있습니다...

위치:
http://www.netmanias.com에 가면 development =>Microprocessor & Embedded OS => whitepaper 쪽의
고일한 님이 쓰신 "Linux Porting Guide "

2) busybox를 이용한 임베디드 리눅스 패키징
이쪽 자료는 거의 전무한 편이라서...제가 괜찮게 본걸 올린겁니다만...상세한 자료는
나중에 제가 정리한 자료를 올리도록 하고요

위치:
http://www.netmanias.com에 가면 development =>Microprocessor & Embedded OS => whitepaper 쪽의
김영남 님이 쓰신 "MPC860T 기반 IO860T보드에 리눅스(RT-Linux, RTAI) 포팅 "


일단 필요한 자료들을 주절주절 해놨습니다.


노희준

2006.07.19 01:35:51
*.104.135.54

정리를 잘 해놓으셨네요^^ 참고가 많이 될 것 같습니다.

최근에 나온 "개발자들을 위한 ARM 프로세서"라고 옴사에서 나온 책이 있습니다. 기본적인 메뉴얼 번역과 펌웨어에 대한 설명이 되어있습니다. S3c2410A와 S3C2440A를 기반으로 쓴 책인데 초보자들은 한번쯤 볼만합니다. 저도 아직 다 본 것은 아닌데... 처음에 이솝보드에 소스를 컴파일하면서 배우기엔 좋을 것 같네요. 예전에 삼성에서 제공한 소스를 가지고 한것 같습니다.
List of Articles
번호 제목 글쓴이 날짜 조회 수
42 페도라 5에 이솝보드 개발환경 만들기 따라하기 문서입니다. file [6] 진태영 2006-11-30 5985
41 S3C2410/2440 2.4.x용 touch test program 고현철 2006-11-28 5675
40 Serial 통신 프로그램입니다. file [4] 양용현 2006-11-28 5940
39 sound App(wave_player) 입니다. file [5] 이종창 2006-11-22 5775
38 리셋회로입니다. file [1] 박영학 2006-11-16 5704
37 aesoptool을 이용한 SDL cross compile환경 file 고현철 2006-11-15 5642
36 iMX21 ADS용 Ext_uart 드라이버.. 커널 2.4 file 김경호 2006-11-14 5694
35 DM9000A 관련 문서 file [1] 이제현 2006-11-12 5983
34 Linux serial programming howto & example by godori file [1] 고현철 2006-10-27 6225
33 aesop-2440 2.6.13 kernel sound driver & App. file [1] 고현철 2006-10-18 5886
32 touchscreen library - tslib file [1] 고현철 2006-10-14 5647
31 임베디드 리눅스 공부에 대해서 [4] 고현철 2006-10-14 6860
30 리눅스커널2.6 포팅자료 .... file [3] 장석원 2006-09-25 5693
29 usb mass storage 관련 예전 spec문서 file 고현철 2006-09-09 6058
28 Aesop-2442 회로도 (미검증 버전) file [10] 이제현 2006-09-05 5832
27 aesop2440 dnw용 usb monitoring software file [1] 고현철 2006-08-16 5820
26 [gcalc] 레지스터값 분석이나 변경시 유용한 Hex<->Binary ... file [4] 고현철 2006-08-06 5804
25 aesop-2440 inetd telnetd howto file [1] 고도리 2006-07-28 5977
» Embedded Linux Reference Guide - 예전에썼던글 [1] 고현철 2006-07-18 5996
23 aesop에 쓰인 삼성 4" 480x272 LCD datasheet file 고현철 2006-06-24 5701

사용자 로그인