본문 바로가기
Computer Science

SW 아키텍쳐 구조&활용 (3)

by OKOK 2021. 6. 10.

OS(Operating System) 기반 Embedded System

Bootloader 구조

타겟 시스템의 하드웨어를 초기화하고 오에스 및 앱 이미지를 메모리에 올려 실행시킴. 부트로드의 위치는 일반적으로 롬계열의 물리 주소 0x0번지부터 위치하거나 따로 파티션을 만들어 관리함. 하드웨어 의존성이 강함. 

Configuration target은 Makefile에 추가되어 있음.

 

Bootloader sequence

ENTRY(_start) -> Entry point -> iRAM에서 동작

PLL(Phase Locked Time) : PLL Logic에 의해 외부 X-TAL Clock은 안정된 출력 Clock을 공급하게 되며 Logic Loop를 통해 최적화 되기까지 시간이 필요함. PLLCON 레지스터를 설정하면 PLL은 동작 Clock을 변화시키기 위해 불안정한 상태로 바뀌게 되며 Lock Time 동안 Chip은 동작하지 않고 이후 새롭게 바뀐 Clock에 의해 동작함. 

 

Bootloader Command 처리 및 테스트

test : Hello

 

Kernel 소개 및 구조

Hardware System을 관리할 뿐 아니라 응용 소프트웨어를 실행하기 위한 기능과 서비스를 제공하는 System Software임. 스케쥴링도 해줌. 모든 프로세스에 대한 가상 주소 영역을 구축하며 시스템 콜을 통해 메모리 관리 하위 시스템과 통신함. 네트워크 관리로 입력되는 패킷은 모두 비 동기식 이벤트이므로 프로세스가 처리할 수 있게 패킷을 모아서 식별한 후 프로세스로 전달해 줌. 파일 시스템 관리 : 파일을 관리하는 방법을 의미하며 플랫폼별로 파일 시스템 종류가 다를 수 있음. 디바이스를 제어하기 위한 SW는 OS에 포함이 되어있으며 이를 Device Driver라 명침함. 

Build시 3가지 선택이 가능함. 실행 중에 동적으로 모듈을 삽입하고 제거하는 모듈 기능 지원함.

 

Kernel 구조 이해

System call : open, read, write, ioctl, mmap

VFS(virtual File System)
device file system, general file system, socket file system.

make config : 텍스트 기반 설정 방식이며 옵션을 하나씩 보여주고 yes, no, module 중에 하나의 옵션을 선택

 

Device Driver 구조 및 등록 방법 이해

하드웨어 장치를 제어하는 프로그램을 의미함. 하드웨어 장치 뿐만 아니라 IPC, 공유메모리를 위한 드라이버도 존재함. 

'Computer Science' 카테고리의 다른 글

Object-Oriented Analysis Design (2)  (0) 2021.07.26
Object-Oriented Analysis Design (1)  (0) 2021.07.26
SW 아키텍쳐 구조&활용 (2)  (0) 2021.06.09
SW 아키텍쳐 구조&활용 (1)  (0) 2021.06.09
SW 요구사항 개발 (1)  (0) 2021.06.08

댓글