교육지원 IT시스템 선진화

Similar documents
휠세미나3 ver0.4

Chap 5 루트파일시스템 (Root F/S)

PowerPoint 프레젠테이션

Mango220 Android How to compile and Transfer image to Target

임베디드시스템설계강의자료 4 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기

Microsoft PowerPoint - 03-Development-Environment-2.ppt

GNU/Linux 1, GNU/Linux MS-DOS LOADLIN DOS-MBR LILO DOS-MBR LILO... 6

USB 케이블만을이용한리눅스 NFS 개발환경 (VirtualBox) 최초작성 : 2010 년 10 월 21 일 작성자 : 김정현 수정내용 최초작성 by 김정현 스크립트추가, 설명보충 by 유형목 1. VritualBox

작성자 : saint Overview BackTrack 는 LILO 를부트로더로사용한다. BactTrack 을기본환경설정그대로설치하면부팅할수없는경우가있는데, 이것은실린더크기가 1024 보다큰하드디스크에설치하면 LILO 가 OS 를정상적으로읽어올수없기때문이다. 요즘나오는

망고100 보드로 놀아보자-4

Mango-AM335x LCD Type 커널 Module Parameter에서 변경하기

무시하고진행합니다. $ sudo rootstock -d precise --seed ubuntu-standard -x en_us.utf-8 -f ubuntu -l ubuntu -p ubuntu -i 2G I: Running on a x86_64 machine I: Cre

Raspbian 설치 라즈비안 OS (Raspbian OS) 라즈베리파이 3 Model B USB 마우스 USB 키보드 마이크로 SD 카드 마이크로 SD 카드리더기 HDM I 케이블모니터

교육지원 IT시스템 선진화

Mango24R2 Auto Write

시스템 사용자 계정 관리

Tizen

지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함. 한번은 intel CPU를위한 gcc로, 한번은 ARM CPU를위한 gcc로. AR

슬라이드 제목 없음

Microsoft PowerPoint - 알고리즘_1주차_2차시.pptx

ISP and CodeVisionAVR C Compiler.hwp

PowerPoint 프레젠테이션

망고 M 카메라 포팅 가이드

Microsoft Word - windows server 2003 수동설치_non pro support_.doc

Microsoft PowerPoint - 02_Linux_Fedora_Core_8_Vmware_Installation [호환 모드]

<3032B0AD202D20B8AEB4AABDBA20BCB3C4A12D556E6978C0CEC5CDB3DDBAB8C3E6C7D0BDC02E687770>

Chap 3 부트로더 (Bootloader)

<4D F736F F D20B0B6B3EBC6AE33C3E2BDC3C8C45FC3D6C1BE5F2D2E646F63>

ConnectCore i.mx53 / Wi-i.MX53 Freescale i.mx53 Cortex A8 system-on-module 네트워크가가능한 i.mx53 ConnectCore는새로운프리스케일 i.mx53 Application 프로세서기반인고성능 32-bit S

PowerPoint 프레젠테이션

인켈(국문)pdf.pdf

<4D F736F F F696E74202D20C0BDBCBA484D4920C0FBBFEB20C5DAB7B9B8C5C6BDBDBA20B4DCB8BBB1E228B9DFC7A5C0DAB7E129>

FlexCloud Linux Server 원격접속및볼륨확장매뉴얼 Date: Hostway IDC Corporation Copyright 2011 Hostway IDC Inc. All rights reserved. TEL: URL:

Chap 10 안드로이드커널 (Kernel)

Microsoft Word - MV210_CPUSpec.doc

Chapter. 5 Embedded System I Bootloader, Kernel, Ramdisk Professor. Jaeheung, Lee

5" TFT- LCD 및감압터치지원 : 800x480 USB Host 2.0, USB OTG 2.0, GPS, Wireless LAN, Ethernet 10/100Mbps 통신지원 300 만화소 CMOS Image Sensor 고해상도카메라모듈내장 전원은베이스보드에서공

목 차 1. 안전을 위한 주의사항 2. 사 전에 2-1. 제품 특징 2-2. 제품 구성 2-3. 각 부분의 명칭 전 뷰어 / 뷰어 설정 전 뷰어 / 환경 설정 환경설정 본 값 재생방법 (블랙박스) 3-15.

벤처연구사업(전동휠체어) 평가

USER Manual

<4D F736F F F696E74202D20454D43BCB3B0E8B4EBC3A5BBE7B7CA2828C1D629B8B6B7E7C0CEC6F75FBDC5C1D6C8A3292E707074>

Linux Server 리눅스왕초보실무를익혀라! 리눅스서버 20 fedora 김영훈ㆍ정거룡지음

(Microsoft PowerPoint - \270\266\300\314\305\251\267\316\304\250USB_Host_Device_\272\316\306\256\267\316\264\365\275\307\275\300_Philip.ppt)

1217 WebTrafMon II

Flute-GR_BV199_DOS.indb

슬라이드 1

PLC Robot Starter Quick Guide

Microsoft PowerPoint - 02-Development-Environment-1.ppt

6. 설치가시작되는동안 USB 드라이버가자동으로로드됩니다. USB 드라이버가성공적으로로드되면 Setup is starting( 설치가시작되는중 )... 화면이표시됩니다. 7. 화면지침에따라 Windows 7 설치를완료합니다. 방법 2: 수정된 Windows 7 ISO

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Code Generation in Rapid

(SW3704) Gingerbread Source Build & Working Guide

다음 사항을 꼭 확인하세요! 도움말 안내 - 본 도움말에는 iodd2511 조작방법 및 활용법이 적혀 있습니다. - 본 제품 사용 전에 안전을 위한 주의사항 을 반드시 숙지하십시오. - 문제가 발생하면 문제해결 을 참조하십시오. 중요한 Data 는 항상 백업 하십시오.

NFS 설정 가이드

Microsoft Word - Armjtag_문서1.doc

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

CZ-KETI-IOTG200

PowerPoint 프레젠테이션

1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot)

네이버블로그 :: 포스트내용 Print VMw are 에서 Linux 설치하기 (Centos 6.3, 리눅스 ) Linux 2013/02/23 22:52 /carrena/ VMware 에서 l

Microsoft PowerPoint - 06-CompSys-11-System.ppt

Install stm32cubemx and st-link utility

LCD Monitor

경우 1) 80GB( 원본 ) => 2TB( 복사본 ), 원본 80GB 는 MBR 로디스크초기화하고 NTFS 로포맷한경우 복사본 HDD 도 MBR 로디스크초기화되고 80GB 만큼포맷되고나머지영역 (80GB~ 나머지부분 ) 은할당되지않음 으로나온다. A. Window P

PowerPoint 프레젠테이션

Copyright 2004 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A..,,. Sun. Sun. Berkeley BSD. UNIX X/Open Company, Ltd.. Sun, Su

Microsoft Word - LVM으로리눅스설치및운용.doc

DE1-SoC Board

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

untitled

안전을 위한 주의사항 제품을 올바르게 사용하여 위험이나 재산상의 피해를 미리 막기 위한 내용이므로 반드시 지켜 주시기 바랍니다. 2 경고 설치 관련 지시사항을 위반했을 때 심각한 상해가 발생하거나 사망에 이를 가능성이 있는 경우 설치하기 전에 반드시 본 기기의 전원을

Microsoft PowerPoint - em8-리눅스설치.ppt

SW테스트베드 장비 리스트

2주차

System Recovery 사용자 매뉴얼

전자교탁 사양서.hwp

LCD Monitor

PowerPoint 프레젠테이션

untitled

PowerPoint 프레젠테이션

Mango-E-Toi Board Developer Manual

Microsoft Word ARM_ver2_0a.docx

PowerPoint 프레젠테이션

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

untitled

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

Microsoft PowerPoint - User Manual pptx

I 안전 지침 다음 안전 지침을 이용해 사용자 자신과 북톱(Booktop)를 보호하십 시오. M1022 북톱(Booktop) 컴퓨터를 사용할 때 주의: 휴대용 컴퓨터를 신체 위에 직접 올려놓고 장시간 동 안 사용하지 마십시오. 장시간 작동으로 인해 컴퓨터 밑부 분에서

Microsoft Word - Automap3

RealDSP UT 프로그램 메뉴얼

Adobe Flash 취약점 분석 (CVE )

LEICA C-LUX

알아 둘 사항 아이오드 제조사는 본 기기에 하드디스크를 포함하여 출고하지 않습니다. 따라서 하드디스크에 문제가 발생할 경우, 구매처 또는 해당 하드디스크 서비 스센터에 문의 하시기 바랍니다. 정해진 용도 외의 사용으로 발생한 문제에 대해서, 당사는 어떠한 책임도 지지

Microsoft PowerPoint - 리눅스부팅과정.pptx

RedHat Linux Fedora Core 4 + APM 소스컴파일설치 김희균 [ 사전준비 : 리눅스시디, 리눅스설치공간준비와컴퓨터의 IP 주소와넷마스크, 게이트웨이주소기록 1. Linux 시디로부팅을한다. 2. Gra

Microsoft Word - Fedora Core 9 개발환경 최종본.docx

ez-md+_manual01

I 안전 지침 사용자 자신과 넷북의 보호를 위해 다음의 안전 지침을 사용하십시오. M912 넷북 컴퓨터를 사용할 때 경고: 휴대용 컴퓨터를 장시간 신체 위에 직접 올려놓고 사용 하지 마십시오. 장시간 작동으로 인해 컴퓨터 밑부분에서 열 이 발생할 수 있습니다. 지속적인

ez-shv manual

Transcription:

Module 6: Target Board (Achro-210T) Initialization ESP30076 임베디드시스템프로그래밍 (Embedded System Programming) 조윤석 전산전자공학부

주차별목표 타겟보드 (Achro-210T) 타겟보드하드웨어사양 타겟보드소프트웨어구성요소 타겟보드구동하기 MicroSD 메모리초기화하기 MicroSD 메모리에시스템이미지올리기 2

Achro-210T Board 휴인스사의 Achro-210T( 이하 210T) 삼성에서개발한 ARM Cortex-A8 코어를이용한프로세서인 S5PV210(1GHz) 을사용 임베디드리눅스와 Android 2.2(Froyo) 가포팅되어있음 3

Achro-210T Achro-210T 제품구성 ( 출처 :www.huins.com) 4

Achro-PC100 Achro-210T 개발용확장보드 (Achro-PC100) 5

Achro-210T H/W Spec. Achro-210T 보드의하드웨어사양 항목 CPU SDRAM SD Socket Ethernet WiFi Cortex-A8 based Samsung S5PV210 512MB DDR MicroSD 2GB, MicroSD 8GB 10/100Mbps Ethernet 802.11 b/g/n 사양 Bluetooth Bluetooth 2.1 UART CAMERA AC'97 Audio Codec Standard UART 300M Pixel AC'97 Compatible Stereo Codec, Mic Port, Headphone Port Display 7" Color TFT LCD (800 480) 6

Achro-210T H/W Spec. Achro-210T 보드의하드웨어사양 항목 사양 Touch Screen Output Display Debugging Port USB Host USB Client Sensor Location Battery Power S3C Touch Interface HDMI JTAG : CPLD 10-Pin JTAG, 20-Pin Header for Multi-ICE USB 2.0 Host USB OTG Triaxial Accelerator, Magnetic Field Sensor GPS 3.7V 4,000mAh DC 5V, 3A 7

Achro-210T System Block Diagram Achro-210T 시스템블록다이어그램 8 ( 출처 :www.huins.com)

Target Board 구성요소 타겟보드를구동하기위해필요한세가지필수구성요소 부트로더 (bootloader) 부트로더는하드웨어를초기화하고커널이미지를램 (RAM) 에올려주어시스템부팅을할수있도록해주는프로그램 커널이미지 (zimage) 프로세스관리, 메모리관리, 장치관리, 네트워크관리등의운영체제의핵심기능을담당 리눅스파일시스템 루트파일시스템이라고도하며, 리눅스시스템이정상적으로부팅되었을때루트 (/) 로마운트됨 다양한리눅스명령어, 시스템환경설정파일, 응용프로그램들로구성됨 9

Target Board 구성요소 부트로더 (Bootloader) 시스템이부팅될때가장먼저실행되는프로그램으로 PC 의바이오스 (BIOS) 역할과운영체제로더 (loader) 의역할을함 여러종류의부트로더가있지만본강의에서는 u-boot 를사용 CPU 클럭이나메모리타이밍, 인터럽트벡터, UART 등의시스템하드웨어들을초기화하여운영체제가동작할수있는환경을만든후, 운영체제의핵심프로그램인커널을램으로로딩하고실행시켜줌 임베디드시스템에서사용하는부트로더는시스템개발을도와주는부가적인기능들도제공 플래시메모리를퓨징하는기능을가지고있음 10

Target Board 구성요소 커널 (Kernel) 운영체제의핵심기능을수행하는프로그램으로프로세스관리, 메모리관리, 장치 (device) 관리, 네트워크관리, 파일시스템관리등을지원 본강의에서사용하는타겟보드의경우커널은 zimage 라는커널이미지로제공 리눅스파일시스템 (Linux File System) 커널이메모리에로드되고난다음, 시스템을운영하는데필요한모든것을포함 기본라이브러리, 명령어실행파일, 사용자관련디렉토리, 환경설정파일, 다양한응용프로그램으로구성되어있음 시스템이정상적으로부팅되면루트 (/) 디렉토리로마운트됨 사용자가리눅스를사용한다고하면외형적으로는리눅스파일시스템상에서작업하는것임 11

Target Board 구성요소 타겟보드구동이미지 타겟보드구성에필요한부트로더이미지와커널이미지는 DVD 디스크에 images/ 디렉토리에들어있음 부트로더와커널이미지파일 12

micro-sd Memory(System) 타겟보드구동이미지 시스템용 micro-sd 메모리 (2GB) 의메모리구성 13

S/W of Target Board 타겟보드구동이미지 리눅스루트파일시스템이미지 14

타겟보드이미지 타겟보드이미지설치및동작개요 Achro-210T 개발보드가구동되려면부트로더와커널이미지그리고리눅스파일시스템모두 MicroSD(µSD) 메모리에저장되어있어야함 타겟보드이미지를기록하는방법 시스템구동용으로이미저장된이미지를 ddwin 툴을사용하여 µsd 메모리에한번에기록 각각의이미지를개별적으로저장 15

타겟보드이미지설치 - ddwin ddwin 툴을사용하여타겟보드이미지기록하기 ddwin 툴설치프로그램은 DVD 이미지내에 utilities/windows/ddwin 디렉토리밑에있음 윈도우용프로그램 ddwin 을이용한데이터복구 16

타겟보드이미지개별적으로설치하기 타겟보드이미지들을개별적으로설치하기 이미지설치과정 µsd 메모리를 PC 에삽입한 가상머신에설치된리눅스에서해당메모리를사용할수있도록 VirtualBox 에서적절한설정 리눅스에서 µsd 메모리를적절히파티션 파티션된영역에부트로더이미지와커널이미지, 그리고리눅스파일시스템을복사 µsd 메모리에타겟보드용이미지가설치되고나면 µsd 메모리를 Achro-210T 보드의 SYSTEM 이라고표기된 µsd 슬롯에메모리를삽입 전원버튼을누르면보드가정상적으로동작하면서 LCD 화면에펭귄그림이표시 전원을끄려면전원버튼을약 5 초정도 ON 상태를유지한다음릴리즈를하면전원이꺼짐 17

타겟보드구동과정 타겟보드구동과정 - 1 18

타겟보드구동과정 타겟보드구동과정 - 2 19

MicroSD 메모리초기화 - 가상머신에 MicroSD 연결 리눅스에부착된플래시메모리장치확인 MicroSD 장치를가상머신에연결 20

MicroSD 메모리초기화 - 가상머신에 MicroSD 연결 리눅스에부착된플래시메모리장치확인 dmesg 명령어를통해시스템에서인지한디바이스명확인 21

MicroSD 메모리초기화 - 메모리내용지우기 MicroSD 메모리초기화 리눅스명령인 dd 명령을이용하여메모리전체를 0 으로초기화 # dd if=/dev/zero of=/dev/sdb bs=64k dd: `/dev/sdb' 쓰는중 : No space left on device 30177+0 레코드들어옴 30176+0 레코드나감 1977614336 바이트 (2.0 GB) 복사됨, 683.012 초, 2.0 M/B/ 초 # 22

MicroSD 메모리초기화 - 파티션 MicroSD 메모리파티션 시스템메모리 (MicroSD 2GB) 의실린더할당정보 영역할당된실린더위치용도 RAW 영역 1 ~ 9 MBR, 부트로더및커널이기록되는영역 첫번째파티션 10 ~ 149 시스템영역으로루트파일시스템이설치됨 두번째파티션 150 ~ 마지막실린더 데이터영역 23

MicroSD 메모리초기화 - 파티션 MicroSD 메모리파티션 Fdisk 명령어로 2 개의파티션추가하기 # fdisk /dev/sdb WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u'). Command (m for help): p 1 파티션보기 Disk /dev/sdb: 1977 MB, 1977614336 bytes 61 heads, 62 sectors/track, 1021 cylinders Units = cylinders of 3782 * 512 = 1936384 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x49791684 Device Boot Start End Blocks Id System 24

MicroSD 메모리초기화 - 파티션 MicroSD 메모리파티션 Fdisk 명령어로 2 개의파티션추가하기 Command (m for help): n 2 새로운파티션생성 Command action e extended p primary partition (1-4) p 3 Primary 파티션으로지정 Partition number (1-4): 1 4 Primary 파티션내첫번째파티션으로지정 First cylinder (1-1021, default 1): 10 5 첫번째파티션실린더시작위치설정 Last cylinder, +cylinders or +size{k,m,g} (10-1021, default 1021): 149 6 첫번째파티션실린더마지막위치를 149 로설정 Command (m for help): n 7 새로운파티션생성 Command action e extended p primary partition (1-4) 25

MicroSD 메모리초기화 - 파티션 MicroSD 메모리파티션 Fdisk 명령어로 2 개의파티션추가하기 p 8 프라이머리파티션으로설정 Partition number (1-4): 2 9 두번째파티션으로설정 First cylinder (1-1021, default 1): 150 10 두번째파티션의실린더시작위치설정 Last cylinder, +cylinders or +size{k,m,g} (150-1021, default 1021): 1021 11 두번째파티션의실린더마지막위치를 1021 로설정 ( 여기서 1021 은메모리카드에따라서실린더의마지막위치가바뀌게되므로위의화면에서와같이출력해주는실린더의디폴트사이즈만큼입력하거나엔터키를입력하여디폴트값인 1021 을넣도록해줌 ) Command (m for help): w 12 설정한파티션저장 The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. 26

MicroSD 메모리초기화 - 파일시스템포맷 파일시스템 (ext3) 포맷 파티션이생성되었으면, 해당파티션을사용할수있도록초기화 ( 포맷 ) 를해주어야함 mkfs.ext3 명령어를이용하여파일시스템을 ext3 로포맷 첫번째파티션포맷 # mkfs.ext3 L Achro210T_System /dev/sdb1 27

MicroSD 메모리초기화 - 파일시스템포맷 파일시스템 (ext3) 포맷 두번째파티션포맷 # mkfs.ext3 L Achro210T_Data /dev/sdb2 28

MicroSD 메모리초기화 MicroSD 메모리파티션테이블정보 Achro-210T 시스템메모리의메모리맵 29

타겟보드부팅과정 타겟보드에전원이인가되면, CPU는 BL0의내용을읽음 BL0는 irom 코드라불리며, CPU의제조사가해당프로세서를만들때프로그램되어내장됨 BL0는 CPU에서특정영역을읽을수있도록만들어진부트코드 BL0가시작되면, BL1의위치를확인하여데이터를읽게되는데, BL0에는현재사용하는타겟보드에대한내용이포함되어있지않아하드웨어를초기화시킬수없으므로, 부트로더내용을 RAM으로복사할수없음그래서 BL0는 CPU가시스템을초기화하고부팅하기위한시스템의하드웨어정보와초기화를할수있는코드가들어있는 BL1을 CPU가적은용량의내부램인 iram에올린다음해당내용을토대로 CPU와그주변장치들을초기화 iram은저장할수있는크기가적기때문에 BL2를바로올리지못하고 BL1을올려 BL2를올릴수있는선행작업을하게됨그다음 BL2 영역의내용인 u-boot.bin( 부트로더전체바이너리 ) 을 RAM 으로복사이후 CPU는 RAM에적재된부트로더코드를읽어앞으로우리가사용해야하는부트로더인 u-boot를실행부트로더에서사용자입력이없으면마지막단계로커널이미지를 RAM 으로적재한후커널로제어권을넘김 30

MicroSD 메모리에시스템이미지올리기 시스템용 MicroSD 메모리에시스템이미지를올려서 Achro-210T 보드가정상적으로부팅이되도록하기 필요한파일들준비 root@esp:~# mkdir ~root/download 시스템이미지저장할디렉토리생성 root@esp:~# cd ~/achro-210t/images 시스템이미지있는디렉토리로이동 root@esp:~/achro-210t/images# ls 파일목록확인합계 4508 244 u-boot.bin 244 u-boot.bin.crc 4020 zimage root@esp:~/achro-210t/images# cd.. 상위디렉토리로이동 root@esp:~/achro-210t# cp -r images ~/download 시스템이미지복사 root@esp:~/achro-210t# cd ~/achro-210t/filesystem/linux_filesystem/ 리눅스파일시스템디렉토리로이동 root@esp:~/achro-210t/filesystem/linux_filesystem# ls 합계 3024 3022 linux_fs_20120906.tar.gz 2 readme.txt root@esp:~/achro-210t/filesystem/linux_filesystem# tar xvfz linux_fs_20120906.tar.gz C ~/download 루트파일시스템을루트홈밑의 download 에풀기 root@esp:~/achro-210t/filesystem/linux_filesystem# cd ~/download download 디렉토리로이동 root@esp:~/download# ls 파일목록확인합계 8 4 images/ 4 linux_fs_20120906/ 31

MicroSD 메모리에시스템이미지올리기 - 부트로더설치 부트로더설치 부트로더를시스템 µsd 에설치하기위해메모리가연결되었는지확인 메모리연결은 (1) 시스템용 µsd 메모리를컴퓨터에연결 (2) VirtualBox 관리자화면에서 [ 장치 ] - [USB 장치 ] 를선택한후 (3) USB 저장소를지정하는장치 ( 예 : Generic USB storage) 로선택그러면우분투리눅스에서시스템 µsd 를사용할수있는상태가되며, 어떤디바이스장치로인식하였는지는 dmesg 명령어를사용하면확인할수있음 시스템용 µsd 메모리가 /dev/sdb 로인식되었다고가정하고, RAW 영역의 BL1, BL2, Kernel 영역에타겟보드용이미지파일들을설치 32

MicroSD 메모리에시스템이미지올리기 - 부트로더설치 부트로더설치 µsd 메모리의 RAW 영역의바이트위치정보 33

MicroSD 메모리에시스템이미지올리기 - 부트로더설치 부트로더설치 BL1 영역 부트로더와관련된체크섬파일인 u-boot.bin.crc 파일은 BL1 영역에쓰여짐 BL1 코드생성 root@esp:~/download# cd images 시스템이미지파일있는곳으로이동 root@esp:~/download/images# makechecksum u-boot.bin 8192 u-boot.bin.crc 파일생성 checksum : 0xea474 root@esp:~/download/images# ls u-boot.bin u-boot.bin.crc zimage 생성된체크섬파일 u-boot.bin.crc 를 BL1 영역에쓰기 root@esp:~/download/images# dd if=u-boot.bin.crc of=/dev/sdb bs=1 seek=512 count=8192 8192+0 레코드들어옴 8192+0 레코드나감 8192 바이트 (8.2 kb) 복사됨, 0.034187 초, 240 kb/ 초 34

MicroSD 메모리에시스템이미지올리기 - 부트로더설치 부트로더설치 BL2 영역 BL2 영역에는부트로더실행파일인 u-boot.bin 을기록 root@esp:~/download/images# dd if=u-boot.bin of=/dev/sdb bs=1 seek=25088 248472+0 레코드들어옴 248472+0 레코드나감 248472 바이트 (248 kb) 복사됨, 0.656392 초, 379 kb/ 초 ENV 영역 ENV 영역에는시스템부팅시부트로더 (u-boot) 에서필요한기본적인정보와파라미터값들이들어있음 부트로더빌드중사용되는환경변수들은 setenv() 를통해서만들어짐 35

MicroSD 메모리에시스템이미지올리기 - 부트로더설치 부트로더설치 ENV 영역 Achro210T 보드에서사용되는설정은부트로더소스디렉토리의 board/samsung/achropv210/achro210.c 파일에설정된내용을토대로만들어짐 235 switch(regs) { 236 case BOOT_NAND: 237 Outp32(0xe02002a4, 0x0); // LED0 On 238 Outp32(0xe02002c4, 0x1); // LED1 Off 239 240 printf("checking mode for fastboot...\n"); 241 run_command("mtdparts default", 0); 242 243 if((~readl(0xe0200c04)) & 0x6) { 244 run_command("fastboot", 0); 245 } else 246 if(default_boot_mode) { // using default environment 247 sprintf(boot_cmd, "nand read %08x 600000 500000;nand read %08x B 00000 300000; bootm %08x %08x" 248, MEMORY_BASE_ADDRESS + 0x8000 249, MEMORY_BASE_ADDRESS + 0x1000000 250, MEMORY_BASE_ADDRESS + 0x8000 251, MEMORY_BASE_ADDRESS + 0x1000000); 252 setenv("bootcmd", boot_cmd); 253 254 sprintf(boot_cmd, "root=ramfs devfs=mount console=ttysac1,115200 ubi.mtd=4 ubi.mtd=5"); 255 setenv("bootargs", boot_cmd) 36

MicroSD 메모리에시스템이미지올리기 - 부트로더설치 부트로더설치 부트로더의커맨드모드에서 printenv 명령을이용하여해당내용을확인가능 사용자는부트로더명령에서 setenv 명령을통해서이러한환경변수를등록할수있는데, 이렇게등록된환경변수는환경변수영역을삭제하지않는이상계속유지됨 37

MicroSD 메모리에시스템이미지올리기 - 부트로더설치 부트로더설치 호스트시스템의 IP 주소와타겟보드의 IP 주소설정 PV210 # set serverip 192.168.10.100 PV210 # set ipaddr 192.168.10.110 저장 PV210 # save 38 확인 Welcome to Achro210T Linux Achro210T login: OK ( 생략 ) Hit any key to stop autoboot: 0 PV210 # pri Bootdelay=3 Baudrate=115200 Ethaddr=00:40:5c:26:0a:5b Ipaddr=192.168.1.121 serverip=192.168.1.2 ( 생략 )

MicroSD 메모리에시스템이미지올리기 - 커널 (Kernel) 설치 커널설치 dd 명령어를이용하여커널이미지파일 (zimage) 을직접 µsd 메모리에기록 root@esp:~/download/images# dd if=zimage of=/dev/sdb bs=1 seek=549376 3915884+0 레코드들어옴 3915884+0 레코드나감 3915884 바이트 (3.9 MB) 복사됨, 12.0632 초, 325 kb/ 초 일반적으로부트로더가시스템메모리에정상적으로기록되면, 그이후로는 USB 또는이더넷을이용하여부트로더와커널을다운로드하여 µsd 메모리에설치할수있음 39

MicroSD 메모리에시스템이미지올리기 - 리눅스파일시스템설치 리눅스파일시스템은시스템에서필요로하는기본적인라이브러리 ( 예를들면, glibc 와같은시스템필수라이브러리 ) 와리눅스에서기본적으로이용하는명령어에해당하는바이너리, 시스템사용에필요한유틸리티등이포함 리눅스파일시스템은운영체제에서마운트하여사용되므로운영체제가지원하는파일시스템영역에넣어야함 Achro-210T 타겟보드의경우 ext3 파일시스템을이용하고있으므로, 파일시스템의압축을풀어 µsd 메모리의시스템영역에복사해주면파일시스템준비완료 40

MicroSD 메모리에시스템이미지올리기 - 리눅스파일시스템설치 리눅스파일시스템설치 root@esp:~/download/images# df 파일시스템 1K- 블럭사용됨사용가능사용 % 마운트됨 /dev/sda1 29640780 10415000 17720092 38% / none 509000 276 508724 1% /dev none 513236 24 513212 1% /dev/shm none 513236 100 513136 1% /var/run none 513236 0 513236 0% /var/lock none 513236 0 513236 0% /lib/init/rw win_share 222597116 146464432 76132684 66% /root/share /dev/loop0 4003352 4003352 0 100% /root/achro-210t /dev/sdb1 256366 10287 232842 5% /media/achro210t_system /dev/sdb2 1623008 35228 1505336 3% /media/achro210t_data root@esp:~/download/images# cd../linux_fs_20120906 root@esp:~/download/linux_fs_20120906# cp -a * /media/achro210t_system/ root@esp:~/download/linux_fs_20120906# sync root@esp:~/download/linux_fs_20120906# 41

타겟보드실행확인 시스템구동확인하기 µsd 메모리를 Achro-210T 보드에삽입하기위해먼저호스트시스템에삽입된메모리를제거 µsd 메모리를안전하게제거하는순서 VirtualBox 관리자에서우선연결을해제 그런다음 PC 에서 하드웨어안전하게제거 를선택 µsd 메모리를 Achro-210T 보드옆면에있는 System 이라표기된 µsd 메모리용슬롯에삽입 210T 보드의전원을인가하기전에호스트와 210T 보드간에직렬케이블이정상적으로연결되었는지확인 210T 보드의전원을인가 42

타겟보드실행확인 시스템구동확인하기 Achro-210T 정상부팅후화면 43

커널패닉현상 타겟보드부팅오류수정 커널패닉현상 Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0) 커널패닉현상수정하기 부트로더에서참조하는 env 설정변경하기 PV210 # set bootargs "root=/dev/mmcblk0p1 rootfstype=ext3 init=/init console=ttysac0,115200 rootdelay=1 androidboot.console=s3c2410_serial0" PV210 # save Saving Environment to SMDK bootable device... done PV210 # 44