타겟시스템 운용체계 구축 -...

31
Hanbat National University Prof. Lee Jaeheung 타겟 시스템 운용체계 구축

Transcript of 타겟시스템 운용체계 구축 -...

Page 1: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

타겟 시스템 운용체계 구축

Page 2: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

타겟 S/W? Boot loader

? Linux Kernel

? Ramdisk 제작

? 커널 부팅

Page 3: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

? 부트 로더란?

리눅스 커널 부팅 이전에 미리 실행되면서 커널이 올바르게 부팅되기위해 필요한 모든 관련 작업을 마무리하고 최종적으로 리눅스 커널을부팅시키기 위한 목적으로 짜여진 프로그램

? 부트 로더의 기능

– 하드웨어 초기화

– 커널의 적재 및 부팅

– 디버깅

– 플래시 메모리

부트 로더 (Boot Loader)

Page 4: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

부트로더부트로더 실행실행 절차절차

c_main() timer init

no input for 3~4 secondkernel, ramdisk image를

ram에 복사 후 대기

no command

BootKernel()run command

BootKernel() SetClock() Download() Flash() ......

Auto Boot

Manual Boot

command mode

jump to kernelimage address

GetCommand()

serial init

command

Start.S

Page 5: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

Filename: start.SFilename: start.S

vector table initialization

mask ALL interrupts(ICMR:Interrupt Controller Mask Register)

CPU clock decision(PPCR: Power Manager PLL configuration Register

Set up the SDRAM (Table 10-2:Memory Interface Control Register p10-9)1. MDCNFG base address(DRAM Configuration Register):p10-10

2.MDCAS00(CAS waveform rotate register 0 for DRAM bank pair 0/1):p10 -19(MDCAS20,MDCAS01,MDCAS21,MDCAS02,MDCAS22 )

3.MDREFR(DRAM refresh control register):p10-144.MDCNFG(DRAM configuration register):p10-10

Static memory chip selects on Assabet:

Static memory chip selects on Assabet:

Setup memorySetup memory

Static memory 1.MSC0 (Static memory control register 0) p10-222.MSC1(Static memory control register 1) p 10-223.MSC2(Static memory control register 2) p 10-224.SMCNFG(SMROM configuration register) p 10-27

Start.S(1)Start.S(1)

Page 6: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

Set up PCMCIA spaceSet up PCMCIA space

MECR (Expansion memory[PCMCIA] bus configuration register p 10-24

All SDRAM memory settings should be ready to go...For best performance, should fill out remaining memory config regs:

All SDRAM memory settings should be ready to go...For best performance, should fill out remaining memory config regs:

Serial port checkSerial port check

1.SCD(Sample Clock Direction):GPCLK/UART select, select UART p 11-812. UTCR0 ( UART control register 0[serial_1 or serial_3] ) p 11-83,p 11-114

3.Error in FIFO Flag(EIF) p11-121,p11-122 4.Set the serial port

4-1.Loopback Mode p 11-117 4-2.Transmit Clock Edge Select(TCE) p 11-114

4-3 UTCR1 UTCR2 Configuration:baudrate p 11-126

GPIOGPIO

1.GPIO Pin-Level Register (GPLR) p 9-3:Load the GPIO base in r2 2. GPIO Pin Direction Register (GPDR) p 9-4

3. GPIO Pin Output Set Register(GPSR) and Pin Output Clear Register(GPCR) p 9-54.UDC IN Max Packet Register p 11-67:Enable the transmitter

5.Send out a welcome message: branch print_srt

test_memory:

zero_loop:..

jump_to_c: c_main : C code 의 main 루틴으로 jump 함

Start.S(2)Start.S(2)

Page 7: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

Manual Boot (main.c)Manual Boot (main.c)

boot

Jump to KERNEL_RAM_BASE

kernel, ramdisk image를 UUDecode를 이용하여 download하며 uudecode하여 ram에 기록.

ram에서 flash로 기록

help message를 serial로 출력

bootloader의 전 역 변 수 에 기 록Download() 실행시 SerialInit()를 호출해 재 설정 후 download.

bootloader의 state를 나타내는 전역변수에 기록된 내용을 serial로 출력.

SerialInit() 호출.

flash로 부 터 kernel, ramdiskimage를 ram으로 읽어 들임

(MyMemCpy() 사용).

serial의 speed를 serial로 출력

function

commandrun command

BootKernel()

SetClock()

Download()

Flash()

PringHelp()

Reload()

ResetTerminal()

SetDownloadSpeed()

PrintStatus()

clock

download

flash

help

reload

reset

speed

status

PrintSerialSpeed()

serial

Page 8: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

? help/? 도움말

? MD [start-address] [count] 메모리나 플래시의 내용을 표출

MD : 16 DWORD 읽고 주소를 16증가

MD start-addr : 16 DWORD 읽고 넘겨진 주소를 16증가 MD start-addrcount : count 만큼 읽고 넘겨진 주소를count 만큼 증가

? MW[B/W/L] : 메모리에 값을 쓰기

[B/W/L] Byte/Word/Long

MWL 0x12341234 Hex Value

MWB 12 Dec Value

? RST : 소프트웨어적으로 프로그램을 리셋

하드웨어는 리셋되지 않음

? GK : 커널을 실행

? GO addr : 주어진 주소로 프로그램카운트가 이동

? BOOTP : 설정된 호스트로부터 IP를 얻어옴

부트 로더의 명령어 예시

Page 9: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

? PING ddd.ddd.ddd.ddd [count] : ping 명령을 실행? FM[K/R] 플래시의 내용을 메모리로 복사 설정된 환경을 참조하여 실행? FMK 플래시에서 압축된 커널영역을 메모리로 복사? FMR 플래시에서 압축된 램디스크영역을 메모리로 복사? FM flash-addr mem-addr count 소스의 주소에서 목적지 주소로 카운트

만큼 복사? MF[K/R] : 메모리의 내용을 플래시로 복사(설정된 환경을 참조하여 실행)? MFK 메모리에서 압축된 커널영역을 플래시로 복사? MFR 메모리에서 압축된 램디스크영역을 플래시로 복사? MF mem-addr flash-addr count 소스의 주소에서 목적지 주소로 카운트

만큼 복사? Z[M/F][B/K/R] : 씨리얼 Z-모뎀프로토콜로 파일을 다운로드

옵션설명[M/F] M : 메모리 F : 플래시[B/K/R] B : 부트로더 K : 커널이미지 R : 램디스크이미지

부트 로더의 명령어 예시

Page 10: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

Linux Kernel? 리눅스 커널

? 커널의 기능

? 커널의 소스 구조

? 커널 설정 및 컴파일

? 커널 이미지의 작성

Page 11: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

커널이란 ?? 운영체계를 이루는 핵심적 소프트웨어

? 자원의 관리– CPU, 메모리, 프로세스, IPC, 파일 시스템, 네트워크 등의 자원들

을 관리하고 분배하는 기능 및 디바이스 드라이버에 의한 주변 장치 제어 기능들을 제공

Page 12: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

커널의 기능? 프로세스 처리와 스케줄링 및 IPC 기능

– 어떤 특정한 업무의 처리하기 위해 실행되고 관리되는 단위인 프로세스에 대한 생성, 제거, 스케줄링 및 각 프로세스간의 통신인IPC 기능 제공

? 메모리 관리와 가상 주소 기능– ‘페이지’ 단위의 메모리 관리하여 논리적인 접근 방식에 의한 한정

된 메모리의 효율적인 사용

? 파일 시스템 기능– 리눅스 커널은 외부 장치를 하나의 파일로 간주하여 입/출력이 이루

어지기 때문에 장치 파일의 관리, 캐시 및 특수 proc 파일 시스템기능을 제공

Page 13: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

? 강력한 네트워크 기능– TCP/IP를 비롯한 많은 네트워크 프로토콜 자원, 다양한 네트워크

서비스 및 관련 장치의 제어를 위한 디바이스 드라이버등을 지원

? 모듈화 된 디바이스 드라이버– 자주 사용되지 않는 디바이스를 제어하기 위한 디바이스 드라이버

는 모듈로 처리하여 메모리의 낭비를 최소화

? 인터럽트 및 시스템 운영 기능– 인터럽트 처리를 비롯한 타이머, 디버깅, 로그 메시지 처리, 사용자

인터페이스와 같은 시스템 운영 자원 들을 포함

커널의 기능

Page 14: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

리눅스 커널의 구조

Page 15: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

리눅스 커널의 소스 디렉토리 구조

/usr/src/linux/usr/src/linux

ipcipc liblib mmmm

scriptsscripts

driverdriver

netnetincludeincludeinitinitfsfsarcharch

DocDockernelkernel

block

cdrom

char

net

pci

pnp

sbus

scsi

sound

video

::

802

appletalk

decnet

ethernet

ipv4

unix

sunrpc

x25

::

asm_alpha

asm_arm

asm-i386

linux

net

scsi

video

::

coda

ext2

hpfs

msdos

nfs

isofs

minix

::

alpha

arm

m68k

mips

ppc

sparc

i386

boot

kernel

lib

math_emu

mm

Page 16: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

? Doc (Document) : 리눅스 커널에 대한 참고 문서 파일이 존재

? Include : 리눅스 커널 소스에 관한 헤더 파일

? Init : 리눅스 커널 부팅에 필요한 함수의 호출

? Kernel : 리눅스 커널의 내부 동작과 관련된 기능

? Mm : 메모리의 운용 , 할당. 제거 등의 메모리 관리

? Ipc : 프로세스간 통신인 IPC 기능과 관련된 소스

리눅스 커널의 소스 디렉토리 구조

Page 17: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

? Fs : 파일 시스템의 약자로 파일 시스템의 처리와 관련된 코드

? Net : 네트워크 프로토콜이 구현

? Drivers : 장치에 대한 디바이스 드라이버 파일로, 입/출력에

관련된 대부분의 디바이스 드라이버가 지원됨

? Lib : 리눅스 커널은 표준 C 라이브러리를 사용하지 않고, 간

단한 문자열 처리와 같은 함수의 경우 이 디렉터리의 소스

파일에서 구현 하여 라이브러리로 사용

? Arch : cpu계열에 따른 서로 다른 하드웨어 의존적인 코드들

이 구성

리눅스 커널의 소스 디렉토리 구조

Page 18: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

커널의 주요 함수? 시스템 시작 및 초기화

– Arch/i386/kernel/head.S– 일련의 시스템 구조의 의존적인 초기화를 수행한 후, init/main.c

의 start_kernel()함수 호출

– start_kernel()Start_kernel(){

setup_arch();paging_init();trap_init();init_IRQ();sched_init();time_init();… .kernel_thread(init);cpu_idle()}

Init(){setup();… ..execve(“/sbin/init”);… ..}

Start_kernel(){setup_arch();paging_init();trap_init();init_IRQ();sched_init();time_init();… .kernel_thread(init);cpu_idle()}

Init(){setup();… ..execve(“/sbin/init”);… ..}

Page 19: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

? 메모리 관리– 페이지 폴트 핸들링 : mm/memory.c– 메모리 매핑 및 페이지 캐싱 : mm/filemap.c

– 버퍼 캐쉬 : mm/buffer.c

– 스왑 캐쉬 : mm/swap_state.c, mm/swapfile.c

? 커널 기능– 스케쥴러 : kernel/sched.c– Fork : kernel/fork.c

– Bottom half of interrupt handling : include/linux/interrupt.h

– Process table : include/linux/sched.h

? Interrupt handling– 대부분 architecture dependent

– Arch/i386/kernel/irq.c

커널의 주요 함수

Page 20: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

? 네트워크– Networking code in net/– Header files in include/net

– BSD socket code : net/socket.c

– IP version 4 INET code : net/ipv4/af_inet.c– Generic protocol support code : net/core

– TCP/IP networking code : net/ipv4

커널의 주요 함수

Page 21: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

리눅스 커널의 설정

코드성숙도 : 개발단계의 코드를 안정적으로 실행적재 가능 모듈 지원 : 모듈 적재 셋업시스템 셋업일반 설정 : - 네트워크, PCI서포트 설정페레럴 포트 : 로컬로 프린트를 사용 시메모리 장치 기능과 모듈 선택 옵션플러그 앤 플러그 기능블럭디바이스 : -플로피, XT하드, IDE하드, 네트워크

파일 시스템, 램디스크 지원여부 설정멀티 디바이스는 여러 개의 하드나 파티션을 하나의

파티션으로 하거나 통합네트워크 : 패킷(필터링) 디버거, 소켓 필터링,TCP/IP

네트워크 설정네트워크 장치 설정 : 네트워크 카드 설정아마추어 햄 통신 설정 : 일반적으로 설정하지 않음무선 적외선 포트 설정하드 지원여부(종류) 설정스카시 장치 설정ISDN지원 설정입력장치 지원 설정비디오 입력 장치 설정프레임 버퍼 설정 : 커널부팅시 펭귄로고 사용사운드 지원여부 설정멀티미디어 USB 블루투스 사용 설정커널 디버거 설정

커널 구성창 요약 설명

Page 22: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

? 디바이스 드라이버 커널 삽입법(WDM방법과 병행)– Copy driver into kernel directory

– Register deiver into kernel? Edit ~/linux/arch/armnommu/drivers/char/mem.c

– Edit ~/arch/armnommu/drivers/char/makefile

리눅스 커널의 설정

Int_chr_dev_init(void){

…#ifdef CONFIG_SIMPLE_SERIAL

sser_init(); //디바이스드라이버의 시작#endif

…}

Int_chr_dev_init(void){

…#ifdef CONFIG_SIMPLE_SERIAL

sser_init(); //디바이스드라이버의 시작#endif

…}

Ifeq ($(CONFIG_SIMPLE_SERIAL),y)L_OBJS += simpleserial.o //디바이스드라이버의 목적파일

endif

Ifeq ($(CONFIG_SIMPLE_SERIAL),y)L_OBJS += simpleserial.o //디바이스드라이버의 목적파일

endif

cp simpleserial.c ~/linux/arch/armnommu/drivers/charcp simpleserial.c ~/linux/arch/armnommu/drivers/char

Page 23: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

– Edit ~/arch/armnommu/drivers/char/Config.in

– Kernel config?Make menuconfig

? Character devices -> Simple serial device support 체크

? Save config

– Kernel recompile 후 다운로드?두번째 컴파일에서는 make dep 가 필요 없음

Bool ‘Simple serial device support’CONFIG_SIMPLE_SERIALBool ‘Simple serial device support’CONFIG_SIMPLE_SERIAL

리눅스 커널의 설정

Page 24: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

커널 컴파일 과정? make menuconfig 보드의 환경에 맞게 옵션을 선택하는 부분

? make dep 커널 소스의 의존성이 있는 파일목록을 make

파일에 만듬

? make clean 이전 컴파일에 생성된 목적 파일을 지움

? make zImage 커널 이미지 컴파일 명령어

(make menuconfig에 의해 커널의 특정 부분만 수정되었다면

make zImage만 해주면 됨)*Arch/arm/boot/ 에 zImage생성

Page 25: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

램 디스크란?

? 램 일부분을 할당하여 이 공간을 디스크 속성을 지니도록 변

환하는 과정을 통해 궁극적으로 램을 매개체로 이용한 저장

장치로 루트 파일 시스템 구조로 작성

? 기타 응용프로그램을 저장 할 수 있는 공간

Page 26: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

램 디스크

? 램디스크 크기 결정

~linux/arch/arm/mach-sa1100/xxxboard.c

static void __init fixup_socboard(struct machine_desc *desc, struct param_struct

*params, char **cmdline, struct meminfo *mi)

{

SET_BANK( 0, 0xc0000000, 64*1024*1024 ); // 타겟 보드의 SDRAM 크기

mi->nr_banks = 1;

ROOT_DEV = MKDEV(RAMDISK_MAJOR,0);

setup_ramdisk(1, 0, 0, (16*1024)); // 램디스크의 크기

.

.

.

}

? 부트로더에서 지정한 램디스크의 크기와 동일하게 설정

Page 27: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

램디스크 만들기(기존 이미지 수정)

? gunzip ramdisk.gz(16M)

? losetup /dev/loop0 ramdisk

? mkdir /mnt/ramdisk

? mount /dev/loop0 /mnt/ramdisk

수정후…

? umount /mnt/ramdisk

? losetup –d /dev/loop0

? gzip –v9 ramdisk

? ramdisk.gz 생성

Page 28: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

Terminal 설정

?타겟 시스템은 모니터나 키보드가 존재하지 않음

?호스트 시스템과 minicom이라는 프로그램으로 serial로 연결

? minicom 설정

1. minicom -s (minicom setup)

2. Serial port setup

3. A를 눌러 Serial Device를 설정 (COM1이므로 /dev/ttyS0)

4. E를 눌러 Bps/Par/Bits를 설정 (115200 8N1)

5. F를 눌러 Hardware Flow Control을 설정 (No)

6. G를 눌러 Software Flow Control을 설정 (No)

7. 저장하고 종료

8. minicom 실행

Page 29: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

Terminal 설정

Page 30: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

타겟 시스템의 부팅과정

Page 31: 타겟시스템 운용체계 구축 - artoa.hanbat.ac.krartoa.hanbat.ac.kr/lecture_data/embedded_sw/03_old.pdf · – CPU, 메모리, 프로세스, IPC, 파일시스템, 네트워크등의자원들

Hanbat National University Prof. Lee Jaeheung

타겟 시스템의 루트 디렉터리 구조